Python高级特性:迭代

时间:2022-12-05 07:58:47

迭代的目的是实现遍历出一个可迭代对象的元素,即for循环

基本语法 : for ... in ...

首先只有可迭代对象才可以迭代,判断一个对象是不是可以迭代的方法如下:

>>> from collections import Iterable
>>> isinstance('abc', Iterable) # str是否可迭代
True
>>> isinstance([,,], Iterable) # list是否可迭代
True
>>> isinstance(, Iterable) # 整数是否可迭代
False

普通迭代:

names = ['Michael', 'Bob', 'Tracy']
for name in names:
print(name) Michael
Bob
Tracy

对于字典的迭代:

>>> d = {'a': , 'b': , 'c': }
>>> for key in d:
... print(key)
...
a
c
b

发现,迭代出来的结果是键key的值,而且不是顺序的(字典排序是无序的)

对于字典迭代值value

for value in d.values()

对于字典迭代key和value

for k, v in d.items()

------------------------------------------------------------------------------------------------------------------

额外知识点:

enumerate函数,可以把一个list变成索引-元素对

>>> for i, value in enumerate(['A', 'B', 'C']):
... print(i, value)
...
A
B
C