我嘗試谷歌搜索,但找不到類似的問題。我確信這是愚蠢的,但我似乎無法理解。我有以下代碼:def f(a): try: 4 / a except: f(2) else: print('else') finally: print("finally")當我以 0 作為參數調用函數時:f(0)它返回:elsefinallyfinally所以根據我的理解,這是應該發生的事情:0 被提供給函數;try語句不能執行;除了語句獲取觸發器,它再次使用合法參數 2 調用該函數。try 語句現在可以了;else 語句打印 else最后聲明打印 finally為什么finally會打印兩次?
“最終”語句在遞歸函數中執行兩次 [Python 3.6]p
慕尼黑5688855
2021-07-30 01:36:10