我有2個文件main.py和irc.py.
main.pyPython:如何在模塊中使用主文件中的變量?
import irc
var = 1
func()
irc.py
def func():
print var
當我嘗試運行main.py我得到這個錯誤
NameError: global name 'var' is not defined
如何使它工作?
@Edit
我想有一個更好的解決方案,但不幸的是,唯一一個我發現是使另一個文件,並將其導入到這兩個文件
main.py
import irc
import another
another.var = 1
irc.func()
irc.py
import another
def func():
print another.var
another.py
var = 0
將此函數移動到主文件而不是添加此參數會更容易 – gr56 2011-05-15 21:56:54
@ gr56:然後它聽起來像重構是按順序。如果這也不可能,我會選擇第三個模塊的解決方案,該模塊只包含'var'對象並由兩者導入。如果這對您有用,請將其作爲您自己問題的答案發布並接受。 – 2011-05-16 17:06:10
@SamirTalwar你可以爲函數做到這一點,對於類的實例化呢?例如,您想要在另一個可以導入的模塊中定義類的實例。在這種情況下,參數不能是佔位符。 – 2017-07-12 15:37:19