python中for ... in ...
for in 说明:也是循环结构的一种,经常用于遍历字符串、列表,元组,字典等
格式:
|
1
2
|
for x in y: 循环体 |
执行流程:x依次表示y中的一个元素,遍历完所有元素循环结束。
例1:遍历字符串
|
1
2
3
|
s = 'I love you more than i can say'for i in s: print(i) |
例2:遍历列表
|
1
2
3
4
5
6
|
l = ['鹅鹅鹅', '曲项向天歌', '锄禾日当午', '春种一粒粟']for i in l: print(i)# 可以获取下表,enumerate每次循环可以得到下表及元素for i, v in enumerate(l): print(i, v) |
例3:遍历字典
|
1
2
3
4
5
6
7
8
|
d = {'a':'apple', 'b':'banana', 'c':'car', 'd': 'desk'}for key in d: # 遍历字典时遍历的是键 print(key, d.get(key))# for key, value in d.items():# 上下两种方式等价 d.items() <=> dict.items(d)for key, value in dict.items(d): print(key, value) |
列表生成式
可迭代对象:列表、元组、字典等都是可迭代对象,就是可以遍历的对象
range,用法如下:
|
1
2
3
4
5
6
7
8
|
print(range(10))# 可以生成从0开始到10的连续整数的迭代对象print(range(0, 10))# 可以遍历for i in range(10): print(i)# 强制转换为列表print(list(range(1, 11))) |
列表生成式:快速生成具有特定规律的列表
|
1
2
3
4
5
6
|
# 列表生成式print([i for i in range(1, 11)])print([i*2 for i in range(1, 11)])print([i*i for i in range(1, 11)])print([str(i) for i in range(1, 11)])print([i for i in range(1, 11) if i % 2 == 0])<br>转载来源:https://www.py.cn/faq/python/11687.html<br>仅供学习使用 |

浙公网安备 33010602011771号