您的位置:首頁技術文章
文章詳情頁

python - 如何獲取嵌套函數中的值

瀏覽:127日期:2022-07-11 13:34:21

問題描述

假設有這樣一段代碼:

def demo(): a = 1 b = 0 c = a / bdef main():try: demo()except Exception as e: print(e)main()

現在希望在異常時不對demo函數內的代碼做任何修改也可以獲取到demo中a和b的值。

問題解答

回答1:

參考了這個問題,然后解決了。嵌套函數獲取調用函數

回答2:

用全局變量 global 可以實現

a = b = 0def demo(): global a, b a = 1 b = 0 c = a / bdef main():try: demo()except Exception as e: print ’a: %d, b: %d’ % (a, b) print(e)main()回答3:

函數外加引用, 這是變量作用域的知識

a = Noneb = Nonedef demo(): global a, b a = 1 b = 0 c = a / bdef main(): try:demo() except Exception as e:print(e)main()print aprint b

或者把a,b放一個字典變量里, 這樣就不需要global了

g = {'a':0,'b':0}def demo(): g[’a’] = 1; g[’b’] = 0 c = g[’a’] / g[’b’]

標簽: Python 編程
相關文章:
国产综合久久一区二区三区