Python特性--迭代
程序员文章站
2024-01-19 09:37:10
迭代(Iteration):通过for循环遍历list或tuple或其他可迭代对象的过程。如何判断一个对象是可迭代对象,方法是通过collections模块的Iterable类型判断:>>> from collections import Iterable>>> isinstance('abc', Iterable) # str是否可迭代True>>> isinstance([1,2,3], Iterable) # list是否可迭代True...
迭代(Iteration):通过for循环遍历list或tuple或其他可迭代对象的过程。
如何判断一个对象是可迭代对象,方法是通过collections模块的Iterable类型判断:
>>> from collections import Iterable >>> isinstance('abc', Iterable) # str是否可迭代
True >>> isinstance([1,2,3], Iterable) # list是否可迭代
True >>> isinstance(123, Iterable) # 整数是否可迭代
False
eg:
1、字符串迭代:
>>> for i in ('abc'): ... print(i) ... a
b
c
2、dict迭代:
dict迭代的是key,如果要迭代value,用for value in d.values(),如果要同时迭代key和value,用for key, value in d.items()。
>>> d = {'a': 1, 'b': 2, 'c': 3} >>> for key in d: ... print(key) ... a
b
c >>> for value in d.values(): # ... print(value) ... 1 2 3 >>> for key, value in d.items(): ... print(key, value) ... a 1 b 2 c 3
3、下标循环迭代,可用Python内置的enumerate函数:
>>> for i, value in enumerate(['a', 'b', 'c']): ... print(i, value) ... 0 a 1 b 2 c
4、使用迭代查找一个list中最小和最大值,并返回一个tuple:
# -*- coding: utf-8 -*- def findMinAndMax(L): min = max = L[0] #赋初值 for i in L: if i < min: min = i if i > max: max = i return (min, max)
学习自:
https://www.liaoxuefeng.com/wiki/1016959663602400/1017316949097888#0