笔记-python-map的用法

map()函数
map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。

1、当seq只有一个时,将函数func作用于这个seq的每个元素上,并得到一个新的seq。
在这里插入图片描述

例如,对于list [1, 2, 3, 4, 5, 6, 7, 8, 9]
如果希望把list的每个元素都作平方,就可以用map()函数:
因此,我们只需要传入函数f(x)=xx,就可以利用map()函数完成这个计算:
def f(x):
return x
x
print map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])
输出结果:
[1, 4, 9, 10, 25, 36, 49, 64, 81]
注意:map()函数不改变原有的 list,而是返回一个新的 list。

由于list包含的元素可以是任何类型,因此,map() 不仅仅可以处理只包含数值的 list,事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。
假设用户输入的英文名字不规范,没有按照首字母大写,后续字母小写的规则,请利用map()函数,把一个list(包含若干不规范的英文名字)变成一个包含规范英文名字的list:
输入:[‘adam’, ‘LISA’, ‘barT’]
输出:[‘Adam’, ‘Lisa’, ‘Bart’]
def format_name(s):
s1=s[0:1].upper()+s[1:].lower();
return s1;
print map(format_name, [‘adam’, ‘LISA’, ‘barT’])

2、当seq多于一个时,map可以并行(注意是并行)地对每个seq执行如下图所示的过程:
在这里插入图片描述

l2=map(lambda x,y:x**y,[1,2,3],[1,2,3])
for i in l2:
print(i)

l3=map(lambda x,y:(x**y,x+y),[1,2,3],[1,2,3])
for i in l3:
print(i)

python3中可以处理类表长度不一致的情况,但无法处理类型不一致的情况,
l4=map(lambda x,y:(x**y,x+y),[1,2,3],[1,2])
for i in l4:
print(i)

l4=map(lambda x,y:(x**y,x+y),[1,2,3],[1,2,‘a’])
for i in l4:
print(i)

特殊用法,做类型转换:
l=map(int,‘1234’)
for i in l:
print(type(i))
print(i)

如果函数是 None,自动假定一个‘identity’函数,这时候就是模仿 zip()函数,

l=[1,2,3]
x=map(None,l)
print(x)
这时候 None 类型不是一个可以调用的对象。所以他没法返回值。

目的是将多个列表相同位置的元素归并到一个元组。如:

print map(None, [2,4,6],[3,2,1])
[(2, 3), (4, 2), (6, 1)]

但是在 python3中,返回是一个迭代器,所以它其实是不可调用的

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/658878.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【御控工业物联网】 Java JSON结构转换、JSON结构重构、JSON结构互换(17):数组To对象——键值互换属性重组

文章目录 一、JSON结构转换是什么?二、核心构件之转换映射三、案例之《JSON数组 To JSON对象》四、代码实现五、在线转换工具六、技术资料 一、JSON结构转换是什么? JSON结构转换指的是将一个JSON对象或JSON数组按照一定规则进行重组、筛选、映射或转换…

轻兔推荐 —— plausible-analytics

简介 Plausible Analytics 是一个开源的、界面美观、简单易用的网站访问量统计工具。 - 易接入:仅需一行代码就可给网站添加统计数据。 - 数据指标统计完整:可直观查看外链来源、页面访问量排序、访问设备、访问地区等。 特点 无需Cookie&#xff…

基于飞书机器人跨账号消息提醒

事情的起因是飞书中不同的账号不能同时登录,虽然可以在飞书的账号切换页面看到其他账号下是否有消息提醒(小红点),但是无法实现提醒功能,很不优雅,因此本文尝试提出一种新的方式实现不同账号之间的提醒功能…

JVM的垃圾回收机制--GC

垃圾回收机制,是java提供的对于内存自动回收的机制。java不需要像C/C那样手动free()释放内存空间,而是在JVM中封装好了。垃圾回收机制,不是java独创的,现在应该是主流编程语言的标配。GC需要消耗额外的系统资源,而且存…

222.完全二叉树的节点个数

给出一个完全二叉树,求出该树的节点个数。 示例 1: 输入:root [1,2,3,4,5,6]输出:6 示例 2: 输入:root []输出:0 示例 3: 输入:root [1]输出:1 提示…

uni-app基础框架搭建(vue3+ts+vite)

1.基础准备 uni-app官网uni-app,uniCloud,serverless,环境安装,创建uni-app,自定义模板,国内特殊情况,更新依赖到指定版本,运行、发布uni-app,运行并发布快应用,运行并发布快应用(webview),运行并发布快应用(webview)-华为,cli创建项目和HBuilderX可视化界面创https://uniapp.…

如何高效搜索?99%的人都不知道的搜索进阶小技巧

如何高效搜索任何你想要的信息? 比如怎么找第一手的行业研究报告? 在哪查高清无码的图片素材? 怎么搜最新的AI工具教程? 遇到以上问题你会怎么搜? 可能大部分人都是直接打开百度查关键词,虽然随便一搜…

数据结构复习指导之B树和B+树

目录 B树和B树 考纲内容 1.B树及其基本操作 1.1B树的查找 1.2B树的高度(磁盘存取次数) 1.3B树的插入 1.4B树的删除 2.B树的基本概念 B树和B树 考纲内容 考研大纲对 B树和 B树的要求各不相同,重点在于考查B树,不仅要求理解…

超声波清洗机哪家好用又实惠?四款好评如潮的超声波清洗机推荐

很多戴眼镜的朋友都在寻求一种既能保护眼镜光泽又能深层清洁的方法时,超声波清洗机无疑成为了许多眼镜用户的首选,可以更好清洗眼镜,从而避免眼镜的污渍而导致我们眼部出现过敏的问题。但在市场上琳琅满目的超声波清洗机中,哪些才…

[pdf,epub]《软件方法》2024版电子书共290页(202405更新)

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 已上传本账号CSDN资源。 或者到以下链接下载: http://www.umlchina.com/url/softmeth2024.html,或点击“阅读原文”。 如果需要提取码:umlc 已排…

「浏览器」跨站请求伪造CSRF攻击的原理以及防范措施

前言 HTTP 是一个无状态的协议,比如需要账号密码登录的网站这个场景,为了避免每次都需要重复输入,有一种方案就是Cookie,具体使用不做赘述,但是这样带来了一些安全问题。跨站请求伪造(CSRF)攻击…

IMU应用于评估脊髓损伤患者的膝关节痉挛

近日,美国西北大学团队利用便携式IMU系统精确量化脊髓损伤(SCI)患者膝关节伸肌痉挛的程度,不仅验证了IMU系统的可靠性与准确性,还强调了其在动态评估痉挛变化方面的独特贡献。 研究团队创新性地将IMU技术引入到经典的…

视频智能分析平台LntonAIServer视频监控管理平台裸土检测算法的重要性与应用

随着科技的飞速发展,人工智能技术在各个领域的应用越来越广泛。其中,LntonAIServer裸土检测算法作为一种先进的技术手段,已经在农业、环境保护等领域取得了显著的成果。本文将探讨LntonAIServer裸土检测算法的重要性及其在实际应用中的优势。…

Web前端复习二(期末考试考到了一部分)

第一章测试 选项中加粗的为答案 1.图片的边框可以通过( )设定宽度。 A.width B.height C.border D.align 2.关于超链接,( )属性用于规定在何处打开链接文档。 A.href . B.target C.title D.onclick 3.( )是在新窗口打开网页文档。 A _blank B_self C_…

宏基因组+代谢之后,还能做点啥?

近期,发表在《Cell Host & Microbe》IF30.3上的论文将微生物基因与血浆和粪便代谢物联系起来,揭示了溃疡性结肠炎病程中的宿主-微生物相互作用。 文章内容要点 该研究整合了多组学方法,以识别与炎症疾病相关的微生物及其产物。 研究使用…

ios 端如何免费使用Emby???(利用Quantumult X )

本文转自博主的个人博客:https://blog.zhumengmeng.work,欢迎大家前往查看。 原文链接:点我访问 注意:使用此激活方式,有唯一缺点,在观看Emby时需保持Quantumult X为开启状态! 一、安装证书 开启 MitM 后…

【病毒分析】Babuk勒索家族babyk后缀系列分析--Windows篇

1.背景 1.1 Babuk勒索家族 Babuk勒索家族最早曝光于2021年1月初,在几个月内,它就跻身于最臭名昭著的勒索软件组织之列。自回归以来,它通过在地下论坛上积极宣传自己而获得了更多的知名度。在策略方面,其加密功能与其他勒索软件组…

【Python】 如何获取Python模块的路径?

基本原理 在Python中,模块是组织代码的一种方式,每个.py文件都是一个模块。有时,我们需要获取一个模块的路径,这在需要定位模块文件、读取模块配置文件或动态加载模块时非常有用。Python提供了几种方法来获取模块的路径。 代码示…

Java基础入门day60

day60 购物车案例补充 设置欢迎页 打开也系统&#xff0c;就可以直接看到商品列表页面 之前曾经设置过欢迎页&#xff0c;都是针对页面&#xff0c;可以有html页面&#xff0c;也可以有jsp页面 但是今天我们将一个servlet设置成欢迎页 在web.xml文件中设置欢迎页 <welcome…

我国赤泥年产量庞大 政策引导下赤泥绿色利用率将不断提升

我国赤泥年产量庞大 政策引导下赤泥绿色利用率将不断提升 赤泥是指从铝土矿中提炼氧化铝后产生的强碱性工业固体废渣&#xff0c;由于含大量氧化铁&#xff0c;表面呈现红色&#xff0c;而得名赤泥。   赤泥通常包含氧化铝、氧化铁、二氧化硅、氧化钙、碱金属及其他微量元素&…