日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python map 函数 - Python零基础入门教程

發(fā)布時間:2024/9/27 python 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python map 函数 - Python零基础入门教程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

  • 一.前言
  • 二.Python map 函數(shù)語法簡介
  • 三.Python map 函數(shù)實戰(zhàn)
    • 1.使用 map 函數(shù)
    • 2.map 函數(shù)配合 lambda 匿名函數(shù)一起使用
  • 四.Python map 函數(shù)效率對比
  • 五.Python map 函數(shù)總結(jié)
  • 六.猜你喜歡

零基礎(chǔ) Python 學習路線推薦 : Python 學習目錄 >> Python 基礎(chǔ)入門

一.前言

截至到目前為止,其實我們已經(jīng)接觸了不少的 Python 內(nèi)置函數(shù),而 map 函數(shù)也是其中之一,map 函數(shù)是根據(jù)指定函數(shù)對指定序列做映射,在開發(fā)中使用 map 函數(shù)也是有效提高程序運行效率的辦法之一.

二.Python map 函數(shù)語法簡介

# !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿說編程 @Blog(個人博客地址): www.codersrc.com @File:Python map 函數(shù).py @Time:2021/04/13 07:37 @Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!"""''' 參數(shù)描述:function:函數(shù)名iterable:一個序列或者多個序列,實際上這就是function對應的實參 返回值:返回值是迭代器,注意返回的結(jié)果只能迭代一次,如果需要多次使用請?zhí)崆氨4娼Y(jié)果并處理。 ''' map(function, iterable, ...)# 注意返回的結(jié)果只能迭代一次 x = map(func1,range(0,10))print(list(x))//返回有數(shù)據(jù)的列表# map函數(shù)返回的迭代器只能迭代一次,迭代之后會自動清空 print(list(x)) // 返回空列表

三.Python map 函數(shù)實戰(zhàn)

1.使用 map 函數(shù)

# !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿說編程 @Blog(個人博客地址): www.codersrc.com @File:Python map 函數(shù).py @Time:2021/04/13 07:37 @Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!"""def func1(x):# 對序列中的每一個元素乘以10并返回return x*10'''map() 會根據(jù)提供的函數(shù)對指定序列做映射。序列中的每一個元素調(diào)用 func1 函數(shù),返回新列表。 ''' x = map(func1,range(0,10)) print(list(x)) # map函數(shù)返回的迭代器只能迭代一次,迭代之后會自動清空 print(list(x))print("***"*20) # 將map函數(shù)返回的迭代器保存轉(zhuǎn)為list,可以多次使用 y = list(map(func1,range(0,10))) print(y) print(y)''' 輸出結(jié)果:[0, 10, 20, 30, 40, 50, 60, 70, 80, 90] [] ************************************************************ [0, 10, 20, 30, 40, 50, 60, 70, 80, 90] [0, 10, 20, 30, 40, 50, 60, 70, 80, 90] '''

2.map 函數(shù)配合 lambda 匿名函數(shù)一起使用

# !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿說編程 @Blog(個人博客地址): www.codersrc.com @File:Python map 函數(shù).py @Time:2021/04/13 07:37 @Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!"""# map函數(shù)配合匿名函數(shù)使用 x = list(map(lambda a:a*10,range(0,10))) # 序列中的每個元素乘以10 print(x)# map函數(shù)配合匿名函數(shù)使用,匿名函數(shù)有兩個參數(shù),所以map傳參數(shù)應該也是兩個序列 y = list(map(lambda a,b:a+b,[1,2,3,5,6,7],[10,20,30,50,60,70])) # 兩個序列相加 print(y)''' 輸出結(jié)果:[0, 10, 20, 30, 40, 50, 60, 70, 80, 90] [11, 22, 33, 55, 66, 77] '''

注意:如果 map 函數(shù)中的函數(shù)是多個參數(shù),那么 map 傳參的時候也應該傳遞多個序列.

四.Python map 函數(shù)效率對比

對比一下效率,向列表 list 中存入一千萬條數(shù)據(jù),比較下耗時情況:

# !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿說編程 @Blog(個人博客地址): www.codersrc.com @File:Python map 函數(shù).py @Time:2021/04/13 07:37 @Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!"""import time list1 = list()# 普通for循環(huán) start = time.clock() for i in range(0,10000000):list1.append(i) print("普通for循環(huán)耗時:",time.clock() - start)# 列表推導式 list1.clear() start = time.clock() list1 = [i for i in range(0,10000000)] print("列表推導式循環(huán)耗時:",time.clock() - start)# map映射函數(shù) list1.clear() start = time.clock() list1 = list(map(lambda x:x,range(0,10000000))) print("map映射函數(shù)耗時:",time.clock() - start)''' 輸出結(jié)果:普通for循環(huán)耗時: 1.1869014999999998 列表推導式循環(huán)耗時: 0.5339119999999999 map映射函數(shù)耗時: 0.9047431000000001 '''

** 根據(jù)測試結(jié)果看來:列表推導式效率 > map 映射函數(shù) > 普通for 循環(huán)**

五.Python map 函數(shù)總結(jié)

  • 1.map 函數(shù)的參數(shù)是由函數(shù)和一個序列或者多個序列構(gòu)成;
  • ** 2.map 函數(shù)處理的結(jié)果是迭代器,而且只能迭代一次,如果需要多次使用,請?zhí)崆氨4?#xff1b;**

六.猜你喜歡

  • Python 字符串/列表/元組/字典之間的相互轉(zhuǎn)換
  • Python 局部變量和全局變量
  • Python type 函數(shù)和 isinstance 函數(shù)區(qū)別
  • Python is 和 == 區(qū)別
  • Python 可變數(shù)據(jù)類型和不可變數(shù)據(jù)類型
  • Python 淺拷貝和深拷貝
  • Python 遞歸函數(shù)
  • Python sys 模塊
  • Python 列表 list
  • Python 元組 tuple
  • Python 字典 dict
  • Python 條件推導式
  • Python 列表推導式
  • Python 字典推導式
  • Python 函數(shù)聲明和調(diào)用
  • Python 不定長參數(shù) *argc/**kargcs
  • 未經(jīng)允許不得轉(zhuǎn)載:猿說編程 ? Python map 函數(shù)

    總結(jié)

    以上是生活随笔為你收集整理的Python map 函数 - Python零基础入门教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。