五.Python_全域性與區域性變數 函式遞迴
阿新 • • 發佈:2018-12-23
Python_全域性與區域性變數 函式遞迴
#11.變數 #全域性變數 沒有縮排的變數稱為全域性變數 #name="tom" #print(name) #def test(): # print(name) #test() #區域性變數 在函式內部定義帶有縮排的變數稱為區域性變數 #全域性作用域與區域性作用域 #函式外部的區域稱為全域性作用域 #函式內部的區域稱為區域性作用域 #函式內部尋找變數先找區域性作用域,如果區域性作用域找不到,再去找全域性作用域裡是否有自己要找的變數 #name="tom" #def test1(): # name="alex" # print(name) #test1() # name="tom" # def test1(): # print(name) # test1() #global #在函式內部修改全域性變數 # name="tom" # print("全域性變數:%s"%name)#輸出全域性變數 # def test3(): # global name #在函式內部定義全域性變數 # name="alex" #修改全域性變數name # test3() # print("修改後的全域性變數:%s"%name)#輸出修改後的全域性變數 #nonlocal #修改上級函式的變數 # name="tom" # def up(): # name="alex" # print(name) #函式變數 # def up1(): # nonlocal name #獲取上級函式的變數 # name="marry" #修改上級函式的變數 # up1() # print(name) #修改後的函式變數 # up() #12.函式遞迴 相當於迴圈,通過不斷的呼叫自身函式並return最終的處理結果 #遞迴: 1.遞迴要有終止迴圈的條件 # def cale(x): # if x//2==1: #判斷x被2整除是否為1 # return x%2 #x被2整除為1,獲取x%2的值作為最終結果返回 # else: # return cale(x//2) #如果不滿足條件,將x//2的商作為引數x,繼續呼叫cale()函式 # print(cale(25)) #輸出遞迴最終得到的結果到控制檯