在Python中,變量的作用域決定了變量在程序中的可見性和生命周期。Python有三種變量作用域:局部作用域(local)、全局作用域(global)和內置作用域(built-in)。下面我們主要討論局部作用域和其他變量作用域的區別。
示例:
def my_function():
local_var = 10 # 局部變量
print("Local variable:", local_var)
my_function()
print("Global variable:", local_var) # 報錯:NameError: name 'local_var' is not defined
global
關鍵字聲明該變量為全局變量。示例:
global_var = 20 # 全局變量
def my_function():
global global_var # 聲明全局變量
global_var = 30 # 修改全局變量的值
print("Global variable:", global_var)
my_function()
print("Global variable:", global_var) # 輸出:Global variable: 30
總結:局部作用域和其他變量作用域(如全局作用域)的主要區別在于作用范圍和生命周期。局部作用域僅在函數內部可見,而全局作用域在整個程序范圍內都可見。局部作用域的變量在函數執行完畢后會被銷毀,而全局作用域的變量在程序運行期間一直存在。