本人小白。
macmini:
环境:
os:10.12.6
pycharm: 2018.2.5
问题:
1,如何实现多版本的 python ?
这个我参考了文章操作了如下步骤:
'''
pyenv install 3.5.6
并且按照文档,把 pycharm 的 interpreter 改成了 /User/xxx/.pyenv/versions/3.5.6/bin/python3.5
'''
2,如何实现开发环境隔离,想单独生成 requirements
麻烦大家丢链接。谢过!
1
JsonLee 2018-11-22 23:46:25 +08:00 2
|
3
drizztdouu00 2018-11-22 23:50:41 +08:00 via Android
pipenv
|
4
laike9m 2018-11-22 23:52:18 +08:00 via Android 1
pyenv 结合 pyenv-virtualenv 使用,效果很好
|
5
ysc3839 2018-11-22 23:59:37 +08:00 via Android 1
我没在 Mac 下使用过 Python。
Windows 安装多个版本的 Python 可以直接用官网下载的安装程序。 Ubuntu 的话添加个 ppa 源 https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa,然后就可以直接安装多个版本的 Python 了。使用 pyenv 也行,不过因为要本机编译,会耗费更多时间。 requirements 隔离的话用 pipenv。 |
6
XIVN1987 2018-11-23 00:07:49 +08:00
还在用 virtualenv 的路过,,
|
9
wangking OP @ysc3839 感谢,之前用的 Linux mint 多版本 python 这个我操作没有问题,就是没有操作过隔离,所以生成的 requirements 是一大堆,所以这次换 mac 想从一开始就把环境隔离好
|
10
kingfighters 2018-11-23 09:53:19 +08:00
可以考虑 virtualenvwrapper
|
11
laike9m 2018-11-23 10:50:27 +08:00
@wangking 安装步骤和创建 virtualenv 直接参考官方文档
https://github.com/pyenv/pyenv-virtualenv 之后使用参考这个。最后能做到进入目录自动切换对应 Python 版本,完全无需手动操作 https://stackoverflow.com/questions/40492424/pyenv-virtualenv-how-to-specify-virtualenv-used-by-using-file |
12
wangking OP @laike9m Hi, 参照这个文档,现在基本明白了 pyenv 的作用, 但 pyenv-virtualenv 是在$(pyenv root)/versions/ 创建了一个 env 的路径,这个路径是我制定 python 版本的 bin 目录?还是说,是我的 workspace 目录?我现在在 pycharm 里新建 project 的 location 该怎么指呢? interperter 应该是指到 $(pyenv root)/versions/env3.5.6/bin/python.
哦, 我想我可能是明白了 pyenv virtualenv 3.5.6 env3.5.6 这条命令应该只是实现了安装 python3.5.6 这个版本,并把 python 文件安装路径指到 $(pyenv root)/versions/env3.5.6/bin/ 这里。 如果我有多个项目都使用 3.5.6 我就不能把所有的 interpreter 都设置成这一个路径了。假设我再创建一个 project A,那么我应该再 pyenv virtualenv 3.5.6 A,然后把这个 project 的 interpreter 改成 A 的路径。 我也不知道我这样理解对不对。欢迎指正 |
13
shoujiaxin 2018-11-23 14:21:28 +08:00 via iPhone
conda 了解一下,把 Python 当成包,多版本管理很方便
|
14
TimePPT 2018-11-23 14:46:53 +08:00
用了多种工具,最终选择使用 pyenv + pipenv + direnv 作为 python 开发环境配置的最终选择。
|
15
laike9m 2018-11-23 22:39:36 +08:00
@wangking 你理解的没错。Pycharm 路径就用 versions 里面的。这样配置之后开发路径和 Python 解释器和库的路径是分开的。理论上你可以多个 project 共用一个 pyenv 安装的 Python,但一般还是隔离。我喜欢这样命名
[email protected] [email protected] |
16
dibis 2018-11-25 00:15:39 +08:00
我使用的效果是这样:
➜ document git:(master) ✗ pyenv activate v365env pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior. (v365env) ➜ document git:(master) ✗ python Python 3.6.5 (default, Nov 17 2018, 21:07:54) |