我在main()中有一個變量(var2),我想從一個導入模塊中的函數訪問,而不將它作爲參數傳遞。我已經嘗試從module.py中導入vartest.py,並且可以使用printFromModule2()函數訪問var1(即main()之外),但不能使用var2。從main()傳遞變量到模塊
我想我有兩個問題:
- 才能實現這一目標?
- 如果這不是我應該做的事,那麼正確的工作方式是什麼?
非常感謝!
編輯:我已經嘗試在模塊中導入vartest.py,並且可以訪問vartest.var1,但不能訪問vartest.var2或vartest.main.var2--不知道第二個是否是有效的Python。
vartest.py:
import sys
import module
var1 = 'variable 1 in vartest.py'
def main():
var2 = 'variable 2 inside main'
print var1
print var2
print module.var3
module.printFromModule(var1)
module.printFromModule(var2)
module.printFromModule(module.var3)
module.printFromModule2()
if __name__ == "__main__": main()
module.py:
var3 = 'variable inside module'
def printFromModule(var_x1):
print ("module print: %s" % var_x1)
def printFromModule2():
print ("module print: %s" % var2)
您無法訪問該函數之外的函數局部變量。 – chepner 2014-09-02 14:51:10