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

自学 python 应该学 2 还是 3?

  •  
  •   fwrq41251 ·
    fwrq41251 · 2016-06-29 11:26:10 +08:00 · 7972 次点击
    这是一个创建于 3067 天前的主题,其中的信息可能已经有所发展或是发生改变。

    说一下理由

    第 1 条附言  ·  2016-06-29 12:32:08 +08:00
    感谢各位的回复,那就学 3 。
    49 条回复    2016-07-01 09:50:16 +08:00
    jazzychai
        1
    jazzychai  
       2016-06-29 11:30:04 +08:00   ❤️ 1
    3 ,学新不学旧
    ivechan
        2
    ivechan  
       2016-06-29 11:36:56 +08:00   ❤️ 3
    python3
    学 python2 只有两个原因:
    1. 部署环境要求必须用 python2
    2. 你必须使用的包只有 python2 版本
    像 django,numpy,request 等很多常用的库已经支持 python3 了,不用担心没有库用。
    更多参考: https://wiki.python.org/moin/Python2orPython3
    techmoe
        3
    techmoe  
       2016-06-29 11:38:17 +08:00 via Android
    同意一楼观点,学 3
    keysona
        4
    keysona  
       2016-06-29 11:38:49 +08:00
    3 啊,
    没啥特别需要的话。
    jimzhong
        5
    jimzhong  
       2016-06-29 11:53:19 +08:00
    学 3 啊,除非你必须使用只支持 2 的包。
    owlsec
        6
    owlsec  
       2016-06-29 12:01:18 +08:00
    3
    Blunt1991
        7
    Blunt1991  
       2016-06-29 12:03:44 +08:00
    肯定是 3 啊
    wlsnx
        8
    wlsnx  
       2016-06-29 12:04:05 +08:00   ❤️ 1
    Python 是 Python3 的,也是 Python2 的,但是归根结底是 Python3 的。
    iseliget
        9
    iseliget  
       2016-06-29 12:29:32 +08:00
    Python 2 的 unicode 支持……
    ericls
        10
    ericls  
       2016-06-29 12:32:22 +08:00 via iPhone
    3
    dqh3000
        11
    dqh3000  
       2016-06-29 12:45:53 +08:00
    3
    misaka19000
        12
    misaka19000  
       2016-06-29 12:55:00 +08:00
    之所以有人会让你学 2 ,是因为以前很多的库都是用 2 写的,不过随着这些库的升级,所以现在果断学 3 是最好的选择
    Totato5749
        13
    Totato5749  
       2016-06-29 13:09:27 +08:00
    我想问一下如何才能把 python 学起来。。。自己主业是 java 安卓,两次学 python 中途放弃。。。。
    yangxin0
        14
    yangxin0  
       2016-06-29 13:09:59 +08:00
    有啥区别?
    robinlovemaggie
        15
    robinlovemaggie  
       2016-06-29 13:19:09 +08:00
    不妨考虑一个问题: py2 向 py3 兼容容易,还是 py3 向 py2 容易
    hwsdien
        16
    hwsdien  
       2016-06-29 13:20:12 +08:00
    3........
    way2exp
        17
    way2exp  
       2016-06-29 13:31:01 +08:00
    @Totato5749 会 Java 还能不会 Python,当真?
    peter999
        18
    peter999  
       2016-06-29 13:43:08 +08:00
    好多包都不支持 3 ,你学了 3 工作的时候咋办,一点都不实际
    huybery
        19
    huybery  
       2016-06-29 13:44:14 +08:00
    py2 py3 不就是点语法糖区别么
    practicer
        20
    practicer  
       2016-06-29 13:48:03 +08:00
    如果你按一本入门书来学,入门书里用哪个教,你就学哪个
    我的第一本语法书是《 Python 核心编程 第二版》、第二本《 FlaskWeb 开发》
    都是 2 ,所以我学的 2

    入门后看了更多的书,有的是 3 ,
    例如《 OReilly.Web.Scraping.with.Python 》
    有的是 2 ,像《[Python.for.Data.Analysis 》、《 Introduction.to.Tornado 》、《 Learning Scrapy-Pack 》
    当你入门后,发现当初不管学 2 还是学 3 ,都对后面的学习影响不大, 2 、 3 之间转换的成本不大
    vven
        21
    vven  
       2016-06-29 14:58:23 +08:00
    @Totato5749
    简单啊,可以给安卓 app 多写点 MonkeyRunner 脚本
    wy315700
        22
    wy315700  
       2016-06-29 15:02:23 +08:00
    其实我至今没发现 2 和 3 有啥区别,,除了部署的时候
    0x000000
        23
    0x000000  
       2016-06-29 15:10:47 +08:00
    学 Ruby 就不会有这种问题了
    bohan
        24
    bohan  
       2016-06-29 15:19:23 +08:00
    3333333333333
    restran
        25
    restran  
       2016-06-29 15:21:26 +08:00
    2020 年, 2 就要停止维护了,哦,还剩 4 年。
    haozibi
        26
    haozibi  
       2016-06-29 15:21:26 +08:00 via Android
    学的 3 但是国内大部分云都是 2
    tyfulcrum
        27
    tyfulcrum  
       2016-06-29 15:22:07 +08:00 via iPhone
    应该 Google 。
    fanzheng
        28
    fanzheng  
       2016-06-29 15:23:04 +08:00
    3
    Neveroldmilk
        29
    Neveroldmilk  
       2016-06-29 15:28:40 +08:00
    肯定是 3 , 2 是最后的几年了。
    Neveroldmilk
        30
    Neveroldmilk  
       2016-06-29 15:28:59 +08:00
    @wy315700 你连 Print 都没用过么?
    Jolly23
        31
    Jolly23  
       2016-06-29 15:37:09 +08:00 via iPhone
    ubuntu server 16.04 原生已经不带 python2 了… so …
    SIGEV13
        32
    SIGEV13  
       2016-06-29 16:02:05 +08:00
    Python 3 比较好,功能更丰富,语法也有改善。 如果需要使用一些第三方库, 注意查询他的兼容性,比如 google 的 protobuf 对 Python 3 支持不好, 需要手工修改很多文件才能使用。
    chousb
        33
    chousb  
       2016-06-29 16:09:46 +08:00
    3
    gtt116
        34
    gtt116  
       2016-06-29 16:45:58 +08:00
    当然最好是两个都学,不过建议先学 py2 , 然后学 py3 改了哪些东西。你要知道如果去公司里,肯定 py2 比 py3 多的多。
    zpvip
        35
    zpvip  
       2016-06-29 18:33:23 +08:00
    学 Ruby 就不会有这种问题了
    ifaii
        36
    ifaii  
       2016-06-29 18:40:32 +08:00
    必须是 3 除非有绝对必要
    cjyang1128
        37
    cjyang1128  
       2016-06-29 19:25:06 +08:00
    2 都快倒闭了
    incompatible
        38
    incompatible  
       2016-06-29 19:58:14 +08:00 via iPhone
    @Totato5749 jvm 上有 groovy 、 Scala 、 kotlin 这么多优秀的语言,何必学 python
    muziyue
        39
    muziyue  
       2016-06-29 20:30:51 +08:00
    如果没基础的话, Windows 上用 py2 你可能会被中文编码劝退的
    thedawn
        40
    thedawn  
       2016-06-29 20:34:25 +08:00 via Android
    最新的 Python 就是最好的 Python
    kn007
        41
    kn007  
       2016-06-29 20:35:40 +08:00
    最新的好(适用大部分事情)
    skyun
        42
    skyun  
       2016-06-29 22:33:50 +08:00
    python3 。有新的当然学新的,这也是为推动 python 发展尽一份微薄之力。
    eightqueen
        43
    eightqueen  
       2016-06-29 23:33:57 +08:00
    服务器基本上还是 py2 环境,你自己看着办吧
    pynix
        44
    pynix  
       2016-06-30 02:00:04 +08:00
    233333
    Ixizi
        45
    Ixizi  
       2016-06-30 09:31:37 +08:00
    我司之前用 Python2 ,现在用 Python3.
    lionkin
        46
    lionkin  
       2016-06-30 11:05:09 +08:00
    2 、 3 都没关系,差别不大,直接上路就好 https://www.shiyanlou.com/paths/python
    jrhu05
        47
    jrhu05  
       2016-06-30 11:06:01 +08:00
    必须 3 ,大趋势:-D
    julyclyde
        48
    julyclyde  
       2016-06-30 11:55:18 +08:00
    之前我一直很提倡 2 ,后来发现 2 只有 global 没有 nonlocal ,没法实现某种闭包(虽然我对闭包嗤之以鼻,觉得都是某些人闲的没事干炫技用的)
    然后我就觉得 2 是“真的老了”
    jiangbingo
        49
    jiangbingo  
       2016-07-01 09:50:16 +08:00
    企业应用基本上还是 python2.7
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5837 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 02:00 · PVG 10:00 · LAX 18:00 · JFK 21:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.