python 内置函数——enumerate( )函数

2023-11-09

发音:[ɪˈnuːməreɪt],枚举; 列举

enumerate()是python的内置函数,适用于python2.x和python3.x;用来将一个可迭代对象转化为枚举对象,利用它可以同时获得每个元素的索引下标和值,即需要 index 和 value 值的时候可以使用enumerate函数。

一、语法格式:

enumerate(iterable, start=)

其中:

iterable:表示要枚举的可迭代对象

start:表示枚举的起始值,也就是想要索引从几开始,默认为0。

返回的枚举对象是一个迭代器,想要看到具体的值,可以使用for循环遍历,也可以使用list()函数将其转换为列表。

例如:有如下列表。

l1 = ["小米", "小华", "小刘"]
a = enumerate(l1)
print(a)

# 结果:
<enumerate object at 0x00000214F2DE2318>

想要看到具体的值,可以使用for 循环进行遍历,或者强制转换成列表/集合/元组/字典。

推荐转为列表,因为后续要对其操作的话,列表好操作。

# 法1:使用for循环
l1 = ["小米", "小华", "小刘"]
a = enumerate(l1)

for i in a:
    print(i)

# 结果:
(0, '小米')
(1, '小华')
(2, '小刘')


# 法2:强制转化为列表、集合、元组

l1 = ["小米", "小华", "小刘"]

a = list(enumerate(l1))  # 转为列表  !!!!推荐
print(a)


b = set(enumerate(l1))  # 转为集合
print(b)

c = tuple(enumerate(l1))  # 转为元组
print(c)

#d = dict(enumerate(l1))  # 这个有点问题,画了波浪线
#print(d)  # {0: '小米', 1: '小华', 2: '小刘'}

# 结果:
[(0, '小米'), (1, '小华'), (2, '小刘')]

{(2, '小刘'), (0, '小米'), (1, '小华')}

((0, '小米'), (1, '小华'), (2, '小刘'))


当然也可以,直接获取索引和值:

l1 = ["小米", "小华", "小刘"]
for index, value in enumerate(l1):
    print(index, value)

# 结果:
0 小米
1 小华
2 小刘

进程已结束,退出代码 0

使用格式化输出:

l1 = ["小米", "小华", "小刘"]
for index, value in enumerate(l1):
    print("%d,%s" % (index, value))

# 结果:
0,小米
1,小华
2,小刘

 想要索引从1 开始的话,设置start=1:

l1 = ["小米", "小华", "小刘"]

a = enumerate(l1, start=1)  # 索引从1开始

for i in a:
    print(i)

# 结果:
(1, '小米')  
(2, '小华')
(3, '小刘')

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python 内置函数——enumerate( )函数 的相关文章

随机推荐

  • HTML文本格式化

    目录 HTML 文本格式化实例 如何查看 HTML 源码 文本格式化标签 计算机输出 标签 引用 引用和术语定义 延伸阅读 一个完整的实例 HTML 可定义很多供格式化输出的元素 比如粗体和斜体字 下面有很多例子 可以亲自试试 HTML 文
  • SpringMVC中Controller层注解扫描

    SpringMVC中Controller层扫描 方式一 方式二
  • mysql基于Java web的电动车销售平台毕业设计源码201524

    电动车销售平台的设计与实现 摘 要 信息化社会内需要与之针对性的信息获取途径 但是途径的扩展基本上为人们所努力的方向 由于站在的角度存在偏差 人们经常能够获得不同类型信息 这也是技术最为难以攻克的课题 针对电动车销售平台等问题 对电动车销售
  • 论文研读:SuperGlue vs. LoFTR

    简介 SupeGlue与LoFTR都是对图片间进行特征点匹配的方法 其目的是 找到图像A 图像B中同时存在的相同物体实例 并输出其位置信息 匹配关系 在提取出特征点后 我们通过图神经网络生成匹配代价矩阵 并求解最优匹配矩阵 以获得全局最优的
  • 1.3 起步 - Git 基础

    1 3 起步 Git 基础 版本说明 版本 作者 日期 备注 0 1 loon 2019 3 18 初稿 目录 文章目录 1 3 起步 Git 基础 版本说明 目录 Git 基础 1 直接记录快照 而非差异比较 Figure 4 存储每个文
  • python报错:ValueError: not enough values to unpack

    报错 ValueError not enough values to unpack 分析具体原因 这个错误的信息是 期望有7个返回值 但其实函数只有4个返回值 解决方法 检查函数和接收函数返回值的参数个数是否一致 改成一致即可
  • MySQL - 一文了解MySQL的基础架构及各个组件的作用

    1 概述 不管是开运 运维 测试 都或多或少的要接触MySQL 了解MySQL的基础架构及各个组件之间的关系 有助于我们更加深入的理解MySQL 下面由一张MySQL基础架构图来一起走进MySQL MySQL可以基本划分为Server层和存
  • helm的安装、使用以及自定义Chart

    Helm概述 Helm 是一个 Kubernetes 的包管理工具 类似 Linux 的包管理器 如RedHat系的yum Debian的apt 可以很方便的将之前打包好的 yaml 文件部署到 Kubernetes 上 Helm主要解决以
  • Open3D 基于法线的双边滤波

    目录 一 算法原理 1 算法概述 2 计算步骤 3 参考文献 二 代码实现 三 结果展示 1 原始点云 2 滤波结果 四 相关链接 一 算法原理 1 算法概述 Fleishman 等人提出一种网格双边滤波器 双边滤波器最早应用于灰度图像 该
  • Linux下挂在SATA硬盘时的诡异现象

    ata1 SATA link down SStatus 1 SControl 300 ata1 EH complete ata1 exception Emask 0x10 SAct 0x0 SErr 0x4000000 action 0xa
  • Windows下配置Mask-RCNN环境(各种踩过的坑)

    Windows下配置Mask RCNN pytorch环境 各种踩过的坑 安装Anaconda 1 1 下载和安装Anaconda 安装maskrcnn benchmark项目 2 1 官方建议的安装需求 2 2 逐步安装过程 1 创建虚拟
  • TCP通讯客户端怎样判断与服务器端断开,该如何处理

    TCP通讯客户端怎样判断与服务器端断开 大虾们 神们 C winform里面 采用多线程监听端口 接收方式为阻塞式 创建单一线程进行监听函数 这样阻塞时只阻塞单一线程 对主线程没有影响 并使用异步通信模式 来一个连接后回调函数进行解析入库
  • 动态修改模板字符串中图片--简单解决

    document addEventListener error function e var elem e target if elem id toLowerCase imgurl infowindow 在这内部可以发请求拿到动态的地址 i
  • IP地址,子网掩码、默认网关,DNS的设置和工作原理(总结)

    概念 1 概述 IP地址 人们在Internet上为了区分数以亿计的主机而给每台主机分配的一个专门的地址 通过IP地址就可以访问到每台主机 子网掩码 不能单独存在 它必须结合IP地址一起使用 子网掩码只有一个作用 就是将某个IP地址划分成网
  • Blender教程之魔方全自动特效教学

    魔方玩家在我看来分为三种 一是不懂原理的佛系玩家 三阶魔方可能都要拧很久才能还原 第二种是明白怎么玩的玩家 其实还原一个被打乱的魔方就是做一道层先法的数学题 而第三种就是像我这样虽然不懂解密 但会用Blender做一个魔方来让它 自动还原
  • Android Bluetooth

    Android Bluetooth 使用Android蓝牙API来进行蓝牙通信的四个任务 设置蓝牙 检索周围匹配的或者可用的设备 连接设备 设备间传输数据 所有蓝牙APIs在android bluetooth 包中 创建蓝牙连接所要用到的类
  • 一、人脸识别starter-需求分析

    一 需求来源 对于一些需要本人刷脸认证的场景 比如注册时需要刷脸认证 要求上传身份证必须是本人的 等此场景 二 需求分析 考虑到这是个单独并且可复用的模块 所以决定写一个springboot starter来实现 starter可以上传到自
  • 定位、浮动

    Position 定位 一 position 1 属性描述 设置或获取元素的定位方式 2 版本变更 有 3 语法模板 position static relative absolute fixed 4 默认值 static 尽量避开影响其他
  • C++编译知识笔记(一)——基本知识

    文章目录 一 编译的基本步骤 1 1 预处理阶段 1 2 编译阶段 1 3 汇编阶段 1 4 链接阶段 二 核心常用基本概念 2 1 o目标文件 2 2 符号 2 3 静态链接库 2 4 动态链接库 三 链接和加载 3 1 o文件和静态库的
  • python 内置函数——enumerate( )函数

    发音 nu m re t 枚举 列举 enumerate 是python的内置函数 适用于python2 x和python3 x 用来将一个可迭代对象转化为枚举对象 利用它可以同时获得每个元素的索引下标和值 即需要 index 和 valu