当前位置: 首页 > article >正文

83. map函数()-通过函数实现对可迭代对象的操作(适合零基础)

83. map函数()-通过函数实现对可迭代对象的操作(适合零基础)

文章目录

  • 83. map函数()-通过函数实现对可迭代对象的操作(适合零基础)
    • 1. 什么是map函数
    • 2. map函数语法
    • 3. 实操练习
      • 3.1 用split方法将字符串转换成列表
      • 3.2 用map函数()进行转换
      • 3.3 编写代码,求列表中各元素的和
      • 3.4 把列表中的元素映射为浮点数
    • 4. 代码总结

1. 什么是map函数

map [mæp]:地图,映射。

在Python中map的意思通常是指映射。

map函至少有2个参数。一个是参数是函数,另一个参数是一个或多个可迭代对象。

【功能】

map函数接收一个函数为它的参数,接收一个或多个可迭代对象为参数,返回一个迭代器。

此迭代器中的每个元素都是函数参数依次作用于可迭代对象后的结果。

上面的话理解不了的,继续往下看,看完实操就能理解上面的意思。

2. map函数语法

map(function, iterables=, ...)
  1. 函数名map

  2. 函数后紧跟英文圆括号( )

【参数说明】

  1. function:函数。

function[ˈfʌŋkʃn]:函数。

  1. iterables:一个或多个可迭代对象。

iterables:网络释义为可迭代对象。

【返回值】

返回迭代器。

3. 实操练习

s = "2,3,4,5"

上面的s是一个变量,存储的是字符串类型的数据。

我们的任务是把s中的字符转换成可以参与算术运算的数据。

要完成这个任务,我们需要分2步走。

3.1 用split方法将字符串转换成列表

split[splɪt]:使分离。

【功能】

把一个字符串按照指定的分隔符切分为字符串列表。

split( )方法语法:

str.split(sep=,maxsplit=)

sep参数用于指定分割符。

maxsplit参数用于指定分割的次数

【返回值】

返回的是一个字符串列表。

【代码示例】

s = "2,3,4,5"
print("s的数据类型为:",type(s))
l = s.split(",")    # split方法,作用是分割字符串
print("l的数据类型为:",type(l))
print("l列表:",l)

【终端输出】

s的数据类型为: <class 'str'>
l的数据类型为: <class 'list'>
l列表: ['2', '3', '4', '5']

split方法将字符串s分割后返回了一个列表。

注意这里的列表中的元素依然是字符串类型,是不能参与算术运算的。

接下来,我们用map函数将列表中的字符串元素转换成能进行算术运算的数据。

3.2 用map函数()进行转换

【功能】

map函数接收一个函数为它的参数,接收一个或多个可迭代对象为参数,返回一个迭代器。

【map函数语法】

map(function, iterables=, ...)
  1. function:函数。

  2. iterables:一个或多个可迭代对象。

这里我们需要把可迭代对象列表中的元素映射为整数类型,function参数就可以指定为int函数。

iterables参数就是我们要操作的可迭代对象,这里为列表l

s = "2,3,4,5"
l = s.split(",")   
print(map(int, l))

【终端输出】

<map object at 0x0000011D29FB2520>

map函数返回的是一个可迭代器对象。

我们可以使用list函数将其转换为列表。

s = "2,3,4,5"
l = s.split(",")   
print(list(map(int, l)))

【终端输出】

[2, 3, 4, 5]

现在列表中的元素就为整数型,就是能参与计算的数据了。

3.3 编写代码,求列表中各元素的和

s = "2,3,4,5"
l = s.split(",")   
list1 = list(map(int, l))
sum = 0
for i in list1 :
    sum += i
print(sum)

【终端输出】

14

sum += i 等同于 sum = sum + i

3.4 把列表中的元素映射为浮点数

s = "2,3,4,5"
l = s.split(",")   
print(list(map(float, l)))

【终端输出】

[2.0, 3.0, 4.0, 5.0]

当我们需要浮点数时,map函数的function参数就为float函数。

4. 代码总结

s = "2,3,4,5"
l = s.split(",")   
print(map(int, l))
print(list(map(int, l)))
print(list(map(float, l)))

【终端输出】

<map object at 0x0000011D29FB2FA0>
[2, 3, 4, 5]
[2.0, 3.0, 4.0, 5.0]

http://www.kler.cn/news/16475.html

相关文章:

  • 「SQL面试题库」 No_55 销售分析 I
  • ramfs, rootfsinitramfs
  • HTML(四) -- 多媒体设计
  • CCD视觉检测设备如何选择光源
  • 【面试长文】HashMap的数据结构和底层原理以及在JDK1.6、1.7和JDK8中的演变差异
  • Blender启动场景的修改
  • 资讯汇总230503
  • 哈希表企业应用-DNA的字符串检测
  • CKA/CKS/CKAD认证考试攻略
  • 【五一创作】( 字符串) 409. 最长回文串 ——【Leetcode每日一题】
  • 【LeetCood206】反转链表
  • Python小姿势 - Python学习笔记——类与对象
  • ZooKeeper安装与配置集群
  • NECCS|全国大学生英语竞赛C类|词汇和语法|词汇题|21:03~21:53
  • 可视化绘图技巧100篇高级篇(一)-环状条形图(radial bar chart)
  • android基础知识
  • Redis高频面试题,使用场景
  • TiDB实战篇-操作系统参数TiDB Server
  • HDU5909 Tree Cutting(FWT)
  • 人人都可用chatgpt开发小项目
  • 第十二章 Transform组件(下)
  • numpy的下载、数据类型、属性、数组创建
  • Redis-列表(List)
  • 【23】linux进阶——linux的软链接和硬链接
  • NTT学习笔记(快速数论变换)
  • 【人脸检测】——YOLO5Face: Why Reinventing a Face Detector论文浅读
  • RT-Thread GD32F4xx 看门狗驱动
  • 1.3 HBase 基本架构
  • Android无线调试操作说明
  • 2023五一数学建模竞赛(五一赛)选题建议