函式 匿名函式,列表生成式

2021-09-11 08:49:23 字數 1372 閱讀 5220

lambda x:x**2
關鍵字lambda表示匿名函式,冒號前面的x表示函式引數。

匿名函式。

用法:

func=lambda x:x**2

print(func(2))

# 4

l=list(map(lambda x:x*2,range(5)))

# map(func, *iterables)

print(l)

# [0, 2, 4, 6, 8]

l=list(filter(lambda n:n%2==1,range(1,20)))

print(l)

# [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]

python對匿名函式的支援有限,只有一些簡單的情況下可以使用匿名函式。最多支援到三元運算。

def calc(x,y):

if x < y:

return x*y

else:

return x/y

func = lambda x,y: x*y if x < y else x/y #宣告乙個匿名函式

l=[x*2 for x in range(5)]

print(l)

# [0, 2, 4, 6, 8]

列表內元素加1

a=[1,2,3,5,6,7]

a=[x+1 for x in a]

print(a)

# [2, 3, 4, 6, 7, 8]

a=[x*2 for x in range(5) if x> 2]

print(a)

# [6, 8]

l=[m+n for m in 'he' for n in 'wo']

print(l)

# ['hw', 'ho', 'ew', 'eo']

for k, v in d.items():

print(k, '=', v)

# x = a

# y = b

# z = c

l=[k + '=' + v for k, v in d.items()]

print(l)

# ['x=a', 'y=b', 'z=c']

把字串篩選出來並小寫

l2=[x.lower() for x in l1 if isinstance(x,str)]

print(l2)

匿名函式 列表生成式 字典生成式 遞迴

語法 語法格式為 lambda 引數1,引數2,引數 引數可以省略 邏輯表示式 即結果,不可省略 引數的範圍 可省略 lambda 引數 結果 lambda x,y x y 函式輸入是x和y,輸出是它們的積x y lambda none 函式沒有輸入引數,輸出是none lambda args su...

python函式,列表生成式及高階函式

函式 函式生命成後若不呼叫則不會執行 形式引數 位置引數 可變引數 預設引數 關鍵字引數 返回值 返回值為函式運算的結果,返回函式執行結果,可以以與元組形式返回多個返回值 eg def sum a,b return a b result sum 1,2 print result 變數的作用域區域性變...

Python 生成式 lambda 匿名函式

目錄 一 三元表示式 if else 二 列表生成式 for in 三 字典生成式 3 1 字典生成式用於集合的生成 四 匿名函式 lambda 4 1 匿名函式和高階函式 4 1 1 max min lambda 指定函式比較的物件 4 1 2 sorted lambda 指定函式的排序依據 4 ...