默认python不会切换到homebew安装

时间:2017-11-19 13:08:16

标签: python macos python-2.7

我知道这个问题已被提出 - 但似乎没有任何解决方案可行。我最近发现在Mac OS上,python的原生安装不是很好。所以,我安装了自制软件,并在那里安装了Python 2。我的路径如下:

~ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin

但是,我仍然得到以下内容:

~ which python
/usr/bin/python

~ which python2
/usr/local/bin/python2

同样重要的是要注意我的~/.bash_profile~/.profile~/.zshrc文件是空的。

不知何故,我想我得到了python2(自制)安装工作。基本上,我做了pip install pandas,我得到了两个python解释器的以下输出:

~ python
Python 2.7.10 (default, Feb  7 2017, 00:08:15) 
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pandas
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named pandas

也就是说,它不会出现在默认的python安装中。但是,我也有以下内容:

~ python2
Python 2.7.14 (default, Sep 25 2017, 09:53:22) 
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.37)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pandas
>>> 

所以,pandas是在python2(homebrew)python中导入的,但不是标准的。我怎么能得到它,以便默认的python是我的自制软件python?我也读过brew link python可以工作的地方,但是当我这样做时,我得到了

~ brew link python
Warning: Already linked: /usr/local/Cellar/python/2.7.14
To relink: brew unlink python && brew link python

我希望能够使用python my_file.py并使用自制软件安装。 (不确定它是否相关,但希望这也允许Sublime在我点击命令+ B时使用自制软件安装。)

很抱歉这篇长篇文章,新电脑,我想在做任何重大项目之前把这一切都弄清楚,然后发现事情中途没有按照我需要的方式工作。

谢谢!

1 个答案:

答案 0 :(得分:1)

macOS系统Python安装在$ cat file1.txt 1 2 3 $ cat file2.txt hello $ python3 -i demo.py >>> in_file('1', 'file1.txt') True >>> in_file('hello', 'file1.txt') False >>> in_file('hello', 'file2.txt') True 。这是您路径中唯一一个名为/usr/bin/python的人。

Homebrew不会在python中为python创建链接。如果你想要一个,你可以自己创建它:

/usr/local/bin

或者,只需更新你的shebang行以指定ln -s /usr/local/bin/python2 /usr/local/bin/python python2,这可能会更好(显式优于隐式)。