本帖最后由 文质彬彬胡汉三 于 2017-4-8 11:31 编辑
朋友你好,我明白了你的意思。我來說一下global的相關,先看代碼如下:number = 10
def my_number():
global number
print(number)
在這段代碼中,使用global強調了number是全局變量,該函數的功能是屏幕打印number的值,因此在調用該函數的時候,屏幕打印 10
再來看這段代碼:number = 10
def my_number_1():
global number
qw = number + 3
print(qw)
這個函數中,同樣聲明了全局變量number,該函數實現的功能是打印qw的值,在調用函數時,qw = number + 3,因爲聲明了全局變量number,函數直接使用了number的最初定義值。
在你的圖片中,my_fun()這個函數中最後一句,print(10)這就説明該函數的功能是屏幕打印10,因此無論怎樣定義變量,打印都會是10.
再看下邊的代碼:number = 10
def my_number_2():
global number
number = 2 + 4
gg = number +3
print(gg)
這段代碼中,同樣聲明全局變量number,但是下一句number = 2 + 4修改了全局變量number的最初值,使得numer = 6,但是該函數的打印是gg = number + 3,調用該函數時,屏幕打印 9,儅你直接print(number),則屏幕打印 6
這樣說不知你能否理解
|