python程序的组织结构详解
程序的组织结构
顺序结构
程序由上到下顺序的执行代码,中间没有任何的判断和跳转,直到程序结束。
对象的布尔值
Python的一切皆对象,所有对象都有一个布尔值
使用内置函数bool()获取对象布尔值
可以直接把对象的布尔值放在条件表达式中做判断
以下对象的布尔值为False
- False
- 数值0
- None
- 空字符串
- 空列表
- 空元组
- 空字典
- 空集合
以上对象布尔值为False 其他所有对象布尔值均为True
选择结构
程序根据判断条件的布尔值选择性的执行部分代码
明确让计算机知道在什么条件下,该去做什么
单分支结构
中文语义:如果......就...
语法结构:
if 条件表达式:
条件执行体
小实验
money=1000 #余额
s=int(input('请输入取款金额')) #取款金额
#判断余额是否充足
if money >= s:
money=money - s
print('取款成功,余额为:',money)
双分支结构
中文语义
如果......不满足......就......
语法结构
if 条件表达式:
条件执行体1
else:
条件执行体2
小实验
num = int(input('请输入一个整数'))
#条件判断
if num%2==0:
print(num,'是偶数')
else:
print(num,'是奇数')
多分支结构
中文语义:
成绩是在90分以上么?不是
成绩是80到90之间么?不是
成绩是70到80之间么?不是
成绩是60到70之间么?不是
成绩是69分以下么?是
语法结构:
if 条件表达式:
条件执行体
小实验
money=1000 #余额
s=int(input('请输入取款金额')) #取款金额
#判断余额是否充足
if money >= s:
money=money - s
print('取款成功,余额为:',money)
python代码的独特写法
可以以数学写法来写python代码
if 90<=a<=100:
print('A')
elif 80<=a<=89:
print('B')
elif 70<=a<=79:
print('C')
elif 60<=a<=69:
print('D')
elif 0<=a<=59:
print('E')
else:
分支结构_嵌套if的使用
嵌套if
语法结构:
if 条件表达式1:
if 内条件表达式:
内条件执行体1
else:
内条件执行体2
else:
条件执行体
小实验
'''
会员
>= 200 8折
>= 100 9折
不打折
非会员
>=200 9.5折
不打折
'''
a=input('您是会员么?t/f')
money=float(input('请输入金额:'))
#外层组织结构判断是否是会员
if a =='t': #会员
if money >=200:
print('打8折,付款金额为',money*0.8)
elif money >= 100:
print('打9折,付款金额为', money*0.9)
else:
print('不打折',money)
else: #非会员
if money>=200:
print('打9.5折,付款金额为',money*0.95)
else:
print('不打折,付款金额为',money)
条件表达式
条件表达式是 if......else的简写
语法结构
x if 判断条件 else y
运算规则
如果判断条件的布尔值为True,条件表达式的返回值为x,否则条件表达的返回值为False
# 从键盘录入两个整数,比较两个整数的大小
a=int(input('请输入第一个整数'))
b=int(input('请输入第二个整数'))
# 比较大小
''' 常规写法
if a > b:
print(a,'大于等于',b)
else:
print(a,'小于',b)
'''
#使用条件表达式进行比较
print( str(a)+'大于等于'+str(b) if a>=b else str(a)+'小于'+str(b))
条件表达式,条件判断结果为True,执行左侧的内容,结果为False,执行右侧的内容
PASS语句
语句什么都不做,只是一个占位符,用在语法上需要语句的地方
什么时候用:
先搭建语法结构,还没想好代码怎么写的时候
哪些语句可以使用:
- if 语句的条件执行体
- for-in 语句的循环体
- 定义函数时的函数体
#pass语句,什么都不做,只是一个占位符,用在需要写语句的地方
a=input('您是会员么?t/f')
#判断是否是会员
if a =='y':
pass
else:
pass
#用于在没有想好怎么写代码时,占据语句的位置,使程序不报错
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341