• Python趣味入门4:选择往往是最重要的-条件语句


    人生处处有选择,程序也有选择,为了让程序变得更加强壮,程序员必须考虑任何情况,上一篇了解到了如何使用Python来行顺序语句的编写,我们写了一个可以输入姓名的生日祝贺程序,今天我们挑战条件语句!

    1、条件语句

    现实总是可悲的,人生的很多选择都是无法重现的,比如你选择了Python看到了这篇教程(恭喜你,做了无比正确的决定!)你永远无法知道,如果你之前选择了Java现在看的是什么教程。
    但是程序必须考虑到选择的所有情况,因为程序是不断地被运行的,天知道有什么条件会触发特定动作。传说,俄罗斯的核按钮随身跟着总统,也许里面的触发条件语句永远不会运行,但总要有人去写它。

    条件语句的写法如下,条件成立和不成立都是子语句因此必须缩进:

    if 判断表达式:
      条件成立
    else:
      条件不成立

     

    小牛叔在疫情期间每天上班,都需要扫描二维码填写健康申报,会询问你14天内有没有去过湖北,如果有就会提示你有风险,如果没有就提示无风险。这个程序怎么写呢?

    if input('您在14内去过湖北吗?')=='是':
        print('您有风险!')
    else:
        print('暂无风险!')
    

      

    大家在写代码时,要注意如下的几个问题:

    • 小写:所有的语句大小写敏感,大部分语句都是小写,除非规定大写。
    • 缩进: 子语句必须要缩进,否则程序会出错。
    • 可省略else:可以省略else以及子语句表示不满足条件时,直接向下运行。
    • 等号:判断相等必须使用两个等号
    • 冒号:if和else后面都要跟冒号,表示下行的语句是子语句,缩进会有变化。

    2、逻辑判断

    if语句后紧跟着就是逻辑判断,如下把两个数字或变量连接在一起的就是逻辑判断:

    • == 相等
    • >大于
    • <小于
    • >= 大于等于
    • <= 小于等于
    • != 不等于
    • is 是不是类型 (is None 是不是为空)
    • in 被包含其中 ('a' in 'abc'的值是真)

    以上逻辑判断表达式的结果只有两个:True或是False (注意首字线必须大写)。
    此外,如下的这些表达式结果都是False:

    "" #空字符串
    '' #空字符串
    [ ] #空列表
    ( ) #空元组
    { } #空字典
    None #空值

    3、逻辑运算

    多个条件的组合可以使用: not, and, or。如果要求10岁以上的学生在疫情期间开学,其判断程序要求:14天未出城并且年龄>=10。 就可以这么写条件:
    假设年龄变量为age,14天内出城为变量traveled

    age>=10 and not traveled
    

      

    4、多条件

    很多情况下,判断只有两个结果的情况并不能方便表达多个层次的情况,比如在疫情报警程序中,人可能有3种状态:绿色(没出过城)、黄色(出过城)、红色(去过湖北)。多条件的语句必须加上elif:

    if 判断表达式1:
      条件1成立
    elif 判断表达2:
      条件2成立
    elif 判断表达3:
      条件3成立
      .....
    elif 判断表达N:
      条件N成立
    else:
      所有条件不成立

    假设出城目的地变量为from,14天内是否出城为变量traveled,出过城为黄色,去过湖北为红色,没有出城为绿色:

    if not traveled:
        print('绿色')
    elif from=='湖北':
        print('红色')
    else:
        print('橙色')

    5、小示例
    假设我们要做一个翻译程序,把中文的“一、二...九”翻译成数字,可以使用多条件语句这样:

    number = input("输入中文一至九:")
    output = ''
    if number == "":
        output = '1'
    elif number == "":
        output='2'
    elif number == "":
        output='3'
    elif number == "":
        output='4'
    elif number == "":
        output='5'
    elif number == "":
        output='6'
    elif number == "":
        output='7'
    elif number == "":
        output='8'
    elif number == "":
        output='9' 
    else:
        output='输入错误'
    print(output)

    下面是程序运行的示例视频:

     

  • 相关阅读:
    TransportClient基于Elasticsearch6.8.6 X-PACK
    elasticsearch6.8.6配置xpack(生成密钥)
    Java8 List排序
    ssh 免密码登录自动设置脚本
    Linux grep命令用于查找文件里符合条件的字符串
    [译]如何防止elasticsearch的脑裂问题
    APScheduler定时任务使用
    storm本地python开发环境搭建
    关于python反射的getattr,我终于想通了!
    利用sqlalchemy 查询视图
  • 原文地址:https://www.cnblogs.com/dosboy/p/python_book_04.html
Copyright © 2020-2023  润新知