Python隨筆記(函式)

2021-08-04 12:46:14 字數 3315 閱讀 8443

函式:在乙個完整的專案中,某些功能會反覆的使用,那麼會將功能封裝成函式,當我們要使用函式的時候直接呼叫函式就可以。

本質:函式就是對功能的封裝

優點:1、簡化**結構,增加了**的復用

2、如果想修改某些功能,或者除錯某個bug,只需要修改對應的函式即可。

定義函式

格式:def   函式名(引數列表):

語句

return 表示式

函式名:遵循識別符號規則

():引數列表的開始

引數列表:(引數1,引數2,……,引數n):任何傳入函式的引數和變數必須放在括號之間,用逗號隔開。

語句:函式封裝的功能

return:一般用於結束函式,並返回資訊給函式的呼叫者(return可以不寫,不寫預設return none)

表示式:為要返回給函式的呼叫者的資訊

函式的呼叫:

格式:函式名(引數列表)

函式名:要使用的函式的名字

引數列表:函式的呼叫者給函式傳遞的函式

本質:實參給形參賦值的過程

形參(形式引數):定義函式時,小括號中的引數

引數必須按順序傳遞,個數對應

案例:編寫函式,給函式兩個數,返回這兩個數的和

def mysum(num1,num2):

#將結果返回給了函式的呼叫者

sum = num1 + num2

#執行完return語句,該函式結束,return後面的語句不執行

return sum

#return num1 + num2

res = mysum(1,2)

print(res)

傳遞引數:

值傳遞:傳遞不可變型別:string,tuple,number型別是不可變的

案例:

def func1(num):

引用傳遞:傳遞的可變型別list,dict,set

案例

def  func2(list):

預設引數

呼叫函式時,如果沒有傳遞引數,則使用預設引數,一般預設引數放到最後

不定長引數

def function(*args,**kwargs):#用*args和**kwargs表示要傳入的引數

匿名函式(本人第一次考試被它考懵了)

不適用def這樣的語句定義函式,使用lambda來建立函式

特點:1.lambda只是乙個表示式,函式體比def簡單

2.實現的邏輯比較簡單,主體是乙個表示式,而不是**塊,僅僅只能在lambda中封裝簡單的邏輯

3.lambda函式有自己的命名空間,且不能訪問自由引數列表之外的或全域性命名空間裡的引數

4.雖然lambda是乙個表示式且看起來只能寫一行,與c與c++內聯函式不同

案例:將函式表示式轉為lambda的形式

偏函式(特地搜了搜的說)

可是實現進製的轉換,可以將字串轉為整數

案例

print(int("1010",base=2))#當成二進位制算,最後輸出10進製的數字

def int2(str,base=2):

return int(str,base )

print(int2("1010"))

#把乙個引數定住,形成乙個新的函式

終於有時間上傳了(哈哈哈哈)

Python隨筆9 函式

函式就是乙個程式段,給乙個函式名 寫一些語句,然後就可以在任意地方使用這個函式任意次數,可以大大的降低工作量 函式的定義 def 函式名 引數 語句def printmyaddress address print my address is s address printmyaddress bj 主...

python隨筆8 定義函式

定義函式 下面是乙個簡單的函式 def greet user print hello greet user 首行 使用關鍵字def來告訴python你要定義乙個函式。這是函式定義,向python指出了函式名,還可能在括號內指出函式為完成其任務需要什麼樣的資訊。在這裡,函式名為greet user 它...

python 學習隨筆記錄 入門

本人學生黨,想要在暑假學習python,此部落格用於記錄學習過程。有興趣的小夥伴也可以跟著一起學習哦,希望這些筆記對你們也有幫助。編譯型語言和解釋型語言 編譯型語言 程式執行速度快,同等條件下對系統的要求較低。開發作業系統 大型應用程式,資料庫系統。c c,解釋型語言 網頁指令碼對不同系統平台間的相...