我的Python分析成长之路4
一、函數
1.什么是函數?:函數是帶名字的代碼塊,調用函數,只要調用函數名就可以。
?? 2.函數的性質:1.減少重復代碼 2.使程序變得可擴展 3.使程序變得易維護
3.編程范示:
1.面向對象編程???????? 關鍵字:class
2.面向過程編程 ? 關鍵字:def ?? 面向過程是沒有返回值的函數
3.函數式編程 ? 關鍵字:def?
def say_hello():print("hello") print_hello()4.函數的參數
形參:函數完成其工作所需的一項信.形參變量只有在被調用時才分配內存單元,在調用結束時,即刻釋放所分配的內存單元。因此,形參只在函數 ? ? ? ? ? ? ? ?????????????? 內部有效。函數調用結束返回主調用函數后則不能再使用該形參變量。
?實參:調用函數時傳遞給函數的信息。實參可以是常量、變量、表達式、函數等,無論實參是何種類型的量,在進行函數調用時,它們都必須有確
? ? ? ? ? ? 定的值,以便把這些值傳送給形參。因此應預先用賦值,輸入等辦法使參數獲得確定值
形參:位置參數、關鍵字參數
對于位置參數,傳遞實參時要一一對應,傳遞的實參個數要與形參個數相同。
關鍵字參數,傳遞的參數由變量名和值組成,和形參順序無關。
當位置參數和關鍵字參數同時存在時,關鍵字參數要放到位置參數的后面。
?
默認參數:調用函數時,默認參數非必須 傳值。函數調用時,如果沒有傳值,則使用默認參數,傳怎使用傳遞的值
對于傳遞任意數量的值時,我們要使用*args和**kwargs? 對于*args,可以接受N個位置參數,最后轉化為元組.對于**kwargs,可接受N個關鍵字參 數,最后轉化為字典。
5.局部變量和全局變量
在子程序中定義的變量稱為局部變量,在程序的一開始定義的變量稱為全局變量
全局變量作用域是整個程序,局部變量作用域是定義該變量的子程序。 當全局變量與局部變量同名時: ??? 在定義局部變量的子程序內,局部變量起作用;在其它地方全局變量起作用。 ???????????? 要想引用和修改全局變量,就要使用global 6.返回值 返回值是為了獲得函數執行的結果,用return語句返回。 注意事項: 1.函數在執行過程中碰到return語句,就會停止執行后面的代碼并放回結果。 2.如果沒有返回值,即沒有return語句,則返回None 3.如果有一個返回值,則返回的是一個object 4.如果有多個返回值,則返回的是一個tuple 7.遞歸 如果一個函數在內部調用函數本身,則為遞歸 遞歸的特點: 1.必須要有一個明確的終止條件。 2.每次進入更深一層的遞歸時,問題規模就會比上一次規模減少 3.遞歸效率不高,遞歸層次過多會導致棧溢出 8.高階函數 ? 一個函數作為另一個函數的參數轉載于:https://www.cnblogs.com/Ezhizen/p/10202532.html
總結
以上是生活随笔為你收集整理的我的Python分析成长之路4的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用代码定义动画
- 下一篇: 【UOJ34】—多项式乘法(FFT)