自知道它,历经数年,不止一次,
想喜欢它,去使用它,去学习它。
直到今天,发现对它,爱不起来。
究其原因:出错的时候,错误一坨坨,毫无美感可言。
弃!
101
wuxinling 2 天前
说实话,游标卡尺问题在维护修改代码的时候确实使我脑壳疼,但是一通乱写跟写伪代码似的照样能跑,确实也挺爽。
这东西写写小应用还行,上万代码行的应用开发维护成本未必比其它语言低吧? |
102
yangth 2 天前
你花任你花,我用 java8
|
104
hs444 2 天前
虽然 python 有我不喜欢的地方,但是“出错的时候,错误一坨坨,毫无美感可言”这个非要说的话都能算是优点,不然像 sql 一样来一个
syntax error at or near ")" 位置:696 才真的让人头疼 |
105
Wongz 2 天前
头一回见嫌弃报错详细的,定位不到问题怎么解决错误?再说了,想优雅提示出错和内容又不是做不到,项目没写罢了。你是终端用户,你应该去那个项目发 issue ,说作者对错误处理不够优雅,被围观别哭就好了
|
107
shuax 2 天前 1
菜就多练
|
108
bg7lgb 2 天前 1
大项目?多大才算大项目 ?
|
110
alexsz 2 天前
不知道 OP 想表达什么
|
112
kpsanmao 2 天前
@yingxiangyu 那就直接显示错误原因,然后后面有个详情,点击查看详细的信息用于排查问题。
|
113
fanjk 2 天前
吐槽的点和 Python 的缺点感觉不太搭边,硬找?
|
114
ccfly 2 天前
人不行怪路不平
|
115
BALKIN 2 天前
在我用的几门语言里我觉得 Python 的报错信息是最友善的了。
楼主觉得什么语言比较"优雅“呢? |
116
lyxxxh2 2 天前
打印异常栈不是很正常的吗? 其他语言也是这样啊。
也不是完全没用,出了 bug,你可以直接定位到代码去测试,也提供了更多信息找问题。 pip 不应该显示异常栈,如果他这么做。 难道不会又被人喷,吃太饱,一个文字提示就没了,简单就算了,复杂的等死。 到底给客户看还是给程序员看的。 |
117
Geon97 2 天前
菜就多练,怕报错就别玩
|
119
LXGMAX 2 天前
月经贴经验+1 告辞
|
121
NeverBelieveMe 2 天前
今夕是何年?李子柒、竹鼠、川普,python 不好用,时光倒流 10 年了吗?
|
122
sampeng 2 天前
python 纯粹因为生态环境大所以大家爱用。
反正我是不爱用的。python 是唯一一个我今天写了。3-4 个月后就忘记代码是什么意思了。无论我如何组织代码都无法逃离这个魔咒。。我写个 shell 都能 1 年后还能回来看明白逻辑。。。 |
123
seenthewind 2 天前
我严谨的判断,你应该没写过 node.js 的大项目。
那一个报错的日志你应该贴不进 v2 的回复框。 |
124
laminux29 2 天前
因为差生多、穷、贪婪,整个世界都这样。
差生多的意思是,没有几个人会严谨对待数据类型、异常处理,导致 js 、python 这类语言风靡。一旦工程大了,最终害人害己。 穷的意思是,项目资金少,人力贵,导致催需求,不会给工程师预留多少时间来规范化地处理需求。 贪婪的意思是,催需求,缩减工期,减少人力支出,能减少资本家的成本支出。 |
125
pioflight 2 天前
垃圾引战帖能不能删啊,刷到这种内容我还以为在看小红书
|
126
seagoat 2 天前
哈哈。。
这段话,把 python 换成任何其他一种语言都差不多吧~ |
127
009694 2 天前 via iPhone
op 真的是程序员吗?至少我觉得不适合干这一行。 抛错的堆栈信息都嫌看不懂的话,真的不适合干这一行,debug 能力太弱了
|
128
Wh1t3zZ 2 天前
去水深火热吧
|
129
coolmenu 2 天前
我喜欢 Fsharp ,没啥人用吧?不过干杂活,还是 Python 快。
|
130
CassianVale 2 天前
天下武功唯快不破
|
132
xuwen 2 天前
op 包括楼下大部分人都没学几天 python ,更别说阅读过高质量的 python 开源项目了
|
133
Justin3go 2 天前
Python:可运行的伪代码
|
134
huanruiz 2 天前
建议去问问 data scientist...
|
135
qianckjuan 2 天前
我更想问问 op 写过什么语言,不是把堆栈错误信息打一坨出来的
|
137
huage 2 天前
我喜欢手写操作系统、手写编译器、手写浏览器,一切都是手写,目前的进度是等硬件准备好了,才能写
还是就是我喜欢自己手搓 CPU 、内存和硬盘,主板也是,目前的进度是开始研究提炼单晶硅了 |
138
GeekGao 2 天前
stupid kids: 为什么你们当年要用诺基亚而不是 iPhone
|
139
GarliCC 2 天前
遂弃之,择 Ruby ,渡终身。🙏
|
140
MasterCai 2 天前
pip install pretty_errors
|
141
xgdgsc 2 天前 via Android
库多而已,爱不起来又必须用的话就在你喜欢的语言里调,比如在 Julia 用 pythoncall.jl ,在 cpp 里用 pybind11 ,一般是个语言都可以调
|
142
itskingname 2 天前
Python 报的错误信息会比 Java 多? Java 的日志你翻页翻 3 屏幕都看不到真正错误的位置。
|
143
ounxnpz 2 天前
假设有一个 Map [{"name": "zhang3"},{"name": "li4"}],我们找下 li4 在不在 Map 里。
python: print("li4" in [i["name"] for i in l]) java: System.out.println(l.stream().map(map -> map.get("name")).collect(Collectors.toList()).contains("li4")); golang: for _, i := range list { if i["name"] == "li4" { fmt.Println(true) return } } fmt.Println(false) js: console.log(list.some(item => item.name === 'li4')) php foreach($array as $item) { if ($item["name"] === $name) echo true; } echo false; } |
144
ounxnpz 2 天前
假设有一个 Map [{"name": "zhang3"},{"name": "li4"}],我们找下 li4 在不在 Map 里。
python: print("li4" in [i["name"] for i in l]) java: System.out.println(l.stream().map(map -> map.get("name")).collect(Collectors.toList()).contains("li4")); golang: for _, i := range list { if i["name"] == "li4" { fmt.Println(true) return } } fmt.Println(false) js: console.log(list.some(item => item.name === 'li4')) php foreach($array as $item) { if ($item["name"] === $name) echo true; return } echo false; } 哪个最简单,更简洁,更接近自然语言。 |
145
tunzao 2 天前
写自动化小脚本是真的快
|
146
DIO 2 天前
python 其实是调用入口,稍微核心一点的逻辑和实现都要去底层了。调库调参侠自然很喜欢。
业务代码应该是没人主力用吧。。。 工具只有适合不适合,没有喜好 |
147
Leviathann 2 天前
|
148
edisonwong 2 天前
写脚本好使,大型项目不好使。我 js , swift ,golang ,python 基本都写过几万行公司生产环境代码, 最近换公司写了几千行 python 有感:
1. django 不同版本兼容不好,网上教程有时候又过时用不了,当然你可以说看官网文档解决 2. 还是 django ,报错跟实际问题天差地别,一个 from .xx import xxx 写得不对,django 居然给我报了个 api 重复注册的报错,我各个角落里试了 try catch 最后才发现 importError 3. schama 约束+强弱类型混用,有点难受 4. 环境问题,在一些老机器上,用 pymysql 之流的还需要系统层面安装底层库,要在一些 centos6 里,源都没了,装就更费劲了。当然你可以说用 docker 解决 当然 java 也不怎么好,占资源,命名太长( doge ) 所以我能用 go+gin 写的就 go 写,go 写起来除了写可变结构体、复杂 json 结构的时候有点难受,别的还好。占资源好,编译随处执行,并发好写。 |
149
edisonwong 2 天前
@edisonwong 补上
前端 node ,版本管理不太好。稍微换一下 node 版本、组件升级之类了,很多都跑不了 相比 go mod 管的就挺好,当然有一些异类的库,比如 etcd ,需要手动 gomod 里 replace ,据说是因为 etcd 作者反 go mod ( doge ) |
150
ounxnpz 2 天前
你针对的是这样的结构
{ "k": v } |
152
qq78660651 1 天前
为什么那么多人用,因为库多,功能实现快;
为什么库多,因为用的人多; |
153
Plumbiu 1 天前
@edisonwong 这种大概率没锁依赖版本,前面全是^开头的
|
154
Sawyerhou 1 天前
|
155
yb2313 1 天前
不是,因地制宜啊,哪个方便用哪个啊,还能被语言给限制了吗
|
156
rushpu 1 天前
语言之争,日经贴
|