假設,我創建了一個包含許多函數和其他東西的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