python之函式詳解(補)

2021-10-03 15:42:42 字數 2197 閱讀 1876

不是已經寫了一篇關於函式的了嗎?為什麼還有一篇補的呢? 相信看過前一篇函式詳解的知道,有一張關於函式導圖的,還有好幾個知識沒有說明,如果全部寫一篇文章發表的呢,篇幅很長,影響學習興趣!話不多說,碼就完了!!!

1.3、高階函式:變數指向函式,函式的引數能夠接收變數,那麼乙個函式就可以接受另乙個函式作為引數,這種函式就成為高階函式。

兩個特點:變數可以指向函式;函式名其實就是指向函式的變數。

1.3.1、map()函式:map()函式接收兩個函式,乙個是函式,另乙個是iterable。語法格式為:

map

(func,sep1[

,sep2,……]

)

第乙個引數func接收乙個函式名,後面的引數接收乙個或多個可迭代的序列,返回乙個集合

def

f(x)

:return x * x

r_map =

map(f,[1

,2,3

,4])

#運用map函式,將f(x)作為引數

list

(r_map)

#簡單理解為map函式將func後的序列依次傳入func中,然後賦值給r_amp。

1.3.2、sorted函式:可對所有可迭代的物件進行排序操作,語法格式為:

sorted

(iterable,key=

none

,reverse=

false

)#iterable為可迭代物件

#key為指定的函式;reverse指代排序規則,為true表降序,false表公升序(預設)

sort()與sorted的區別:sort僅應用在list上,是對已經存在的列表操作;sorted可以對所有可迭代的物件進行操作,返回乙個新的list,而不是在原有基礎上操作。

#sort與sorted的區別

l =[1,

9,3,

7,5]

k =[8,

4,6,

0,2]

print

(sorted

(l))

#使用sorted函式排序得到乙個新的list

print

(l)#sorted函式並未改變l

k.sort(

)#sort函式作用於list

print

(k)#k本身已經改變

2#sorted運用例項

#對字串序列按照字母進行反向排序

sorted([

'tom'

,'kate'

,'lily'

,'susan'

],key =

str.lower,reverse=

true

)#對字串序列按照字母順序進行排序

sorted([

'tom'

,'kate'

,'lily'

,'susan'

],key =

str.upper)

1.3.3、filter函式:用於過濾序列。filter把傳入的函式依次作用於每個元素,然後根據返回值是true還是false決定保留還是丟棄該元素。ps:高階函式有很多,就不一一枚舉啦!!

#過濾出1-100中平方根為整數的數

import math

defsqr_int

(x):

return math.sqrt(x)%1

==0r_list =

filter

(sqr_int,

range(1

,101))

list

(r_list)

1.4、匿名函式:由於突然發現python對匿名函式支援有限,匿名函式只在一般情況下使用,所以就簡略的敘述下。

所謂匿名,就是不使用def語句,而使用lambda。需要注意的是lambda的主體是乙個人表示式而不是乙個**塊。它擁有自己的命名空間,且不能訪問自己引數列表之外或全域性命名空間裡的引數

#語法

lambda

[arg1 [

,arg2,……srgn]

]:expression

#定義乙個引數,返回它的平方

f =lambda a: a *af(5

)#執行結果 25

(補篇)python函式(上)

這個 符號是交集運算 s1 s2 result s1 s2 輸出結果是 這個 符號是並集運算 result s1 s2 輸出 這個 符號是差集運算 result s1 s2 輸出 result s2 s1 輸出 這個 符號是亦或集 result s1 s2 輸出 檢查乙個集合是否是另乙個集合的子集 ...

python之隨機函式詳解

random 方法 返回隨機生成的乙個實數,它在 0,1 範圍內 運用random 方法的語法 import random random 方法不能直接訪問,需要匯入random模組,然後通過random靜態物件呼叫該方法 random.random 方法用於生成乙個0到1的隨機浮點數 0 n 1.0...

python之函式 形參詳解

如何定義乙個函式def hello print hello print python 通過函式名來呼叫函式hello 定義函式的時候的變數 叫形參 名字任意 def welcome a print welcome a 真實的資料資訊 被呼叫函式的時候 傳遞的值 交實參 引數 實參 形參 形參 位置引...