V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Cyanhall
V2EX  ›  Python

你们怎么看现在 Python 的发展方向?

  •  3
     
  •   Cyanhall ·
    Cyanhall · 235 天前 · 5966 次点击
    这是一个创建于 235 天前的主题,其中的信息可能已经有所发展或是发生改变。

    引子 - 今天的争论:IMPORTANT: PEP 563, PEP 649 and the future of pydantic

    个人观察: Flask 作者、SQLAlchemy 作者等都不太喜欢现在的 Python 发展情况,详情见他们推特。

    个人感觉是一直加可有可无的语法糖而带来无谓的 break change 。

    56 条回复    2021-05-12 10:17:14 +08:00
    paddistone
        1
    paddistone  
       235 天前   ❤️ 3
    通过 V2EX 看的
    TypeError
        2
    TypeError  
       235 天前
    只加语法没前途,再不提高性能,只能转 Go 了,
    Python 也就搞搞科学计算还有优势
    sujin190
        3
    sujin190  
       235 天前
    @TypeError #2 但是你要知道,数据科学产生的各种研究、算法、库的价值是永久的,再说性能远没有你想的那么重要,方便使用才是,就凭现在各种深度学习相关的,python 再战 50 年都绰绰有余,go 可就不好说了
    jmc891205
        4
    jmc891205  
       235 天前
    @TypeError 高性能的场景都用 C++来解决
    xingshu1990
        5
    xingshu1990  
       235 天前
    @sujin190 #3 性能这个东西 也不能武断的说不需要,本身可以有办法将 1 个小时的工作,缩减到 30 分钟内,虽然看起来没太大影响,但是本身代码编写就已经很方便了,性能稍微提升一些,做一些对性能要求并不高的操作,也是没太大问题。
    Vegetable
        6
    Vegetable  
       235 天前
    pydantic 作者提到说理事会还有成员昨天之前没听过 pydantic 是什么,说实话这有点离谱了

    学习一下「从群众中来,到群众中去」
    sujin190
        7
    sujin190  
       235 天前
    @xingshu1990 #5 不是不需要,是没你想的那么重要,对于 python 来说,简洁简单和更好性能来选择,那肯定选前者,再说对于 python 来说,数据科学、人工智能、科研实验才是它的未来,就像深度学习,你性能再高能比得过专业团队设计的运行框架么,比得过专门设计的神经网络芯片么,所以讲究啥性能,让各教授大佬研究生快速入门把他的想法实现出来才是正理
    arischow
        8
    arischow  
       235 天前
    一定程度上没有好爹,社区自治体制下的结果。

    然后就是使用的群体目的比较分散。
    threebr
        9
    threebr  
       235 天前
    Python 唯一让我迷惑的就是 CPython 实现下为什么要加个线程间的全局锁?这不是自废武功么。不然性能可以提升一大截
    abersheeran
        10
    abersheeran  
       235 天前   ❤️ 1
    我觉得这个 PEP 还真不应该撤回。它解决了两个痛点,第一是 typing 模块拖慢 Python 运行速度,一份满满都是 type hint 的 Python 代码远比啥也不加的要慢。第二个是取消了类型注释的运行时影响,在我编写代码的时候,我不喜欢写 Any,所以经常遇见一个类方法 /属性返回另一个类,而另一个类里也有方法 /属性返回这个类,而这两个类又是不同功能,放在不同模块的,从而导致循环引入问题。最重要的是,它终于实现了 typing 一开始的承诺——无运行时影响。运行时影响本身就是一个实现上的 BUG 。

    pydantic 作者反对,大概是因为代码写好了不愿意动(他最近也挺忙的),我十分理解他的心情。但 fastapi/starlette 就算了吧,代码里面多少 Any 看过的人都有数,这个 pep 对它来说就是可有可无。

    ---

    楼上说到性能,社区现在也有使用 type hint 作为元信息进行编译加速的,虽然还是个半成品,但也在发展了。而且据说 Python Core Developers 也在筹措 CPython JIT 的事。

    我倒觉得与其炮轰这个,不如让那些家伙别再加语法糖了,把精力放在 JIT 上不好吗。
    15399905591
        11
    15399905591  
       235 天前   ❤️ 1
    python 目前感觉是四面开花, 按现在的情况来看,后续发展方向肯定是往科学运算方向了,web 方向不管是 go 还是 java,感觉都比 python 更有前途。
    est
        12
    est  
       235 天前   ❤️ 1
    这个都怪 Guido 放弃治疗吧。https://twitter.com/gvanrossum/status/773593466609610753

    2016 年以后 py 核心功能一直是走下坡路的
    est
        13
    est  
       235 天前
    看到这在喷 Larry Hastings 。感觉不应该啊。Larry 是 Gilectomy 作者,努力去掉 GIL 的。
    whileFalse
        14
    whileFalse  
       235 天前
    我想知道大部分 Python 用户是用它来干什么?

    如果大量用户只是写写小工具、科学计算,可能并不关心这些有的没的吧。科学计算可能对性能稍微敏感。然后现在 Python 性能烂的一 B,不知道算不算现代主流编程语言里最慢的?(虽然作为小工具用户我也不 care 性能……)
    Mithril
        15
    Mithril  
       235 天前
    Python 现在用的最多的是科研这帮人吧,真的有人会很在乎它的性能?各种框架里面涉及到性能的基本都 C++走起了。Python 实际上就是张草稿纸。
    除了有的公司不讲究直接把草稿纸扔给客户发布了,不然做到产品里的都会重构一遍吧?
    lewinlan
        16
    lewinlan  
       235 天前 via Android
    python: 我只考了 30 分
    pydantic: 我让 python 提升到 50 分了!我超牛逼!
    cmdOptionKana
        17
    cmdOptionKana  
       235 天前   ❤️ 1
    其实 python 发展方向一直都是正确的,就是作为胶水语言,这方面 python 无敌。
    Mohanson
        18
    Mohanson  
       235 天前 via Android   ❤️ 2
    py 失去独裁者 guido 后就一直在加速加 feature, 已经不再关注这门语言了,个人感觉已经处在衰落期

    go 所有语法官方一页 markdown 就结束了,py 各种语法糖黑魔法多的要写一本书。(应该真的有一本书叫做 py 黑魔法,好像 10 来年前曾经看过有点映象…
    tmac33
        19
    tmac33  
       235 天前   ❤️ 1
    少儿编程,首选
    fushallg
        20
    fushallg  
       235 天前
    怕了,以后还要靠 python 吃饭,结果看你们说 python 似乎不太行了
    Aprilming
        21
    Aprilming  
       235 天前
    我选择的是 python 在没前途的道路-web 开发,我都没绝望,怕毛,性能不行,但是我开发速度快啊,还尼玛快的离谱!
    love
        22
    love  
       235 天前   ❤️ 1
    连我这种前 Python 粉都转 typescript 了,至少写 web 应用 python 已经被 node 甩飞了
    seven123
        23
    seven123  
       235 天前   ❤️ 1
    3 年 python 转 java 了
    zhujq
        24
    zhujq  
       235 天前
    python 转了 java 又转了 go
    THP301
        25
    THP301  
       235 天前
    语法糖语言就这样
    Jirajine
        26
    Jirajine  
       235 天前 via Android
    科学计算 Julia,运维脚本 deno,web 后端 Ruby/Crystal,嵌入脚本 Lua,感觉都比 Python 舒服。
    wunsch0106
        27
    wunsch0106  
       235 天前
    @Aprilming 老哥,py web 开发做多久了,我刚毕业一年不到,也是 web 开发的,现在想转 go 了。有点迷茫,py web 开发上限是多少,普遍的来说,20k 能到吗
    neutrinos
        28
    neutrinos  
       235 天前 via iPhone   ❤️ 1
    @threebr 当初引入的时候是因为 GC 算法限制,后来解决了,但是 1. 去掉后单线程性能下降 2. 去掉后无法解决第三方 C 线程安全问题
    so1n
        29
    so1n  
       235 天前
    突然发现依赖 pydantic 的框架很好解决这些问题, 难解决问题的是 pydantic 本身, 我自己的框架依赖于 pydantic, 然后通过这样改就可以解决问题了:https://github.com/so1n/pait/commit/64b57a60f9f1dab45a0ae28e3ed967e6cb6f5714#diff-79b67720f2fb8e67e5cd72f33abf0e4f805aba843537b59dcbbcdeb1aa6fdfa5L67
    Aprilming
        30
    Aprilming  
       235 天前
    @wunsch0106 #27 18 年毕业,现在 20k 不到,如果跳一次槽,20k 应该是轻轻松松(上海地区啊),python web 的上限多少我也不知道,我师傅也是 python web, 研发主管,40k 差点意思。主要是单纯做 web 估计够呛,我现在算是半个全栈(当然不会 css 啦!)
    wunsch0106
        31
    wunsch0106  
       235 天前
    @Aprilming 现在公司的项目难度不是特别大, 也没高并发啥的。 想问问看,你们公司高并发分布式微服务等用的多吗。感谢老哥回答
    Aprilming
        32
    Aprilming  
       235 天前
    @wunsch0106 #31 没有,我们的业务并发不高,但是我们要用到私有云,搞起来就很难受。
    chenqh
        33
    chenqh  
       235 天前
    有时候很好奇为什么 php 能性能优化那么多? ruby 也可以,但是 ruby 就不可以
    chenqh
        34
    chenqh  
       235 天前
    @Aprilming 大佬 NB,我已经绝望了
    James369
        35
    James369  
       235 天前
    @Aprilming #30 不错,哪个城市的水平
    Aprilming
        36
    Aprilming  
       235 天前
    @James369 #35 我在上海,我师傅在南京。
    Aprilming
        37
    Aprilming  
       235 天前
    @James369 #35 我不是大佬,我好菜的。我师父才是大佬。
    luofan004
        38
    luofan004  
       235 天前
    python 有自己的应用场景吧,包括 web 方向,再说程序语言到最后都是互通的,只要一直在进步,最后不都是一致的。
    princelai
        39
    princelai  
       235 天前
    @Jirajine #26 我工作是 python 机器学下相关,曾经很迷恋 julia,觉得性能太棒了,但是学了 1 年后,才发现是鼓吹的人多,真在用的人太少了,想要把 julia 写好,小技巧真的太多了,入门水平写出的东西也就和 numpy/pandas/sklearn 这些持平甚至更差点,更不用说 tensorflow/pytorch 这些生态了,科学计算追上 python 再等 10 年吧。
    Jirajine
        40
    Jirajine  
       235 天前 via Android
    @princelai 我只是说比 Python 舒服,毕竟是一门从最开始就为科学计算设计的语言。
    Python 的一个大问题是对函数式太不友好了。
    onice
        41
    onice  
       235 天前
    我搞安全的,用 py 写安全工具,挺香的。
    我也写 web,py 开发速度也很快。目前对 py 很满意。py 几乎是万能的。
    abersheeran
        42
    abersheeran  
       235 天前
    @Jirajine https://aber.sh/articles/How-to-writing-functional-Python/ 一点我写函数式 Python 的心得。我不觉得有不友好,可能是我和你的使用习惯不一样,你可以看一看我的以作参考。
    inframe
        43
    inframe  
       235 天前
    快速原型搭建上,我觉得 python 是最快的语言和最充分的生态圈
    levelworm
        44
    levelworm  
       235 天前
    最烦的就是往上不停的堆东西。其中堆函数编程得最烦。
    domodomo
        45
    domodomo  
       235 天前
    10 年前的标题是“你们如何看待 Perl 的发展方向?”
    我估计有人就没听说过 Perl 吧,这就是历史呀。
    rinsingw
        46
    rinsingw  
       234 天前
    @Aprilming 大佬开课吗?想学 python
    hangszhang
        47
    hangszhang  
       233 天前
    当脚本,写小工具用
    agagega
        48
    agagega  
       233 天前 via iPhone
    原来语言 feature 太多也会被吐槽,我想知道 Go 的粉丝怎么看待 Swift/Rust ?
    jones2000
        49
    jones2000  
       233 天前
    @threebr 都用 CPython 了,当然所有的计算的东西都放在 c++里面完成了. 在 c++内部你可以自己开并行或多线程, 外部 py 只负责传数据和接收结果就可以了. c++和 py 交互尽量少, 影响效率.
    DeWjjj
        50
    DeWjjj  
       233 天前
    python 挺好的,至少在就目前而来很长一部分时间都会是创业团队首选之一。
    反而 go 这样的大型项目都当组件的语言,如果再不动动反而觉得不好。
    no1xsyzy
        51
    no1xsyzy  
       232 天前   ❤️ 1
    @domodomo 而且官网还被劫持了。是劫持,不是 DNS 污染(你们不要再混淆了),而是域名的所有权被人非法转移了。
    https://www.solidot.org/story?sid=67065
    binpo
        52
    binpo  
       229 天前
    @wunsch0106 换不换工作
    欢迎私聊
    wx:15397008337
    binpo
        53
    binpo  
       229 天前
    @onice 哥们换工作不
    wunsch0106
        54
    wunsch0106  
       229 天前
    @binpo 余杭哪啊
    leven87
        55
    leven87  
       228 天前
    挺好的呀,我在欧洲读书的时候, 学校里面做数据处理,深度学习 python 是必会的,可以说几乎所有的工科生都是必会 python 的。 而且 python 也可以做 web, 挺好的。
    binpo
        56
    binpo  
       209 天前
    @wunsch0106 滨江,长河
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2444 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:52 · PVG 08:52 · LAX 16:52 · JFK 19:52
    ♥ Do have faith in what you're doing.