[Python] Use an empty class to hold a temporary scope



def function_creator():
   class FnScope:
     b = 5
     c = 6
   def inner_fn():
      FnScope.b += 1
      FnScope.c += FnScope.b
      print(FnScope.c)
   return inner_fn

>>> f = function_creator()
>>> f()
12
>>> f()
19
>>> f()
27


Reference: Python nested functions variable scoping

留言

這個網誌中的熱門文章

Art Of War:Legions 兵種分析:升級哪個兵種能夠獲得最大的戰鬥力跟持續力

「深耕」一詞在不同領域的英文翻譯

[英文] will + be + Ving 用未來進行式表示持續一段時間的動作