python在函数内部访问外部全局变量的方法_在函数外部访问函数变量,而无需使用“全局”...
您可以按照以下方式做一些事情(在我測試它們時,它們在Python v2.7.15和v3.7.1中均有效):
def hi():
# other code...
hi.bye = 42? # Create function attribute.
sigh = 10
hi()
print(hi.bye)? # -> 42
函數是Python中的對象,可以為它們分配任意屬性。
如果您將經常執行此類操作,則可以通過創建函數裝飾器來實現更通用的功能,該函數裝飾器會this向裝飾函數的每個調用添加一個參數。
這個額外的參數將為函數提供一種引用自身的方式,而無需明確地將其嵌入(硬編碼)到其定義中,并且類似于類方法自動將其作為第一個參數(通常命名為該實例方法)接收的實例參數self-我選擇了其他方法以避免混亂,但就像self論據一樣,您可以隨意命名。
這是該方法的示例:
def with_this_arg(func):
def wrapped(*args, **kwargs):
return func(wrapped, *args, **kwargs)
return wrapped
@with_this_arg
def hi(this, that):
# other code...
this.bye = 2 * that? # Create function attribute.
sigh = 10
hi(21)
print(hi.bye)? # -> 42
總結
以上是生活随笔為你收集整理的python在函数内部访问外部全局变量的方法_在函数外部访问函数变量,而无需使用“全局”...的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 科技巨头的力量:至强CPU和傲腾内存引领
- 下一篇: 2400内存,amd主板的加速秘籍
