python中enumerate() 与zip()函数的使用比较实例分析

 更新时间:2019年09月03日 08:52:02   作者:weixin_43307577  
这篇文章主要介绍了python中enumerate()与zip()函数的使用比较,结合实例形式分析了enumerate()与zip()函数的功能、用法及操作注意事项,需要的朋友可以参考下

本文实例讲述了python中enumerate() 与zip()函数的使用比较。分享给大家供大家参考,具体如下:

enumerate() 与zip()是两个常用的内置函数,这两个函数功能类似,同时又存在差异。介绍如下:

一、enumerate() 函数

该函数中文解释:枚举、列举的意思。

用于将一个可遍历的数据对象(如:列表、元组、字符串等)组合为一个索引序列,同时列出:数据和数据下标

一般在for循坏中使用,可同时得到数据对象的值及对应的索引值

a = ['one','two','three','four','five']
for a_index, a_value in enumerate(a):
  print('{}:{}'.format(a_index,a_value))

运行结果为:

0:one
1:two
2:three
3:four
4:five

注意:在enumerate()函数中,也可以给第2个参数“start”的值,指定当前索引的****初始值,如下例所示:

b = ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
for b_index, b_value in enumerate(b,start=1):
  print('星期{}:{}'.format(b_index,b_value))

运行结果为:

星期1:Monday
星期2:Tuesday
星期3:Wednesday
星期4:Thursday
星期5:Friday
星期6:Saturday
星期7:Sunday

二、zip()函数

该函数用于将多个可迭代对象作为参数,依次将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。

如对于下面的例子:

names = ['张三','李四','王五']
sexs = ['boy','girl','boy']
scores = [86, 92, 75]
for name, sex, score in zip(names,sexs,scores):
  print('{}: {}, {}'.format(name, sex, score))

运行结果为:

张三: boy, 86
李四: girl, 92
王五: boy, 75

注意:如果各个可迭代对象的元素个数不一致,则返回的对象长度与最短的可迭代对象相同。例如,对上面的例子,列表scores减少一个元素,修改如下:

names = ['张三','李四','王五']
sexs = ['boy','girl','boy']
scores = [86, 92]
for name, sex, score in zip(names,sexs,scores):
  print('{}: {}, {}'.format(name, sex, score))

运行结果为:

张三: boy, 86
李四: girl, 92

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

  • Python3实现的旋转矩阵图像算法示例

    Python3实现的旋转矩阵图像算法示例

    这篇文章主要介绍了Python3实现的旋转矩阵图像算法,涉及Python3列表遍历、切片转换、矩阵运算等相关操作技巧,需要的朋友可以参考下
    2019-04-04
  • 如何准确判断请求是搜索引擎爬虫(蜘蛛)发出的请求

    如何准确判断请求是搜索引擎爬虫(蜘蛛)发出的请求

    我们的网站经常被各种蜘蛛爬虫光顾,由于这些爬虫都有UserAgent,所以很多朋友使用UserAgent判断请求的发起者是否是搜索引擎爬虫的方式是很不准确的,接下来,通过本篇文章给大家介绍准确判断请求是搜索引擎爬虫(蜘蛛)发出的请求的方法,需要的朋友可以参考下
    2015-10-10
  • python中的lambda表达式用法详解

    python中的lambda表达式用法详解

    这篇文章主要介绍了python中的lambda表达式用法,详细分析了lambda函数的功能、定义、使用方法与相关技巧,需要的朋友可以参考下
    2016-06-06
  • Python文件操作基础及异常处理

    Python文件操作基础及异常处理

    这篇文章主要介绍了文件操作的基本方法,包括如何打开和关闭文件、使用with语句管理文件、读取和写入文件内容、处理文件异常、进行二进制文件操作以及文件路径的说明,,需要的朋友可以参考下
    2025-03-03
  • Python常见异常分类与处理方法

    Python常见异常分类与处理方法

    之前在学习python的时候有整理过python异常处理的文章,不够简单也不够完整,所以决定再整理一篇,算做补充。
    2017-06-06
  • python使用Apriori算法进行关联性解析

    python使用Apriori算法进行关联性解析

    这篇文章主要为大家分享了python使用Apriori算法进行关联性的解析,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • python中mechanize库的简单使用示例

    python中mechanize库的简单使用示例

    最近的项目中使用到了mechanize库,下面写个简单使用的小例子给大家参考
    2014-01-01
  • python智联招聘爬虫并导入到excel代码实例

    python智联招聘爬虫并导入到excel代码实例

    这篇文章主要介绍了python智联招聘爬虫并导入到excel代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • PyQt5 PySide2 触摸测试功能的实现代码

    PyQt5 PySide2 触摸测试功能的实现代码

    这篇文章主要介绍了PyQt5 PySide2 触摸测试功能的实现,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • 10个顶级Python实用库推荐

    10个顶级Python实用库推荐

    这篇文章主要推荐了10个顶级Python实用库,帮助大家更好的理解和学习实用python,感兴趣的朋友可以了解下
    2021-03-03

最新评论