zoukankan      html  css  js  c++  java
  • py 流程控制循环if-while-for

    1流程控制之if判断

    1、if :条件的bool值都为true:code1、code2、code3、code4
    
    代码1
    代码2
    代码3			----代码块
    ==代码块(同一级别的代码,例如代码1、代码2、代码3、是相同代码的缩进,三个代码组成在一块就是一个代码块,相同缩进的代码会自上而下的运行)==
    
    name=input('请输入你的年龄')
    if name == 'nick':
    	print('nick handsome')
    
    2、if---else---
    if条件:
        代码1
        代码2
        代码3
    else:
    	代码1
        代码2
        代码3
    
    name=input('请输入你的名字')
    if name=='nick':
        print'yes,你猜对了'
    else:
        print'no,他是nick'
    
    3、if---elif---else
    if条件:
        代码1
        代码2
        代码3
    elif:
        代码1
        代码2
        代码3
    else:
        代码1
        代码2
        代码3
    
    egon_age=25
    age=input('请输入年龄')
    age=int(age)
    if age == egon_age:
        print('猜对了')
    elif age>egon_age:
    	print('猜大了')
    elif age<egon_age:
        print('猜小了')
    
    

    2流程控制之while循环

    whlie循环又称条件循环
    while的条件为true
    while 1:
        egon_age = 73
    
        age = input('请输入你猜的年龄》》》')
        age = int(age)
    
        if age == egon_age:
            print('猜对了')
        elif age > egon_age:
            print('猜大了')
        elif age < egon_age:
            print('猜小了')
    
    print('我跳出while循环了')
    
    while+break
    break就是终止当层得循环,执行其他代码
    while 1:
        egon_age=25
        age=input('请输入年龄')
        age=int(age)
    	if age ==egon_age:
    		print('猜对了')
        	 break
    	elif age>egon_age:
        	print('猜大了')
        elif age<egon_age:
            print('猜小了')
        
    
    while 循环的嵌套
    prize={0:'666',1:'巧克力',2:'棒棒糖',3:'薯片'}
    while 1:
    	egon_age=73
        age=input('输入年龄')
        age=int(age)
        if age == egon_age:
            While True
            print(f'太棒了!!!/n请选择下列奖励的哪一个:{priz}')
            choice=input('请选择你需要的奖品')
            choice=int(choice)
            if choice==2:
            	print('大傻逼,这个不能给你')
                print('重新选一个')
            else:
            	print('这个你也要,大傻逼')
                break
            break
         elif age>egon_age:
            print('猜大了')
         else 
    
    While+Continue
    count=1
    while count<101
    	if count ==50:
        count+=1
        continue /#不执行下面的代码
        print(count)
        count+=1    
    

    break会终止整个while循环,continue只是不进行下面的代码,但是会循环下去的

    While +else

    当while循环没有被break的时候,会进行else下面的代码

    count=1
    while count <101
    	if count==50:
            count+=1
         	break/#不执行后面的代码
        print(count)
        count+=1
    else:
        print('我没有被break掉')
    

    3For 循环 i就是列表里面的每一个元素

    字典也有取多个值的需求,字典可能有while循环无法使用了,可以使用for循环

    * game_list = ['xiaoxiaokan','kaixinxiaoxiaole','tiaoyitiao','chaojimali','hundouluo']
    ##ind=0
    while ind <8
    	print(ganme_list[ind])
        ind+=1
        
    ##for i in game_list:
    	print(i)
        
    
    For +break
    game_list = ['xiaoxiaokan','kaixinxiaoxiaole','tiaoyitiao','chaojimali']
    for i in game_list:
    	if i =='tiaoyitiao':
        	break   
        print(i)
        xiaoxiaokan
        kaixinxiaoxiaole
    
    For+continue
    game_list = ['xiaoxiaokan','kaixinxiaoxiaole','tiaoyitiao','chaojimali']
    for i in game_list:
    	if i =='tiaoyitiao':
        	continue
         print(i)
        
        xiaoxiaokan
        kaixinxiaoxiaole
        chaojimali
    
    For+else
    or循环没有break的时候触发else内部代码块
    

    For 循环的嵌套

    for i in rang(3)
    	for j in rang(2)
        	prnt9(i,j)
    (0,0)
    (0,1)
    (1,0)
    (1,1)
    (2,0)
    (2,1)
    
    print(1.end='')
    print(2.end='')
    print(3.end='')
    123
    

    Loading......

    import time
    print('Loading',end='')
    	for i in range(6):
        	print('.',end='')
            time.sleep(1)
    Loading......        
            
    使用代码实现以下业务逻辑:
    
    1. 输入姑娘的年龄后,进行以下判断:
       1. 如果姑娘小于18岁,打印“未成年”
       2. 如果姑娘大于18岁小于25岁,打印“表白”
       
       3如果姑娘大于25岁小于45岁,打印“阿姨好”
       
       4. 如果姑娘大于45岁,打印“奶奶好”
       
          ```python
          while 1:
              age=18
              age=input('姑娘的年龄是??')
              age=int(age)
              if age>45:
                  print('奶奶好')
              if age>=25and age<45:
                  print('阿姨好')
              if age>=18and age<25:
                  print('表白')
              if age < 18:
                  print('未成年')
          ```
       
          
       
    2. 打印1-100之间的偶数:
    
        ```python
        for i in range(1,101):
        	if i%2==0:
            print(i)
        ```
    
        
    
    3. 猜年龄游戏升级版,有以下三点要求:
        1. 允许用户最多尝试3次
    
        2. 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序
    
        3. 如果猜对了,就直接退出 
    
           ```python
           n=0
           age=18
           while n<4:
               man_age=int(input(f'请输入年龄,你还有{3-n}次机会:'))
               if man_age==age:
                   print('恭喜你猜对了')
                   break
               else:
                   print('你猜错了')
                   n=n+1
                   if n==3:
                       confire=input('你已经输错三次了,请问还要继续吗')
                       while 1:
                           if confire=='y'or confire=='Y':
                               n=0
                               break
                           elif confire=='n'or confire=='N':
                               print('不猜了,退出程序')
                               n+=1
                               break
                           else:
                               confire=input('继续猜请输入y或Y,不猜请输入n或N')
           **  n=0
           age=20
    while n<4:
               guess_age=int(input(f'请输入年龄,你还有{3-n}次机会哦:'))
           if guess_age==age:
                   print('猜对了,退出程序')
                   break
               else:
                   print('猜错了')
                   n=n+1
                   if n==3:
                       a=input('你已经输错了3次,如想继续玩,请输入y或者Y;'
                                 '不继续请输入n或者N:')
                       while 1:
                           if a=="n"or a=="N":
                               print('不猜了,退出程序')
                               n=4
                               break
                           elif a=='y'or a=='Y':
                               n=0
                               break
                             
           
           ```
           
           
        
    4. 打印如下所示9*9乘法表:
    ```python
    '''
    1*1=1 
    2*1=2 2*2=4 
    3*1=3 3*2=6 3*3=9 
    4*1=4 4*2=8 4*3=12 4*4=16 
    5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
    6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
    7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
    8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
    9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 
    '''
    
    for i in range(1,10):
        for j in range(1,i+1):
            print(i,'*',j,'=',i*j,end=' ')
        print()
    

    6打印如下所示金字塔:

    '''
                 # max_level=5
        *        # current_level=1,空格数=4,*号数=1
       ***       # current_level=2,空格数=3,*号数=3
      *****      # current_level=3,空格数=2,*号数=5
     *******     # current_level=4,空格数=1,*号数=7
    *********    # current_level=5,空格数=0,*号数=9
    
    # 数学表达式
    空格数 = max_level-current_level
    *号数 = 2*current_level-1
    '''
    
    max_level=5
    for i in range(1,max_level+1):
        current_level=i
        konge = max_level - current_level
        xing = 2 * current_level - 1
        print(' '*konge,'*'*xing)
    
    程序的道路上一去不复返
  • 相关阅读:
    ES elasticsearch 段合并
    xtrabackup VS clone plugin
    MySQL排序揭秘
    PostgreSQL体系结构和基本操作
    ES elasticsearch refresh和flush的区别
    MySQLMGR(一)
    redis一键创建脚本
    vs2010 安装无法打开deffactory.dat解决办法
    FeatureLayer,FeatureDataset,FeatureClass,Feature几个概念总结
    http://www.cnblogs.com/secenes/archive/2008/05/15/1198933.html
  • 原文地址:https://www.cnblogs.com/zhuyuanying123--/p/10908471.html
Copyright © 2011-2022 走看看