当我从终端运行 Python 时Atom
,调用不同版本的python。因此,有些包我可以从终端调用而不会出现问题,但无法从终端调用Atom
。详细信息如下:
打电话时python
来自terminal
,我得到版本3.7.1
$ python
Python 3.7.1 | packaged by conda-forge | (default, Nov 13 2018, 09:50:42)
[Clang 9.0.0 (clang-900.0.37)] :: Anaconda custom (64-bit) on darwin
(如果我输入,我会得到完全相同的结果python3
instead)
现在当看python
版本来自Atom
我得到版本 3.6.5
>>> import sys
>>> print(sys.version
3.6.5 | packaged by conda-forge | (default, Apr 6 2018, 13:44:09)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)]
怎么会?我怎样才能使Atom
获取与终端获取的版本相同的版本?
失败的尝试
看着PATH
用命令import sys
进而print(sys.path)
这是我得到的:
来自原子:
['', '/anaconda3/lib/python36.zip', '/anaconda3/lib/python3.6',
'/anaconda3/lib/python3.6/lib-dynload', '/anaconda3/lib/python3.6/site-packages',
'/anaconda3/lib/python3.6/site-packages/aeosa', '/anaconda3/lib/python3.6/site-packages/cycler-0.10.0-py3.6.egg',
'/anaconda3/lib/python3.6/site-packages/IPython/extensions', '/Users/mymac/.ipython']
从航站楼:
['', '/Users/mymac/anaconda3/lib/python37.zip',
'/Users/mymac/anaconda3/lib/python3.7',
'/Users/mymac/anaconda3/lib/python3.7/lib-dynload',
'/Users/mymac/anaconda3/lib/python3.7/site-packages',
'/Users/mymac/anaconda3/lib/python3.7/site-packages/aeosa']
它似乎Atom
正在使用的 Python 版本pyenv
给出以下命令和输出:
$ pyenv versions
* system (set by /Users/mymac/.pyenv/version)
3.6.5
根据pyenv 的 github 页面 https://github.com/pyenv/pyenv。我进入了pyenv virtualenv 3.7.1
。然后进入的时候$ pyenv versions
至少版本 3.7.1 在列表中:
* system (set by /Users/mymac/.pyenv/version)
3.6.5
3.7.1
但这并没有解决问题Atom
随后我参观了康达页面 https://conda.io/docs/user-guide/tasks/manage-environments.html#creating-an-environment-with-commands关于管理环境并运行以下命令:
$ conda create --name myenv
运行没有问题,但是问题依旧
然后我尝试更具体地运行$ conda create -n myenv python=3.7.1
但得到:CondaValueError: prefix already exists: /Users/mymac/anaconda3/envs/myenv
正如@jmh 指出的然后我尝试了:$ source activate 3.7.1
并得到以下提示:(3.7.1) user:~ user$
我可以成功地选择正确的虚拟环境。但后来一打开Atom
问题仍然存在