1.while 循环
-
需求:输出 10 遍的 今天天气不错
-
python 中的循环分为 while 循环和 for 循环
"""
while 循环的基础语法:
1.初始化的表达式
while 2.条件表达式循环体(重复执行的程序)3.更新条件执行流程:首先会初始化表达式,然后判断条件是否满足,若满足则执行循环体,加下来更新添加,接着再去判断条件是否满足,若满足执行循环体,接下来更新条件。。。以此类推,直到条件不满足时,跳出整个循环
注意:初始化的表达式,只会在第一次循环的时候,执行一次,后续的程序就会在条件表达式和更新条件之间不断重复执行,直到条件表达式不成立的时候,结束整个循环
"""
num = 1
while num <= 10:print('第', num, '今天天气不错')num += 1
-
实例
# 1.使用 while 循环输出 1-100 之间的所有参数
num = 1
while num <= 100:print(num)num += 1# 2.使用 while 循环输出 1-100 之间的所有偶数
num = 1
while num <= 100:if num % 2 == 0:print(num)num += 1# 3.使用 while 循环输出 1-100 之间的奇数
num = 1
while num <= 100:if num % 2 ==1:print(num)num += 1# 4.使用 while 循环输出 1-100 之间所有的整数的和
sum = 0 # 定义变量,初始值为 0,用 1 依次 1-100 之间数字的和
num = 1
while num <=100:sum = sum + numnum += 1
print('1-100 之间所有的参数的和值:', sum)# 5.使用 while 循环输出 1-100 之间能被 7 整数的数字的和
sum = 0 # 定义变量,保存 1-100 之间能被 7 整除的数字的和
num = 1
while num <= 100:if num % 7 == 0:sum = sum + numnum += 1
print('1-100 之间能被 7 整除的数字的和:', sum)
2.for 循环
-
作用是用来解决一些重复输出
语法:for 变量名 in 序列:循环体(重复执行的程序)
-
使用 for 循环输出 1-100 之间所有的数字
for i in range(1, 101, 1):print(i)
-
使用 for 循环输出 1-100 之间所有的奇数
for i in range(1, 100, 2):print(i)
-
使用 for 循环输出 1-100 之间所有的整数的和
sum = 0 # 定义变量,初始值为 0,用于接收 1-100 之间的所有的整数的和
for i in range(1, 101, 1):sum = sum + i
print('1-100 之间所有的整数的和:', sum)
3.break
-
主要用于跳出整个循环
-
需要:num = 3 时,结束整个循环
num = 1
while num <= 10:if num == 3:num += 1breakprint(num)num += 1
4.continue
-
结束当前循环,继续后续的循环
-
需求,当 num1 =3 时,跳出循环
num = 1
while num <= 10:if num == 3:num += 1continueprint(num)num += 1
5.死循环
-
死循环:python 中一般使用 while 实现死循环
-
语法
"""
# 死循环:条件一般满足,程序一直输出
while True:print('hello')
"""
-
需求:判断用户输入的姓名和密码是否正确,若不正确,一直输入,直到输入正确后,结束循环
# 正确的用户名是 tfos, 密码是 tfos
username = 'tfos'
password = 'tfos'
while True:name = input('请输入用户名:')pwd = input('请输入密码:')if name == username and pwd == password:print('用户名和密码正确。。。')breakelse:print('用户名或密码错误,请重新输入!')
6.循环嵌套
-
while 和 for 循环都可以实现循环嵌套,理论上,循环嵌套的次数不受限制,但是一般在实际项目中,循环次数不超过 3 层,需要考虑时间复杂度和空间复杂度
"""
语法:for循环嵌套语法:for i in range():for j in range():语句while循环嵌套语法:初始条件1while 终止条件1:初始条件2while 终止条件2:循环体更新条件2更新条件1
"""
-
需求:使用双重循环输出以下图形
"""
* * * *
* * * *
* * * *
"""
for i in range(3):# print('* * * *')for j in range(4):print('*', end=' ') # end 参数表示 print() 输出完毕后,使用什么符号结尾,默认值\n(换行)# 当输出 4 个 * 以后,换行一次print()# while循环打印图形
num = 1
while num <= 3:# print('* * * *')num1 = 1while num1 <= 4:print('*', end=' ')num1 += 1print()num += 1
7.99乘法表
"""
99乘法表:1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
......
"""
-
需求:使用for双重循环输出9*9乘法表
for i in range(1, 10, 1):for j in range(1, i+1, 1):print(j, '*', i, '=', i*j, end=" ")print()
-
使用while循环输出9*9乘法表
i = 1
while i <= 9:j = 1while j <= i:print(j, '*', i, '=', i*j, end=' ')j += 1print()i += 1
-
注意:
1.在双重循环中,外层循环控制的是行数,内层循环控制的是列数(每行中显示数据的个数)
2.在双重循环中,外层循环执行一次,内层循环执行一圈