推荐学习书目
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
uestcfei
V2EX  ›  Python

Mac 下使用 Python3.6 的正确姿势

  •  
  •   uestcfei ·
    i · Mar 24, 2018 · 10035 views
    This topic created in 2972 days ago, the information mentioned may be changed or developed.

    想看看大家 Mac 下是让 python3 和 python2 共存么?为什么我每次安装 Python3 之后,调用总是会报**AttributeError: module 'enum' has no attribute 'IntFlag'**的错。。真的是快崩溃了。看具体报错是在're.py'文件下

    我就是想简单的在使用的时候能够用命令区分出 Python3 和 Python2,感觉不应该会出这种乱七八糟的兼容性问题呀。。是我使用姿势不对?

    还有,有大佬直接把 Mac 上的 Python 升级到 Python3,卸载掉 Python2 的么?会有什么问题吗?求指教。

    Supplement 1  ·  Mar 24, 2018
    谢谢大家的回复,各位可能漏看了一点,也怪我没说清楚。。我能用 brew 安装 Python3,但是安装之后,调用 Python3 的时候总是有错。我卸载重装还是这样:**AttributeError: module 'enum' has no attribute 'IntFlag'** 问题在库中的 re.py 文件上,我现在怀疑是这个文件引用了 python2 的库导致的?
    Supplement 2  ·  Mar 24, 2018

    再更新一下,说明一下我现在的情况:

    其实我最终的目的是这样:

    • 能够在命令行中正常使用pip3.6
    • 能够在Pycharm中创建工程时能够使用python3的环境,因为我的项目中需要几个库,而这几个库又需要使用pip来安装到对应的Python环境中使用,但是我的pip一调用就报上面出的错,其实不仅仅是调用pip,只要是调用所有关于Python3的调用,都会报上面的错。。

    有大神知道怎么搞么。。我觉得可能我的情况可能不太常规。。。。

    Supplement 3  ·  Mar 24, 2018

    更新一下最新的解决方案,供后来人参考

    • 最后我是使用的pyenv + pycharm满足了项目需求
    • 不得不说,pyenv是真的好用
    • 使用的过程中遇到了两个坑:
      • pycharm中对Python环境 中的包管理不会自动升级,我最后是用的easy_install -- upgrade xxx来进行的强制升级
      • 我上面提到的那个报错,到最后 依然存在,只要使用3.6 .x就会存在,使用pyenv单独安装也会存在,总之我 现在更怀疑是我的系统中有些模块被我改坏了,导致只要使用3.6.x就会报错,报错信息是在re.py文件中module 'enum' has no attribute 'IntFlag',我最后用的3.4.0,先暂时用着,等项目搞完之后再来具体处理上面的报错。
    Supplement 4  ·  Mar 24, 2018
    最后,谢谢各位的答复,不说了,加班去啦。。
    26 replies    2018-03-26 13:46:25 +08:00
    SuperMild
        1
    SuperMild  
       Mar 24, 2018
    miniconda 是最简明清晰的。
    1iuh
        2
    1iuh  
       Mar 24, 2018
    pyenv 了解一下
    limerence12138
        3
    limerence12138  
       Mar 24, 2018 via Android
    homebrew 啊
    testsec
        4
    testsec  
       Mar 24, 2018 via iPhone
    自带的 Python2 最好不要动
    zetary
        5
    zetary  
       Mar 24, 2018 via iPhone
    anaconda 装了以后用 conda 管理环境,内置的别碰
    dingtian
        6
    dingtian  
       Mar 24, 2018
    homobrew 不是已经用 python 代替 python3 了么。。。就是默认 berw install python 就是 3。。。python2 换了个名字
    clavichord93
        7
    clavichord93  
       Mar 24, 2018
    现在 homebrew 直接安装的 python 就是 python3,装完之后就接管系统的 python 了,除非你调用 python2。然后你就可以 pyenv 了。
    pynix
        8
    pynix  
       Mar 24, 2018
    brew python 已经是 3.6

    /usr/bin/python 2.7.10

    python@2 可以安装 2
    tomychen
        9
    tomychen  
       Mar 24, 2018
    brew install
    port python3.x
    virtualenv 是个好东西...
    cxbig
        10
    cxbig  
       Mar 24, 2018 via iPhone
    docker 或 pyenv
    linthieda
        11
    linthieda  
       Mar 24, 2018
    我用 Anaconda 管理了数十个环境,
    quinoa42
        12
    quinoa42  
       Mar 24, 2018
    brew install pyenv
    pyenv install 3.6.4 2.7.14
    pyenv global 3.6.4 2.7.14
    mxalbert1996
        13
    mxalbert1996  
       Mar 24, 2018 via Android
    @zetary
    @linthieda
    Anaconda 是一个用于科学计算的 Python 发行版,如果不需要科学计算的话完全没必要装,因为它附带了大量的软件包。
    你们用的虚拟环境管理器(和包管理器)是 conda,它和 Anaconda 是独立的,直接 pip install conda 即可。
    ACSuperChen
        14
    ACSuperChen  
       Mar 24, 2018
    如果想另起炉灶不用系统自带的话
    brew install python3 就 ok
    一般 brew 安装不会有什么问题
    jason94
        15
    jason94  
       Mar 24, 2018
    homebrew 直接安装 python3
    chuxiwen
        16
    chuxiwen  
       Mar 24, 2018 via iPhone
    pyenv 么。想用什么版本用什么。
    julyclyde
        17
    julyclyde  
       Mar 24, 2018
    都在说怎么办,却没人说为什么
    zetary
        18
    zetary  
       Mar 24, 2018 via iPhone
    @mxalbert1996 好吧忘了这里是 v 站…我就是做科学计算
    GoLand
        19
    GoLand  
       Mar 24, 2018 via Android
    pyenv 了解一下。
    uestcfei
        20
    uestcfei  
    OP
       Mar 24, 2018
    @GoLand @chuxiwen pyenv 创建的环境 pycharm 能用么?
    freefcw
        21
    freefcw  
       Mar 24, 2018
    建议使用 pipenv,pycharm 可以支持
    GoLand
        22
    GoLand  
       Mar 24, 2018 via Android
    @uestcfei 可以。
    xern
        23
    xern  
       Mar 24, 2018 via Android
    anaconda 了解一下
    ljypaul2011
        24
    ljypaul2011  
       Mar 24, 2018
    打卡
    qsnow6
        25
    qsnow6  
       Mar 24, 2018 via iPhone
    anaconda 太大了 很多用不到的东西
    vimiix
        26
    vimiix  
       Mar 26, 2018
    正确姿势 pipenv
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1171 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 83ms · UTC 17:39 · PVG 01:39 · LAX 10:39 · JFK 13:39
    ♥ Do have faith in what you're doing.