python學習 day9內建函式(高階)

2021-10-07 15:33:46 字數 3175 閱讀 1857

以下內容僅供自己學習使用,侵刪

#!/usr/bin/env python 

# -*- coding:utf-8 -*-

#-----------------------高階函式-----------------------------

# reversed(可迭代物件)--反轉

# filter(過濾規則的函式,可迭代物件)--過濾

# map(對映要執行的函式,可迭代物件,可迭代物件,可迭代物件)--對映

# sorted(可迭代物件,key=排序規則)--排序

# max()--求最大值

# filter()--過濾

# filter(函式就是寫過濾,可迭代物件)

# lst=[1,2,3,4,5,6,7,8]

# def func(x):#這個func必須有乙個引數

# return x>4

# print(list(filter(func,lst)))#[5, 6, 7, 8]

## """

# 高階函式幫我們實現了乙個for迴圈

# 模擬乙個filter的原理

# """

# lst=[1,2,3,4,5,6,7,8]

# def foo(x):#這個func必須有乙個引數

# return x>4#為真返回true,否則false

# def filter(foo,iter):

# """

## :param func:

# :param iter:

# :return:

# """

# new_lst =

# for i in iter:

## if func(i)==true:#foo(i)

# return new_lst

# filter(foo,lst)

lstt=[1,2,3,4,5,6,7]

print('lstt:', list(filter(lambda x:x<3,lstt)))

lst=["三國演義","水滸傳","紅樓夢","西遊記","白蛇傳","還珠格格","聊齋"]

#過濾掉長度小於3個字的

#過濾出長度大於2個字的

def func(x):

return len(x)>=3

print(list(filter(func,lst)))

print(list(filter(lambda x:len(x)>3,lst)))

print(list(filter(lambda x:len(x)>2,lst)))

#過濾出年齡大於17的

lst = [,,,]

print(list(filter(lambda x:x["age"]>=17,lst)))

#[, ]

print("-------map--------")

#map(函式,可迭代物件)對映

#高階函式的本質是for迴圈

lst=[1,2,3]

lst1=[1,2,3]

lst2=[1,2,3]

print(list(map(lambda x,y,z:x+y+z,lst,lst1,lst2)))#[3, 6, 9]

print(list(map(str,lst)))#['1', '2', '3']

print(list(map(lambda x:str(x),lst)))#['1', '2', '3']

'''類似於

for i in lst:

str(i)

'''print("-----sorted--------")#排序

#sorted(可迭代物件,key=排序規則(函式))

#本質是for迴圈,每迴圈一次,呼叫排序規則,記錄,最後進行排序

lst=[1,2,3,4,111,6,7,8,89]

lst1=[1,2,3,123,12,4312,3132,-1111]

print(sorted(lst,reverse=true))#排序 [111, 89, 8, 7, 6, 4, 3, 2, 1]

print(sorted(lst1,key=lambda x:abs(x)))#[1, 2, 3, 12, 123, -1111, 3132, 4312]

print(sorted(lst1,key=abs))#[1, 2, 3, 12, 123, -1111, 3132, 4312]

lst=["春光燦爛豬八戒","紅樓夢","康熙王朝","搭錯車","上錯花轎嫁對郎"]

print(sorted(lst,key=len))#['紅樓夢', '搭錯車', '康熙王朝', '春光燦爛豬八戒', '上錯花轎嫁對郎']

dic=

print(sorted(dic))#[1, 2, 3]

print(sorted(dic.values()))#['abc', 'boos', 'ck']

print(sorted(dic.values(),key=len))#['ck', 'abc', 'boos']

lst=[,,]

#通過年齡排序

print(sorted(lst,key=lambda x:x['age']))#公升序,如果reverse=true,則降序

#[, , ]

#通過id降序排

print(sorted(lst,key=lambda x:x['id'],reverse=true))

#[, , ]

print("--------max,min-------")

print(max([1,2,3,4,56,-1212,7,8,9,9],key=str))#9,對比ascii碼,'

print(min([1,2,3,4,56,-1212,7,8,9,9],))#-1212

print(min([1,2,3,4,56,-1212,7,8,9,9],key=abs))#1

print("-----reduce------")

lst=[1,2,3,4,5]

from functools import reduce

def func(x,y):

return x+y

print(reduce(func,lst))

#1+2的結果給x,3給y,以此類推

python學習筆記day9 函式

函式 定義之後可以任何需要他的地方呼叫這個函式 如果函式沒有定義返回值,使用者去取函式的返回值的話,預設返回none 1.返回值的三種情況 1.1 沒有返回值 1.1.1 沒寫return def func print s s 今天天氣好 func 1.1.2 只寫return,後面沒有數值,ret...

Python基礎 函式(Day9)

一 函式的定義 函式是從上到下依次執行,將函式名載入到記憶體,函式體放到乙個臨時儲存空間,見到函式名執行。li 1,2,2,4,6,7,4,5 def my len count 0 for i in li count 1 my len 二 函式的返回值 return 1.在函式中遇到return結束...

前端基礎學習day9

移動端 設配 移動端瀏覽 webkit核心 safari firefox chrome 螢幕的尺寸 1.裝置畫素pt 解析度 螢幕上的發光點,在廠商出廠時畫素就以固定 2.css畫素px 相對單位 3.ppi 畫素的密度 4.dpr畫素比 裝置畫素與css畫素之間的比例關係 ps 在頁面中設定的畫素...