在第2 章中,你学习了使用循环,对一段代码执行一定次数。从技术上说,循环是
针对一个列表或类似列表中的每个值,重复地执行代码块。例如,如果执行以下代码:
for i in range(4): print(i)
程序的输出将是:
0
1
2
3
这是因为 range(4)的返回值是类似列表的值。Python 认为它类似于[0, 1, 2, 3]。
下面的程序和前面的程序输出相同:
for i in [0, 1, 2, 3]: print(i)
前面的 for 循环实际上是在循环执行它的子句,在每次迭代中,让变量依次设置为列表中的值。
注意 在本书中,我使用术语“类似列表”,来指技术上称为“序列”的数据类型。但是,你不需要知道这个术语的技术定义。
一个常见的 Python 技巧,是在 for 循环中使用 range(len(someList)),迭代列表的每一个下标。例如,在交互式环境中输入以下代码:
>>> supplies = ['pens', 'staplers', 'flame-throwers', 'binders']
>>> for i in range(len(supplies)):
print('Index ' + str(i) + ' in supplies is: ' + supplies[i])
Index 0 in supplies is: pens Index 1 in supplies is: staplers
Index 2 in supplies is: flame-throwers Index 3 in supplies is: binders
在前面的循环中使用 range(len(supplies))很方便,这是因为,循环中的代码可以访问下标(通过变量 i),以及下标处的值(通过
supplies[i])。最妙的是,range(len(supplies))将迭代 supplies 的所有下标,无论它包含多少表项。