python基础入门3:程序组织结构1----顺序结构与选择结构


前言

本文主要讲述python程序组织结构的顺序结构,选择结构,对象布尔值以及条件语句与条件执行体的整合写法。本文学习材料来自马士兵Python中入门基础版(基础语法) 2020最新版Python小白教程。视频链接https://space.bilibili.com/612593877/?spm_id_from=333.999.0.0


提示:以下是本篇文章正文内容,下面案例可供参考

程序组织结构1

  • 顺序结构
  • 对象的布尔值
  • 分支结构
    单分支if结构
    双分支if…else 结构
    多分支if…elif…else结构
    if语句的嵌套
    条件表达式
  • pass空语句

顺序结构

举例:将大象放进冰箱

print('------程序开始------')
print('1. 将冰箱门打开')
print('2. 将大象放进去')
print('3. 将冰箱门关上')
print('------程序结束------')

小插曲:查看程序执行过程(本查看过程使用pycharm解释器)

  1. 在pycharm控制台程序第一行即如下图编号1与print之间单击,即可出现一个大红圈,该红圈即为断点
    在这里插入图片描述
  2. 在控制台的上部,找到靠近三角执行按钮的旁边的形如小虫子的按钮,如下
    在这里插入图片描述3. 点击这个行如小虫子的按钮,控制台下面位置会出现在这里插入图片描述
  3. 点击如上画面中的Console,由红线框出
    在这里插入图片描述
  4. 逐次点击蓝色向下箭头,下图框出的任一个蓝色向下箭头均可
    在这里插入图片描述

选择结构

单分支结构

用于执行一个如果…就…语句

如:

1. 如果你吃饭了就去玩。
2. 如果今天下雨了就拿伞。
3. 如果今天是工作日就去上班。
4. 如果你没写作业就去写作业。

语法结构为:

if 条件表达式:
   条件执行体

如对于如果你吃饭了就去玩可表示为程序语法为:

if 你吃饭了:
    去玩
if bool('你吃饭了'):
    print('去玩吧')

例题:请用单分支结构模拟取款过程。假设你有1000元,取任意小于1000金额的款额,输出剩余余额

deposit = 1000#(1)
withdraw = int(input("请输入取款金额:"))#(2)
if withdraw < deposit:#(3)
    print('取款成功, 余额为:', deposit - withdraw)#(4)
(1) 先定义取款前的金额变量,命名为deposit(存款金额);
(2) 输入你想取款的金额,将具体的输入整型数据赋值给withdraw(取款金额);
(3) 条件表达式,即需要取款的金额是不是小于现有的存款金额;
(4) 条件执行体,即若满足条件表达式,则输出取款成功,取款后的余额为多少。

双分支结构

用于执行一个如果…就…,不满足…就…语句。两个条件中选其一。
如:

1. 如果你吃饭了就去玩,没吃饭就去吃饭。
2. 如果今天是工作日就去上班,不是则不去上班。
3. 如果今天下雨了就在家休息,没有下雨则出去玩。
4. 如果你没写完作业就去写作业,写完了就去玩。

双分支结构的语法结构:

if 条件表达式:
    条件执行体1
else:
    条件执行体2

例题1:请用双分支结构模拟取款过程。假设你有1000元,输入任意取款金额,如果取款金额小于1000,则输出取款后的余额,没有则退出银行卡

deposit = 1000
withdraw = int(input("请输入取款金额:"))
if withdraw < deposit:
       
    print('取款成功, 余额为:', deposit - withdraw)
else:
       print('余额不足,请退卡!')

例题2:编程判断一个数是奇数还是偶数

integer = int(input('请输入一个整数:'))
if integer % 2 == 0:#(1)
    print(integer,'是偶数')#(2)
else:#(3)
    print(integer,'是奇数')
(1) 判断所输入的数除以2的余数是不是0,若余数为0则为偶数,若余数不为0则为奇数。
(2) 输出的内容若还有不同的数据类型,则不同数据类型之间需要用,隔开。如此句中integer是整型数据,'是偶数'为字符串数据。
(3) 条件表达式后面要注意不能忘记冒号:

多分支结构

用于分析多个判断语句的结果。逐个条件进行判断,知道满足条件为止,执行相应的条件执行体

如学生成绩大于90分则为优秀;大于70小于90则为良好;大于60小于70则为及格;小于60则为不及格。

多分支结构语法结构:

if 条件表达式1:
    条件执行体1
elif 条件表达式2:
     条件执行体2
elif.....:
    条件执行体
elif.....:
    条件执行体
elif.....:
    条件执行体n
else:

例题:给定一个学生成绩,判断其成绩等级。等级划分如下:
90-100 A
80-89 B
70-79 C
60-69 D
0-59 E
输入成绩小于0或者大于100则显示输入错误。

score = int(input('请输入学生成绩:'))
if score >= 90 and score <= 100:#(1)
    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 <= 59:
    print('E级')
else:
    print('输入成绩错误!')

(1) score >= 90 and score <= 100 还可写为:90 <= score <= 100 

嵌套条件语句

用于分析多重判断后执行语句的问题。

如于商场购物,是否办理该商场会员,若办理则参与打折,具体的打折额度再根据消费金额而定,如果没有办理该商场会员,则直接按原价消费。

例题:某商场现进行打折促销活动,凡是该商场会员顾客,如消费金额超200元,则享受打八折的优惠政策;如消费金额未满200但超100元,则享受打九折的优惠政策。非会员与其他消费金额不参与打折优惠政策。

result = input('您是会员吗?yes/no')
account = float(input('您的消费金额为:'))
if result == 'yes':#(1)
       if account >= 200:#(2)
              print('您的消费金额为:', account*0.8)
       elif 100 <= account < 200:#(2)
              print('您的消费金额为:', account*0.9)
       else:#(2)
              print('您本次不满于优惠条件,您的消费金额为', account)
else:#(1)
    print('您非会员不满于优惠政策,您的消费金额为', account)
注:(1)(2)分别代表不同的条件结构体,需注意各自对齐。

知识小链接

对象的布尔值

Python一切皆对象,所有对象都匹配一个布尔值,True或者False
所有的对象都可以通过使用 内置函数bool() 来确定其所对应的布尔值
以下对象的布尔值均为False,其余一般为True

  1. 布尔值为False的对象所对应的布尔值为False
  2. 数值0所对应的布尔值为False
  3. None
  4. 空字符串
  5. 空列表
  6. 空元组
  7. 空字典
  8. 空集合
    代码举例:
print(bool(False))#布尔值False
print(bool(0))#数值0
print(bool(None))#None
print(bool(''))#空字符串
print(bool(""))#空字符串
print(bool(""""""))#空字符串
print(bool([]))#空列表
print(bool(list()))#空列表
print(bool(()))#空元组
print(bool(tuple()))#空元组
print(bool({}))#空字典
print(bool(dict()))#空字典
print(bool(set()))#空集合

输出结果为:
False
False
False
False
False
False
False
False
False
False
False
False
False

条件表达式与条件执行体的整合书写

nums1 = int(input('请输入第一个整数:'))
nums2 = int(input('请输入第二个整数:'))
if nums1 >= nums2:
    print(nums1, '大于等于', nums2)
else:
    print(nums1, '小于', nums2)#(1)

print((nums1, '大于等于', nums2) if nums1 >= nums2 else (nums1, '小于', nums2))#(2)
print(str(nums1) + '大于等于'+str(nums2) if nums1 >= nums2 else (str(nums1) + '小于' +str(nums2)))#(3)

输出结果及注释:

请输入第一个整数:10
请输入第二个整数:20
10 小于 20 #(1)处的输出结果
(10, '小于', 20) #(2)处的输出结果
10小于20 #(3)处的输出结果
#(1) 输出形式为三部分:1. 第一个整数的数值 2.两数之间的逻辑大小关系 3. 第二个整数的数值
#(2) 为方便起见,可以将条件表达式与条件执行体一起输出。写法规则为:将条件表达式满足时的条件执行体,用括号括起来表示是一个整体,放于if之前,空格,然后在写条件判断语句,空格,else 空格,最后写不满足条件表达式时的条件执行体
#(3) 因整体输出时输出的样式不美观,可看(2)处的输出既有括号还有各自的数据类型,输出结果不成一句话,因此可将所有需要输出的内容统一为相同的数据类型再输出。此处即为将所有整型数据都改变我字符串类型,然后以一个整体的字符串形式输出,此处的str(nums1) + '小于' +str(nums2)中的+即表示不同字符串相连

pass语句

pass语句用于搭建语法结构时,不确定代码怎么写的时候,只是起到一个占位符的作用,可以放于需要写语句但是不知道怎么写代码的地方。这样即使代码不完整也不会保持,促进代码结构框架的搭建。

result = input('您是会员吗?yes/no')
account = float(input('您的消费金额为:'))
if result == 'yes':#(1)
      pass
else:#(1)
      pass

输出结果为:

您是会员吗?yes/noyes
您的消费金额为:60

Process finished with exit code 0

总结

本文着重总结了python程序组织结构中的顺序结构与选择结构,其中选择结构包括单分支结构,分析如果…就…的语句;双分支结构,分析如果…就…不满足…则…,两个执行体中选其一执行;多分支结构,分析多个如果…就…不满足…则…在不满足…则…等等的语句,多个执行体中选其一。另外还包括嵌套if结构,用于分析在满意一定条件下再满足一定条件的语句。最后作为补充内容撰写了对于python对象的布尔值的情况,条件表达式与条件执行体整合输出的写法以及pass语句的介绍,在知道程序框架结构的情况下,具体代码语句不确定的情况下可使用pass语句占位,确保程序不报错执行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值