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)

 

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

 

posted @ 2020-07-05 11:28  dosboy  阅读(282)  评论(0编辑  收藏