Python enumerate()
函数
原文: https://thepythonguru.com/python-builtin-functions/enumerate/
于 2020 年 1 月 7 日更新
enumerate()
函数采用一个可迭代对象,并返回一个枚举对象(一个迭代器),该对象生成一个格式为(index, item)
的元组,其中index
指该项目的偏移量,item
指的是可迭代对象中的对应的项目。
enumerate()
函数的语法如下:
语法:
enumerate(iterable[, start=0]) -> iterator for index, value of iterable
参数 | 描述 |
---|---|
iterable |
(必需)任何可迭代的对象,例如字符串,列表,字典等。 |
start (可选) |
index 的初始值。 默认为0 。 |
这是一个例子:
>>>
>>> list(enumerate("hello"))
[(0, 'h'), (1, 'e'), (2, 'l'), (3, 'l'), (4, 'o')]
>>>
>>>
>>> for index, value in enumerate("hello"):
... print(index, value)
...
0 h
1 e
2 l
3 l
4 o
>>>
试试看:
print( list(enumerate("hello")) )
for index, value in enumerate("hello"):
print(index, value)
以下清单显示enumerate()
如何与清单,字典和元组一起使用:
>>>
>>> for index, value in enumerate([110, 45, 12, 891, "one"]):
... print(index, value)
...
0 110
1 45
2 12
3 891
4 one
>>>
>>>
>>> for index, value in enumerate({'name': 'Jane', 'age': 26, 'salary': 40000}):
... print(index, value)
...
0 name
1 salary
2 age
>>>
>>>
>>> for index, value in enumerate({1, 290, -88, 10}):
... print(index, value)
...
0 -88
1 1
2 10
3 290
>>>
试一试:
for index, value in enumerate([110, 45, 12, 891, "one"]):
print(index, value)
print("-"*20)
for index, value in enumerate({'name': 'Jane', 'age': 26, 'salary': 40000}):
print(index, value)
print("-"*20)
for index, value in enumerate({1, 290, -88, 10}):
print(index, value)
设置索引的初始值
要设置索引的初始值,我们使用start
关键字参数。
>>>
>>> list(enumerate("hello", start=2))
[(2, 'h'), (3, 'e'), (4, 'l'), (5, 'l'), (6, 'o')]
>>>
>>>
>>> for index, value in enumerate("hello", start=2):
... print(index, value)
...
2 h
3 e
4 l
5 l
6 o
>>>
试一试:
print( list(enumerate("hello", start=2)) )
for index, value in enumerate("hello", start=2):
print(index, value)