while 循环|疫情期间日更(10)

循环的作用,就是让指定的代码重复执行。
while循环的一个常用的应用场景,就是让指定的代码按照指定的次数执行。
while语句,以及下面的缩进看成一个完整的代码。
下面做一个演练:

#打印5遍hello python
#1.定义一个整数变量,记录循环次数
i=1
#2.开始循环
while i <=5:
    #1> 希望在循环内执行的代码
    print("hello python")
    #2>处理计数器
    i=i+1

输出结果:

hello python
hello python
hello python
hello python
hello python

死循环
由于程序员的原因,忘记在循环内部修改循环的判断条件,导致循环持续执行,程序无法终止。也就是说忘记修改处理计数器。解决死循环的方法就是加上处理计数器。
赋值运算符
python中使用=,可以给变量赋值。
在算数运算时,为了简化代码的编写,python还提供了一系列和算术运算符对应的赋值运算符。
注意:赋值运算符中间不能使用空格。

c-=a c=c-a
c=a+b 将a+b的运算结果赋值给c
c/=a c=c/a
c+=a c=c+a

学习了赋值运算符,我们可以简化很多代码。以上边的打印5个Holle python 为例。

i=i+1
i+=1

python 的计数方法
自然计数法:从1开始,更符合人类的习惯
程序计数法:从0开始,几乎所有的程序语言都是从0开始的
所以我们应该养成习惯循环一般从0开始,除了特别的要求。对我们后续的学习有帮助。

#打印5遍hello python

#1.定义一个整数变量,记录循环次数
i=0
#2.开始循环
while i <5:
    #1> 希望在循环内执行的代码
    print("hello python")
    #2>处理计数器
    i+=1

输出结果为:

hello python
hello python
hello python
hello python
hello python

#循环计数

1.在while上方定义一个变量,用于存储最终结果
2.再循环体中,每次循环都用于新的计数结果,更新之前的变量
比如计数0—100的累加求和:

#计算0—100之间所有数字的累计求和
#定义最终结果的变量
result=0
#1.定义一个整数的变量计算循环的次数
i=0
#2.开始循环
while i<=100:
    #每次循环都让result这个变量和计数器i相加
    result +=i
    #处理计数器
    i +=1
print("0—100之间的所有数字的累计求和结果为: %d" %  result)

输出结果:

0100之间的所有数字的累计求和结果为: 5050

循环计算的进阶版本
1.编写循环 确认要计算的数
2.添加结果变量,在循环内部处理计算结果。

#计算0—100之间所有偶数的累计求和
#定义最终结果的变量
result=0
#1.定义一个整数的变量计算循环的次数
i=0
#2.开始循环
while i<=100:
    #判断变量中i的值,是否是偶数
    #i % 2==0
    if i % 2==0:
        print(i)
        #每次循环都让result这个变量和计数器i相加
        result +=i
    #处理计数器
    i +=1
print("0—100之间的所有数字的累计求和结果为: %d" %  result)

输出结果为:2550

#计算0—100之间所有奇数数的累计求和
#定义最终结果的变量
result=0
#1.定义一个整数的变量计算循环的次数
i=0
#2.开始循环
while i<=100:
    #判断变量中i的值,是否是奇数
    #i % !2=0
    if i % 2!=0:
        #每次循环都让result这个变量和计数器i相加
        result +=i
    #处理计数器
    i +=1
print("0—100之间的所有奇数的累计求和结果为: %d" %  result)

输出结果为:

0100之间的所有奇数的累计求和结果为: 2500

方法二:

result=0
i=0
while i<100:
    if i % 2==0:
        i +=1
        result +=i
    i +=1
print("0—100之间的所有奇数的累计求和结果为: %d" %  result)

输出结果为:

0100之间的所有奇数的累计求和结果为: 2500
发布了18 篇原创文章 · 获赞 12 · 访问量 2242

猜你喜欢

转载自blog.csdn.net/xiaoyun5555/article/details/104556996