0

我有一堆模块说:

modules/module1

它不在我要输入文件的目录中。

目前我转到包含文件的目录并运行:

from module1 import calc
import os

cwd = os.getcwd()
calc(cwd)

我想将其简化为尽可能简单,即从任何地方导入模块 calc 并运行calc(cwd),而不必每次都输入 cwd。有没有办法告诉 calc 你不在模块目录中,而是在其他地方?如果我只是运行calc()它,它会认为文件在 modules/ 内部,而实际上它不在。

目标是只 cd 进入一个目录并在该目录中对一个始终具有相同名称的文本文件(包含诊断信息的文件)运行 calc。

我已将 module1 文件夹添加到 python 路径和init .py,因此我已经可以从任何地方导入我的所有模块。

提前致谢。

4

1 回答 1

1

您可以将这样的代码添加到您的module1

if __name__ == '__main__':
    import os
    calc(os.getcwd())

由于您可以从任何地方导入模块,如果您现在这样做

python -m module1

然后__main__代码将在该目录中运行。

于 2013-09-05T19:53:27.517 回答