栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python学习第五天之循环结构

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python学习第五天之循环结构

目录

1.range()函数的使用

2.循环结构

1.while循环

2.for-in循环

3.break,continue与else语句

4.嵌套循环


1.range()函数的使用
  • 用于生成一个整数序列

  • 创建range对象的三种方式

 

  • 返回值是一个迭代器对象

  • range类型的优点:不管range对象表示的整数序列有多少,所有range对象占用的内存空间都是相同,因为仅仅需要储存start,stop和step,只有当用到range对象时,才会去计算序列中的相关元素

  • in与not in判断整数序列中是否存在(不存在)指定的整数

​
​

#range()的三种创建方式
'''第一种创建方式,只有一个参数(小括号中只给了一个数)'''
r = range(10)   #[0,1,2,3,4,5,6,7,8,9],默认从0开始,默认相差1称为步长
print(r)    #range(0,10)
print(list(r))  #用于查看range对象中的整数序列  --》list是列表的意思
​
'''第二种创建方式,给了两个参数(小括号中给了两个数)'''
r = range(1,10)     #指定了起始值,从1开始,到10结束(不包含10),步长为1
print(list(r))      #[1,2,3,4,5,6,7,8,9]
​
'''第三种创建方式,给了三个参数(小括号给了三个数)'''
r = range(1,10,2)
print(list(r))  #[1,3,5,7,9]
​
'''判断指定的整数 在序列中是否存在in,not in'''
print(10 in r)  #False,10不在当前的r这个整数序列中
print(9 in r)   #True,9在当前的r这个序列中
​
print(10 not in r) #True
print(9 not in r)   #False
​
print(range(1,20,1))    #[1...19]
print(range(1,101,1))   #[1....100]

2.循环结构
  • 反复做同一件事情的情况,称为循环

  • 循环结构的流程图

 

  • 循环的分类

    • while

    • for

  • 语法结构

    while 条件表达式:

    条件执行体(循环体)

  • 选择结构的if与循环结构while的区别

    • if是判断一次,条件为True执行一次

    • while是判断N+1次,条件为True执行N次

    ​
    ​
    
    
    a = 1
    #判断条件表达式
    while a<10:
        #执行条件执行体
        print(a)
        a+=1

1.while循环
  • 四步循环法

    • 初始化变量

    • 条件判断

    • 条件执行体(循环体)

    • 改变变量

     

  • while循环的执行流程

​

#计算0到4之间的累加和
'''
4步循环法
1.初始化变量
2.条件判断
3.条件执行体(循环体)
4.改变变量
总结:初始化的变量与条件判断的变量与改变的变量为同一个
'''
​
sum =0 #用于存储累加和
'''初始化变量为0'''
a = 0
'''条件判断'''
while a<5:
    '''条件执行体'''
    sum += a
    '''改变变量'''
    a += 1
print('和为',sum)
​
​

练习:计算1-100的偶数和

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

2.for-in循环
  • for-in循环

    • in表达从(字符串,序列等)中依次取值,又称遍历

    • for-in遍历的对象必须是可迭代对象

  • for-in的语法结构

    for 自定义的变量 in 可迭代对象:

    循环体

  • for-in的执行图

 

  • 循环体内不需要访问自定义变量,可以将自定义变量替代为下划线

​
​

for item in 'Python': #第一次取出来的是p,将p赋值item,将item,将item的值输出
    print(item)
​
#range()产生一个整数序列,--》也是一个可迭代对象
for i in range(10):
    print(i)
​
#如果在循环体中不需要使用到自定义变量,可将自定义变量写为“_”
for _ in range(5):
    print('人生苦短,我用python')
​
#计算1-100的偶数和
sum =0
for item in range(1,101):
    if item%2==0 :
        sum+=item
print('1-100之间的偶数和为:',sum)
​
​

练习:输出100-999的水仙花数

​
​

'''输出100-999之间的水仙花数
    举例:
    153=3*3*3+5*5*5+1*1*1
'''
​
for item in range(100,1000):
    ge = item % 10      #各位
    shi = item//10%10   #十位
    bai = item//100      #百位
    #print(bai,shi,ge)
    #判断
    if ge**3+shi**3+bai**3==item:
        print(item)

3.break,continue与else语句
  • 流程控制语句break

    • 用于结束循环结构,通常与分支结构if一起使用

     

    ​
    
    
    '''从键盘录入密码,最多录入3次,如果正确就结束循环'''
    for item in range(3):
        pwd = input('请输入密码:')
        if pwd =='888':
            print('密码正确')
            break
        else:
            print('密码不正确')
    ​
    ​
    a =0
    while a<3:
        '''条件执行体(循环体)'''
        pwd = input('请输入密码')
        if pwd =='8888':
            print('密码正确')
            break
        else:
            print('密码不正确')
    ​
        '''改变变量'''
        a+=1
    
    ​

  • 流程控制语句continue

    • 用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用

     

    ​
    
    
    ​
    '''要求输出1-50之间所有5的倍数,5,10,15,20,25
        5的倍数的共同点,和5的余数为0的数都是5的倍数
        什么样的数不是5的倍数,1,2,3,4,6,7,8,9.。。与5的余数不是0的数不是5的倍数
        要求是使用continue实现
    '''
    ​
    for item in range(1,51):
        if item%5==0:
            print(item)
    ​
    print('-------------使用continue--------')
    for item in range(1,51):
        if item%5!=0:
            continue
        print(item)

  • else语句

    • 与else语句配合使用的三种情况

     

    ​
    ​
    
    
    for item in range(3):
        pwd = input('请输入密码:')
        if pwd == '8888':
            print('密码错误')
            break
        else:
            print('密码错误')
    else:
        print('对不起,三次密码均输入错误')
    ​
    ​
    
    
    a = 0
    while a<3:
        pwd = input('请输入密码')
        if pwd == '8888':
            print('密码正确')
            break
        else:
            print('密码不正确')
        '''改变变量'''
        a+=1
    else:
        print('对不起,三次密码均输入错误')
        
    ​
    ​
    ​

4.嵌套循环
  • 循环结构中又嵌套了另外的完整的循环结构,其中内层循环做为外层循环的循环体执行

 

​
​

for i in range(1,4):    #行表,执行三次,一次是一行
    for j in range(1,5):
        print('*', end='t')
    print() #打印
​
#输出三角形
for i in range(1,10):
    for i in range(1,i+1):
        print('*',end='')
    print()
​
#输出九九乘法表
for i in range(1,10):
    for j in range(1,i+1):
        print(i,'*',j,'=',i*j,end='t')
    print()
​
  • 二重循环中的break和continue用于控制本层循环

 


'''流程控制语句break与continue在二重循环中的使用'''
for i in range(5): #代表外层循环要执行5次
    for j in range(1,11):
        if j%2==0:
            #break   #直接跳到外部循环
            continue
        print(j,end='t')
    print()

总结:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1004713.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号