python3 while结构

Posted wd404

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3 while结构相关的知识,希望对你有一定的参考价值。

1、介绍

python3中,只有while结构,没有do...while结构。

while结构,当判断条件为True时,一直执行结构体内部的代码。

2、结构

while 条件:
    # 执行代码1
else:
    # 执行代码2

else结构:

  • else结构是可选的,如果存在,表示当while循环正常结束时,执行else结构中的代码
  • 所谓正常结束,即未使用break或return关键词。只要进行条件判断,即使未执行一次while结构体内代码,也视为正常结束

变量作用域:

  • 注意python的变量作用域规则,在while和else外声明变量,可以直接在其内使用和操作。同时,在while和else结构内声明变量,也可以在其外使用、操作

死循环:

  • 当条件恒为True,则一直执行结构体内代码。直到调用break,或者条件变为False
  • 一般,如果不想变为死循环,会逐次改变循环条件的变量,比如索引递增1

3、条件判断

每次循环执行前,都会进行条件判断,对应会调用一次条件中的方法或函数

arr = [\'a\',\'b\',\'c\']
i=0
while i<len(arr):
    if i=1:
        del arr[i]
        continue
     i = i + 1
  • 如果只是读取集合中的元素,那么不影响
  • 但是如果涉及到对元素的增删,则需要结合考虑
  • 以上代码,至少不会出现超出索引边界的异常

Python中的循环结构

“最近再复习python,记录一下简单的循环结构。”

Python 中的循环语句有 for 和 while。

Python 循环语句的控制结构图如下所示:

while 循环

Python 中 while 语句的一般形式:

while 判断条件(condition)
    执行语句(statements)……

注意冒号和缩进。另外,在 Python 中没有 do…while 循环。

选择、循环结构对比

##if条件语句
a=0
if a<5:           ##判断条件表达式

 sum+=a       ##条件执行体
 print(a)
 a+=1

结果为1

##while循环
a=0
while a<5:           ##判断条件表达式

 sum+=a       ##条件执行体
 print(a)
 a+=1

结果为1、2、3、4

while循环执行流程

##计算0-4的累加和
sum=0        ##用于存储累加和
a=0          ##初始化变量
while a<5:   ##条件判断语句
 sum+=a      ##循环体

 a+=1        ##改变变量
print("和为",sum)

和为 10

具体流程

while循环练习题

##计算1-100的偶数
a=1              ##变量初始化
sum=0
while a<101:     ##条件判断
    if a%2==0 :  ##条件执行体
        sum+=a   ##改变变量
    a+=1
print("和为”,sum)

和为 2550

##计算1-100的偶数
a=1              ##变量初始化
sum=0
while a<=100:     ##条件判断
    if not bool(a%2) :  ##条件执行体
        sum+=a   ##改变变量
    a+=1
print("和为”,sum)

for-in循环

Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。

for循环的一般格式如下:

for <variable> in <sequence>:
    <statements>
else:
    <statements>

##range产生一个整数序列,也就是一个迭代对象
for i in range(10):
    print(i)

##如果在循环体中不需要使用到自定义变量,可将自定义变量写为"_"
for _ in range(4):
    print("傻逼")


print("使用for循环计算1-100之间的偶数和")
sum=0
for i in range(1,101):
    if i%2==0:
        sum+=i
print("1-100的偶数和为:",sum)

输出结果

0
1
2
3
4
5
6
7
8
9
傻逼
傻逼
傻逼
傻逼
使用for循环计算1-100之间的偶数和
1-100的偶数和为: 2550

for-in循环练习

输出1-999之间的水仙花数

'''153=3*3*3+5*5*5+1*1*1'''

for i in range(100,1000):
    ge=i%10             #个位
    shi=i//10%10        #十位
    bai=i//100          #百位
    #print(bai,shi,ge)
    if ge**3+shi**3+bai**3==i: #判断
     print(i)
153
370
371
407

以上是关于python3 while结构的主要内容,如果未能解决你的问题,请参考以下文章

Python3 循环语句

python013 Python3 循环语句

Python3基础12——while循环

python3练习:while循环

python3.3while循环

Python3 循环语句——while