2017-04-26 75 views
0

我有安装了Python3.5和Python2.7的OSX El Captain。 我有一个文件夹,我的python脚本和功能,我已经加入到环境变量PATH,不知何故[*]也sys.path中:在OSX中找不到Python和ImportError

Project_folder/ 
- Python/ 
-- __init__.py 
-- batchProc.py (written in Python 3.4) 
-- (other python files) 

设置我的路径以.bash_profile文件中:

PATH=“/Users/Robyc/Project_folder/Python:${PATH}” 
export PATH 

的文件夹,它的存在:

echo $PATH 
“/Users/Robyc/Project_Folder/Python:/Library/Frameworks/Python.framework/Versions/3.5/bin:/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/TeX/texbin” 

我的sys.path变量

['/Applications/PyCharm CE.app/Contents/helpers/pydev', '/Applications/PyCharm CE.app/Contents/helpers/pydev', '/Library/Frameworks/Python.framework/Versions/3.5/lib/python35.zip', '/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5', '/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/plat-darwin', '/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/lib-dynload', '/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages', '/Users/Robyc/Project_Folder/Python', '/Users/Robyc/Project_Folder/'] 

我有两个问题,我觉得彼此之间有联系。

  1. 如果我在终端输入bacthProc.py我找不到命令。我需要去〜/ Project_folder/Python
  2. 如果我运行〜/ Project_folder/Python/batchProc.py代码开始,但我得到ImportError:没有名为Python的模块。

我真的不明白我的配置有什么问题。

我的〜/ Project_folder已经在那里,但我不记得我是如何加入它的... 我的PYTHONPATH是空的。我现在使用的PTH文件作为 documentation提出了我的〜/ Project_folder/Python的文件夹添加到 sys.path中,也就是我创建以下文件:

/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/svn_code.pth 

其中包含: /用户/ Robyc/Project_folder/Python/

回答

0

为了完整起见,我分享了该问题的解决方案。

问题是,正如所料,在PATH变量中: 我用来修改.bash_profile的文本编辑器(TextEdit.app)修改引号(“...”)的方式没有被正确识别贝壳。 这实际上可以在上面的问题中发布的路径中看到:在终端中执行echo $ PATH时,不应出现引号。 因此,PATH变量未正确设置。这就是为什么无法再调用python的原因。

解决方法:打开的.bash_profile纳米和修改引号... 永不再使用文本编辑来修改.bash_profile中