Python之旅----判断语句

布尔类型和比较运算符

布尔类型

布尔类型的定义

布尔类型的字面量:

True  表示真(是、肯定)

False 表示假 (否、否定)

也就是布尔类型进行判断,只会有2结果:

定义变量存储布尔类型数据:变量名称 = 布尔类型字面量

布尔类型不仅可以自行定义也可以通过计算得来,也就是使用比较运算符进行比较运算得到布尔类型的结果。

常用的有6种值(数据)的类型

类型

描述

说明

数字(Number)

支持

整数(int)
浮点数(float)
复数(complex)
布尔(bool

整数(int),如:10、-10

浮点数(float),如:13.14、-13.14

复数(complex),如:4+3j,以j结尾表示复数

布尔(bool)表达现实生活中的逻辑,即真和假

True表示真
False表示假

True本质上是一个数字记作1,False记作0

字符串(String)

描述文本的一种数据类型

字符串(string)由任意数量的字符组成

列表(List

有序的可变序列

Python中使用最频繁的数据类型,可有序记录一堆数据

元组(Tuple

有序的不可变序列

可有序记录一堆不可变的Python数据集合

集合(Set

无序不重复集合

可无序记录一堆不重复的Python数据集合

字典(Dictionary

无序Key-Value集合

可无序记录一堆Key-Value型的Python数据集合

 比较运算符

首先要知道布尔类型的数据,不仅可以通过定义得到,也可以通过比较运算符进行内容比较得到,先看如下代码:

result = 11 > 10
print(f"11>10的结果为:{result},其类型为{type(result)}")

我们看到返回的是True(真),通过type()可以查看到类型为bool(布尔类型)

当然也可以进行字符串的比较:

result = "cast" == "dog"
print(f"字符串对比cast与dog的结果为:{result},其类型为{type(result)}")

输出结果:

比较运算符的规则:

运算符

描述

示例

==

判断内容是否相等,满足为True,不满足为False

a=3,b=3,(a == b) True

!=

判断内容是否不相等,满足为True,不满足为False

a=1,b=3,(a != b) True

>

判断运算符左侧内容是否大于右侧

满足为True,不满足为False

a=7,b=3,(a > b)  True

<

判断运算符左侧内容是否小于右侧

满足为True,不满足为False

a=3,b=7(a < b)  True

>=

判断运算符左侧内容是否大于等于右侧

满足为True,不满足为False

a=3,b=3,(a >= b) True

<=

判断运算符左侧内容是否小于等于右侧

满足为True,不满足为False

a=3,b=3,(a <= b) 为 True

if语句的基本格式 

if判断语句

生活中的判断:

       

程序中的判断:

                                                

例如:

# 定义变量
age = 30
# 进行判断
if age >= 18:print("已成年")

 输出:

以上就是一个简单的利用if语句进行判断的“栗子”

if语句的注意点:

判断语句的结果,必须是布尔类型TrueFalse

True会执行if内的代码语句

False则不会执行

顺便不要忘记判断条件后的: 引号

且归属于if判断的代码语句块,需在前方填充4个空格缩进(或快捷键Tab)

Python通过缩进判断代码块的归属关系。

if else语句

生活中的判断:

程序中的判断:

也就是if和其代码块,条件满足时执行,else搭配if的判断条件,当不满足的时候执行

我们做一个简单的栗子:

score = int(input("输入你的成绩:"))
if score >= 60:if score >= 85:print("你真优秀")else:print("仍需努力")
else:print("......")

结果如下:

需要注意的是:

1. else后,不需要判断条件

2. if的代码块一样,else的代码块同样需要4个空格作为缩进

if elif else语句

生活中的判断:

程序中的判断:

举个例子:

# 多条件判断语句的使用
print("欢迎来到兰州海洋公园!")
height = int(input("输入您的身高cm:"))
vip_level = int(input("您的VIP等级(1~9):"))
if height < 150:print("您的身高低于150cm,可以免费游玩!")
elif vip_level >= 5:print("尊贵的:VIP-%d用户,您可以免费游玩!" % vip_level)
else:print("对不起,所有条件都不满足,需要购票符合¥190")print("祝您游玩愉快!")

运行结果:

我来对这段代码做个解释:

首先要知道判断是互斥且有顺序的:

满足1(如图编号)将不会理会23

满足2,将不会理会3

若是12均不满足,便会进入else,也就是3的语句.

大家可复制上面代码自行尝试。

判断语句的嵌套

有很多场景,不仅仅是多个并列条件,还会有满足前置条件才会二次判断的多层判断需求。

对这种需求,嵌套判断语句可以实现

嵌套判断语句可以用于多条件、多层次的逻辑判断

对于这种需求,我们可以:自由组合 if elif else,完成特定需求的要求

基础语法格式如下:

如上图,第二个if,属于第一个if内,只有第一个if满足条件,才会执行第二个if。

嵌套的关键点在于:空格缩进

通过空格缩进 来决定语句之间的层次关系

简单嵌套:

# 判断语句的嵌套
print("欢迎来到兰州海洋公园!")
if int(input("输入你的年龄:")) >= 18:print("抱歉,成年人不能免费游玩")print("如果你的VIP等级高于5,依然可以为你免费!")if int(input("请输入你的VIP等级:")) > 5:print("恭喜你,VIP等级大于5,可以免费游玩!")else:print('对不起,等级不够,游玩需补票10元')
else:print("欢迎你小朋友,可以免费游玩")

测试:

我继续对这段代码做个解释:

如图:

这里用到的判断是两层        

当外层if满足条件(图中编号1)时,才会执行内层if判断(图中编号2

但要是当外层if(编号1)不满足,直接执行外层esle:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/109604.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

天猫店铺商品评论数据采集,天猫商品评论数据接口,天猫API接口

天猫店铺商品评论数据接口可以获取到商品ID&#xff0c;商品标题&#xff0c;商品优惠券&#xff0c;商品到手价&#xff0c;商品价格&#xff0c;商品优惠价&#xff0c;商品sku属性&#xff0c;商品图片&#xff0c;商品视频&#xff0c;商品sku属性图片&#xff0c;商品属性…

【esp32】arduino-数码管

一、数码管类型 按发光二极管单元连接方式分为共阳型数码管和共阴型数码管&#xff0c; 区分:1、可通过查看数码管引脚类型 2、观察数码管点亮状态 3、查询数码管规格表 二、共阳型数码管 是指将所有发光二极管的阳极接到一起形成公共阳极&#xff08;COM)的数码管 三、共…

Chrome跨域访问网络请求Cookies丢失的解决办法

为了保障网络安全,Chrome对跨域访问有一定的限制。一般分为三级: cookies带有“SameSite=Strict”时,只允许访问同一个域名下的网络请求;cookies带有“SameSite=Lax”时,允许访问同一个域名下的网络请求和同一个根域名下的网络请求;cookies带有“SameSite=None”时,允许…

ant中的environment属性

在ant的配置文件中&#xff0c;可以设置属性environment的值&#xff0c;设置的这个值就作为访问环境变量的前缀。例如声明了environment“env”&#xff0c;那么就可以通过env.<环境变量名称>来访问环境变量。 例如创建了一个Java工程&#xff0c;在工程目录下有一个bu…

HCIA --- VLAN实验配置

一、各交换机上配置&#xff1a; 1、各交换机上创建VLAN 2、交换机上的各个接口划分到对应的VLAN中 3、将与交换机、路由器相连的接口创建trunk干道 SW1&#xff1a; [sw1]vlan batch 2 to 3 批量创建VLAN2-3 [sw1]interface Ethernet0/0/1 单独将某个接口划分到对应…

信息保卫战:揭秘迅软DSE护航企业免受泄密之害

随着网络技术的发展&#xff0c;通过网络应用如网盘、网页、邮件、即时通讯工具传输分享文件变得越来越多&#xff0c;这些工具传输速度快&#xff0c;能够将大容量的文档快速传送给他人&#xff0c;在工作中受到许多人的青睐。 然而由这些传输工具引发的泄密事件也不断增多&am…

【农业生产系统模型】基于R语言APSIM模型进阶应用与参数优化、批量模拟实践技术

随着数字农业和智慧农业的发展&#xff0c;基于过程的农业生产系统模型在模拟作物对气候变化的响应与适应、农田管理优化、作物品种和株型筛选、农田固碳和温室气体排放等领域扮演着越来越重要的作用。APSIM (Agricultural Production Systems sIMulator)模型是世界知名的作物生…

SQL Server 修改、删除表中数据

SQL Server 修改、删除表中数据 修改 SQL Server修改表中数据的关键字是update&#xff08;更新;使现代化;向…提供最新信息;给…增加最新信息&#xff09; 修改表中信息 语法 update 表名 set 字段1值1&#xff0c;字段值2 where 条件1 and 条件2给表中所有人加工资&…

前后端交互—Ajax基础

Ajax 代码下载 URL地址 URL(全称是UniformResourceLocator)中文叫统一资源定位符&#xff0c;用于标识互联网上每个资源的唯一存放位置。 浏览器只有通过URL地址&#xff0c;才能正确定位资源的存放位置&#xff0c;从而成功访问到对应的资源。常见的URL举例: http://www.ba…

视频怎么压缩?视频太大这样处理变小

在当今时代&#xff0c;视频已经成为了我们日常生活中不可或缺的一部分&#xff0c;然而&#xff0c;视频文件往往非常大&#xff0c;给我们的存储和传输带来了很大的不便&#xff0c;那么&#xff0c;如何有效地压缩视频呢&#xff1f; 一、使用压缩软件 首先我们给大家分享一…

供应商工厂突发爆炸,日本丰田7座工厂停工 | 百能云芯

根据日本共同社的最新报导&#xff0c;日本著名汽车制造商丰田汽车近期遭遇了一系列生产中断问题。这次生产中断的根本原因在于供应商公司发生了一起爆炸事件&#xff0c;导致零部件供应链受到了严重干扰&#xff0c;迫使丰田暂时停工。截至目前&#xff0c;这一事件已经影响了…

【触想智能】工业级触摸显示器的分类与应用分享

工业级触摸显示器是具有触摸功能的工业显示器&#xff0c;常见的触摸方式有电容触摸和电阻触摸。它是应用在工业上的设备&#xff0c;和普通的显示器有着很大的区别。 工业级触摸显示器由液晶触摸屏、功能主板、外壳三部分组成&#xff0c;结构用料一般都采用铝合金材质&#x…

配电房无人值守方案

随着科技的不断进步&#xff0c;许多传统需要人工操作和维护的领域逐渐被自动化和智能化方案所替代。配电房作为电力供应的核心部分&#xff0c;也面临着同样的变革。 力安科技电易云配电室无人值守监控系统以智能物联数据采集和智能物联管控"为关键&#xff0c;通过加…

自动化测试必会之数据驱动测试

数据驱动测试 在实际的测试过程中&#xff0c;我们会发现好几组用例都是相同的操作步骤&#xff0c;只是测试数据的不同&#xff0c;而我们往往需要编写多次用例来进行测试&#xff0c;此时我们可以利用数据驱动测试来简化该种操作。 参数化&#xff1a; 输入数据的不同从而产…

Linux性能优化--性能工具:特定进程内存

5.0 概述 本章介绍的工具使你能诊断应用程序与内存子系统之间的交互&#xff0c;该子系统由Linux内核和CPU管理。由于内存子系统的不同层次在性能上有数量级的差异&#xff0c;因此&#xff0c;修复应用程序使其有效地使用内存子系统会对程序性能产生巨大的影响。 阅读本章后&…

【0day】复现海康威视综合安防管理平台信息泄露(内网集权账户密码)漏洞

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现

反转链表(java)

大家好我是苏麟今天说一说链表常见的简单题目 . BM1 反转链表 牛客BM1 反转链表 : 描述 : 给定一个单链表的头结点(该头节点是有值的&#xff0c;比如在下图&#xff0c;它的val是1)&#xff0c;长度为n&#xff0c;反转该链表后&#xff0c;返回新链表的表头。 分析 : …

安装thinkphp6并使用多应用模式,解决提示路由不存在解决办法

1. 安装稳定版tp框架 composer create-project topthink/think tptp是安装完成的目录名称 &#xff0c;可以根据自己需要修改。 如果你之前已经安装过&#xff0c;那么切换到你的应用根目录下面&#xff0c;然后执行下面的命令进行更新&#xff1a; composer update topthin…

一百九十、Hive——Hive刷新分区MSCK REPAIR TABLE

一、目的 在用Flume采集Kafka中的数据直接写入Hive的ODS层静态分区表后&#xff0c;需要刷新表&#xff0c;才能导入分区和数据。原因很简单&#xff0c;就是Hive表缺乏分区的元数据 二、实施步骤 &#xff08;一&#xff09;问题——在Flume采集Kafka中的数据写入HDFS后&am…

排序算法(Java实现)

1. 冒泡排序 冒泡排序属于交换排序。效率较低&#xff0c;适用小规模数据集。 原理&#xff1a;循环遍历要排序的元素&#xff0c;依次比较两个相邻的元素&#xff0c;每次循环都找到一个最大(或最小)的数放到最后(或最前)。没有相邻元素需要交换时&#xff0c;说明已经排序完成…