假设,我创建了一个包含许多函数和其他东西的python文件(FirstFile.py)名称。其中一个功能是这个(当然,它是简化的):如何使用另一个文件中定义的变量在文件中使用包含eval的函数?
def func(string):
assert eval(string)
此外,我已经创建了从文件进口FUNC()上述的Python文件。然后第二个Python文件尝试执行以下过程:
from FirstFile import func
amk = 1
func("amk == 1")
当变量“AMK”是第一个文件,没有问题的揭示。然而,当变量“AMK”是第二个文件,这是在这里说明,错误显示:
NameError: name 'amk' is not defined
你想请你帮我解决这个问题?
它是'amk'还是'ask',因为你的错误显示'ask',但是无论哪种方式,变量都在第二个文件的范围内,第一个文件不能访问。为了给予第一个文件访问权限,我将它作为一个变量传递给func()。 func被定义为'def func(string,* args):' – TheLazyScripter
@TheLazyScripter它不能与'def func(string,* args)'一起工作。 – Luis
@Kivi Kivit你能详细说明你需要执行什么吗?如果需要,可以通过某种方式解决变量范围的问题... – Luis