我想做一个函数内部打印变量以下的蟒蛇:Python入门:从另一个函数
def func1():
var1 = "something"
def func2():
print var1
什么是正确的方式做到这一点?我还没有在文档中找到
PS。如果可能的话,我不打算让'var1'成为一个全局变量。
谢谢。
我想做一个函数内部打印变量以下的蟒蛇:Python入门:从另一个函数
def func1():
var1 = "something"
def func2():
print var1
什么是正确的方式做到这一点?我还没有在文档中找到
PS。如果可能的话,我不打算让'var1'成为一个全局变量。
谢谢。
我假设您不希望将该变量作为函数调用之间的参数传递。在函数之间共享状态的正常方式是定义一个类。这可能是你的具体问题矫枉过正,但它可以让你有共同的状态,控制住:
class C:
def func1(self):
self.var1 = "something"
def func2(self):
print self.var1
foo = C()
foo.func1()
foo.func2()
那么你的func2()试图在另一个函数的范围内打印一个变量。您可以
你可以尝试像
def func1():
var1 = "something"
return var1
def func2():
print func1()
如果您需要func1来做更多的事情而不仅仅是定义var1,那么您可能需要的是定义一个类并创建对象?请参阅http://docs.python.org/tutorial/classes.html
感谢您的回答! – 2011-03-10 16:39:56
你可以尝试:
filename.py:
def func1():
var1 = "something"
def func2():
var = __ import__('filename').var1
print var
感谢您的回答! – 2011-03-10 16:36:08
现在它适用于我...我创建了一个像你写的类,我可以“看到”并使用该变量! – 2011-03-10 16:41:45