每当我使用sys.path。追加,新目录将被添加。然而,一旦我关闭python,列表将恢复到以前的(默认?)值。如何将目录永久添加到PYTHONPATH?
当前回答
对于那些(像我一样)不想太深入地参与Python文件管理(这似乎过于复杂)的人来说,在我的Windows 11笔记本电脑上创建.pth文件工作得非常完美(我在Windows中使用Visual Studio Code)。所以只要找到你的虚拟环境站点包的文件夹——这是我的:
创建一个扩展名为.pth的文本文件——我把我的文件命名为wheal.pth:
为它添加路径:
在VS Code中最好的事情是导入语句可以识别这个路径(我不得不退出VS Code并返回),所以现在更多的输入# type: ignore来抑制linting警告消息!
其他回答
如果您正在使用bash(在Mac或GNU/Linux发行版上),请将此添加到~/.bashrc中
export PYTHONPATH="${PYTHONPATH}:/my/other/path"
将export PYTHONPATH="${PYTHONPATH}:/my/other/path"添加到~/。如果PYTHONPATH当前不存在(因为:),bashrc可能无法工作。
export PYTHONPATH="/my/other/path1"
export PYTHONPATH="${PYTHONPATH}:/my/other/path2"
将以上内容添加到我的~/。bashrc在Ubuntu 16.04上为我完成了这个任务
A <-> B之间的最短路径是一条直线;
import sys
if not 'NEW_PATH' in sys.path:
sys.path += ['NEW_PATH']
您需要将新目录添加到环境变量PYTHONPATH中,以冒号与之前的内容分隔。在任何形式的Unix中,您都可以在适合于您使用的任何shell的启动脚本中完成(。配置文件或其他,取决于你最喜欢的shell)与一个命令,同样,取决于所讨论的shell;在Windows中,您可以通过系统GUI来实现此目的。
Superuser.com可能是一个更好的地方,可以进一步询问,例如,如果您需要详细说明如何在所选的平台和shell中丰富环境变量,可以询问更多细节,因为这本身并不是一个真正的编程问题。
受到andrei-deusteanu答案的启发,以下是我的版本。这允许您在site-packages目录中创建许多额外的路径。
import os
# Add paths here. Then Run this block of code once and restart kernel. Paths should now be set.
paths_of_directories_to_add = [r'C:\GIT\project1', r'C:\GIT\project2', r'C:\GIT\project3']
# Find your site-packages directory
pathSitePckgs = os.path.join(os.path.dirname(os.__file__), 'site-packages')
# Write a .pth file in your site-packages directory
pthFile = os.path.join(pathSitePckgs,'current_machine_paths.pth')
with open(pthFile,'w') as pth_file:
pth_file.write('\n'.join(paths_of_directories_to_add))
print(pthFile)
推荐文章
- set()是如何实现的?
- 如何使Python脚本在Linux中像服务或守护进程一样运行
- 返回大列表中每n项的python方式
- 如何使用Python中的DLL文件?
- 我如何量化两幅图像之间的差异?
- 获取列表列表到pandas DataFrame
- 在Sublime Text 2中使用Ctrl+D进行多个选择时,我如何跳过匹配?
- #定义WIN32_LEAN_AND_MEAN具体排除了什么?
- 找到python的安装位置(如果不是默认目录)
- 哈希字典?
- 如何为matplotlib散点图放置单独的标签?
- 如何动态创建变量?
- 如何在文本文件中搜索字符串?
- 生成具有给定(数值)分布的随机数
- 用Python计算Pearson相关性和显著性