赞
踩
如果需要连续输出某个值,在简单的程序中就需要写N行输出代码
比如,连续输出10行hello world
print('hello world')
print('hello world')
print('hello world')
print('hello world')
print('hello world')
print('hello world')
print('hello world')
print('hello world')
print('hello world')
print('hello world')
就需要这样连续写十行代码,如果是一百次输出,则是一百行代码,工作量大
而循环就可以解决这个问题
在Python中,循环分为两种,有while循环,和for循环
while常用于死循环和未知循环次数的循环结构
while的循环结构:
while 循环条件:
循环语句(需要重复执行的语句)
更新表达式
只有当循环条件为真时,循环才会进行;否则会跳出循环
循环语句是需要被重复执行的语句
更新表达式是这次循环结束后,进去下一次循环的条件
代码示例:
# 简单的while循环
# 输出1-100之间的数字
num = 1
while num <= 100:
print(num)
num += 1
以上代码示例中,先初始定义了num为1,表示从1开始
在循环中,循环条件为num <= 100,即表示当num>100的时候会跳出循环
循环语句为print(num),即打印此时的num
更新条件为num += 1,即表示每次循环num都会加一,一直加到刚好超过100,就会跳出循环
while-else结构是while循环中的一个循环结构,其结构是这样的
while 循环条件:
循环体
更新条件
else:
执行语句
这个结构比普通的while循环多了个else条件,当然这个else的用法和之前if-else的用法是不一样的
else用法:
else后面的执行语句是在while循环正常结束后才会执行
如果while循环是因为某个条件而被迫break结束循环,那么else中的执行语句则不会执行
代码示例:
num = 1
while num <= 10:
print(num)
num += 1
else:
print("while循环执行完毕")
与while循环不同,for循环常用于已知循环次数的循环中
循环结构:
for 变量名 in 序列:
循环体(循环中执行的代码块)
变量名是用在序列中,依次遍历序列
序列常用列表、range()函数等
range()函数常用在循环特定的数列
其中的参数:
range(起始,结束,步长)
起始:开始的数字,从哪里开始,包括该数字,可不填,默认从0开始
结束:结束的数字,在哪里结束,该数字的前一个数字结束,必填区间:[起始,结束)
左开右闭区间
步长:每次+或-的数字,可不填,默认每次+1
案例:
range(10)
从0开始,到10结束,步长为1(每次加1)
序列为:0,1,2,3,4,5,6,7,8,9
range(1,15,2)
从1开始,到15结束,步长为2(每次加2)
序列为:1,3,5,7,9,11,13
15为闭区间内容,取不到
range(10,1,-1)
从10开始,到1结束,步长为-1,每次减1
序列为:10,9,8,7,6,5,4,3,2
for循环和range()函数结合:
# 1.使用for循环输出1-100之间所有的数字
for i in range(1,101):
print(i)
# 2.使用for循环计算1-100之间所有的数字的和
sum = 0
for i in range(1,101):
sum += i
print(sum) # 5050
# 3.使用for循环输出列表内容
for i in ['a','b','c','e','t']:
print(i)
for-else结构和while-else结构的作用相同
else用法:
else后面的执行语句是在while循环正常结束后才会执行
如果while循环是因为某个条件而被迫break结束循环,那么else中的执行语句则不会执行
代码示例:
for i in range(10):
print(i)
else:
print("for循环输出完毕.....")
和if嵌套结构类似
在for循环或者while循环内再加一次循环
一般循环的层级不超过三层
代码示例:
# 1.简单的循环嵌套 # 输出以下内容 ''' * * * * * * * * * * * * * * * ''' for j in range(3): # 外层循环控制的是行 for i in range(5): # 内层循环控制的是列 print("*",end="\t") # end表示输出结束后执行的操作,\t表示一个制表位 print() # 实现换行的效果 # 2.稍微复杂的循环嵌套 # 输出99乘法表 for i in range(1,10): for j in range(1,i+1): print(f"{j}*{i}={i*j}",end="\t") print() # 当然,while循环也可以实现99乘法表 i = 1 while i <= 9: j = 1 while j <= i: print(f"{j}*{i}={j*i}",end="\t") j+=1 i+=1 print()
一直无法结束循环,只能强制停止程序
示例:
while True:
name = input("请输入你的姓名:")
print(name)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。