Python基礎——函數基礎和函數參數
文章目錄
本章節講述函數的基本用法 ;請您準備好pycharm(電腦)運行工具進行操作
一、函數的基本內容
1、函數標準格式
1 2 3 4 |
def 函數名(參數): 函數介面 函數體 return 返回值 |
函數名命名規則: 字母、數字和下劃線組成,和變數命名規則一致
return 後面可以返回任意表達式,但不能是賦值語句
2、函數調用
函數名(參數)
1 2 3 4 |
def xiaoyan(s): print("我是{}".format(s)) xiaoyan('小閆同學') |
注:必須先調用哦
3.參數
- 形參:函數沒有調用的時候,它沒有任何意義;在調用時,必須傳入參數,所以也叫必須參數
- 實參:與形參位置是一一對應的,所以也叫位置參數;缺一不可,缺了或多了都會報錯
1 2 3 4 5 |
def xiaoyan(a, b): print(a, b) xiaoyan("小閆同學",'Welcome to Xiaoyan class') |
輸出結果 如圖:
如果您沒看懂 我們換個簡單的例子
代碼:
1 2 3 4 5 |
def f(x, y): print("我是{}{}".format(x, y)) #format 類型 f(1, 2) |
輸出結果如下圖:
缺少參數時
此時,他就會報錯
他也會報錯
重點:
- 默認參數:不傳參,用默認值,傳參它也能接收;一定要放在必須參數後面,否則會報錯
- 關鍵字參數
f(x=1, y=2)
通過關鍵字去找對應的必須參數,這樣就不需要一一對應了。
- 動態參數
一般寫法:def f(*args, **kwargs) ;
*args:調用參數時,所有傳入的多餘的位置參數都會被args接收生成一個元組;
**kwargs:函數調用時,多餘的關鍵字參數,都會被kwargs接收,生成一個字典
- 擴展:為動態參數傳入列表、字典、元組
return
注意 return 和 print 的區別,return是函數的返回值,返回值可以賦值給變數,而print只是列印出來
二、常用內置函數
函數名 | 作用 |
---|---|
len | 求長度 |
min | 求最小值 |
max | 求最大值 |
sorted | 排序 |
reversed | 反向 |
enumerate | 返回一個可以遍歷的對象 |
eval | 取出字元串的內容,當做表達式進行運算並有返回值 |
exec | 執行字元串,沒有返回值 |
filter | 過濾器,每個可迭代對象去執行函數,獲取滿足條件的,不滿足的刪去 |
map | 對於可迭代參數,應用函數,結果返回 |
zip | 配對 |
enumerate:
1 2 3 4 5 6 7 |
li = ['a', 'b', 'c'] for i in enumerate(li): print(i) print(list(enumerate(li))) |
輸出結果:
eval:
1 2 |
a = "1 + 2 + 3" print(eval(a)) |
filter:
1 2 3 4 5 |
def f1(i): return i > 10 li = [1, 90, 23, 49, 5] print(list(filter(f1, li))) |
輸出結果:
map:
1 2 3 4 5 6 7 8 9 |
def f1(i): return i > 10 li = [1, 90, 23, 49, 5] s = [11, 34, 57] print(list(map(f1, li))) |
輸出結果:
注:filter和map的區別是: filter是對對象的篩選,獲取的是對象元素,map獲取的是表達式的值(True或False)
zip:
1 2 3 4 5 6 7 |
s1 = [1, 2, 3] s2 = ['a', 'b', 'c'] a = zip(s1, s2) print(dict(a)) |
三、作業: (4套乾貨哦)
題目:定義一個函數,對指定數據進行排序,通過參數來決定是正向排序還是反向排序。
由於網站搬家,部分鏈接失效,如無法下載,請聯繫站長!謝謝支持!
1. 帶 [親測] 說明源碼已經被站長親測過!
2. 下載後的源碼請在24小時內刪除,僅供學慣用途!
3. 分享目的僅供大家學習和交流,請不要用於商業用途!
4. 本站資源售價只是贊助,收取費用僅維持本站的日常運營所需!
5. 本站所有資源來源於站長上傳和網路,如有侵權請郵件聯繫站長!
6. 沒帶 [親測] 代表站長時間緊促,站長會保持每天更新 [親測] 源碼 !
7. 盜版ripro用戶購買ripro美化無擔保,若設置不成功/不生效我們不支持退款!
8. 本站提供的源碼、模板、插件等等其他資源,都不包含技術服務請大家諒解!
9. 如果你也有好源碼或者教程,可以到審核區發布,分享有金幣獎勵和額外收入!
10.如果您購買了某個產品,而我們還沒來得及更新,請聯繫站長或留言催更,謝謝理解 !
GG資源網 » Python基礎——函數基礎和函數參數
1. 帶 [親測] 說明源碼已經被站長親測過!
2. 下載後的源碼請在24小時內刪除,僅供學慣用途!
3. 分享目的僅供大家學習和交流,請不要用於商業用途!
4. 本站資源售價只是贊助,收取費用僅維持本站的日常運營所需!
5. 本站所有資源來源於站長上傳和網路,如有侵權請郵件聯繫站長!
6. 沒帶 [親測] 代表站長時間緊促,站長會保持每天更新 [親測] 源碼 !
7. 盜版ripro用戶購買ripro美化無擔保,若設置不成功/不生效我們不支持退款!
8. 本站提供的源碼、模板、插件等等其他資源,都不包含技術服務請大家諒解!
9. 如果你也有好源碼或者教程,可以到審核區發布,分享有金幣獎勵和額外收入!
10.如果您購買了某個產品,而我們還沒來得及更新,請聯繫站長或留言催更,謝謝理解 !
GG資源網 » Python基礎——函數基礎和函數參數