zoukankan      html  css  js  c++  java
  • python流程控制while和if

    流程控制

    1.流程控制if

    if的4种语法

    • 语法1:

      
    #结构形式
      #if条件:
      #    代码1
      #    代码2
      #    代码3
      #    ...
      key_bak=123
      key=int(input('key:'))
      if key==key_bak:
          print('login')
      print('end...')
    • 语法2:

      #结构形式
      #if条件:
      #    代码1
      #    代码2
      #    ...
      #else:
      #    代码1
      #    代码2
      #    ...
      name=input('please input your name:')
      if name=='lily':
          print('总经理')
      else:
          print('员工')
    • 语法3:

      #结构形式
      #if条件:
      #    代码1
      #    ...
      #elif条件2:
      #    代码1
      #    ...
      #elif条件3:
      #    代码1
      #    ...
      #else:
      #    代码...
      #该结构由if条件开始运行,若符合条件则下面elif将不运行,若不符合将运行第一个elif,依次往下。
      #小练习:
      #将100分按照90-100分为A,80-90分为B,60-80分为C,60以下分为D,输入其他信息错误。
      score=input('your score:')
      score=int(score)
      if score>100:
          print('输入信息有误')
      elif score>=90:               #这里没有and因为该结构形式在第一步已经将大于100的数据删选了。故不需要and score<=100
          print('A')
      elif score>=80:               #
          print('B')
      elif score>=60:
          print('C')
      else:
          print('D')
    • 语法4:if的嵌套

      #结构形式
      #if 条件1:
      #    if条件2:
      #        代码1
      #        ...
      #实例:
      #判断一个数字能否被2和3同时整除
      num=input('请输入数字:')
      num=int(num)
      if num%2==0:
          if num%3==0:
              print('能被2和3同时整除')
          else:
              print('输入数字可以整除2,但不能整除3')
      else:
          if num%3==0:
              print('输入数字能整除3,不能整除2')
          else:
              print('输入数字不能整除3,也不能整除2')
    2.流程控制while循环
    • 1.while循环  

      也叫条件循环

      #while条件:
      #    代码1
      #    代码2
      #    ...
      name_of_bk='dengyifan'
      pwd_of_bk='1007508381'
      tag=True
      while tag:
          inp_name=input('your name:')
          inp_pwd=input('your password:')
          if inp_name==name_of_bk and inp_pwd==pwd_of_bk:
              print('login successful')
              tag=False
          else:
              print('user name or password error')
          print('finished')
      #该循环会一直到输入正确的信息才会按条件结束

    2.while+break结构

    break代表结束本层循环

    #
    while True:
        print(1)
        break
        print(2)
    #在pycharm中,当在break 后写代码会以颜色标识告诉你后面同层代码不会运行。
    #接前一结构实例,同样可以用break 来打断程序运行
    name_of_bk='dengyifan'
    pwd_of_bk='1007508381'
    while tag:
        inp_name=input('your name:')
        inp_pwd=input('your password:')
        if inp_name==name_of_bk and inp_pwd==pwd_of_bk:
            print('login successful')
            break
        else:
            print('user name or password error')
        print('finished')
    #该循环同样也可一直运行至正确输入结束
    • 3.while+continue结构

      continue代表结束本次循环,和break有区别

      #例 顺序输出1-9 
      count=1
      while count<10:
              print(count)
              count+=1
      # 若现在要剔除1-9中的3和6
      count=1
      while count<10:
          if count==3 or count==6:  # 选择出3和6
              count+=1              #在此处需要写一个增值运算,否则程序运行到count==3就一直运行continue语法
              continue
          print(count)
          count += 1
      #再接前一结构实例
      #若现在须限制用户输入次数为3次
      name_of_bk='dengyifan'
      pwd_of_bk='1007508381'
      count=0
      while count<4:
          count += 1
          if count == 4:
              print('输错次数过多')
              break
          inp_name=input('your name:')
          inp_pwd=input('your password:')
          if inp_name==name_of_bk and inp_pwd==pwd_of_bk:
              print('login successful')
              break
          else:
              print('user name or password error')
          print('finished')

    4.while+else结构

    else的子代块只有在while循环没有break打断才会运行,else会判断while循环怎么样结束

    #
    顺序输出1-9
    count=0
    while True:
        if count==10:
            break
        print(count)
        count+=1
        else:
        print('else的子代块只有在while循环没有被break打断的情况下才会被执行')
    #else的内容并不会运行,因为被break打断
    count=1
    while count<10:
            print(count)
            count+=1
    else:
         print('else的子代块只有在while循环没有被break打断的情况下才会被执行')
    #可以运行出来,因为没有break打断
    ​
    ​
    # name_of_bk='dengyifan'
    # pwd_of_bk='1007508381'
    # count=0
    # tag=True
    # while tag:
    #     if count==3:
    #         print('您输入的次数过多')
    #         break
    #     inp_name=input('your name:')
    #     inp_pwd=input('your password:')
    #     if inp_name==name_of_bk and inp_pwd==pwd_of_bk:
    #         print('login successful')
    #         while tag:
    #             print("""
    #             0  退出
    #             1  查看
    #             2  购买
    #             3  支付
    #             4 撤销""")#             cmd=input('>>>_:')
    #             if cmd=='0':
    #                 tag=False
    #                 continue
    #             elif cmd=='1':
    #                 print('查看...')
    #             elif cmd=='2':
    #                 print('购买...')
    #             elif cmd=='3':
    #                 print('支付...')
    #             elif cmd=='4':
    #                 print('撤销...')
    #             else:
    #                 print('输入的指令有误')
    #     else:
    #         print('user name or password error')
    #     count+=1
  • 相关阅读:
    矩阵学习摘记,欢迎指正
    [poj1363]Rails_模拟_栈
    JLOI2018 记
    [poj3321]Apple Tree_dfs序_树状数组
    [poj3974]Palindrome_Manacher
    [poj1062]昂贵的聘礼_最短路_离散化
    STL:字符串用法详解
    C++ Primer 有感(管理类的指针成员)
    C++ Primer 有感(标准库set类型)
    C++ Primer 有感(标准库pair)
  • 原文地址:https://www.cnblogs.com/5j421/p/9991792.html
Copyright © 2011-2022 走看看