迭代列表
要遍历列表,你可以使用 for
:
for x in ['one', 'two', 'three', 'four']:
print(x)
这将打印出列表的元素:
one
two
three
four
range
函数生成的数字也经常用于 for 循环。
for x in range(1, 6):
print(x)
结果将是 python> = 3 中的特殊范围序列类型和 python <= 2 中的列表。两者都可以通过使用 for 循环来循环。
1
2
3
4
5
如果你想循环遍历列表的两个元素并且也有元素的索引,你可以使用 Python 的 enumerate
函数:
for index, item in enumerate(['one', 'two', 'three', 'four']):
print(index, '::', item)
enumerate
将生成元组,这些元组将解压缩为 index
(整数)和 item
(列表中的实际值)。上面的循环将打印出来
(0, '::', 'one')
(1, '::', 'two')
(2, '::', 'three')
(3, '::', 'four')
使用 map
和 lambda
迭代一个带值操作的列表,即在列表中的每个元素上应用 lambda 函数:
x = map(lambda e : e.upper(), ['one', 'two', 'three', 'four'])
print(x)
输出:
['ONE', 'TWO', 'THREE', 'FOUR'] # Python 2.x
注意:在 Python 3.x 中,map
返回一个迭代器而不是一个列表,因此如果你需要一个列表,你必须将结果转换为 print(list(x))
(参见 http://stackoverflow.com/documentation/python/809/incompatibilities-between- python-2-and-python-3/8186 / map)) 在 http://stackoverflow.com/documentation/python/809/incompatibilities-between-python-2-and-python-3 )。