Python语言是不是有设计缺陷?
程序员文章站
2022-04-24 08:49:15
...
看python写的源码,很多不知道类型到底是什么,亦不知道该调用什么方法,常用方法的返回值也不知道是什么类型,中文处理相当不好,乱码十分严重,为什么还有人推荐?
只好祭出别人的文章, 大家不要喷我了, 我看不懂链接内的文字, 也不知道他在说啥... 我贴这个链接并不表示我赞同或反对这个链接里面的任何观点. 个人瑾保持独立乐观开放的心态对待python.
Python is ugly
Wit.io 对于问题本身,不知道类型是什么。
治标的方法是用 JetBrains PyCharm,有类型推导(注意要加类型标注)。
治本的方法是改用强类型静态类型的语言。比如我现在沉迷的 Rust 语言。
另外 Python 正考虑引入类型检查(mypy)[Python-ideas] Proposal: Use mypy syntax for function annotations。本身 Python 3 就支持类型注释。
看python写的源码,很多不知道类型到底是什么,亦不知道该调用什么方法,常用方法的返回值也不知道是什么类型,中文处理相当垃圾,乱码十分严重,浪费时间,为什么还有人推荐? 竟然这么多评论的,吓尿了。
其实这东西都是仁者见仁智者见智的,争来争去没什么意思,都是个人品味的东西,如果是bug早就被修复了。
大家可以去看 @徐酿泉的答案,从另一个角度来看这些问题。
顺便给大家安利一下,rust大法好,类型系统保平安。
==================================
LZ你喷python都喷不到点子上啊。
1. python号称是面向对象语言。
那让我们来看看list类:list.append(), list.count(), 嗯看起来很不错的样子。..... 但是,等一下! len(list) 什么鬼! consistence被狗吃了么。。 以为自己是STL的Algorithm库????
2. 命名风格不忍直视。
getstatusoutput ← 这是什么东西。。???
3. 闭包。
诶,python有lambda表达式诶,那有没有闭包呢? 让我们来试一下
中文乱码这个可以试试Python3.x
ps:我猜题主学了erlang/haskell之后会说连循环都没有,什么垃圾语言
回复内容:
python3不是加function annotation了吗,用function annotation或isinstance方法,IDE都能找到可用的方法,实在不行还有REPL呢 这个问题下面的答案戾气好重... 不敢说话了...只好祭出别人的文章, 大家不要喷我了, 我看不懂链接内的文字, 也不知道他在说啥... 我贴这个链接并不表示我赞同或反对这个链接里面的任何观点. 个人瑾保持独立乐观开放的心态对待python.
Python is ugly
Wit.io 对于问题本身,不知道类型是什么。
治标的方法是用 JetBrains PyCharm,有类型推导(注意要加类型标注)。
治本的方法是改用强类型静态类型的语言。比如我现在沉迷的 Rust 语言。
另外 Python 正考虑引入类型检查(mypy)[Python-ideas] Proposal: Use mypy syntax for function annotations。本身 Python 3 就支持类型注释。
def func(foo: Foo) -> Bar:
Bar(foo)
看到python缺陷笑了,还是来谈谈JavaScript吧,这门语言十(ni)分(ma)灵(keng)活(duo)
Python 作为动态类型的语言,使用的时“鸭子类型”的概念,即如果一个生物走起来像鸭子,叫起来像鸭子,他就是鸭子。对于Python编程来说,解释器不管你这个对象是什么类型,只管这个对象有没有对应的方法和属性。所以你希望他是什么类型,你就调用什么方法就行了,如果类型错误解释器会告诉你,你所调用的方法不存在。而可以使用"dir(obj)"这样的命令查看这个对象有什么方法和属性,当然也可以通过"type(obj)"来查看这个对象当前的类型。关于中文乱码,题主用的是Windows吧,Python默认编码是Unicode,*nix系统一般都是兼容的,而Windows用的是万恶的gbk编码, 如果需要统一文字编码,建议使用下面的程序转换编码:# 尝试将字符串转成utf-8的,如果失败转为gbk的
try:
doc = doc.encode('utf-8')
except UnicodeEncodeError:
doc = doc.encode('gbk', 'ignore')
Python确实有垃圾的地方,可是你问题描述里列的这些都不是:看python写的源码,很多不知道类型到底是什么,亦不知道该调用什么方法,常用方法的返回值也不知道是什么类型,中文处理相当垃圾,乱码十分严重,浪费时间,为什么还有人推荐? 竟然这么多评论的,吓尿了。
其实这东西都是仁者见仁智者见智的,争来争去没什么意思,都是个人品味的东西,如果是bug早就被修复了。
大家可以去看 @徐酿泉的答案,从另一个角度来看这些问题。
顺便给大家安利一下,rust大法好,类型系统保平安。
==================================
LZ你喷python都喷不到点子上啊。
1. python号称是面向对象语言。
那让我们来看看list类:list.append(), list.count(), 嗯看起来很不错的样子。..... 但是,等一下! len(list) 什么鬼! consistence被狗吃了么。。 以为自己是STL的Algorithm库????
2. 命名风格不忍直视。
getstatusoutput ← 这是什么东西。。???
3. 闭包。
诶,python有lambda表达式诶,那有没有闭包呢? 让我们来试一下
def f(x):
return lambda y: x + y
g = f(10)
print (g(20))
scala大法好
题主这种症状,动态语言赶紧灭退保,去写Java或者C#吧
前面你说的类型的问题,动态类型的语言都是这样,题主只学过C/C++/Java?中文乱码这个可以试试Python3.x
ps:我猜题主学了erlang/haskell之后会说连循环都没有,什么垃圾语言
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
推荐阅读
-
[python学习笔记]Python语言程序设计(北理工 嵩天)
-
Python的 and 操作符 和C语言的 && 操作符有何不同
-
Python语言程序设计(第1周)_Hello World的条件输出
-
【笔记】嵩天-Python语言程序设计-完成两个简单实例
-
Python语言程序设计:Lab5
-
Python语言程序设计之二--用turtle库画围棋棋盘和正、余弦函数图形
-
C语言程序设计——if-else语句判断一个五位数是不是回文数(例4.6)
-
Python语言程序设计之三--列表List常见操作和错误总结
-
Python语言程序设计之一--for循环中累加变量是否要清零
-
【学习笔记】PYTHON语言程序设计(北理工 嵩天)
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论