1.简介
迭代即:给定一序列,一般是list或tuple,我们通过for 循环来遍历这个List或tuple的元素。
复习下序列基础:
#list:
s1 = [1,2,3,4,]
type(s1)
<class 'list'>
#tuple:
s2 = (1,2,3,4,)
type(s2)
<class 'tuple'>
#set :
s3 = set([1,2,3,4,])
type(s3)
<class 'set'>
#dict:
s4 ={'a':1,'b':2,'c':3,'d':4,}
type(s4)
<class 'dict'>
list 和tuple迭代:
# list:
s1 = [1,2,3,4,]
for x in s1:
print(x)
结果:
1
2
3
4
dict和set也能迭代,但迭代结果是无序的:
s = set(['1','2','3','4',])
for x in s :
print(x)
结果:
4
1
3
2
dict默认情况下是只能迭代出key 的,若要迭代value 则需要for value in d.values例:
s4 ={'a':1,'b':2,'c':3,'d':4,}
for x in s4.values():
print(x)
如要迭代出key和value则需要,for key,value in d.items():
s4 ={'a':1,'b':2,'c':3,'d':4,}
for x,y in s4.items():
print('s4:',x,y)
结果:
s4: c 3
s4: b 2
s4: d 4
s4: a 1
练习:
#天干地支
tiangan = ('甲','乙','丙','丁','午','己','庚','辛','壬','癸')
dizhi = ('子','丑','寅','卯','辰','巳','午','未','申','酉','戌','亥')
#天干依次循环对应地支
# for x,y in []
jiazi = [tiangan[x % len(tiangan)] + dizhi[x % len(dizhi)] for x in range(60)]
print(jiazi)
- 知识点1、len( str )—- 返回字符串长度。
- 知识点2、%————- 除完的余数。
- 知识点3、字符串[x]字符串第N个字节,字符串A和B。对应的 A0-B0,A1-B1,A2-B2,…A9-B9,A1-B10,A2-B11,A3-B1,A4-B2,…,A9-B7,A1-B8 总共循环60次。
- 知识点4 [f(x)+g(x)] for x in [] 意思就是根据x的变化。生成一个list