Def func1():
H = 1
func1()
If H == 1:
Print("nice")
錯誤:未定義 h
#我需要為我的文本冒險解決這個問題(順便說一句,它是我的第一個 python 專案)
uj5u.com熱心網友回復:
您可以回傳變數以在函式外部使用它:
def func1():
H = 1
return H
H = func1()
If H == 1:
print("nice")
uj5u.com熱心網友回復:
這與范圍有關。在函式中分配1給變數H,盡管這樣做,你正在隱藏任何全域變數H,因為函式有自己的范圍,與全域、其他函式、類等分開......
如果出現這種預期行為,則使用global函式內的關鍵字。
def func1():
global H
H = 1
但是這個 ↑ 是(在大多數情況下)不好的做法
相反,您應該回傳值:
def func1():
return 1
H = func1()
if H == 1:
print("nice")
uj5u.com熱心網友回復:
在函式內部宣告的變數是區域變數。這意味著您無法在函式之外訪問
將 H 宣告為全域變數,您可以在代碼中的任何位置訪問變數 H
def func1():
global H
H = 1
func1()
if H == 1:
print("nice")
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/478856.html
標籤:Python
