
引子 - 今天的争论:IMPORTANT: PEP 563, PEP 649 and the future of pydantic
个人观察: Flask 作者、SQLAlchemy 作者等都不太喜欢现在的 Python 发展情况,详情见他们推特。
个人感觉是一直加可有可无的语法糖而带来无谓的 break change 。
1 paddistone 2021 年 4 月 16 日 通过 V2EX 看的 |
2 TypeError 2021 年 4 月 16 日 只加语法没前途,再不提高性能,只能转 Go 了, Python 也就搞搞科学计算还有优 |
3 sujin190 2021 年 4 月 16 日 @TypeError #2 但是你要知道,数据科学产生的各种研究、算法、库的价值是永久的,再说性能远没有你想的那么重要,方便使用才是,就凭现在各种深度学习相关的,python 再战 50 年都绰绰有余,go 可就不好说了 |
5 xingshu1990 2021 年 4 月 16 日 @sujin190 #3 性能这个东西 也不能武断的说不需要,本身可以有办法将 1 个小时的工作,缩减到 30 分钟内,虽然看起来没太大影响,但是本身代码编写就已经很方便了,性能稍微提升一些,做一些对性能要求并不高的操作,也是没太大问题。 |
6 Vegetable 2021 年 4 月 16 日 pydantic 作者提到说理事会还有成员昨天之前没听过 pydantic 是什么,说实话这有点离谱了 学习一下「从群众中来,到群众中去」 |
7 sujin190 2021 年 4 月 16 日 @xingshu1990 #5 不是不需要,是没你想的那么重要,对于 python 来说,简洁简单和更好性能来选择,那肯定选前者,再说对于 python 来说,数据科学、人工智能、科研实验才是它的未来,就像深度学习,你性能再高能比得过专业团队设计的运行框架么,比得过专门设计的神经网络芯片么,所以讲究啥性能,让各教授大佬研究生快速入门把他的想法实现出来才是正理 |
8 arischow 2021 年 4 月 16 日 一定程度上没有好爹,社区自治体制下的结果。 然后就是使用的群体目的比较分散。 |
9 threebr 2021 年 4 月 16 日 Python 唯一让我迷惑的就是 CPython 实现下为什么要加个线程间的全局锁?这不是自废武功么。不然性能可以提升一大截 |
10 abersheeran 2021 年 4 月 16 日 我觉得这个 PEP 还真不应该撤回。它解决了两个痛点,第一是 typing 模块拖慢 Python 运行速度,一份满满都是 type hint 的 Python 代码远比啥也不加的要慢。第二个是取消了类型注释的运行时影响,在我编写代码的时候,我不喜欢写 Any,所以经常遇见一个类方法 /属性返回另一个类,而另一个类里也有方法 /属性返回这个类,而这两个类又是不同功能,放在不同模块的,从而导致循环引入问题。最重要的是,它终于实现了 typing 一开始的承诺无运行时影响。运行时影响本身就是一个实现上的 BUG 。 pydantic 作者反对,大概是因为代码写好了不愿意动(他最近也挺忙的),我十分理解他的心情。但 fastapi/starlette 就算了吧,代码里面多少 Any 看过的人都有数,这个 pep 对它来说就是可有可无。 --- 楼上说到性能,社区现在也有使用 type hint 作为元信息进行编译加速的,虽然还是个半成品,但也在发展了。而且据说 Python Core Developers 也在筹措 CPython JIT 的事。 我倒觉得与其炮轰这个,不如让那些家伙别再加语法糖了,把精力放在 JIT 上不好吗。 |
11 15399905591 2021 年 4 月 16 日 python 目前感觉是四面开花, 按现在的情况来看,后续发展方向肯定是往科学运算方向了,web 方向不管是 go 还是 java,感觉都比 python 更有前途。 |
12 est 2021 年 4 月 16 日 |
13 est 2021 年 4 月 16 日 看到这在喷 Larry Hastings 。感觉不应该啊。Larry 是 Gilectomy 作者,努力去掉 GIL 的。 |
14 whileFalse 2021 年 4 月 16 日 我想知道大部分 Python 用户是用它来干什么? 如果大量用户只是写写小工具、科学计算,可能并不关心这些有的没的吧。科学计算可能对性能稍微敏感。然后现在 Python 性能烂的一 B,不知道算不算现代主流编程语言里最慢的?(虽然作为小工具用户我也不 care 性能……) |
15 Mithril 2021 年 4 月 16 日 Python 现在用的最多的是科研这帮人吧,真的有人会很在乎它的性能?各种框架里面涉及到性能的基本都 C++走起了。Python 实际上就是张草稿纸。 除了有的公司不讲究直接把草稿纸扔给客户发布了,不然做到产品里的都会重构一遍吧? |
16 lewinlan 2021 年 4 月 16 日 via Android python: 我只考了 30 分 pydantic: 我让 python 提升到 50 分了!我超牛逼! |
17 cmdOptionKana 2021 年 4 月 16 日 其实 python 发展方向一直都是正确的,就是作为胶水语言,这方面 python 无敌。 |
18 Mohanson 2021 年 4 月 16 日 via Android py 失去独裁者 guido 后就一直在加速加 feature, 已经不再关注这门语言了,个人感觉已经处在衰落期 go 所有语法官方一页 markdown 就结束了,py 各种语法糖黑魔法多的要写一本书。(应该真的有一本书叫做 py 黑魔法,好像 10 来年前曾经看过有点映象… |
19 tmac33 2021 年 4 月 16 日 少儿编程,首选 |
20 fushallg 2021 年 4 月 16 日 怕了,以后还要靠 python 吃饭,结果看你们说 python 似乎不太行了 |
21 Aprilming 2021 年 4 月 16 日 我选择的是 python 在没前途的道路-web 开发,我都没绝望,怕毛,性能不行,但是我开发速度快啊,还尼玛快的离谱! |
22 love 2021 年 4 月 16 日 连我这种前 Python 粉都转 typescript 了,至少写 web 应用 python 已经被 node 甩飞了 |
23 seven123 2021 年 4 月 16 日 3 年 python 转 java 了 |
24 zhujq 2021 年 4 月 16 日 python 转了 java 又转了 go |
25 THP301 2021 年 4 月 16 日 语法糖语言就这样 |
26 Jirajine 2021 年 4 月 16 日 via Android 科学计算 Julia,运维脚本 deno,web 后端 Ruby/Crystal,嵌入脚本 Lua,感觉都比 Python 舒服。 |
27 wunsch0106 2021 年 4 月 16 日 @Aprilming 老哥,py web 开发做多久了,我刚毕业一年不到,也是 web 开发的,现在想转 go 了。有点迷茫,py web 开发上限是多少,普遍的来说,20k 能到吗 |
28 neutrinos 2021 年 4 月 16 日 via iPhone @threebr 当初引入的时候是因为 GC 算法限制,后来解决了,但是 1. 去掉后单线程性能下降 2. 去掉后无法解决第三方 C 线程安全问题 |
29 so1n 2021 年 4 月 16 日 突然发现依赖 pydantic 的框架很好解决这些问题, 难解决问题的是 pydantic 本身, 我自己的框架依赖于 pydantic, 然后通过这样改就可以解决问题了:https://github.com/so1n/pait/commit/64b57a60f9f1dab45a0ae28e3ed967e6cb6f5714#diff-79b67720f2fb8e67e5cd72f33abf0e4f805aba843537b59dcbbcdeb1aa6fdfa5L67 |
30 Aprilming 2021 年 4 月 16 日 @wunsch0106 #27 18 年毕业,现在 20k 不到,如果跳一次槽,20k 应该是轻轻松松(上海地区啊),python web 的上限多少我也不知道,我师傅也是 python web, 研发主管,40k 差点意思。主要是单纯做 web 估计够呛,我现在算是半个全栈(当然不会 css 啦!) |
31 wunsch0106 2021 年 4 月 16 日 @Aprilming 现在公司的项目难度不是特别大, 也没高并发啥的。 想问问看,你们公司高并发分布式微服务等用的多吗。感谢老哥回答 |
32 Aprilming 2021 年 4 月 16 日 @wunsch0106 #31 没有,我们的业务并发不高,但是我们要用到私有云,搞起来就很难受。 |
33 simple2025 2021 年 4 月 16 日 有时候很好奇为什么 php 能性能优化那么多? ruby 也可以,但是 ruby 就不可以 |
34 simple2025 2021 年 4 月 16 日 @Aprilming 大佬 NB,我已经绝望了 |
38 luofan004 2021 年 4 月 16 日 python 有自己的应用场景吧,包括 web 方向,再说程序语言到最后都是互通的,只要一直在进步,最后不都是一致的。 |
39 princelai 2021 年 4 月 16 日 @Jirajine #26 我工作是 python 机器学下相关,曾经很迷恋 julia,觉得性能太棒了,但是学了 1 年后,才发现是鼓吹的人多,真在用的人太少了,想要把 julia 写好,小技巧真的太多了,入门水平写出的东西也就和 numpy/pandas/sklearn 这些持平甚至更差点,更不用说 tensorflow/pytorch 这些生态了,科学计算追上 python 再等 10 年吧。 |
40 Jirajine 2021 年 4 月 16 日 via Android @princelai 我只是说比 Python 舒服,毕竟是一门从最开始就为科学计算设计的语言。 Python 的一个大问题是对函数式太不友好了。 |
41 onice 2021 年 4 月 16 日 我搞安全的,用 py 写安全工具,挺香的。 我也写 web,py 开发速度也很快。目前对 py 很满意。py 几乎是万能的。 |
42 abersheeran 2021 年 4 月 16 日 @Jirajine https://aber.sh/articles/How-to-writing-functional-Python/ 一点我写函数式 Python 的心得。我不觉得有不友好,可能是我和你的使用习惯不一样,你可以看一看我的以作参考。 |
43 inframe 2021 年 4 月 16 日 快速原型搭建上,我觉得 python 是最快的语言和最充分的生态圈 |
44 levelworm 2021 年 4 月 17 日 最烦的就是往上不停的堆东西。其中堆函数编程得最烦。 |
45 domodomo 2021 年 4 月 17 日 10 年前的标题是“你们如何看待 Perl 的发展方向?” 我估计有人就没听说过 Perl 吧,这就是历史呀。 |
47 hangszhang 2021 年 4 月 18 日 当脚本,写小工具用 |
48 agagega 2021 年 4 月 18 日 via iPhone 原来语言 feature 太多也会被吐槽,我想知道 Go 的粉丝怎么看待 Swift/Rust ? |
49 jones2000 2021 年 4 月 18 日 @threebr 都用 CPython 了,当然所有的计算的东西都放在 c++里面完成了. 在 c++内部你可以自己开并行或多线程, 外部 py 只负责传数据和接收结果就可以了. c++和 py 交互尽量少, 影响效率. |
50 DeWjjj PRO python 挺好的,至少在就目前而来很长一部分时间都会是创业团队首选之一。 反而 go 这样的大型项目都当组件的语言,如果再不动动反而觉得不好。 |
51 no1xsyzy 2021 年 4 月 19 日 |
52 binpo 2021 年 4 月 22 日 |
54 wunsch0106 2021 年 4 月 22 日 @binpo 余杭哪啊 |
55 leven87 2021 年 4 月 23 日 挺好的呀,我在欧洲读书的时候, 学校里面做数据处理,深度学习 python 是必会的,可以说几乎所有的工科生都是必会 python 的。 而且 python 也可以做 web, 挺好的。 |
56 binpo 2021 年 5 月 12 日 @wunsch0106 滨江,长河 |
57 Lighthughjiajin 2022 年 6 月 16 日 @Aprilming 大佬方便透露 v 吗,一起学习 |