我有一个存放所有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提示符并键入
>>> import site
>>> site.USER_SITE
'C:\\Users\\ojdo\\AppData\\Roaming\\Python\\Python37\\site-packages'
...
(或者,调用python -m site——user-site也有同样的效果。)
如果这个文件夹还不存在,创建它:
...
>>> import os
>>> os.makedirs(site.USER_SITE)
...
(或者,在Bash中,您喜欢的makedirs -p $的变体(python -m site——user-site)。)
在这个文件夹中创建一个包含FIND_MY_PACKAGES内容的文件sitecustomize.py(使用这个文件名,否则它将不起作用),可以手动创建,也可以使用以下代码。当然,您必须将C:\My_Projects更改为自定义导入位置的正确路径。
...
>>> FIND_MY_PACKAGES = """
import site
site.addsitedir(r'C:\My_Projects')
"""
>>> filename = os.path.join(site.USER_SITE, 'sitecustomize.py')
>>> with open(filename, 'w') as outfile:
... print(FIND_MY_PACKAGES, file=outfile)
下次启动Python时,C:\My_Projects会出现在sys. exe文件中。路径,而不必触及系统范围的设置。额外的好处:上面的步骤在Linux上也适用!
为什么会这样?
来自标准库包站点的文档:
[然后]尝试导入一个名为sitecustomize的模块,该模块可以执行任意特定于站点的定制。[…]。
因此,如果你在PYTHONPATH的任何地方创建了一个名为sitecustomize的模块,包site将在Python启动时执行它。通过调用site。Addsitedir, sys。路径可以安全地扩展到您的喜欢。
其他回答
当安装ArcGIS Desktop时,需要为ArcPY设置这个PYTHONPATH变量。
PYTHONPATH=C:\arcgis\bin(您的arcgis主目录)
由于某种原因,当我在Windows 7 32位系统上使用安装程序时,它从未设置过。
Python使用PYTHONPATH环境变量来指定在Windows上可以导入模块的目录列表。运行时,可以检查系统。Path变量,以查看在导入某些内容时将搜索哪些目录。
要在命令提示符中设置这个变量,请使用:set PYTHONPATH=list;of;paths。
要从PowerShell设置这个变量,请在启动Python之前使用:$env:PYTHONPATH= ' list;of;paths '。
不建议通过环境变量设置全局设置此变量,因为它可能被任何版本的Python使用,而不是您打算使用的版本。在Python on Windows FAQ文档中阅读更多内容。
你需要添加到你的PYTHONPATH变量而不是Windows PATH变量。
http://docs.python.org/using/windows.html
虽然这个问题是关于“真正的”Python的,但它确实在“Iron Python PYTHONPATH”的网络搜索中出现过。对于像我一样困惑的Iron Python用户:原来Iron Python寻找的是一个名为IRONPYTHONPATH的环境变量。
Linux/Mac/POSIX用户:别忘了Windows不仅使用\作为路径分隔符,而且还使用;作为路径分隔符,而不是:。
您也可以在c:\PythonX中添加一个包含所需目录的.pth文件。X文件夹,或您的\site-packages文件夹,这往往是我在开发Python包时的首选方法。
更多信息请参见这里。