P53:双分支选择结构-三元运算符的使用详解

双分支结构

双分支结构的语法格式如下:

if 条件表达式:

    语句1/语句块1

else:

    语句2/语句块2

【操作】输入一个数字,小于10,则打印这个数字,大于10,则打印数字太大

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

三元条件运算符

Python提供了三元运算符,用来在某些简单双分支赋值的情况,三元条件运算符的语法格式如下:

条件为真的时候的值  if (条件表达式) else 条件为假的时候的值

上一个案例代码,可以用三元条件运算符来实现:

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

这种写法更加简介,容易读取

P54:多分支选择结构

多分支选择结构

多分支选择结构的语法格式如下:

if 条件表达式1:

    语句1/语句块1

elif 条件表达式2:

    语句2/语句块2

.

.

.

elif 条件表达式n:

    语句n/语句块n

[else:

    语句n+1/语句块n+1

]

【注意】:计算机行业当中,描述语法格式的时候,使用中括号[]通常表示可选,非必选

python中while和for可以嵌套吗 python中while嵌套if_分支结构

多分支结构,几个分支之间是有逻辑关系的,不能够随颠倒顺序

【操作】输入一个学生的成绩,将其转化成为简单的描述:不及格(小于60),及格(60-79),良好(80-90),优秀(90-100)

方法1(使用完整的条件表达)

#测试多分支选择结构score=int(input("请输入分数"))grade=""if score<60:    grade="成绩不及格"elif score<80:#60-80之间    grade="及格"elif score<90:    grade="良好"else:    grade="优秀"print("分数是{0},等级是{1}".format(score,grade))

python中while和for可以嵌套吗 python中while嵌套if_while循环里嵌套一个if_02

python中while和for可以嵌套吗 python中while嵌套if_while循环里嵌套一个if_03

P55:选择结构的嵌套

选择结构嵌套

选择结构可以嵌套,使用的时候一定要注意控制好不同级别的代码快的缩进量,因为缩进量决定了代码快的从属关系,语法格式如下所示:

if 表达式1:

    语句块1

    if 表达式2:

        语句块2

    else:

        语句块3

else:

    if 表达式4:

        语句块4

python中while和for可以嵌套吗 python中while嵌套if_选择结构_04

score=int(input("请输入一个在0-1000之间的数字"))degree="ABCDE"num=0if score>100 or score<0:    score=int(input("输入错误!请重新输入一个在01-010之间的数字"))else:    num=score//10if num<6:num=5    print("分数是{0},等级是{1}".format(score,degree[90-num]))

P56 while循环结构-死循环处理

循环结构

用来重复执行一条或者多条语句,表达这样的逻辑,如果符合条件,则反复执行循环体的语句,在每次执行完以后都会判断一次条件是否为True,如果为True则重复执行循环体里的语句

图示如下

循环体里面的语句至少应该包含改变条件表达式的语句,以使循环趋于结束,否则,就会变成了一个死循环

python中while和for可以嵌套吗 python中while嵌套if_分支结构_05

while循环

while循环的语法格式如下:

while 条件表达式:

    循环体语句

我们可以通过一些简单的联系,来慢慢熟悉while循环

【操作】利用while循环打印从0-10的数字

num=0while num<=10:    print(num)    num+=1

【操作】利用while循环,计算1-100之间的数字累加和:计算1-100之间的偶数的累加和,计算1-100之间的奇数的累加和

python中while和for可以嵌套吗 python中while嵌套if_while循环里嵌套一个if_06

#计算1-100之间的数字的累加和num2=0sum_all=0while num2<=100:    sum_all=sum_all+num2    num2+=1print("1-100所有的数的累加和是",sum_all)