• 流程控制(if、while、for)


    流程控制

    一、if判断

    # 1、语法一
    if 条件:
    #条件成立时执行的子代码块`
    代码1
    代码2
    代码3
    # 示例:
    sex='female'
    age=18
    is_beautiful=True
    if sex == 'female' and age > 16 and age < 20 and is_beautiful:
       print('开始表白。。。')
    print('other code1...')
    print('other code2...')
    print('other code3...')

    # 2、语法二
    if 条件:
       # 条件成立时执行的子代码块
       代码1
       代码2
       代码3
    else:
       # 条件不成立时执行的子代码块
       代码1
       代码2
       代码3
    # 示例:
    sex='female'
    age=38
    is_beautiful=True
    if sex == 'female' and age > 16 and age < 20 and is_beautiful:
       print('开始表白。。。')
    else:
       print('阿姨好。。。')
    print('other code1...')
    print('other code2...')
    print('other code3...')

    # 3、语法三:
    if 条件1:
       if 条件2:
           代码1
           代码2
           代码3
    # 示例:
    sex='female'
    age=18
    is_beautiful=True
    is_successful=True
    height=1.70
    if sex == 'female' and age > 16 and age < 20 and is_beautiful
           and height > 1.60 and height < 1.80:
       print('开始表白。。。')
       if is_successful:
           print('在一起。。。')
       else:
           print('什么爱情不爱情的,爱nmlgb的爱情,爱nmlg啊.')
    else:
       print('阿姨好。。。')
    print('other code1...')
    print('other code2...')
    print('other code3...')

    # 4、语法四:
    if 条件1:
       代码1
       代码2
       代码3
    elif 条件2:
       代码1
       代码2
       代码3
    elif 条件3:
       代码1
       代码2
       代码3
    .......
    else:
       代码1
       代码2
       代码3
       
    示例:
    '''
    如果成绩 >= 90,那么:优秀
    如果成绩 >= 80且 < 90, 那么:良好
    如果成绩 >= 70且 < 80, 那么:普通
    其他情况:很差
    '''
    score = input('please input your score: ')  # score='100'
    score = int(score)
    if score >= 90:
       print('优秀')
    elif score >= 80:
       print('良好')
    elif score >= 70:
       print('普通')
    else:
       print('很差')

    二、while循环

    # 语法:
    while 条件:
       代码1
       代码2
       代码3
    while True:
       name=input('please input your name: ')
       pwd=input('please input your password: ')
       if name == 'egon' and pwd == '123':
           print('login successful')
       else:
           print('username or password error')
           
    # 结束while循环的两种方式
    方式一:条件改为False,
       在条件改为False时不会立即结束掉循环,而是要等到下一次循环判断条件时才会生效    
       tag=True
       while tag:
           name=input('please input your name: ')
           pwd=input('please input your password: ')
       
           if name == 'egon' and pwd == '123':
               print('login successful')
               tag=False
           else:
               print('username or password error')
       
           print('===>')  

    方式二:while+break
       break一定要放在循环体内,一旦循环体执行到break就会立即结束本层循环
       while True:
           name=input('please input your name: ')
           pwd=input('please input your password: ')
       
           if name == 'egon' and pwd == '123':
               print('login successful')
               break
           else:
               print('username or password error')
       
           print('===>>>>>')
           print('===>>>>>')
       
    方式三:while+continue:结束本次循环,直接进入下一次循环
    # 示例一
    count=1
    while count < 6: #count=6
       if count == 4:
           count += 1
           continue  
       print(count)
       count+=1
    # 示例二:
    while True:
       name=input('please input your name: ')
       pwd=input('please input your password: ')

       if name == 'egon' and pwd == '123':
           print('login successful')
           break
       else:
           print('username or password error')
           # continue # 此处加continue无用

    # 了解知识
    # while + else:
    while 条件:
       代码1
       代码2
       代码3
    else:
       在循环结束后,并且在循环没有被break打断过的情况下,才会执行else的代码
       
    tag=True
    while tag:
       print(1)
       print(2)
       print(3)
       # tag=False
       break
    else:
       print('else的代码')

    while 条件1:
       while 条件2:
           代码1
           代码2
           代码3

    示范一:
    while True:
       name=input('please input your name: ')
       pwd=input('please input your password: ')
       if name == 'egon' and pwd == '123':
           print('login successful')
           while True:
               print("""
              0 退出
              1 取款
              2 转账
              3 查询
              """)
               choice=input('请输入您要执行的操作:') #choice='1'
               if choice == '0':
                   break
               elif choice == '1':
                   print('取款。。。')
               elif choice == '2':
                   print('转账。。。')
               elif choice == '3':
                   print('查询')
               else:
                   print('输入指令错误,请重新输入')
           break
       else:
           print('username or password error')

    # 示范二:
    tag=True
    while tag:
       name=input('please input your name: ')
       pwd=input('please input your password: ')

       if name == 'egon' and pwd == '123':
           print('login successful')
           while tag:
               print("""
              0 退出
              1 取款
              2 转账
              3 查询
              """)
               choice=input('请输入您要执行的操作:') #choice='1'
               if choice == '0':
                   tag=False
               elif choice == '1':
                   print('取款。。。')
               elif choice == '2':
                   print('转账。。。')
               elif choice == '3':
                   print('查询')
               else:
                   print('输入指令错误,请重新输入')
       else:
           print('username or password error')

     

    三、for循环

    # for循环的强大之处在于循环取值
    l=['a','b','c','d','e']
    i=0
    while i < len(l):
       print(l[i])
       i+=1

    for x in l: # x='b'
       print(x)

    dic={'name':'egon','age':18,'gender':'male'}
    for x in dic:
       print(x,dic[x])

    # for + break
    nums=[11,22,33,44,55]
    for x in nums:
       if x == 44:
           break
       print(x)

    # for + continue
    nums=[11,22,33,44,55]
    for x in nums:
       if x == 22 or x == 44:
           continue
       print(x)

    # for + else
    names=['egon','kevin1111_dsb','alex_dsb','mac_dsb']
    for name in names:
       if name == 'kevin_dsb':
           break
       print(name)
    else:
       print('======>')

    # for+ range()
    # range的用法
    >>> range(1,5)
    [1, 2, 3, 4]
    >>> for i in range(1,5):
    ...     print(i)
    ...
    1
    2
    3
    4
    >>> range(1,5,1)
    [1, 2, 3, 4]
    >>> range(1,5,2) # 1 3
    [1, 3]

    for i in range(5): # 0 1 2 3 4
       print(i)

    # for嵌套
    for i in range(3):
       for j in range(4):
           print(i,j)

    for i in [0,1,2]: # i=1
       for j in [0,1,2,3]: # j=1
           print(i,j)

    0 0
    0 1
    0 2
    0 3
    1 0
    1 1
    1 2
    1 3
    2 0
    2 1
    2 2
    2 3

     

  • 相关阅读:
    Spark项目之电商用户行为分析大数据平台之(十二)Spark上下文构建及模拟数据生成
    Spark项目之电商用户行为分析大数据平台之(十一)JSON及FASTJSON
    Spark项目之电商用户行为分析大数据平台之(十)IDEA项目搭建及工具类介绍
    Spark项目之电商用户行为分析大数据平台之(九)表的设计
    Spark项目之电商用户行为分析大数据平台之(八)需求分析
    Photoshop 使用阈值调整色阶
    Netty 中 IOException: Connection reset by peer 与 java.nio.channels.ClosedChannelException: null
    Hadoop + ZK + HBase 环境搭建
    ArrayBlockingQueue, LinkedBlockingQueue, ConcurrentLinkedQueue, RingBuffer
    Redis 性能问题的记录
  • 原文地址:https://www.cnblogs.com/chenwang-23/p/10659217.html
Copyright © 2020-2023  润新知