1. 程式人生 > >高階函式——map

高階函式——map

map()函式

map()函式接收兩個引數,一個是函式,一個是序列。
map()函式將傳入的函式依次作用到序列的每個元素,並且把結果作為新的序列返回。

map()函式舉例

例一:

# 對於序列[-1,3,-4,-5]的每個元素求絕對值

print(list(map(abs,[-1,3,-4,-5])))

在這裡插入圖片描述

例二:

# 對於序列的每個元素求階乘

def factoria(x):
    # 定義一個函式,對輸入的x求階乘
    res = 1
    for i in range(1,x+1):
        res = res * i
    return res

li = [random.randint(2,7) for i in range(10)]
print(list(map(factoria,li)))

在這裡插入圖片描述

例三:

# 需求:使用者接收一串數字;講該字串中的所有數字轉化為整型,並以列表格式輸出

def myint(str):
    return int(float(str))

str = input('請輸入一串數字以空格隔開:')
print(list(map(myint, str.split(' '))))

在這裡插入圖片描述