0
在javascript中我已經習慣了能夠var a=5
或return a=5
但是在Python如果我嘗試global a=5
,nonlocal a=5
或return a=5
我得到一個錯誤。是否有原因背後爲什麼你不能或我只是做錯了什麼爲什麼你不能在Python 3中的全局/非本地/返回語句中更改變量?
在javascript中我已經習慣了能夠var a=5
或return a=5
但是在Python如果我嘗試global a=5
,nonlocal a=5
或return a=5
我得到一個錯誤。是否有原因背後爲什麼你不能或我只是做錯了什麼爲什麼你不能在Python 3中的全局/非本地/返回語句中更改變量?
在某些語言中,通常的做法是在另一個語句中粘貼一個賦值。例如,
if a = 1 { ... }
Python的開發者決定,這是錯誤的來源,因爲它太靠近
if a == 1:
因此,他們禁止的其他報表的內部分配的嵌套。由於
global a
是對自己的聲明,聲明內部的賦值是不允許的。