Python——4.顺序结构,选择结构,对象的布尔值,pase空语句

2023-11-05 11:50

本文主要是介绍Python——4.顺序结构,选择结构,对象的布尔值,pase空语句,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

组织结构与pase空语句

  • 🐳程序的组织结构
  • 🐳顺序结构
  • 🐳对象的布尔值
  • 🐳选择结构
    • ✨单分支结构 if
    • ✨双分支结构 if...else...
    • ✨多分支结构 if...elif...else
    • ✨嵌套if
    • ✨条件表达式
  • 🐳pase空语句

你好,我是🎃breeze亭瞳,最近主要更新学习Python的笔记,基础知识 下面是往期的Python笔记:
Python——1.输出函数print、转义字符与原字符
Python——2.变量、数据类型、进制表示、注释
Python——3.输入函数与运算符

🐳程序的组织结构

1996年,计算机科学家证明了这样的事实:任何简单或复杂的算法都可以由顺序结构、选择结构、循环结构这三种基本结构组合而成

在这里插入图片描述

🐳顺序结构

程序从上到下地执行代码,中间没有任何的判断和跳转,直到程序结束

#把大象装冰箱一共几部
print('-----程序开始-----')
print('1.把冰箱门打开')
print('2.把大象放冰箱里')
print('3.把冰箱门关上')
print('-----程序结束-----')

在这里插入图片描述

🐳对象的布尔值

Python一切皆对象,所有对象都有一个布尔值
获取对象的布尔值:使用内置函数bool()
以下对象的布尔值为False

  • False
  • 数值0
  • None
  • 空字符串
  • 空列表
  • 空元祖
  • 空字典
  • 空集合
    除了上面这些,其他的布尔值都是True
    在这里插入图片描述

空字符串,是指长度为0的字符串对象
空列表的表示:[ ]或是 list()
空元祖的表示:()或是 tuple()
空字典的表示:{}或是 dict()
空集合的表示:set()

print(bool(False))
print(bool(0))
print(bool(0.0))
print(bool(None))
print(bool(''))
print(bool(""))
print(bool([]))#空列表
print(bool(list()))#空列表
print(bool(()))#空元祖
print(bool(tuple()))#空元祖
print(bool({}))#空字典
print(bool(dict()))#空字典
print(bool(set()))#空集合

在这里插入图片描述

🐳选择结构

✨单分支结构 if

中文语义:如果…就…
语法结构:

if 条件表达式:条件执行体
money = 1000 #余额
s = int(input('请输入取款金额'))#取款金额
#判断余额是否充足
if money >= s:money = money - sprint('取款成功,余额为;', money)

在这里插入图片描述
代码到了if这里是,如果money>=s,就执行if这一行下面的代码,如果不满足条件,if执行体里面的全都不执行
if下面两行都是属于它的条件执行体里的

✨双分支结构 if…else…

中文语义:如果是…不是就…
语法结构:

if 条件表达式:条件执行体1
else: 条件执行体2
#从键盘输入一个整数,编写程序让计算机判断是奇数还是偶数
num = int(input('请输入一个整数:'))
#条件判断
if num % 2 == 0:print(num, '是偶数')
else:print(num, '是奇数')

在这里插入图片描述
前面都是按顺序执行,到了if,如果num除以2的余数等于0,执行条件执行体体1:print(num, ‘是偶数’)
否则就执行条件执行体2:print(num, ‘是奇数’)

✨多分支结构 if…elif…else

语法结构:

if 条件表达式1:条件执行体1
elif 条件表达式2:条件执行体2
elif 条件表达式N:条件执行体N
[else:]条件执行体N+1

如果条件表达式1满足条件,就执行条件执行体1,下面的都不会执行了,只有不满足时,才会看一步步往下面看,直到满足一个条件。若是上面的条件一个满足的都没有就执行最后一句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:#等效于90<=score<=100print('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级')
else:print('对不起,成绩有误,不在成绩的有效范围')

在这里插入图片描述
假设我们输的是75,它会从前面依次往下看,找到它满足的条件,前面的它都不满足,所有它们对应的条件执行体都不会被执行,只有70-79这里满足了,它就会打印C级,然后后面的它就不会再看了

在Python当中,是可以直接用数学当中的方式来写的,90<=score<=100,也可以是score>=90 and score<=100,
但是在其他的编程语言中就不行了,按数学方式会报错,一般都是第二种score>=90 and score<=100

✨嵌套if

嵌套if
语法结构:

if 条件表达式:if 内层条件表达式内层条件执行体1else:内层条件执行体2
else:条件执行体
'''
会员 >=200 8折>=100 9折不打折
非会员 >=200 9.5折不打折
'''
answer = input('您是会员吗?y/n')
money = int(input('花费金额:'))
#外层判断是否为会员,内层判断如何打折
if answer == 'y':#是会员if money >= 200:print('打8折', money*0.8)elif money >= 100:print('打9折', money*0.9)else:print('不打折')
else:#非会员if money >= 200:print('打9.5折', money*0.95)else:print('不打折')

在这里插入图片描述
这里注意看缩进,最外层对齐的是一个if-else语句,它到了if这里会先判断最外层,这里输入的是y,表示是会员,然后它就会只看if后面这些缩进的语句,最外层else后面的就不用管了,然后按会员的标准收费,第一个if下面的是if-elif-else语句,从上到下按顺序依次看条件,找到它满足的那个,然后执行它对应的执行体,这里输入的275,所以money>=200,打9折
如果最外层满足的是非会员条件,就只用看最外层else下面的语句,看满足打折条件没有,没满足就不打折

✨条件表达式

条件表达式是if…else的简写
语法结构:

x   if 判断条件 else   y

运算规则: 如果判断条件的布尔值为True,条件表达式的返回值为x,否则条件表达式的返回值为False
其实就是把if-else语句,把条件执行体1放在if前面了

如果按if-else来敲就是:

'''从键盘录入两个整数,比较大小'''
num_a = int(input('请输入第一个整数:'))
num_b = int(input(('请输入第二个整数:')))
#比较大小
if num_a > num_b:print(num_a, '大于等于', num_b)
else:print(num_a, '小于', num_b)

在这里插入图片描述

'''从键盘录入两个整数,比较大小'''
num_a = int(input('请输入第一个整数:'))
num_b = int(input(('请输入第二个整数:')))
#比较大小
print((num_a, '大于等于', num_b) if num_a>=num_b else (num_a, '小于', num_b))

在这里插入图片描述
也可以用加好连接,但是因为num_a,num_b是int类型,而中间的总问是str类型,所以连接的时候就需要转换类型,用str()把int转换成str,才不会报错。

'''从键盘录入两个整数,比较大小'''
num_a = int(input('请输入第一个整数:'))
num_b = int(input(('请输入第二个整数:')))
#比较大小
print(str(num_a)+'大于等于'+str(num_b) if num_a>=num_b else str(num_a)+'小于'+str(num_b))

在这里插入图片描述

🐳pase空语句

语句什么都不用做,只是一个占位符,用在语法上需要语句的地方

什么时候用?
先搭建语法结构,还没想好怎么写的时候

哪些语句一起使用?

  • if语句的条件执行体
  • for-in语句的循环体
  • 定义函数时的函数体
#判断是否为会员
answer = input('请输入:')
if answer == 'y':pass
else:pass

这样代码就不会报错

🐳到这里就结束啦,后面关于本篇内容可能还会进行补充,关于Python基础知识我会持续更新
✨希望能对你有所帮助,如有不妥之处,麻烦各位大佬及时指出。

这篇关于Python——4.顺序结构,选择结构,对象的布尔值,pase空语句的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/349655

相关文章

Python数据验证神器Pydantic库的使用和实践中的避坑指南

《Python数据验证神器Pydantic库的使用和实践中的避坑指南》Pydantic是一个用于数据验证和设置的库,可以显著简化API接口开发,文章通过一个实际案例,展示了Pydantic如何在生产环... 目录1️⃣ 崩溃时刻:当你的API接口又双叒崩了!2️⃣ 神兵天降:3行代码解决验证难题3️⃣ 深度

Python+FFmpeg实现视频自动化处理的完整指南

《Python+FFmpeg实现视频自动化处理的完整指南》本文总结了一套在Python中使用subprocess.run调用FFmpeg进行视频自动化处理的解决方案,涵盖了跨平台硬件加速、中间素材处理... 目录一、 跨平台硬件加速:统一接口设计1. 核心映射逻辑2. python 实现代码二、 中间素材处

python中的flask_sqlalchemy的使用及示例详解

《python中的flask_sqlalchemy的使用及示例详解》文章主要介绍了在使用SQLAlchemy创建模型实例时,通过元类动态创建实例的方式,并说明了如何在实例化时执行__init__方法,... 目录@orm.reconstructorSQLAlchemy的回滚关联其他模型数据库基本操作将数据添

Java中ArrayList与顺序表示例详解

《Java中ArrayList与顺序表示例详解》顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构,:本文主要介绍Java中ArrayList与... 目录前言一、Java集合框架核心接口与分类ArrayList二、顺序表数据结构中的顺序表三、常用代码手动

Python实现快速扫描目标主机的开放端口和服务

《Python实现快速扫描目标主机的开放端口和服务》这篇文章主要为大家详细介绍了如何使用Python编写一个功能强大的端口扫描器脚本,实现快速扫描目标主机的开放端口和服务,感兴趣的小伙伴可以了解下... 目录功能介绍场景应用1. 网络安全审计2. 系统管理维护3. 网络故障排查4. 合规性检查报错处理1.

MySQL快速复制一张表的四种核心方法(包括表结构和数据)

《MySQL快速复制一张表的四种核心方法(包括表结构和数据)》本文详细介绍了四种复制MySQL表(结构+数据)的方法,并对每种方法进行了对比分析,适用于不同场景和数据量的复制需求,特别是针对超大表(1... 目录一、mysql 复制表(结构+数据)的 4 种核心方法(面试结构化回答)方法 1:CREATE

Python轻松实现Word到Markdown的转换

《Python轻松实现Word到Markdown的转换》在文档管理、内容发布等场景中,将Word转换为Markdown格式是常见需求,本文将介绍如何使用FreeSpire.DocforPython实现... 目录一、工具简介二、核心转换实现1. 基础单文件转换2. 批量转换Word文件三、工具特性分析优点局

Python中4大日志记录库比较的终极PK

《Python中4大日志记录库比较的终极PK》日志记录框架是一种工具,可帮助您标准化应用程序中的日志记录过程,:本文主要介绍Python中4大日志记录库比较的相关资料,文中通过代码介绍的非常详细,... 目录一、logging库1、优点2、缺点二、LogAid库三、Loguru库四、Structlogphp

C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解

《C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解》:本文主要介绍C++,C#,Rust,Go,Java,Python,JavaScript性能对比全面... 目录编程语言性能对比、核心优势与最佳使用场景性能对比表格C++C#RustGoJavapythonjav

Python海象运算符:=的具体实现

《Python海象运算符:=的具体实现》海象运算符又称​​赋值表达式,Python3.8后可用,其核心设计是在表达式内部完成变量赋值并返回该值,从而简化代码逻辑,下面就来详细的介绍一下如何使用,感兴趣... 目录简介​​条件判断优化循环控制简化​推导式高效计算​正则匹配与数据提取​性能对比简介海象运算符