2

我有一个(单个).py 脚本。在其中,我需要导入一个库。

为了找到这个库,我需要调用 sys.path.append。但是,我不想硬编码库的路径,而是将其作为参数传递。

所以我的问题是,如果我在这个文件中创建一个函数(set_path),我需要导入文件,并且导入失败,因为路径尚未附加。

有什么好的方法可以解决这个问题?

评论后澄清:

  • 我正在使用 IronPython,库路径是 CPython/lib 的路径。这条路径(可能)在每个系统上都不同。
  • 据我所知,我不能通过 sys.argv 传递任何东西,因为脚本是在嵌入式 python 解释器中运行的,并且没有 main 函数。
4

2 回答 2

3

您不应该在全局范围内进行导入,而是在附加路径后调用的函数内进行。

于 2013-04-25T15:05:01.170 回答
1

也许使用 sys.argv 将文件作为参数传递,将其添加到路径中,然后导入它。然后像这样运行你的程序:

python my_program.py somefolder/some_import.py

这是使用 sys.argv 的参考:http: //www.pythonforbeginners.com/systems-programming/python-sys-argv/

于 2013-04-25T15:06:35.223 回答