gpt4 book ai didi

python - 如何从另一个目录运行模块?

转载 作者:太空宇宙 更新时间:2023-11-04 09:58:53 25 4
gpt4 key购买 nike

我的计算机上有一个 python 2.7.15 项目(我知道,遗留原因),我可以从那里运行不同的文件作为模块:

cd /home/me/code/project
python -m path.to.module

这很好用。问题是我从另一个目录中的另一个程序调用这些模块。如果我设置 PYTHONPATH,这应该会起作用。

export PYTHONPATH=/home/me/code/project
cd /home/me/code/controller
python -m path.to.module

然而,这失败了:

No module named path.to.module

这直接在命令行上失败了,所以和我从另一个程序调用它无关。

如果 PYTHONPATH 不成功,如何从另一个目录调用此模块?

最佳答案

PYTHONPATH 的问题是它改变了 sys.path,这是 python 解释器在导入模块时搜索模块的方式。这不同于调用 python 来运行脚本。不幸的是,我不知道这个的 pythonic 解决方案。一种解决方案是运行一个 bash 脚本来为您更改这些目录:

创建一个名为 runModule.sh 的 bash 脚本

#!/bin/sh
python -m some_module
cd path/to/other_module
python -m other_module

让它可执行

chmod -x ./runModule.sh

然后运行它

./runModule.sh

关于python - 如何从另一个目录运行模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57931738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com