在不使用"global"关键字的情况下访问函数外部的函数变量。
- 论坛
- 在不使用"global"关键字的情况下访问函数外部的函数变量。
8 浏览
在不使用"global"关键字的情况下访问函数外部的函数变量。
我正在尝试在Python中在函数外部访问局部变量。
我可以通过使用全局变量使下面的代码工作:
bye = '' def hi(): global bye bye = 5 sigh = 10 hi() print(bye)
接下来,我尝试了下面的代码,希望在不使用global bye
的情况下在hi()
外部访问bye
:
def hi(): bye = 5 sigh = 10 return hi() x = hi() print(x.bye)
这会导致AttributeError: 'NoneType' object has no attribute 'bye'
。
接下来,我尝试了:
def hi(): bye = 5 sigh = 10 return bye hi() x = hi() print(x.bye)
这并没有改善情况;我得到AttributeError: 'int' object has no attribute 'bye'
。
有没有一种方法可以在不使用全局变量和不打印出sigh
变量的情况下在函数外部访问局部函数变量(bye
)?我该如何做?