gpt4 book ai didi

python - 如何在不破坏上层导入的情况下从子目录运行 Python 脚本?

转载 作者:太空宇宙 更新时间:2023-11-03 13:54:58 24 4
gpt4 key购买 nike

我有这样一个非常简单的场景:

example/
common.py
folder1/
script.py

script.py 文件应该导入 common.py 模块。

如果我 cd 进入 folder1/ 并运行脚本(即通过在命令行调用 python3 script.py),导入因常见错误 ModuleNotFoundError: No module named 'common' 而中断。

我知道我可以通过在每个子目录中添加 __init__.py 文件将整个父文件夹变成一个包,但是这个解决方案仍然阻止我直接从 folder1/中运行脚本

我该如何解决这个问题?

最佳答案

如果你把这两个目录都变成 python 包,并且顶层目录在你的 PYTHONPATH 中,你可以像这样运行 script.py:

python3 -m example.folder1.script

关于python - 如何在不破坏上层导入的情况下从子目录运行 Python 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57713233/

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