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 >仅供学习使用
|