首頁 >後端開發 >Python教學 >如何解決 Python 的 UnboundLocalError:全域變數與局部變數?

如何解決 Python 的 UnboundLocalError:全域變數與局部變數?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-27 02:37:10794瀏覽

How to Solve Python's UnboundLocalError: Global vs. Local Variables?

Python 中的UnboundLocalError:解決變數作用域問題

錯誤訊息「UnboundLocalError: 賦值前碼前引用的局部變數'Var1'函數內的局部變數在被賦值之前被存取。在提供的程式碼中,「Var1」變數未在「function()」範圍內定義,但在函數內部的條件語句和賦值語句中使用。

要解決此問題,有必要將「Var1」和「Var2」變數宣告為函數內的全域變數。全域變數在模組層級定義,可以從函數內部存取。要將這些變數宣告為全域變量,請將以下行加入函數頂部:

global Var1, Var2

透過將變數宣告為全域變量,Python 解釋器將理解它們應該從模組層級作用域解析在函數內建立本地副本。這將允許函數按預期引用和修改“Var1”和“Var2”變數。

注意:應盡可能避免在函數內使用全域變量,因為它可能導致混亂且容易出錯的程式碼。更好的做法是將變數作為參數從呼叫者明確傳遞給被呼叫者或將它們作為結果傳回。

以上是如何解決 Python 的 UnboundLocalError:全域變數與局部變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn