python提供了两种循环模式:while和for,循环体中都可以使用break和continue语句,也都提供了else语句。但一般而言,for比while容易写,执行也比较快。本着学以致用的原则,以下将讲的都是for循环的最佳实践。
一、单个遍历
1.使用rang遍历一个列表
假如需要修改列表元素值,可以借助range函数(比如把L里元素值double一下):
L = ['a','b','c','d']
for i in range(len(L)): L[i]*=2
当然还有更好的方式,使用列表解析可以这么写:
L= [ i*2 for i in L: ]
2.使用切片遍历一个列表
L = ['a','b','c','d']
for item in L[::2] :
print(item, end='')
二、并行遍历多个列表
1. 使用zip函数构建字典
zip函数允许传入多个列表,然后返回一个元组:
keys = ['a','b','g','p']vals = ['apple','banana','grape','peach']D ={}
for (key,val) in zip(keys,vals): D[key] = val
同样python3.x以后提供更方便的方式构建字典,使用dict函数:
D =dict(zip(keys,vals))
三、同时遍历下标和元素值
enumerate函数可以在for循环是返回两个值,下标和元素值:
L = ['a','b','c','d']
for (index,value) in enumerate(L):
print(index,'=',value)
人生苦短,我用python