对Mac下Python添加路径PATH的总结

问题描述:Mac系统,虽然原本系统自带python,我自己又下载了python2.7 使用IDLE,通过pip装了几个包,后来又装了个anoconda。发现自己下载的Python IDLE不能使用conda中的numpy包.有没有解决办法?还是说conda中的包只能在anaconda开发环境下的python使用?

解决策略:将anaconda里的包路径添加入IDLE的path中。

解决方法:

第一种(此方法来源于http://stackoverflow.com/questions/3387695/add-to-python-path-mac-os-x中的最后一条评论,适用于在“应用程序”中启动可能也适用于在终端terminal中启用Python

1.找到anaconda中包的路径,一般为/Users/*****(用户具体名字)/anaconda/lib/python2.7/site-packages,将这个地址复制出来

2.在终端terminal中,输入: cd /Applications/Python\ 2.7/IDLE.app/Contents/Resources/,使终端路径进入IDLE的包文件中的Resources中。(PS:括号中显示非终端操作:也可以采用在“finder”->“应用程序”->Python 2.7->双击“IDLE”->“显示包内容”->“Resources”)

3.在终端中输入 sudo nano idlemain.py, 输入电脑密码进入idlemain.py的编辑模式。(用打开Resources中的idlemain.py文件,PS:因为我们没有采用权限进入idlemain.py这个文件,不能直接进行更改,建议将idlemain.py复制到其他地方(比如桌面)进行操作,为保险期间,最好对idlemain.py再做一个备份,以备操作不当时进行还原,即三个idlemain.py文件--原文件、备份两个)

4、在os.chdir(os.path.expanduser('~/Documents')) 这一行下面添加 sys.path.append("/Users/*****(用户具体名字)/anaconda/lib/python2.7/site-packages") (请注意地址添加是否成功)

5、保存更改, ctrl+x->Y->回车,退出idlemain.py的编辑状态。(将更改的idlemain.py文件替换原有的文件,此时需要输入密码

6、进入IDLE测试是否已添加。


第二种(来源于其他网络,在此仅做操作后的说明)

1.在终端terminal的任意命令行下运行 PYTHONPATH=/Users/*****(用户具体名字)/anaconda/lib/python2.7/site-packages,然后在终端中启用IDLE,注意这是一行命令。这适用于只需要一次性设定PYTHONPATH的场合,当 idle 结束返回之后,PYTHONPATH也就失效了,不会影响其他程序。

2、运行 IDLE 后(不管是在终端还是在应用程序中),手动更改 sys.path,输入1)、import sys; 2)、sys.path.append('/Users/*****(用户具体名字)/anaconda/lib/python2.7/site-packages')。此方法也是一次性的,每次开启Python都需要重新进行以上操作。

3、在你的 .bash_profile 或者 .zshrc 里面设定 PYTHONPATH(本人在操作系统方面能力有限,只在.bash_profile中做了操作),比如export PYTHONPATH=/Users/*****(用户具体名字)/anaconda/lib/python2.7/site-packages,这样一来所有从命令行下面启动的 Python 程序都会看到它(PS:只适用于在命令行下启用的Python,应用程序中启用不适合,且本人设置一次后再想进入.bash_profile显示“trace/BPT trap 5”的错误)。1)启动终端Terminal2)输入cd ~(进入当前用户的home目录);3)输入touch .bash_profile(创建.bash_profile);4).输入open -e .bash_profile(编辑.bash_profile文件),此时会打开.bash_profile文件,5). 依据已有的格式添加Python环境变量,保存文件,关闭.bash_profile;6.输入source .bash_profile(更新刚配置的环境变量)。

4、还有一种方案是通过配置mac系统的环境变量来实现,可能这种方法既适用于终端又适用于应用程序启动,不过本人没有操作成功,可能因为系统的原因,提到的文件不存在在etc文件夹下了,还请高手多多指点。本人采用的系统是(OS X EI)。




阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭