现在入门 Python 的话,现在的话是着手于 Python 3 还是 Python 2? - V2EX
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
misaka00251
V2EX    Python

现在入门 Python 的话,现在的话是着手于 Python 3 还是 Python 2?

  •  
  •   misaka00251 2017-07-16 22:58:12 +08:00 10991 次点击
    这是一个创建于 3009 天前的主题,其中的信息可能已经有所发展或是发生改变。

    感觉是一个很傻(引战)的问题 ;w;

    顺便问问有没有什么书籍及其它的教学资源推荐 ;w;

    第 1 条附言    2017-07-19 16:58:15 +08:00
    想了想还是学 Python 3,感谢大家的回复!;w;
    114 条回复    2017-07-19 16:56:29 +08:00
    1  2  
    gy134340
        1
    gy134340  
       2017-07-16 23:04:29 +08:00
    3
    7sDream
        2
    7sDream  
       2017-07-16 23:09:25 +08:00
    3
    datxiaoy
        3
    datxiaoy  
       2017-07-16 23:09:50 +08:00
    3
    just1
        4
    just1  
       2017-07-16 23:10:11 +08:00 via Android
    3
    0asis
        5
    0asis  
       2017-07-16 23:13:46 +08:00 via iPhone   5
    为了面向 print 的 debug 方便,选 python2
    congeec
        6
    congeec  
       2017-07-16 23:16:22 +08:00
    为嘛会有这种问题?
    aheadlead
        7
    aheadlead  
       2017-07-16 23:16:24 +08:00
    3
    wafm
        8
    wafm  
       2017-07-16 23:21:33 +08:00
    3
    NoAnyLove
        9
    NoAnyLove  
       2017-07-16 23:23:37 +08:00
    3
    hzw94
        10
    hzw94  
       2017-07-16 23:24:32 +08:00
    为什么要往后学
    Kilerd
        11
    Kilerd  
       2017-07-16 23:28:29 +08:00 via iPhone
    python 4
    queuey
        12
    queuey  
       2017-07-16 23:28:59 +08:00 via iPhone
    23333
    tyfulcrum
        13
    tyfulcrum  
       2017-07-16 23:30:41 +08:00
    est
        14
    est  
       2017-07-16 23:34:56 +08:00 via iPhone
    six
    DoraJDJ
        15
    DoraJDJ  
       2017-07-16 23:42:29 +08:00
    Python 3
    upczww
        16
    upczww  
       2017-07-16 23:59:17 +08:00 via iPhone
    3
    yech1990
        17
    yech1990  
       2017-07-17 00:33:15 +08:00 via Android
    现在是 2017 年 7 月 17 日

    3
    mysticzt123
        18
    mysticzt123  
       2017-07-17 01:00:12 +08:00
    3
    BiscuitMiner
        19
    BiscuitMiner  
       2017-07-17 02:11:57 +08:00
    3
    Manchester
        20
    Manchester  
       2017-07-17 02:29:22 +08:00
    「感觉是一个很傻(引战)的问题 ;w;」

    是很傻,但不是引战

    『顺便问问有没有什么书籍及其它的教学资源推荐 ;w;』

    http://www.baidu-x.com/?q=python3+%E6%95%99%E7%A8%8B+
    flaneurse
        21
    flaneurse  
       2017-07-17 03:08:04 +08:00 via Android
    毫无疑问是 3
    cxbig
        22
    cxbig  
       2017-07-17 03:14:05 +08:00
    3
    zetary
        23
    zetary  
       2017-07-17 06:04:09 +08:00 via Android
    3
    blueset
        24
    blueset  
       2017-07-17 06:43:56 +08:00 via Android
    3
    lxml
        25
    lxml  
       2017-07-17 06:53:23 +08:00   2
    告诉你一个 Tips,Python3 发布于已经近十年了,类比下,我很难想象现在买电脑,会问买预装 Win10 的好还是 Xp 的好。
    gulangyu
        26
    gulangyu  
       201707-17 07:14:11 +08:00 via Android
    b 站小甲鱼零基础入门 python 不错
    shiroming
        27
    shiroming  
       2017-07-17 07:28:26 +08:00 via Android   1
    找工作 2 自己搞事情 3
    southwolf
        28
    southwolf  
       2017-07-17 07:44:02 +08:00
    然而 像 [Graphite]( https://github.com/graphite-project/graphite-web) 之类的“主流”工具至今还不支持 Py3
    Perry
        29
    Perry  
       2017-07-17 07:45:35 +08:00 via iPhone
    这个问题放几年前问很多人可能还会说 2
    ShawnRong
        30
    ShawnRong  
       2017-07-17 07:48:22 +08:00
    记得装个 pyenv 方便切换版本
    mimzy
        31
    mimzy  
       2017-07-17 07:56:48 +08:00 via Android
    @southwolf 还是要看到 95% 的「主流」工具已经支持 Python 3 了嘛 http://py3readiness.org
    southwolf
        32
    southwolf  
       2017-07-17 07:59:31 +08:00
    @mimzy 问题是 py3 已经发布十年了啊…
    sagaxu
        33
    sagaxu  
       2017-07-17 08:04:40 +08:00 via Android
    @southwolf 那有什么要紧的? Python 用户日常用的软件,几乎都不是 Python 做的
    kindjeff
        34
    kindjeff  
       2017-07-17 08:07:03 +08:00 via iPhone   1
    Python 是最好的两门语言!
    snnn
        35
    snnn  
       2017-07-17 08:11:00 +08:00
    2
    snnn
        36
    snnn  
       2017-07-17 08:11:30 +08:00
    Linux 下大部分用 tensorflow 的人都在用 python2。
    donething
        37
    donething  
       2017-07-17 08:11:55 +08:00 via Android
    不建议你学 py,去学 PHP 吧。那里才是你的天堂
    Betacoefficient
        38
    Betacoefficient  
       2017-07-17 08:22:11 +08:00   2
    2,推荐 3 的人心态不对,中国人大部分还是用 2 的多,话说 2 学会了研究他们之间的区别也要不了多长时间啊
    就怕你时间都用在纠结语言的问题上,而啥都没有会那就尴尬了。
    julyclyde
        39
    julyclyde  
       2017-07-17 08:39:41 +08:00
    @Betacoefficient 为什么中国人用 2 的多,新人就要学 2 呢?眼界好窄
    tankb52
        40
    tankb52  
       2017-07-17 08:41:40 +08:00
    @Betacoefficient

    其实当年中国人用 IE6 的也多。
    araraloren
        41
    araraloren  
       2017-07-17 08:46:52 +08:00
    Nim - The next python
    NoAnyLove
        42
    NoAnyLove  
       2017-07-17 08:50:33 +08:00
    我本来是期待着整齐的队形,一路的 3 下来。。。。。。结果。。。。。。
    evil4ngl3
        43
    evil4ngl3  
       2017-07-17 08:51:18 +08:00
    轮子哥说过,Python 是最好的两门语言。。。(逃。。
    weer0026
        44
    weer0026  
       2017-07-17 09:00:34 +08:00
    都学~~
    cat9life
        45
    cat9life  
       2017-07-17 09:02:56 +08:00
    233333~
    Takahashi
        46
    Takahashi  
       2017-07-17 09:13:31 +08:00
    刚学习建议 2,因为网上大部分资料版本都是 2 的。。
    haogefeifei
        47
    haogefeifei  
       2017-07-17 09:18:37 +08:00   1
    都学,还是有写强大的框架只支持 Python2 的。 尽量用 3 写就行了
    misaka00251
        48
    misaka00251  
    OP
       2017-07-17 09:19:47 +08:00
    @NoAnyLove 哇……这楼看的我好纠结,真的
    Finest
        49
    Finest  
       2017-07-17 09:20:17 +08:00
    开始是学 3 的,但发现公司机器都只有 2,而且有些库只支持 2,所以,无奈还是用回了 2
    misaka00251
        50
    misaka00251  
    OP
       2017-07-17 09:20:32 +08:00
    @Manchester 记得以前网上有一个网页版的教程,貌似是翻译过来的,找了半天没找到 ;w;
    misaka00251
        51
    misaka00251  
    OP
       2017-07-17 09:22:27 +08:00
    @lxml 3 的历史有这么久了吗……前几年看市面上还是各种 python 2
    alphadog619
        52
    alphadog619  
       2017-07-17 09:23:42 +08:00
    3 3 3
    madiks
        53
    madiks  
       2017-07-17 09:25:54 +08:00
    都学
    ydxred
        54
    ydxred  
       2017-07-17 09:28:16 +08:00
    学习 ,就要学新的东西...
    sagaxu
        55
    sagaxu  
       2017-07-17 09:29:48 +08:00
    @hand515 我公司机器也都是 2.6,用 2 也没法用一些库,所以我全部都安装了 3.6
    fengfisher3
        56
    fengfisher3  
       2017-07-17 09:30:12 +08:00
    33333333333333
    mansur
        57
    mansur  
       2017-07-17 09:33:05 +08:00
    什么时候 centos 上自带的 python 变成 3 了,你就可以学 3 了,现在还是 2 吧,公司用的 centos6.5 上 python 还是 2.6 呢。工作上的程序都是 2 写的,难道你新进公司把之前大家的程序都改写成 3 ?学 3,到时候找不到工作别怪我没提醒
    wangfeng3769
        58
    wangfeng3769  
       2017-07-17 09:34:52 +08:00
    都一样的 个人认为。
    operafans
        59
    operafans  
       2017-07-17 09:37:41 +08:00
    感觉 py2 在变量申明的规范上要比 3 宽松很多啊
    RealLiuSha
        60
    RealLiuSha  
       2017-07-17 09:41:05 +08:00
    3

    @mansur 难道小哥你会因为一个版本的差异在工作上就束手无策了?
    sagaxu
        61
    sagaxu  
       2017-07-17 09:41:31 +08:00
    @mansur 2.6 连 Django 都不支持了,Django2.0 开始只支持 3.5 以上版本。

    工作上的程序都是 2 写的,那只是你们公司,有些公司已经开始用 3 了。

    老代码不能迁移到 3 ? https://thenewstack.io/instagram-makes-smooth-move-python-3/

    而且熟悉 3 的人,就不能找 2 的工作了?
    scriptB0y
        62
    scriptB0y  
       2017-07-17 09:42:01 +08:00
    3
    voocel
        63
    voocel  
       2017-07-17 09:43:27 +08:00
    还真是两门语言
    panda1001
        64
    panda1001  
       2017-07-17 09:44:28 +08:00 via Android
    推荐新人用 3 是政治正确?
    ryd994
        65
    ryd994  
       2017-07-17 09:47:58 +08:00   1
    会编程的人,学个 Python 闭着眼睛就能学会
    2 和 3 的区别根本就不需要考虑
    换个语法而已,编程的精髓是不变的
    2 和 3 的区别只有 RTFM 的时候看哪个 manual 而已
    halfcoder
        66
    halfcoder  
       2017-07-17 09:49:31 +08:00   1
    @lxml #25
    Python3 发布了近十年也还没法充分替换 Python2,这是什么问题呢
    mansur
        67
    mansur  
       2017-07-17 09:51:10 +08:00
    @lgpqdwjh 并不想把大量的老代码都改掉,况且大部分都是别的同事负责的部分,人家也没离职。

    @sagaxu 不会 python 的也可以找 python 的工作,这里说的学习成本
    Betacoefficient
        68
    Betacoefficient  
       2017-07-17 09:54:15 +08:00
    @mansur 那你们公司要这样的人么,不会 python 的。
    GoBeyond
        69
    GoBeyond  
       2017-07-17 09:55:22 +08:00 via Android
    3
    mansur
        70
    mansur  
       2017-07-17 09:56:27 +08:00
    @Betacoefficient 你公司要?
    lxml
        72
    lxml  
       2017-07-17 10:03:44 +08:00   3
    @halfcoder Chrome 也发布了十年,IE6 份额也不小 ,Vs Studio 都出到 2017 了,中国高校不乏用 VC 6.0 的,PHP 也出到 7 了,我看用 5 的也不少嘛。Google、微信、鸟哥需要反思么?反正受累的要么是自己,要么是服务器,人家作者该干啥干啥。

    既然问答对象是新人,大家都知道比较蛋疼的第一个坑就是 Bytes / String,既然 3 已经解决了这个问题,为什么还要去 2 浑水呢,学会了 3,再倒退回 2 可比一开始就学 2 容易得多。

    至于上面 @mansur 这位贴主说工作上的程序都是 2,找不到工作不要怪我没提醒,显然太偏激了,Python 门类那么多,据我身边了解,机器学习方面用 2 的比较多,但爬虫方面显然 3 居多,2016 年 jet 做过一次统计,3 已经接近 2 的比例,五五开了,总还是有找到工作的嘛。
    yang2yang
        73
    yang2yang  
       2017-07-17 10:09:11 +08:00
    先学 3,遇到 2 的代码学 2,不就可以了,反正转换的成本并不高啊
    sagaxu
        74
    sagaxu  
       2017-07-17 10:11:30 +08:00   1
    @panda1001 运维必须用系统自带的 python,不能统一部署一个其他版本?
    iszero
        75
    iszero  
       2017-07-17 10:20:52 +08:00 via Android
    随便啦,没那么大区别
    ansheng
        76
    ansheng  
       2017-07-17 10:20:58 +08:00
    3
    juneszh
        77
    juneszh  
       2017-07-17 10:28:03 +08:00
    最近在撸 opencv 也是入门 py3,没什么门槛,那些说教程都是 py2 的是因为用百度?
    就是直接运行 py2 的代码,看看报错就知道怎么修改了
    lolizeppelin
        78
    lolizeppelin  
       2017-07-17 10:28:49 +08:00   1
    运维先学 2 就好
    运维可以参考的最好的运维管理框架就是 openstack
    抄会 openstack 的代码就能上一大台阶,估计能吊打不少 python 开发

    openstack 目前是 2 的,有转 3 的趋势
    等 openstack 转 3 了跟着就是.....
    quietin
        79
    quietin  
       2017-07-17 10:40:53 +08:00
    4
    Yaoyo
        80
    Yaoyo  
       2017-07-17 11:36:07 +08:00
    其实会一个另外一个就会了。。并无所谓
    aristotll
        81
    aristotll  
       2017-07-17 12:19:02 +08:00
    会 Python3 的我不信不会 Python2 没办法历史代码太多了
    litter123
        82
    litter123  
       2017-07-17 12:32:06 +08:00
    两个区别不是十分巨大,会任何一个都没问题(都能切到另一个(除非有些特殊库(这我也没办法))),向 3 靠一般就问题少一点,出问题就 GG
    ivechan
        83
    ivechan  
       2017-07-17 13:04:23 +08:00
    @snnn 那是为了照顾一些用 Python2 的人,事实上几乎所有深度学习框架都完美支持 Python3,
    或者说是针对 Python3 开发,兼容 Python2.
    viator42
        84
    viator42  
       2017-07-17 13:12:19 +08:00
    其实 3 也没比 2 先进到哪去.编码问题依旧存在,外加一堆的库不兼容.初学上 3 是自找麻烦
    Jackeriss
        85
    Jackeriss  
       2017-07-17 13:23:55 +08:00
    @halfcoder 因为没有向后兼容,所以只能慢慢过渡。
    ququ888
        86
    ququ888  
       2017-07-17 14:03:07 +08:00
    3
    sacuba
        87
    sacuba  
       2017-07-17 15:01:23 +08:00
    主要看想干嘛了,写点简单的脚本,用用而已还是学 2 把 个人感觉
    anyfucker
        88
    anyfucker  
       2017-07-17 15:02:17 +08:00
    你把 2 和 3 当两种不同的语言对待就行了
    sshpandas
        89
    sshpandas  
       2017-07-17 15:23:44 +08:00
    本来不想回复的,因为答案太明显了。但是看到有人说什么“学 Python 3 当心找不到工作”,忍不住来说一句。说这话的人,要么就是傻,要么就是坏,要么就是 both.
    mansur
        90
    mansur  
       2017-07-17 16:11:40 +08:00
    @sshpandas 你既傻又坏?
    hwsdien
        91
    hwsdien  
       2017-07-17 16:12:44 +08:00
    Python 3
    halfcoder
        92
    halfcoder  
       2017-07-17 16:36:10 +08:00
    @lxml #72
    PHP7 还没出多久。其它几个倒确实值得反思,IE6 和 VC6 为什么能在其最辉煌时期达到那样的地位,而即使后来的版本更好也没法充分替代。当然也可以不反思,作者该干啥干啥,搞成两门语言嘛。
    hagezhou
        93
    hagezhou  
       2017-07-17 16:36:11 +08:00 via iPhone
    我个人建议还是 2,虽然 3 有很多新特性,但企业代码大部分还是 2 啊,学了 2 再熟悉 3 也是分分钟的事情
    JesseYuan
        94
    JesseYuan  
       2017-07-17 16:39:01 +08:00
    看个人情况和项目情况,我反正学习的 3
    TangMonk
        95
    TangMonk  
       2017-07-17 17:05:08 +08:00
    先学 2,再学 3
    xinlai
        96
    xinlai  
       2017-07-17 17:11:05 +08:00
    学习的时候不要纠结哪个版本,顺眼就行,踩坑了就知道哪个了(逃
    yanze0613
        97
    yanze0613  
       2017-07-17 18:31:06 +08:00
    3
    maomo
        98
    maomo  
       2017-07-17 18:37:06 +08:00
    两个一起学
    anson2416
        99
    anson2416  
       2017-07-17 18:39:51 +08:00 via iPhone
    @gulangyu
    @maomo 看视频好慢
    gulangyu
        100
    gulangyu  
       2017-07-17 18:53:04 +08:00 via Android
    @anson2416 哈哈哈哈哈,慢?那您就歇歇吧,不适合学
    1  2  
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2687 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 14:49 PVG 22:49 LAX 07:49 JFK 10:49
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86