2

我想从指定为参数的文件中导入变量。我该如何做到这一点?

例如:假设我的文件是 myfile.py 我称之为

python myfile.py service.py

现在我想在 myfile.py 中导入 service.py 的变量。

我该怎么做?

4

2 回答 2

2

在里面myfile.py插入一个__import__

module = __import__(sys.argv[1].replace('.py', ''))

将导入第一个命令行参数,module然后您可以将其用作导入的任何其他模块。from 的返回值__import__是一个模块。

在 python 中,import mod它只是 的简写,如果你愿意mod = __import__('mod'),你可以调用该函数。__import__

一个例子:

>>> module = __import__("math")  #same as "import math as module"
>>> module.sqrt(16)
4.0

如果你想用命令行参数的内容污染你的全局命名空间,你可以在这里阅读如何进行from *导入: 如何使用 Python 的 __import__ 函数执行相当于“import * from module”的操作?

于 2013-07-01T20:58:35.870 回答
-1

您可能会问两个问题。可能是如何从命令行导入要处理的文件?你可以得到这样的字符串

fileName = sys.argv(1)
fileHandle = open(fileName, 'r')

如果你想在那个文件中找到参数,那就有点难了。我需要更多地了解格式来帮助你。

于 2013-07-01T20:59:41.870 回答