2021-09-08
第四章、程序的组织结构、顺序结构
课程介绍
1、程序的组织结构
任何简单或复杂的算法都可以由顺序结构、选择结构和循环结构这三种结构组合而成。
2、顺序结构
程序从上到下顺序地执行代码,中间没有任何的判断和跳转,指导程序结束。
3、对象的布尔值
4、选择结构-又称为分支结构
单分子if结构
双分支if...else结构
多分支if...elif...lese结构
if语句的嵌套
条件表达式
5、pass空语句
27、顺序结构
##把大象装冰箱一共分几步
print('-------程序开始------')
print('1.把冰箱门打开')
print('2.把大象放冰箱')
print('3.把冰箱门关上')
print('-------程序结束------')
28、对象的布尔值
python一切皆对象,所有的对象都有一个布尔值
获取对象的布尔值:使用内置函数bool()
以下对象的布尔值为False
False、数值0、None、空字符窜、空列表、空元祖、空字典、空集合
##28、对象的布尔值
print('------------以下对象的布尔值均为False----------------')
print(bool(False)) # False
print(bool(0)) # False
print(bool(0.0)) # False
print(bool(None)) # False
print(bool('')) # False 长度为0的字符串对象
print(bool([])) # False []表示空列表
print(bool(list())) # False lsit()表示空列表
print(bool(())) # False ()表示空元祖
print(bool(tuple())) # False tuple()表示空元祖
print(bool({})) #False {}表示空字典
print(bool(dict())) #False dict()表示空字典
print(bool(set())) #False set()表示空集合
print('------------其它对象的布尔值均为True----------------')
print(bool(18)) #True
print(bool(True)) #True
print(bool('helloworld')) #True
29、分支结构——单分支结构
选择结构:根据判断条件的布尔值选择性执行部分代码
明确的让计算机指导在什么条件下,该去做什么
单分支结构:
中文语义:如果。。。就。。。
if 条件表达式:
条件执行式子
##29、单分支结构
money=1000 #余额
s=int(input('请输入取款金额')) #取款金额
#判断余额是否充足
if money>=s:
money=money-s
print('取款成功,余额为:',money)
30、双分支结构
中文语义:如果。满足。。就。。不满足。。就
如果中奖就领奖,没中奖就不领奖
语法结构:
if条件表达式:条件执行体1
else:条件执行体2
##30、双分支结构
#if...else,二选一执行
#从键盘录入一个整数,编写程序让计算机判断是奇数还是偶数
num=int(input('请输入一个整数'))
#条件判断奇数偶数
if num%2==0:
print(num,'是偶数')
else:
print(num,'是奇数')
30、多分支结构
多分支结构解决的是一个多分类的区间段的问题
成绩分类:90-100、80-90、70-80、60-70、<60;>100
语法结构
if 条件表达式1:
条件执行体1
elif条件表达式2:
条件执行体1
[elif:]条件表达式n:
条件执行体n+1
[elif:]代表可以省略,可以只写3个或者4个else
##30、多分支结构
#输入一个成绩
#90-100A 80-89B 70-79C 60-69D 0-59E
#小于0或大于100位非法数据
score=int(input('请输入一个成绩:'))
if score >=90 and score <=100:
print('A')
elif score >=80 and score <=89:
print('B')
elif score >=70 and score <=79:
print('C')
elif score >=60 and score <=69:
print('D')
elif score >=0 and score <=59:
print('E')
elif score < 0 or score > 59:
print('对不起,你的成绩有误,不在成绩有效范围')
##python 中还可以这么写,其它语言不能这么写
score >=90 and score <=100
90<=score<=100
32、嵌套if结构
if 条件表达式1:
if内层条件表达式:
内存条件执行体1
else:
内存条件执行体2
else:
条件执行体
##32、嵌套if结构
#会员购物金额>=200 8折 会员购物金额>=100 9折 <100 不打折
#非会员购物金额 >=200 9.5折 非会员购物金额 <200 不打折
answer=input('你是会员吗?y/n') #输入y/n
money=float(input('请输入你的购物金额:'))
if answer=='y': #会员
if money>=200:
print('打8折,付款金额为:',money*0.8)
elif money>=100:
print('打9折,付款金额为:',money*0.9)
elif money<100:
print('不打折,付款金额为:',money)
else: #非会员
if money >= 200:
print('打9.5折,付款金额为:',money*0.95)
else:
print('不打折,付款金额为:',money)
33、条件表达式
是if...else的简写
语法结构
x if 判断条件 else y
条件判断的结果为True 输出前面(左侧)的内容, 为False 输出后面(右侧)的内容
##33、条件表达式
#录入两个整数,比较两个整数的大小
n1=int(input('请输入第一个整数'))
n2=int(input('请输入第二个整数'))
#比较大小
if n1>n2:
print(n1,'大于等于',n2)
else:
print(n1,'小于等于',n2)
#使用表达式进行比较
n1=int(input('请输入第一个整数'))
n2=int(input('请输入第二个整数'))
print(str(n1)+'大于等于'+str(n2) if n1>n2 else str(n1)+'小于等于'+str(n2))
#条件判断的结果为True 输出前面(左侧)的内容, 为False 输出后面(右侧)的内容
34、pass语句
pass语句什么都不做,知识一个展位符
什么时候写pass:先搭建语法结构,还没想好代码怎么写的时候
##34、pass语句
#pass 什么都不做,知识一个占位符,用到需要些语句的地方
answer=input('你是会员吗?y/n') #输入y/n
money=float(input('请输入你的购物金额:'))
#判断是否是会员
if answer=='y':
pass ##还没想好会员情况下怎么写
else:
pass ##也没想好非会员情况下怎么写
#保证程序正常运行不报错
对象布尔值的灵活运用
##布尔值的灵活运用
#对象是有布尔值的,因此可以直接把对象放到条件语句
age=int(input('请输入您的年龄:'))
if age:
print(age)
else:
print('年龄为:',age)
网友评论