# 定義全局變量
a = 100
print(a)
# def test1():
# a = 200
# print(a)
#
#
# def test2():
# print(a) # 雖然沒有定義變量a但是依然可以擷取其資料
#
# 調用函數
# test1()
# test2() # 如果函數内定義了,那麼優先使用局部變量,沒定義則使用全局變量
# print(a) # 當函數内出現局部變量和全局變量相同名字時,函數内部中的
# 變量名 = 資料 此時了解為定義了一個局部變量,而不是修改全局變量的值
# 如果在函數中出現global 全局變量的名字 那麼這個函數中即使出現和全局變量名相同的變量名 = 資料
# 也了解為對全局變量進行修改,而不是定義局部變量
def test1():
global a
a = 200
print(a)
def test2():
a = 300 # 這裡a是局部變量,global 聲明全局變量時
print(a) # 如果函數裡沒有改變這個全局變量的值則可以在不用在這個函數裡聲明全局變量
# 而是直接使用這個變量(見上面第二個例子),如果函數裡還要定義這個值,則要聲明
test1()
test2()
print(a)