怎么在Python迭代时使用索引

  介绍

本篇文章为大家展示了怎么在Python迭代时使用索引,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

<>强索引迭代

Python中,<强>迭代永远是取出元素本身,而非元素的索引

对于有序集合,元素确实是有索引的。有的时候,我们确实想在为循环中拿到索引,怎么办?

方法是使用<代码>列举()函数:

在祝辞祝辞,L =,(& # 39;亚当# 39;,,& # 39;丽莎# 39;,,& # 39;巴特# 39;,,& # 39;保罗# 39;】   在祝辞祝辞,for 指数,name 拷贝列举(L):   …,,,print 指数,& # 39;& # 39;,,的名字   …   0,安康,亚当   1,安康,丽莎   2,安康,巴特   3,安康;保罗

使用<代码>列举()函数,我们可以在为循环中同时绑定索引指数和元素的名字。但是,这不是<代码>列举()的特殊语法。实际上,<代码>列举()函数把:

[& # 39;亚当# 39;,,& # 39;丽莎# 39;,,& # 39;巴特# 39;,,& # 39;保罗# 39;]

变成了类似:

[(0,, & # 39;亚当# 39;),,(1,& # 39;丽莎# 39;),,(2,& # 39;巴特# 39;),,(3),& # 39;保罗# 39;)]

因此,迭代的每一个元素实际上是一个元组:

for  t 拷贝列举(L):   index 才能;t [0]=,   name 才能=,t [1]   print 指数,才能,& # 39;& # 39;,,名字

如果我们知道每个元组元素都包含两个元素,为循环又可以进一步简写为:

for 指数,name 拷贝列举(L):   print 指数,才能,& # 39;& # 39;,,名字

这样不但代码更简单,而且还少了两条赋值语句。

可见,索引迭代也不是真的按索引访问,而是由<代码>列举()函数自动把每个元素变成(指数(元素)这样的<代码>元组>

<强>同时,也可以采用邮政的方法给迭代对象加上索引

<代码> zip() 函数可以把两个列表变成一个列表:

在祝辞祝辞,zip([30] 10, 20,,,,(& # 39;一个# 39;,,& # 39;b # 39;,, & # 39; c # 39;])   [(10,& # 39;一个# 39;),,(20日,& # 39;b # 39;),,(30日,& # 39;c # 39;)]

在迭代[& # 39;亚当# 39;& # 39;丽莎# 39;,& # 39;巴特# 39;,& # 39;保罗# 39;]时,如果我们想打印出名次——名字(名次从1开始),请考虑如何在迭代中打印出来。

提示:考虑使用zip() <代码> 函数和<代码>范围()函数

代码如下:

L =,(& # 39;亚当# 39;,,& # 39;丽莎# 39;,,& # 39;巴特# 39;,,& # 39;保罗# 39;】   for 指数,name 拷贝zip(范围(1,,5),L):   print 指数,才能,& # 39;& # 39;,,名字

输出结果为:

1 -亚当
2 -丽莎
3 -巴特
4 -保罗

怎么在Python迭代时使用索引