文章目录

  • 思维导图
  • 选择结构
  • 1.单分支选择结构
  • 2.条件表达式详解
  • 3.双分支选择结构
  • 4.三元条件运算符
  • 5.多分支选择结构
  • 6.选择结构的嵌套


思维导图

python的多分支选择语句 python多选择结构_空字符串

选择结构

选择结构通过判断条件是否成立,来决定执行哪个分支,选择结构有多重形式:

单分支,双分支,多分支

流程图:

python的多分支选择语句 python多选择结构_python的多分支选择语句_02


python的多分支选择语句 python多选择结构_字符串_03

1.单分支选择结构

if语句单分支结构语法:

if 条件表达式:
    语句

其中:
条件表达式:可以是逻辑表达式、关系表达式、算术表达式等等
语句:可以是一条语句也可以是多条语句,多条语句缩进必须一致
练习:输入一个数字,小于10则打印这个数字

num=input("请输入一个数字:")
if int(num)<10:
    print(num)
>>>
   请输入一个数字:5
5

2.条件表达式详解

在选择和循环结构中,条件表达式的值为False 的情况如下:
False、0、0.0、空值None、空序列对象(空列表、空元组、空集合、空字典、空字符串)、空range 对象、空迭代对象。
其他情况,均为True,这么看来, Python 所有的合法表达式都可以看做条件表达式,甚至包括函数调用的表达式。
测试:测试各种表达式

>>> if 3:
...    print('ok')
ok
>>> a=[]
>>> if a:
...     print('False') #没有任何输出
>>> s='False' #非空字符串,是True
>>> if s:
...    print('非空字符串,是True')
非空字符串,是True

3.双分支选择结构

语法:

if 条件表达式:
    语句1
else:
    语句2

试验:输入一个数字,小于10打印该数字;大于10,打印‘数字太大’

while True: #无限次执行下列代码
    num = input("请输入一个数字:")
    if int(num) < 10:
        print(num)
    else:
        print('数字太大5')
>>>
请输入一个数字:5
5
请输入一个数字:11
数字太大

4.三元条件运算符

某些简单双分支赋值情况下可以用三元条件表达式,语法:
if(条件表达式)else 条件为假时的值

上面的案例可以改为:

while True:
    num = input("请输入一个数字:")
    print(num if int(num)<10 else '数字太大')

5.多分支选择结构

语法:

if 条件表达式1:
    语句1
elif 条件表达式2:
    语句2
.
.
.
else:
    语句n

试验:输入学生成绩,不及格(小于60)、及格(60-79)、良好(80-89)、优秀(90-100)

  • 方法一
while True:
    score = float(input("请输入成绩:"))
    if score < 60:
        print('不及格')
    elif 60 <= score < 80:
        print('及格')
    elif 80 <= score < 90:
        print('良好')
    elif 90 <= score <= 100:
        print('优秀')
>>>
请输入成绩:60
及格
请输入成绩:59
不及格
请输入成绩:100
优秀
  • 方法二
a=['不及格','及格','良好','优秀']
grade=''
while True:
    score = int(input("请输入成绩:"))
    b=score//10-6
    if b < 0:
        grade=a[0]
    elif b<2:
        grade = a[1]
   else:
        grade = a[b]
    print("分数是{0},等级是{1}".format(score,grade))

注:多分支结构,几个分支之间有逻辑关系,不能随意颠倒顺序

while True:
    score = float(input("请输入成绩:"))
    if score < 60:
        print('不及格')
    elif score<= 100:
        print('优秀')
    elif score < 80:
        print('及格')
    elif score < 90:
        print('良好')
>>>
请输入成绩:90
优秀
请输入成绩:80
优秀
请输入成绩:40
不及格

6.选择结构的嵌套

试验:输入成绩,0-100之间,90以上是A,80以上是B,70以上是C,60以上是D,60以下是E

a='ABCDE'
while True:
    score = int(input("请输入成绩:"))
    if score>100 or score<0:
        print("请输入正确的成绩")
    else:
        b=score//10
        if b-6<0:
            b=4
            print(a[4])
        else:
            print(a[4-b])
>>>
请输入成绩:101
请输入正确的成绩
请输入成绩:60
D
请输入成绩:59
E

循环结构可以参考:python基础2.0版(3)—循环结构

python的多分支选择语句 python多选择结构_空字符串_04