【问题标题】:Command not found and ImportError in Python for OSX在 Python for OSX 中找不到命令和 ImportError
【发布时间】:2017-09-23 21:52:36
【问题描述】:

我有安装了 Python3.5 和 Python2.7 的 OSX El Captain。 我有一个包含我的 python 脚本和函数的文件夹,我已经将它们添加到环境变量 PATH 中,并且以某种方式 [*] 也添加到了 sys.path:

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

我使用 .bash_profile 文件设置我的 PATH:

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,我会得到 Command not found。我需要去~/Project_folder/Python
  2. 如果我运行 ~/Project_folder/Python/batchProc.py 代码将启动,但我得到 ImportError: No module named 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 

其中包含: /Users/Robyc/Project_folder/Python/

【问题讨论】:

    标签: bash macos python-2.7 python-3.x


    【解决方案1】:

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

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

    解决方法:用nano打开bash_profile,修改引号... 并且永远不要再使用 TextEdit 来修改 bash_profile

    【讨论】:

      猜你喜欢
      • 2014-01-28
      • 2013-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-03
      • 1970-01-01
      • 2018-03-04
      • 2014-09-21
      相关资源
      最近更新 更多