1. 程式人生 > >下午學習,函式部分相關內容

下午學習,函式部分相關內容

 1 #函式(function):有返回值
 2 #過程(procedure):是簡單、特殊並且沒有返回值的,python只有函式沒有過程
 3 
 4 def hello():
 5     print("hello word")
 6 temp=hello() #這條語句顯示結果為:hello word
 7 print(temp)#打印出來的結果是 none 這就是返回值
 8 
 9 def back():
10     return[1,"中國山東",3.14]
11 temp=back()
12 print(temp)#通過列印才能顯示出結果。這是列表。
13 
14 def back():
15 return 1,"中國山東",3.14 16 temp=back() 17 print(temp)#通過列印才能顯示出結果。這次是元組。 18 19 #區域性變數:Lock Variable 20 #全域性變數:Global Variable 21 print("="*80) 22 def discounts(price=89,rate=0.85): 23 global final_price #在這裡宣告為全域性變數後,在外部可以訪問了。 24 final_price=price*rate 25 #print("這裡試圖列印全域性變數old_price的值:",old_price)#區域性能訪問全域性變數
26 return final_price 27 28 #old_price=float(input("請輸入原價:")) 29 #rate=float(input("請輸入折扣率:")) 30 new_price=discounts()#(old_price,rate),當input啟用時,註釋括號內的內容,應寫到前面 31 print("打折後的價格是:",new_price) 32 #以上程式碼是一個計算折扣的完整程式碼。 33 #print("這裡試圖列印區域性變數final_price的值:",final_price) #外部不能訪問區域性變數 34 #print("這裡試圖列印全域性變數old_price的值:",old_price)
35 print("="*80) 36 count=5 37 def Myfun(): 38 count=10 39 print("這裡列印是的函式內部的變數count:",count) 40 Myfun() 41 print("這裡列印的是全域性變數count",count) 42 #怎麼變成全域性變數呢??宣告為全域性變數即可。global varible 43 #內嵌函式:python裡面允許函式裡面建立另外一個函式。 44 45 def fun1(): 46 print("fun1()正在被呼叫……") 47 def fun2(): 48 print("fun2()正在被呼叫……") 49 fun2()#這裡一定要注意,要和上面的內嵌函式def對齊。要不,就不能正常呼叫。 50 fun1() 51 52 #閉包:(closure)是函式程式設計的重要的語法結構,是一種程式設計正規化。 53 54 def FunX(x): 55 def FunY(y): 56 return x*y 57 return FunY 58 i=FunX(8) 59 jg=i(9) 60 print("閉包函式的計算結果是:",jg) 61 print("="*80) 62 def Fun1(): 63 x=[7,8,9] 64 print("這是外部函式") 65 def Fun2(): 66 print("這是內部函式") 67 nonlocal x #強制說明x不是區域性變數 68 x[1]*=x[1] 69 return x[1] 70 71 return Fun2() 72 i=Fun1() 73 print(i) 74 75 print("="*80) 76 def Fun1(): 77 x=15 78 print("這是外部函式x=15") 79 def Fun2(): 80 print("這是內部函式,得到x的平方") 81 nonlocal x #強制說明x不是區域性變數 82 x*=x 83 return x 84 85 return Fun2() 86 i=Fun1() 87 print(i) 88 print("="*80)