Python for 与 while循环
目录
一、Range函数的使用
二、For循环基础格式
三、Break与continue
四、For 与 else
五、For嵌套
六、While循环基本格式
七、While 与 else
八、While嵌套
九、While与For嵌套
一、Range函数的使用
range
是一个内置函数,用于生成一个整数序列。这个函数通常用于循环结构中,比如 for
循环。
Range基本用法
range函数可以接收一到三个参数:range(start, stop, step)
start:开始值(默认为0,可不写);stop:终止值(必须写);
step:步长(默认为1,可不写);
当参数只有一个stop时,返回0到stop-1的整数序列。
当参数有start和stop时,返回start到stop-1的整数序列。
当参数有start、stop和step时,从start开始,每隔step返回一个值,直到stop结束。
range
函数生成的是一个“范围对象”,它是一个可迭代对象,这意味着它不能直接转换成列表,而是在循环中按需生成值。这使得 range
在处理大范围时非常高效,因为它不会一次性将所有值加载到内存中。如果你需要一个包含所有值的列表,可以使用 list(range(...))
来转换。
#python
x = range(2,6,2) #start:2 stop:6 步长:2
print(x) #输出range(2,6,2)
li = list(x) #转换为列表
print(li) #输出 [2,4]
二、For循环基础格式
For
循环是一种基本的控制流语句,用于遍历序列(如列表、元组、字符串)或其他可迭代对象(如字典、集合、文件对象等)的元素。
For基本用法
1.遍历字符串:
#python
char = "hello word"
for i in char:
print(i) #输出 h e l l o w o r d
2.遍历列表
#python
li1 = [1,3,5,7,9,13]
l12 = ["cat","house","dog"]
for i in li1:
print(i) #输出 1 3 5 7 9 13
for j in li2:
print(j) #输出 cat house dog
3.遍历字典
#python
dic = {
"name":"李华",
"age":18,
"sex":"男"
}
for i in dic:
print(i) #输出字典的key值 name age sex
4.遍历range
#python
for i in range(1,5):
print(i) #输出 1 2 3 4
for
循环是Python中处理迭代任务的强大工具,它的灵活性和简洁性使得代码更加易读和易维护。
三、Break与continue
break
和 continue
是两个控制循环流程的关键字,它们用于在特定条件下提前退出循环或跳过当前循环的剩余部分。
break
跳出当前循环,当break执行时代表循环整体结束。当for循环具有嵌套时,嵌套的for循环的break执行只能结束内层循环而不会影响外层循环。
示例:使用break退出循环
#python
for i in range(10):
print(i)
if i == 5:
break
#程序最终输出结果为 0 1 2 3 4 5
#在i == 5 时,执行break,结束for循环
continue
continue
语句用于跳过当前循环的剩余部分,并继续执行下一次循环迭代。当 continue
被执行时,当前循环的剩余代码会被跳过,直接跳到循环的开始处,检查循环条件。
示例:使用continue跳过循环剩余部分
#python
for i in range(10):
if i == 5:
continue
print(i)
#输出结果为:0 1 2 3 4 6 7 8 9
#当i == 5 时,continue执行,提前结束本次循环,不再执行后续代码,进入下次循环
使用 break
和 continue
可以有效地控制循环的执行流程,使代码更加灵活和高效。
四、For 与 else
for
循环可以与 else
子句一起使用。这种结构允许你在循环正常结束后执行一段代码,即循环完成了所有迭代而没有被 break
语句中断。如果循环被 break
语句中断,则 else
子句不会被执行。
示例:break未执行
#python
for i in range(5):
if i == 6:
break
else:
print("break未运行")
#输出结果为 "break未运行"
示例:break执行
#python
for i in range(5):
if i == 3:
break
else:
print("break执行")
#输出结果为 空
五、For嵌套
嵌套循环(也称为多层循环)是一种常见的编程结构,用于同时遍历多个序列或集合。当你需要处理二维数据结构(如矩阵)或需要对多个变量进行迭代时,嵌套循环非常有用。
示例:打印乘法表
#python
for i in range(1, 10): # 外层循环
for j in range(1, i+1): # 内层循环
print(f"{j} * {i} = {i*j}", end="\t")
print() # 换行
#输出
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
...
示例:嵌套循环与条件语句
#python
for i in range(5):
for j in range(5):
if i == j:
print(f"{i}, {j} - 相等", end="\t")
else:
print(f"{i}, {j} - 不相等", end="\t")
print() # 每遍历完一行后换行
#输出
0, 0 - 相等 1, 0 - 不相等 2, 0 - 不相等 3, 0 - 不相等 4, 0 - 不相等
0, 1 - 不相等 1, 1 - 相等 2, 1 - 不相等 3, 1 - 不相等 4, 1 - 不相等
0, 2 - 不相等 1, 2 - 不相等 2, 2 - 相等 3, 2 - 不相等 4, 2 - 不相等
0, 3 - 不相等 1, 3 - 不相等 2, 3 - 不相等 3, 3 - 相等 4, 3 - 不相等
0, 4 - 不相等 1, 4 - 不相等 2, 4 - 不相等 3, 4 - 不相等 4, 4 - 相等
嵌套循环是处理复杂数据结构和执行多重迭代的强大工具,但也要注意避免过度嵌套,因为这可能会导致代码难以阅读和维护。在可能的情况下,考虑使用更高级的数据结构或算法来简化代码。
六、While循环基本格式
python中的while循环是一种基本的控制流语句,用于在某个条件为真时重复执行一段代码。
while循环常用于不清楚循环次数的情况下,for循环使用一般清楚循环的次数。
while语句基本结构:
while 条件表达式:
# 循环体
# 这里是要重复执行的代码块
只要条件表达式的结果为 True
,循环体中的代码就会不断执行。一旦条件表达式的结果变为 False
,循环就会结束。
while基本用法
#python
is_alive = True
while is_alive :
print("醒醒啦")
is_alive = False
当is_alive变量一直为True时,程序会一直输出“醒醒啦”,当变量值更改为False时,while循环停止执行。
#python
value = 0
while value < 5:
print("别睡啦")
value += 1
在value值小于5时,while循环条件满足,程序输出“别睡啦”,直到value值大于等于5时,程序停止执行。
在条件是判断语句时,需要有能够结束循环的语句支持,在上面的代码中,value += 1就是结束while循环的关键条件,如果没有给value值进行累加,那么value值将无法达到5,而程序将一直判断while的条件为真,那么程序将陷入死循环中。
break和continue也可以使用在while循环语句中,当break执行时,程序结束整个while循环;当continue执行时,程序提前进入下次循环,在下次循环之前,continue之后的代码不再执行。
#python
while True:
print("hello")
break
程序输出一个hello后遇见break,break执行,程序停止。
#python
i = 0
while i < 5:
i += 1
if i == 3:
continue
print(i)
程序执行结果为1,2,4,5在i等于3的时候,程序提前进入下次循环,无法执行打印操作。
七、While 与 else
while循环也可以和else一起使用,功能和for-else语句功能一致。
示例1:break未执行
#python
value = 0
online = True
while online:
if value == 3:
online = False
if value == 4:
break
value += 1
else:
print("break")
在value值为3时,变量online的值改变为False,while条件判断为假,程序停止,break未执行,else语句触发,程序结果将打印一个break出来。
示例2:break执行
#python
value = 0
online = True
while online:
if value == 3:
break
value += 1
else:
print("break")
在value值为3时,break执行,程序结束循环,else语句不触发,程序不打印break。
八、While嵌套
在python中可以在一个while语句中嵌套另一个while语句,这种结构被称为嵌套语句。
示例:打印99乘法表
#python
i = 1
while i < 10:
j = 1
while j < i+1:
print(f"{i}*{j}={i * j}",end="\t")
j += 1
print()
i += 1
#输出
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
在while循环的嵌套中,要着重注意结束的条件语句,不然很容易就陷入死循环中。
九、While与For嵌套
while
循环和for
循环可以相互嵌套使用,这种结构可以在需要同时处理迭代和条件循环时非常有用。
示例:while for嵌套。
#python
# 外层循环使用 while
i = 0
while i < 3:
print("外层循环 i 的值:", i)
# 内层循环使用 for
for j in range(3):
print(" 内层循环 j 的值:", j)
i += 1
#结果
外层循环 i 的值: 0
内层循环 j 的值: 0
内层循环 j 的值: 1
内层循环 j 的值: 2
外层循环 i 的值: 1
内层循环 j 的值: 0
内层循环 j 的值: 1
内层循环 j 的值: 2
外层循环 i 的值: 2
内层循环 j 的值: 0
内层循环 j 的值: 1
内层循环 j 的值: 2
示例:for while嵌套。
#python
# 外层循环使用 for
for k in range(3):
print("外层循环 k 的值:", k)
# 内层循环使用 while
i = 0
while i < 3:
print(" 内层循环 i 的值:", i)
i += 1
#结果
外层循环 k 的值: 0
内层循环 i 的值: 0
内层循环 i 的值: 1
内层循环 i 的值: 2
外层循环 k 的值: 1
内层循环 i 的值: 0
内层循环 i 的值: 1
内层循环 i 的值: 2
外层循环 k 的值: 2
内层循环 i 的值: 0
内层循环 i 的值: 1
内层循环 i 的值: 2
使用嵌套的例子展示了如何根据不同的需求选择使用while或for循环,以及如何将他们结合起来使用。
作者:2401_87587429