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
GeekHub
miniyao
V2EX  ›  Python

新项目上 Python 3.* 版本,当下该选哪个 Py3 的小版本合适?

  •  
  •   miniyao · 190 天前 · 5302 次点击
    这是一个创建于 190 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Python 3.0 时间长,兼容好,部分新特性缺失
    Python 3.4 发布时间久,前向兼容性好,该有的库都有
    Python 3.6 很多机器学习的起步版本,Async 特性
    Python 3.7 口碑好,性能提升大
    Python 3.8 最新版

    本想线上用 3.7,该有的都有,可惜是个奇数小版本号,有些库都懒得去适配测试奇数小版本的兼容性,3.8 太新了,周边一些库都没跟上。
    53 条回复    2020-04-09 17:45:37 +08:00
    kokutou
        1
    kokutou   190 天前   ❤️ 1
    直接最新咯,有 bug 就修,
    总是要修的,你现在不修,以后升级不还是要修。。。
    Jblue
        2
    Jblue   190 天前
    个人推荐 3.7
    ClericPy
        3
    ClericPy   190 天前
    3.8 刚出的时候 whl 都不全, 对 Windows 很不友好, linux 上还算可以, 不过新特性真没有几个让人眼前一亮的, 之前 V 友也发了性能对比, 3.6 比 3.5 提升挺大, 3.7 比 3.6 在个别组件有优化, 3.8 则没有太亮眼的性能提高. 至于说兼容性, 那种库不用也罢, 非要用就看看证书可不可以自己魔改它.

    之前用 pytest 检查的时候发现, 包括 aiohttp 和 lxml 都有很多 3.8 不再兼容的语法(比如 abc 不再从 collections 里拿), 但是这些大库最新版已经兼容上了

    简单的说, 看看不向后兼容的地方就知道尽量不要追新. 按照往年的套路, 任何大版本更新, 冷却它一年.
    Trim21
        4
    Trim21   190 天前 via iPhone
    3.4 以前的就算了吧,都已经结束支持了…
    bnm965321
        5
    bnm965321   190 天前
    推荐 3.8,用 assignment expression 可爽了
    linvaux
        6
    linvaux   190 天前
    python3.7.3 或者 python3.7.5
    lishunan246
        7
    lishunan246   190 天前 via Android
    本来有自信回答这个问题的,但看到你说 Python3.0 兼容好,我又有丶犹豫了。
    Hstar
        8
    Hstar   190 天前
    新项目肯定用最新版呀,保守估计新项目 release 的时候 3.9 了,还选 3.7 就有点。。。
    CallMeReznov
        9
    CallMeReznov   190 天前
    盲选 3.7
    wzwwzw
        10
    wzwwzw   190 天前
    3.7.5
    Vegetable
        11
    Vegetable   190 天前
    ^3.7
    ShuoHui
        12
    ShuoHui   190 天前 via iPhone
    我用 3.7 (
    cz5424
        13
    cz5424   190 天前 via iPhone
    公司目前项目还用着 3.6
    jeeyong
        14
    jeeyong   190 天前
    3.7.5
    pmispig
        15
    pmispig   190 天前
    千万不要 3.4 有 BUG 没修
    hellomrjia
        16
    hellomrjia   190 天前
    3.7.3,Debian10 自带。
    imycc
        17
    imycc   190 天前
    3.7 吧,3.8 的新特性你又用不上,等些时间让周边库跟进之后再升级
    keepeye
        18
    keepeye   190 天前
    3.5.7
    alphadog619
        19
    alphadog619   190 天前
    3.6 或 3.7 3.8 有的 package 不支持
    keepeye
        20
    keepeye   190 天前
    @keepeye 我说的是我线上环境,用哪个版本还是要取决你的项目
    zhoudaiyu
        21
    zhoudaiyu   190 天前
    还在用的 3.5.5.....
    aydd2004
        22
    aydd2004   190 天前
    @linvaux 为什么跳过了我正在用的 3.7.4 妈蛋
    wuhaoworld
        23
    wuhaoworld   190 天前   ❤️ 1
    当年争论用 python3 还是 pyhon2,如今....
    black11black
        24
    black11black   190 天前
    需要用新特性直接上 3.8,次选 3.7,asyncio api 两版本略微不同,3.8 增加了一些好用的特性。3.6 以前的 api 基本没法用,上了就是坑,自己选吧。
    frostming
        25
    frostming   189 天前
    推荐 3.7,wheel 兼容很重要,就算 Linux 我也不想动不动报个编译错误
    WoStaring
        26
    WoStaring   189 天前
    盲选 3.7
    way2explore2
        27
    way2explore2   189 天前
    @Jblue

    同感 3.7

    python 不像 node
    xpresslink
        28
    xpresslink   189 天前
    直接上 3.7.6 源码编译安装的。但是在 cenOS6 上面 openssl 库也要源码编译升级,不然 pip3 用不了。
    wuwukai007
        29
    wuwukai007   189 天前   ❤️ 1
    必须 3.6+ 就为了 f 字符串这一点 也要上
    black11black
        30
    black11black   189 天前
    @xpresslink 3.7 和 3.8 对于旧发行版都有很多限制,很多开发工具必须装,涉及到一些库比如 sqlite,zlip 之类的都会出现你说的问题。没有系统支持的话源码安装不会编译该选项的 so
    zcfnc
        31
    zcfnc   189 天前
    看了下自己的 在学校用的 3.5.2 到去年毕业出来上班还是在用这个一直没换。。。。。
    zhongjidalao
        32
    zhongjidalao   189 天前
    我用的 3.7
    yeyuqiu
        33
    yeyuqiu   189 天前
    我们新项目就用的 3.7.5
    Huelse
        34
    Huelse   189 天前
    3.7 或 3.6
    chempotato
        35
    chempotato   189 天前 via Android
    生产环境一直 3.6
    GoLand
        36
    GoLand   189 天前
    求稳 3.6,新一点的 3.7 也可以,但是会有少部分库不支持。小项目直接上 3.7 就行了。3.6 升级到 3.7 基本没有什么工作量,能平滑升级。
    lithbitren
        37
    lithbitren   189 天前
    3.75 ,3.8 还有一些库跟不上。
    janxin
        38
    janxin   189 天前
    如果库支持就 3.7,3.8 也可以,维护基本活跃的库现在也都支持 3.8 了,如果使用 asyncio 相关的话还是推荐更新的,尤其是 Windows 环境。科学计算、DL 库一般 bump 版本比较慢,没必要太快上新

    3.6+是最低版本要求了
    leetom
        39
    leetom   189 天前   ❤️ 1
    等等,现在没人考虑 2.7 了吗?

    看来 Python 没落了,从世界上最好的两种编程语言,变成了一种

    2333
    princelai
        40
    princelai   189 天前 via Android
    我本地用 3.8,同事们用 3.7,生产环境用 3.6,就是这么任性
    dantangfan
        41
    dantangfan   189 天前
    @leetom 老乡不要慌,我们都是 2.7,甚至还要兼容 2.6
    exhades
        42
    exhades   189 天前
    公司新项目都是 3.7,自己就 3.9
    mrchi
        43
    mrchi   189 天前
    @exhades 哪有 3.9 版本?🐶
    locoz
        44
    locoz   189 天前
    建议先 3.7,3.8 之前测试发现有点小问题,可以后面看情况再升 3.8
    auxten
        45
    auxten   189 天前 via Android
    这有什么好问大家的,把项目依赖的库对 Python3 的支持范围都列出来,尽量选高版本就好
    jon
        46
    jon   189 天前
    用次新版
    linvaux
        47
    linvaux   188 天前
    @aydd2004 因为我真的没用过 3.7.4
    luozic
        48
    luozic   188 天前
    3.7 +mypy 美滋滋
    jin7
        49
    jin7   188 天前
    自己玩 用 375
    exhades
        50
    exhades   188 天前
    wuwukai007
        51
    wuwukai007   187 天前
    很奇怪 pythoner 蛮喜欢用新版本的~~,对比 java 还在用上古版本。。。。
    liyuhang
        52
    liyuhang   182 天前
    Python 3.5–3.7
    hushao
        53
    hushao   172 天前
    一直用 365,挺稳定的。
    目前没有碰到过 py 方面的问题。

    另:3.6 之前的不建议再用。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4192 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:45 · PVG 15:45 · LAX 00:45 · JFK 03:45
    ♥ Do have faith in what you're doing.