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
strahe
V2EX  ›  Python

有多大的理由坚守 Python2?

  •  
  •   strahe · 2016-03-18 22:38:46 +08:00 · 6523 次点击
    这是一个创建于 3158 天前的主题,其中的信息可能已经有所发展或是发生改变。

    除了老项目迁移成本之外,新项目还有多大的理由坚守 Python2?

    如果写惯 3 的再回去写 2(不是自愿),会是什么心理?

    第 1 条附言  ·  2016-03-19 19:02:33 +08:00
    你们坚守 2 的理由成立,可以不用回复了.
    53 条回复    2016-03-21 00:03:39 +08:00
    menc
        1
    menc  
       2016-03-18 22:49:15 +08:00
    不推荐,不应该,不希望回到 2 ,除非有难言之隐
    ibigbug
        2
    ibigbug  
       2016-03-18 22:50:53 +08:00
    不想学 3 , 2 够用
    knightdf
        3
    knightdf  
       2016-03-18 23:03:09 +08:00
    因为 2 对我来说够用,没什么问题。。
    vdo
        4
    vdo  
       2016-03-18 23:07:26 +08:00   ❤️ 4
    有啥理由迁移去 3...
    gfreezy
        5
    gfreezy  
       2016-03-18 23:28:35 +08:00
    pypy
    strahe
        6
    strahe  
    OP
       2016-03-18 23:37:18 +08:00
    @menc 恩,我感觉 3 并不只是改了几个语法那么简单,要体会了才知道,那帮开发者又不是傻子
    fy
        7
    fy  
       2016-03-18 23:48:04 +08:00
    月经贴,有什么理由呢?愿意用就用,不愿意就不用,反正我更喜欢 3
    hosiet
        8
    hosiet  
       2016-03-19 00:05:26 +08:00 via Android
    又是月经贴……

    不算远的将来必将停止支持这点算不?
    billlee
        9
    billlee  
       2016-03-19 00:24:06 +08:00   ❤️ 1
    因为有的人只是刚好得到了写代码这份工作
    AndyCrz
        10
    AndyCrz  
       2016-03-19 00:34:35 +08:00
    你有多大勇气换到 3 上面去?
    dawncold
        11
    dawncold  
       2016-03-19 06:28:55 +08:00 via iPhone
    依赖不升级
    lcj2class
        12
    lcj2class  
       2016-03-19 07:24:24 +08:00 via iPhone
    cent os 默认还是 2.6 来
    sinux
        13
    sinux  
       2016-03-19 08:06:39 +08:00   ❤️ 3
    人家 JavaScript es5 > es6 > es7 马不停蹄,这边写 Python 的居然还有一群人明明没什么依赖强行留在旧版本宣誓自己的忠诚,甚至还把 2 和 3 的那点语法区别搬出来作为一个理由 23333
    shyling
        14
    shyling  
       2016-03-19 08:35:16 +08:00 via iPad
    @sinux 毕竟一个向前兼容。。一个。。。。
    yeyeye
        15
    yeyeye  
       2016-03-19 08:44:56 +08:00
    @lcj2class 哥们…… 你可以不知道 centos7 自带的是什么版本 但是 不要误导别人
    yeyeye
        16
    yeyeye  
       2016-03-19 08:45:41 +08:00
    这有啥的 还有一群人在坚守 VB6 呢,要是 VB6 有多线程,坚守的人会更多
    workwonder
        17
    workwonder  
       2016-03-19 09:42:28 +08:00 via Android
    不向前兼容也不推过度版本作警告,这不是耍流氓嘛
    leitwolf
        18
    leitwolf  
       2016-03-19 09:52:22 +08:00
    用 golang 就好了
    sandideas
        19
    sandideas  
       2016-03-19 09:56:53 +08:00 via iPhone
    能解决问题就好。
    人有不傻,如果换 3 的利益大于用 2 的。自然就换了
    EPCoo
        20
    EPCoo  
       2016-03-19 10:00:55 +08:00 via iPhone
    刚入门的小白问一下,如何让没有安装 Python3 的 MAC 运行 Python3 的文件?不然还不是要去用 Python2.x 写?
    shuax
        21
    shuax  
       2016-03-19 10:04:13 +08:00
    est
        22
    est  
       2016-03-19 10:04:42 +08:00
    @sinux 如果 es7 宣布字符串只能用单引号,双引号全部作废,然后性能下降 20% 你还用 es7 不?
    mink
        23
    mink  
       2016-03-19 10:06:13 +08:00
    写 2 和 3 兼容的 有那么难么
    tabris17
        24
    tabris17  
       2016-03-19 10:11:08 +08:00
    本来 gevent 不支持 3 ,现在支持了,没有理由了
    MinskyNg
        25
    MinskyNg  
       2016-03-19 10:12:23 +08:00
    以前是因为 scrapy 和 gevent 不支持 py3 ,但是现在都支持了
    0x1406F40
        26
    0x1406F40  
       2016-03-19 10:17:05 +08:00
    已经从 3 迁移回 2
    magicdawn
        27
    magicdawn  
       2016-03-19 10:45:55 +08:00
    chrome v8 使用 gyp 去 build ,于是 nodejs 涉及到 c/c++部分都是用 node-gyp 去 spawn python 进程。。。
    只支持 2 。。。
    strahe
        28
    strahe  
    OP
       2016-03-19 11:34:15 +08:00
    @sinux 其实没必要跟他们争了,我过来不是问的,只是发个牢骚,那些坚守 2 的其实大部分根本没写过 3,或者根本没体会过 3,只有一小部分体会过 3,但是还是觉得 2 合适,这样的人我是钦佩的,其他人,没什么好争的.
    xuboying
        29
    xuboying  
       2016-03-19 11:52:55 +08:00 via Android
    wxpython 算不算一个理由
    wodemyworld
        30
    wodemyworld  
       2016-03-19 12:46:45 +08:00
    print 加括号了。。。。。。
    merito
        31
    merito  
       2016-03-19 13:07:22 +08:00
    @EPCoo 然而用自带的 python2 时, pip 还得要权限。不如装个 homebrew ,干净整洁
    workwonder
        32
    workwonder  
       2016-03-19 13:25:21 +08:00 via Android
    不知以后社区会不会 fork 出一个分支来兼容 2 和 3
    kidlj
        33
    kidlj  
       2016-03-19 13:39:23 +08:00 via Android
    strahe
        34
    strahe  
    OP
       2016-03-19 14:17:02 +08:00
    @workwonder 2 过几年官方都不支持了还有必要吗 现在都不更新了只维护
    yonka
        35
    yonka  
       2016-03-19 14:35:06 +08:00
    既然爱 py ,就不要害他(继续分裂下去)
    Neveroldmilk
        36
    Neveroldmilk  
       2016-03-19 15:10:53 +08:00
    越早迁移 Py3 越好,大势所趋。
    aljun
        37
    aljun  
       2016-03-19 15:12:40 +08:00 via iPhone
    我觉得 2 的话,包多,而且用着习惯,性能还行
    WangYanjie
        38
    WangYanjie  
       2016-03-19 15:49:07 +08:00
    有啥理由要迁移到 3 ?
    shyling
        39
    shyling  
       2016-03-19 16:00:36 +08:00
    说实在。。 2 用起来足够了。。去 pypi 装一个库,它至少都支持 cpython2 。。。 python3 bytes,str 傻傻分不清
    RqPS6rhmP3Nyn3Tm
        40
    RqPS6rhmP3Nyn3Tm  
       2016-03-19 16:03:20 +08:00
    ggjjl1
        41
    ggjjl1  
       2016-03-19 16:14:19 +08:00
    现在大部分 linux 自带的 python 版本都是 2.7 的吧,这个理由够吗
    zhtsuc
        42
    zhtsuc  
       2016-03-19 18:04:17 +08:00
    3 改动太多,没必要学
    tonghuashuai
        43
    tonghuashuai  
       2016-03-19 18:39:37 +08:00 via iPhone
    有多大理由去用 3 呢?
    onelove
        44
    onelove  
       2016-03-19 19:07:29 +08:00 via iPhone
    我怕搞混了,现在只学 2 。。。
    workwonder
        45
    workwonder  
       2016-03-19 19:11:22 +08:00 via Android
    @strahe 这么说吧,我个人是很追新的。
    但是生产环境你升级对你有什么现实意义呢?为什么不能逐渐 deprecated 来完成升级呢?
    所以很有现实意义。
    workwonder
        46
    workwonder  
       2016-03-19 19:13:07 +08:00 via Android
    所以,即使 js 用到 es6 了, Python3 都懒得看,感觉这么做不对头。
    noli
        47
    noli  
       2016-03-19 19:27:58 +08:00
    py2 py3 并存不是很难的事情吧?很难理解为什么要坚守或者放弃……

    顺便 @EPCoo , mac 上可以以完全不影响 py2 的方式来装 py3 例如 用 homebrew
    loading
        48
    loading  
       2016-03-19 21:56:02 +08:00 via Android
    新项目用 py3 没问题,但是我准备一直用 py2 ,然后换语言!

    我能控制的服务器只有几台,都已经在跑 py2 ,懒得搞环境。
    jadecoder
        49
    jadecoder  
       2016-03-19 22:34:52 +08:00
    没有足够的好处让我换到 Python3 。坏处倒是有,运维没搞过 3 的环境,强行推的话,运维不情愿,不好好做,出事故了还要把锅甩我头上
    geeklian
        50
    geeklian  
       2016-03-20 11:47:49 +08:00
    其实 py2 和 py3 没差...

    1. 听领导的。
    2. 自己是领导,爱用啥用啥。
    Aspx
        51
    Aspx  
       2016-03-20 17:16:46 +08:00 via Android
    3 和 2 差距很大么?一群人一直抓那点差别说事,有意思嘛?
    jimzhong
        52
    jimzhong  
       2016-03-20 18:35:12 +08:00
    自己写东西都用 Py3 ,因为 unicode 问题。
    janxin
        53
    janxin  
       2016-03-21 00:03:39 +08:00 via iPad
    用 python3 起码要给 pypy3 捐个款了…
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1602 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 16:58 · PVG 00:58 · LAX 08:58 · JFK 11:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.