每当我使用sys.path。追加,新目录将被添加。然而,一旦我关闭python,列表将恢复到以前的(默认?)值。如何将目录永久添加到PYTHONPATH?
当前回答
为了添加awesomo的答案,你也可以在~/中添加这一行。Bash_profile或~/.profile
其他回答
在MacOS上,而不是给出特定库的路径。给出根项目文件夹的完整路径
~/.bash_profile
让我很开心,例如:
export PYTHONPATH="${PYTHONPATH}:/Users/<myuser>/project_root_folder_path"
这样做之后:
source ~/.bash_profile
在linux上,您可以创建从包到PYTHONPATH目录的符号链接,而不必处理环境变量。喜欢的东西:
ln -s /your/path /usr/lib/pymodules/python2.7/
向PYTHONPATH添加新路径是手动执行的:
将路径添加到~/。Bashrc剖面,在终端由:
vim ~/.bashrc
将以下内容粘贴到您的配置文件中
export PYTHONPATH="${PYTHONPATH}:/User/johndoe/pythonModule"
然后,当你在终端中运行你的代码时,确保你的bashrc配置文件的来源:
source ~/.bashrc
希望这能有所帮助。
在Mac上:
user@terminal$ env PYTHONPATH=module_path python3
>>> import sys
>>> sys.path
['module_path', 'plus_other_python3_paths',...]
除了操作PYTHONPATH,您还可以创建一个路径配置文件。首先找出Python在哪个目录中搜索这些信息:
python -m site --user-site
出于某种原因,这在Python 2.7中似乎不起作用。你可以使用:
python -c 'import site; site._script()' --user-site
然后在该目录中创建一个.pth文件,其中包含您想要添加的路径(如果目录不存在,则创建该目录)。
例如:
# find directory
SITEDIR=$(python -m site --user-site)
# create if it doesn't exist
mkdir -p "$SITEDIR"
# create new .pth file with our path
echo "$HOME/foo/bar" > "$SITEDIR/somelib.pth"
推荐文章
- 证书验证失败:无法获得本地颁发者证书
- 当使用pip3安装包时,“Python中的ssl模块不可用”
- 无法切换Python与pyenv
- Python if not == vs if !=
- 如何从scikit-learn决策树中提取决策规则?
- 为什么在Mac OS X v10.9 (Mavericks)的终端中apt-get功能不起作用?
- 将旋转的xtick标签与各自的xtick对齐
- 为什么元组可以包含可变项?
- 如何合并字典的字典?
- 如何创建类属性?
- 不区分大小写的“in”
- 在Python中获取迭代器中的元素个数
- 解析日期字符串并更改格式
- 我如何找到哪个程序正在使用端口80在Windows?
- 使用try和。Python中的if