L3.十一.匿名函式和map方法
阿新 • • 發佈:2018-11-17
# 匿名函式 (講完L4之後列表生成之前的)
# 引題:計算某個數的平臺值
def square(n):
return n * n
print(square(3))
# 關鍵字lambda,語法糖,跟上面def定義的函式功能一致,匿名函式沒有名字,沒有函式,有形參,有return語句
#lambda後面跟的是返回值 相當於普通寫法的return,冒號後面跟的是表示式,相當於普通寫法函式體中的內容
#好處,可以換成單行,更加簡潔,與其他表示式連用
lambda x: x*x # (引數): x*x
f = lambda x: x*x #沒有名字的函式,我想呼叫他,先把他賦值給一個變數
print(f(3))
# 場景: 適合不太複雜的函式和跟其它表示式連用
# 2.map(方法,可迭代列表),依次把可跌打物件中每一項的值帶入到方法進行計算, 返回值是map物件(結果列表)
# 方法也可以作為形參
def square(n):
return n * n
for i in map(square,[1,2,3]):
print(i)
map(square,[1,2,3]) # [1,4,9]
# new_list = []
# for i in [1,2,3]:
# num_square = square(i)
# new_list.append(square(i))
# print(new_list)
# map跟匿名函式連用
map(lambda x:x*x,[1,2,3])