迭代:
任何可迭代對象都可以使用for循環(huán)進行進行迭代。
判斷當前對象是否有可迭代性
list,tuple.dict,string等對象都是可迭代的,但是數(shù)字不行呛哟。
from collections import Iterable
a=[1,2,3,4]
print(isinstance(a,Iterable))
dict={'a':1,'b':20,'c':3}
#對key值進行迭代,順序不唯一
for key in dict:
print(key)
#對value值進行迭代,順序不唯一
for val in dict.values():
print(val)
#對鍵值對進行迭代/支持多個值迭代
for key,val in dict.items():
print(key+" : "+str(val))
#將按照下標對key進行迭代窖式,key的順序不唯一
#上面的操作都可以做
for key in enumerate(dict):
print(key)
'''
(0, 'c')
(1, 'b')
(2, 'a')
'''
list=[1,2,3,4,5,6,7]
# 按照下標進行迭代。list類型順序唯一
for i in enumerate(list):
print(i)
'''
(0, 1)
(1, 2)
(2, 3)
(3, 4)
(4, 5)
(5, 6)
(6, 7)
'''
列表生成式:
#生成1-10的整數(shù)列表
a=list(range(1,11))
print(a)
#使用for循環(huán)來生成指定要求的列表
b=[x*x for x in range(1,11)] #[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
#雙重for循環(huán)生成全排列
b=[m+n for m in 'abc' for n in 'zxk']# ['az', 'ax', 'ak', 'bz', 'bx', 'bk', 'cz', 'cx', 'ck']
print(b)