那些 Python 语言设计上的重大失误

2021-12-02 05:12:29 +08:00
 AndyAO

python 系统性的限制了代码的灵活执行,不管是 lambda 还是 eval 都只能运行表达式,应用场景十分有限,极大的限制了 python 语言的表现力。

本来能够很容易就写出来的代码,需要绕弯子。

这种限制在当前没有任何站得住脚的合理解释,非要说就只能扯 pythnoic 意识形态大旗。

python 还有个更糟糕的设计是用缩进当做语法,也许在 30 年前能少敲几下键盘,或者让缩进看起来更一致和美观,但是现在的各种 IDE 全都能自动解决这些问题,根本就不需要人操心。

不过这些设计上的问题总会有些争论的,毕竟大家对自己常用的工具都挺有感情的。

设计是好的还是坏的,到现在是否还合时宜,有个更客观的评价标准,就是那个设计是否影响到了最近才出现的主流语言,如果那个设计是后继无人的,那么必定是坏的。

就拿缩进敏感来说吧,算是典型的后继无人,Swift ? Go ? Rust ? Kotlin ?这种糟糕的设计已经被后人全面抛弃。

python 还有哪些糟糕的设计?

以设计的传承性来看,你可能会发现更多败笔,它们已经被历史无情地扔到垃圾堆中了。

毕竟很多东西都有其时代局限性。

9745 次点击
所在节点    Python
89 条回复
vanton
2021-12-05 01:17:57 +08:00
@ClericPy #69
vscode 新加的这个功能不错,刚发现。
AX5N
2021-12-05 15:34:40 +08:00
缩进敏感是个伟大的文明
kilasuelika
2021-12-06 01:57:18 +08:00
@ipwx 哈哈那你很厉害呀👍🏻,项目管理确实重要,不然很容易就搞乱了。
O5oz6z3
2021-12-06 16:30:17 +08:00
你是对的,这个语言就和它的名字一样,是个喜剧 /笑话。
O5oz6z3
2021-12-08 13:32:16 +08:00
看到英文维基上在传播 #Languages_influenced_by_Python 的胡说八道,我气得浑身发抖手脚冰凉(入冬),英文互联网还能不能好了?
c0xt30a
2021-12-11 22:57:42 +08:00
@ipwx 是否有开源展示可以让我等前去崇拜一番?确实解决了一大痛点。
ipwx
2021-12-11 23:23:43 +08:00
@c0xt30a 啥玩意儿的代码?

我论文代码: https://github.com/NetManAIOps/Donut
我后来整理出来的一些模型代码: https://github.com/haowen-xu/tfsnippet
ipwx
2021-12-11 23:25:16 +08:00
@c0xt30a 哦你说跑实验的代码?

https://github.com/haowen-xu/ml-essentials
https://github.com/haowen-xu/mlstorage-server

不过这两个相对而言没怎么写好文档。。。
c0xt30a
2021-12-12 03:32:11 +08:00
@ipwx 多谢。就是指那些一次跑多次实验调参数的代码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/819432

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX