Python中【enumerate】和【range】的用法详解

本文章主要梳理回顾enumerate()和 range()两个python的内置函数的用法,顺便包含对上篇文章对 Python办公自动化实现考试系统生成Word试卷【2】这篇文章部分知识点分享。有问题请在评论区留言指正,感谢。

目录

1.enumerate 的用法

1.1 参数

1.2 返回值 

 2.range()的用法

2.1 参数 


1.enumerate 的用法

‌enumerate在Python中的含义是“枚举”,即列举、计数‌它是一个内置函数,用于将一个可迭代对象(如列表、字符串等)组成一个索引序列,从而在迭代过程中同时获取元素的索引和值。

这个函数用的还挺多,特别是在处理元组、列表或者其他可迭代对象,因为它可以简化代码,使开发者能够更直接地访问每个元素的索引和值。

1.1 参数
enumerate(list,[start=0])

list是一个序列、迭代器或其他支持迭代的对象。

start 可选参数,表示索引的起始值。

1.2 返回值 

enumerate() 返回一个枚举对象,该对象是一个迭代器,产生一个包含索引和对应值的元组。

我们在Python办公自动化实现考试系统生成Word试卷【2】这一篇文章中也有用到。在生成错乱答案选项中: questionitem.option 是没有序列号的,经过 ‌‌enumerate内置函数处理后返回一个枚举对象,该对象是一个迭代器,产生一个包含索引对应值的元组。

document.add_paragraph(('ABCD')[index]+str(option))这一句是向word文档中加入段落,内容是每次循环得到的 ('ABCD')[0] + 答案选项内容:

A答案选项内容  B答案选项内容  C答案选项内容  D答案选项内容

 

 2.range()的用法

range()也是Python3的内置函数,返回的是一个可迭代对象(类型是对象),而不是列表类型。Python3 list() 函数是对象迭代器,可以把 range() 返回的可迭代对象转为一个列表,返回的变量类型为列表。

2.1 参数 
range(stop)
range(start, stop[, step])
  • start: 计数从 start 开始。默认是从 0 开始。例如 range(5) 等价于 range(0, 5)
  • stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是 [0, 1, 2, 3, 4] 没有 5
  • step:步长,默认为 1。例如:range(0, 5) 等价于 range(0, 5, 1)

Python办公自动化实现考试系统生成Word试卷【2】这篇文章中:

for i in range(sheet.nrows):
    print(i)

#等同于 
for i in range(11):
    print(i)
#0
#1
#2
#3
#4
#5
#7
#8
#9
#10

判断当 i 大于1时,即跳过第一行数据,因为第一行标题,从第二行的第一列开始取到单元格的value值赋值给新的对象属性中。 依次获取整行的数据。然后for循环获取下一行数据直至遍历整个文档的总行数。

最终把obj的值添加到questionlist中,经过顺序打乱后返回。

 

具体试题生成word试卷请参考: Python办公自动化实现考试系统生成Word试卷【2】-CSDN博客

本文章也是记录方便以后查看,欢迎大家参考共同学习,共同进步,如果有问题欢迎大家评论区留言指正,感谢。 

更多内容

python环境配置 | python爬虫获取数据 |  python办公自动化处理Excel数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值