python中的循环语句

1、分类 ##

在Python中,有两种循环语句,分别是: while 语句 和 for 语句

1.1 问题引入
输入一个整数n 打印 : 这是第n行
在不用循环语句的情况下,我们在需要执行重复多次的程序的时候的代码可能是下面这样的,例如输出十条”我喜欢Python”:

print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")
print("我喜欢Python!")

print(1)
print(2)
print(3)
print(4)
print(5)
print(6)
print(7)
print(8)
print(9)
print(10)
或者:
print(1,2,3,4,5,6,7,8,9,10)

但是使用循环语句来解决类似的问题就会简单得多,代码也会更加整洁,用while循环举例:

i = 0 
while i<=10:
    print("我喜欢Python!")
    i+=1
或者
i = 0
while i<=10:
    print(i)
    i+=1

是不是简单得多了呢?下面将详细介绍while语句和for语句,熟练的掌握循环语句将会使我们能够很轻松的解决如上类问题,代码也会更加的地简洁、规范。

2、while语句

2.1 语法:

while 真值表达式:
    语句块1
else
    语句块2

2.2 说明:

·先判断真值表达式
·为True执行语句块1,再返回第一步
·为False执行语句块2,然后结束while的执行
·else子句的部分可以省略(同if类似)
·while 循环结构为1条语句

2.3 示例1:

i=1
a=20
while i<=a:
    print("%4d" %i,end="")   # 满足条件i<a,输出i,不换行
    if i%5 == 0:
        print("")     # 如果 i 除 5 余 0 就换行
    i=i+1    循环变量自增

输出如下:

1   2   3   4   5
6   7   8   9  10
11  12  13  14  15
16  17  18  19  20

2.4 示例2:

a=10
while a>0:
    print(a,end = "  ")
    a-=1

输出如下:

10  9  8  7  6  5  4  3  2  1  

2.5 示例3:

i=0
while i<10.0:
    print("%.1f"%i,end="  ")
    i += 0.5

输出如下:

0.0  0.5  1.0  1.5  2.0  2.5  3.0  3.5  4.0  4.5  5.0  5.5  6.0  6.5  7.0  7.5  8.0  8.5  9.0  9.5  

2.6 while语句注意事项:

·要控制循环真值表达式的值来防止死循环
·通常用真值表达式的循环变量来控制循环条件
·通常在循环语句块内改变循环变量来控制循环次数和变量zouxiang

2.7 while语句的嵌套
while语句本身是语句,和其他语句一样,可以嵌套到任何复合语句中
2.7.1语法格式:

while 真值表达式1:
    ...
    while 真值表达式2:
        ...
    else:
        ...
else:
    ...

2.7.2 举例,利用while循环嵌套实现九九乘法表

i = 1
while i<10:
    j = 1
    while j<=i:
        print("%d*%d=%2d" %(j,i,j*i),end = ' ')
        j+=1
    print()
    i+=1

输出如下:

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 
1*5= 5 2*5=10 3*5=15 4*5=20 5*5=25 
1*6= 6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 
1*7= 7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 
1*8= 8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 
1*9= 9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 

3、for语句

3.1作用:用来遍历可迭代对象的数据元素,可迭代对象是指能依次获取数据元素的对象

·可迭代对象包括:
    字符串     str
    列表      list
    元组      tuple

3.2 for 语法:

for 循环变量 in 可迭代对象:
    语句块1
else:
    语句块2

3.3 说明:
当循环变量在可迭代对象范围内的时候执行语句块1,当不符合条件的时候执行else语句,else语句可以省略
3.4 示例1,循环输出1~10:

L = [1,2,3,4,5,6,7,8,9,10]
for i in L:
    print(i,end=' ')
或者:
for i in range(1,11):
    print(i,end=' ')

输出如下:

1 2 3 4 5 6 7 8 9 10 

3.5 for语句的循环嵌套
3.5.1 语法:

for 循环变量1 in 可迭代对象1:
    语句块1
    for j in 可迭代对象2:
        语句块2

3.5.2 示例,用for语句循环嵌套实现九九乘法表:

for i in range(1,10):
    for j in range(1,i+1):
        print("%d*%d=%2d" % (j, i, j * i), end=' ')
    print()

输出如下:

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 
1*5= 5 2*5=10 3*5=15 4*5=20 5*5=25 
1*6= 6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 
1*7= 7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 
1*8= 8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 
1*9= 9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

4、range()函数

4.1 语法格式:

range(stop) 用来生成 0 ~ stop - 1  区间内的整数
range(start,stop[,step])
用来生成start~stop-1区间内的整数,每次生成后整数移动step,step默认为1

4.2 作用:
用来创建一个生成一系列证书的可迭代对象(也叫整数序列生成器)

4.3 说明:
range返回的对象可以用for语句来进行依次迭代访问

4.4 示例:

>>>range(4)         # 0 1 2 3 
>>>range(4,0)       # None
>>>range(1,10,2)    # 1 3 5 7 9
循环嵌套中的九九乘法表

4.5 range函数的注意事项:
在range(start,stop[,step])中,step 的 符号应该和 start-stop 的符号保持一致,否则返回为空
例如:

range(1,5,1)    # 1 2 3 4
range(5,1,-1)   # 5 4 3 2 
range(1,10,-1)  # None
range(10,1,1)   # None

例如:

for x in range(4, 0):
    print(x)
    print("x绑定",x)
# 因为range(4,0) 返回为空,所以输出为空

5、break 语句

5.1 作用:用于循环语句(while,for)中,终止当前循环语句的执行

5.2 语法:

·当break语句执行后,此循环语句break之后的语句将不在执行
·break语句通常 和if 语句组合使用
·break语句终止循环时 else子句的语句将不会执行
·break语句只能种终止当前循环语句的执行, 如果有循环嵌套时,不会跳出嵌套的外层循环

5.3 示例:

for i in range(1,10):
    if i==6:
        break   # 如果 i = 6,则退出循环
    print(i,end = ' ')

输出如下:

1 2 3 4 5

6、continue语句

6.1 作用: 用于循环语句中,常和if语句连用符合条件执行continue语句,不再执行本次循环,重新开始一次新的循环
6.2 说明:

·在while语句中执行continue,将会直接跳转到while语句的真值表达式处重新判断循环条件
·在for语句中执行continue语句,将会从可迭代兑现中取下一个元素,绑定变量后在进行循环

6.3 示例:

for i in range(1,10):
    if i%2==1:    # 输出 1~10 内的偶数
        continue
print(i,end = ' ')

输出如下:

2 4 6 8

7、死循环

死循环是指条件一直成立的循环,使程序不能够正常进行
死循环的else语句永远不会执行

# 例如:
i = 1
while i <10:
    print(i)
# 因为缺少循环变量的值增长赋值,导致死循环,不停的输出1,程序无法终止。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值