我有一个存放所有Django应用程序的目录(C:\My_Projects)。我想把这个目录添加到我的PYTHONPATH中,这样我就可以直接调用应用程序。
我试着添加C:\My_Projects\;从Windows GUI到我的Windows路径变量(我的计算机>属性>高级系统设置>环境变量)。但它仍然不读取coltrane模块并生成以下错误:
错误:没有名为coltrane的模块
我有一个存放所有Django应用程序的目录(C:\My_Projects)。我想把这个目录添加到我的PYTHONPATH中,这样我就可以直接调用应用程序。
我试着添加C:\My_Projects\;从Windows GUI到我的Windows路径变量(我的计算机>属性>高级系统设置>环境变量)。但它仍然不读取coltrane模块并生成以下错误:
错误:没有名为coltrane的模块
当前回答
虽然这个问题是关于“真正的”Python的,但它确实在“Iron Python PYTHONPATH”的网络搜索中出现过。对于像我一样困惑的Iron Python用户:原来Iron Python寻找的是一个名为IRONPYTHONPATH的环境变量。
Linux/Mac/POSIX用户:别忘了Windows不仅使用\作为路径分隔符,而且还使用;作为路径分隔符,而不是:。
其他回答
从Windows命令行:
set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib
要永久地设置PYTHONPATH,请将该行添加到autoexec.bat中。或者,如果您通过系统属性编辑系统变量,它也将被永久更改。
这些解决方案可以工作,但它们只适用于您的机器上的代码。我会在代码中添加几行如下所示的代码:
import sys
if "C:\\My_Python_Lib" not in sys.path:
sys.path.append("C:\\My_Python_Lib")
这样你的问题就解决了
Python使用PYTHONPATH环境变量来指定在Windows上可以导入模块的目录列表。运行时,可以检查系统。Path变量,以查看在导入某些内容时将搜索哪些目录。
要在命令提示符中设置这个变量,请使用:set PYTHONPATH=list;of;paths。
要从PowerShell设置这个变量,请在启动Python之前使用:$env:PYTHONPATH= ' list;of;paths '。
不建议通过环境变量设置全局设置此变量,因为它可能被任何版本的Python使用,而不是您打算使用的版本。在Python on Windows FAQ文档中阅读更多内容。
Windows 7 Professional 我修改了@mongoose_za的答案,使其更容易更改python版本:
[右键单击]计算机>属性>高级系统设置>环境变量 点击“系统变量”下的[新] 变量名称:PY_HOME,变量值:C:\path\to\python\version 单击[确定] 找到“Path”系统变量,点击[编辑] 将以下内容添加到现有变量中: % PY_HOME %, % PY_HOME % \ Lib; % PY_HOME % \ dll; % PY_HOME % \ Lib \ lib-tk; 单击[OK]关闭所有窗口。
作为最后的完整性检查,打开命令提示符并输入python。你应该看到
>python [whatever version you are using]
如果需要在版本之间切换,只需要修改PY_HOME变量以指向正确的目录。如果你需要安装多个python版本,这将更容易管理。
对于任何试图使用Python 3.3+实现这一目标的人来说,Windows安装程序现在包含了一个选项,可以将Python .exe添加到系统搜索路径中。在文档中阅读更多。