轉送聲明函數以防止「NameError」異常
Python 要求在使用函數之前定義函數。當稍後在程式碼中定義函數時,例如使用自訂「cmp」函數對清單進行排序時,這可能會導致「NameError」異常。
為了避免此問題,可以「前向宣告」 " 定義先前的函數。這涉及到將函數呼叫包裝到一個單獨的函數中:
<code class="python">def sort_list(): sorted_list = sorted(mylist, cmp=cmp_configs) print("\n".join([str(bla) for bla in sorted_list])) def cmp_configs(...) -> int: ...</code>
透過在cmp_configs 之前定義sort_list,Python 可以「看到」前向宣告並避免「NameError」異常。一個函數的定義依賴於另一個函數,在同一函數內前向聲明可能會有所幫助:
透過在垃圾郵件中前向聲明Egg,Python 可以識別函數名稱並安全地執行遞歸呼叫。可以在稍後在程式碼中定義函數時防止出現「NameError」異常。
以上是如何使用前向宣告函數避免 Python 中的「NameError」異常?的詳細內容。更多資訊請關注PHP中文網其他相關文章!