> 文章列表 > Python基础之for循环

Python基础之for循环

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