首页 > 解决方案 > PYTHONPATH 添加到 .zprofile 时多次导出

问题描述

我最近尝试使用 .zprofile 将目录添加到 PYTHONPATH 并且它有效,但是它一遍又一遍地添加目录,所以当我回显 $PYTHONPATH 时,它会一遍又一遍地显示 /Users/will/Python: 大约 1000 次。到目前为止,这就是我的 .zprofile 中的内容。`# .zprofile/.bash_profile

#DIRS=(/Users/will/Python/**) # 将所有子目录存储在这个变量中 DIRS=(/Users/will/Python) export PYTHONPATH=${(j<:>)DIRS}:$PYTHONPATH # prepend PYTHONPATH 的那些子目录

` 需要帮助。:(

标签: pythonlinuxzshpythonpath

解决方案


@Shermanator98:仅第一次将目录放入路径中,而不是每次再次获取文件时。这通常通过使用保护变量来完成:

if (( ${+pythonpath_extended} == 0 ))
then
  export PYTHONPATH=....
  export pythonpath_extended=X # Any value will do
fi

话虽如此,~/.zprofile仅对登录 shell 执行。既然你说你的 Pythonpath 一遍又一遍地扩展,这意味着在你的系统中,你有一个 ZSH 登录 shell 的深层嵌套,这绝对是奇怪的,我建议你调查一下。或者你是否有一些脚本,它一遍又一遍地明确地获取这个文件?


推荐阅读