Python基础之for循环
一:for循环语句
for 变量名 in 可迭代对象: 代码一代码二...
可迭代对象可以是字符串、元组、列表、字典等。
for循环可以为可迭代对象中的每一个元素执行一个语句块。
例:
for i in [1,2,3]:print(i)
# 运行结果
1
2
3
二、for循环的使用
1:循环遍历字符串、元组、列表
# 循环遍历字符串
for i in "abc":print(i)
# 运行结果
a
b
c# 循环遍历元组
for i in (1,2,3):print(i)
# 运行结果
1
2
3# 循环遍历列表
for i in [1,2,3]:print(i)
# 运行结果
1
2
3
2:循环遍历字典
# 遍历字典中的key值
dic = {"one":1, "two":2}
for k in dic:print(k)
# 或者
dic = {"one":1, "two":2}
for k in dic.keys():print(k)
# 运行结果
one
two# 遍历字典中的value值
dic = {"one":1, "two":2}
for v in dic.values():print(v)
# 运行结果
1
2# 遍历字典中的键值对
dic = {"one":1, "two":2}
for item in dic.items():print(item)
# 运行结果
('one', 1)
('two', 2)
3:for循环+break
lst = [1, 2, 3, 4]
for i in lst:if i == 3:breakprint(i)
# 运行结果
1
2
4:for循环+continue
lst = [1, 2, 3, 4]
for i in lst:if i == 3:continueprint(i)
# 运行结果
1
2
4
5:for循环嵌套
# 打印如下图形
#
#
#
#
for i in range(4):for j in range(4):print('*', end='')print()
6:for + else的使用
当else和for结合使用,只有for能正常结束或者continue结束后,才会执行else下的语句块
当for被break终止后,不会执行else下的语句块
for i in range(3):if i == 1:breakprint(i)
else:print("执行")# 输出结果为:0
# else未执行
for i in range(3):if i == 1:continueprint(i)
else:print("执行")# 输出结果为:
0
2
执行
# else被执行
例:
例一:打印九九乘法表
for i in range(1, 10):for j in range(1, i+1):print(f'{i}*{j}={i*j}', end=' ')print()
print()中的end=' '表示输出的内容后,已引号中的内容间隔,默认end='\\n'(换行)
输出结果:
例二:打印金字塔
如:
* * * * *
代码如下:
level = 5
for i in range(level):str1 = (2*i+1) * '*' # 每一行需要打印的'*'个数print(str1.center(2*level+1)) # 居中,长度为:最大层级的2倍+1