当前位置: 首页 > news >正文

Python基础之if逻辑判断

在学习if语句之前,我们先学习一种数据类型,布尔类型(bool),在if语句中,我们需要通过判断条件是否为真或者假,才进入下面的语句块执行。

一、布尔类型(bool)

布尔类型:True、False,用来记录真假这两种状态。

True、False在和数字做数字运算的时候分别代表的是0、1。

False、None、0、空(""、()、{})都解释为False,其他的都解释为True。

二、if语法

语法结构如下:

if 条件1:   # 如果条件1的结果为True,就依次执行:代码1、代码2,......代码1代码2......
elif 条件2: # 如果条件2的结果为True,就依次执行:代码3、代码4,......代码3代码4......
elif 条件3: # 如果条件3的结果为True,就依次执行:代码5、代码6,......代码5代码6......
else:     # 其它情况,就依次执行:代码7、代码8,......代码7代码8......

在一个if语句下,可以有多个elif,但只有一个else。

需要注意的是:

# 1、python用相同缩进(4个空格表示一个缩进)来标识一组代码块,同一组代码会自上而下依次运行
# 2、条件可以是任意表达式,但执行结果必须为布尔类型# 在if判断中所有的数据类型也都会自动转换成布尔类型

三、if语句的使用

例1:一个人的年龄大于18岁,是成年人,小于18岁是未成年

age = 24
if age > 18:print("成年人")
else:print("未成年")

例2:成绩小于60是差,大于60是及格,70到85是良好,85到100是优秀

grade = 89
if 85 < grade <= 100:print("优秀")
elif 70 < grade <= 85:print("良好")
elif 60 <= grade <= 70:print("及格")
else:print("差")

例3:条件中有多个判断条件,有多个条件时,可以用and,or,来连接

身高165以上,体重为110斤以下,是瘦子

身高160到165,体重为110到120,正常

身高160以下,体重大于120,微胖

height = 167
weight = 100
if height >165 and weight < 110:print("这个人很瘦")
elif 160 < height < 165 and 110 < weight < 120:print("正常身材")
elif height < 160 and weight > 120:print("有点微胖")
else:print("其他身材")

四、三元运算

表达式为:[on_true] if [expression] else [on_false],

含义为:如果expression条件为真,则执行no_true,否则执行on_false

例如:a = 10, b = 20,比较a和b谁大,谁大就输出谁

a, b = 10, 20
print(a) if a>b else print(b)      # 20

还可以进行嵌套,在嵌套时,需要注意if与else的配对关系:

a if a>b else c if c>d else d

可以看作:a if a>b else (c if c>d else d)

含义:当a>b为True时,执行a,

        当a>b为False时,执行c if c>d else d,在a>b为False的前提下,当c>d为True时,执行c,当c>d为False时,执行d

例如:a = 10, b = 20,比较a与b的大小关系

a, b = 10, 20
print("a大于b") if a>b else print("a小于b") if a<b else print("a等于b")
#  a小于b
http://www.lryc.cn/news/28132.html

相关文章:

  • 实现pdf文件预览
  • 【java】alibaba Fastjson --全解史上最快的JSON解析库
  • 绝对零基础的C语言科班作业(期末模拟考试)(十道编程题)
  • 按位与为零的三元组[掩码+异或的作用]
  • C++基础篇(一)-- 简单入门
  • 前端整理 —— javascript 2
  • Spring-注解注入
  • 华为校招机试 - 攻城战(Java JS Python)
  • Docker入门
  • 时间序列分析 | CNN-LSTM卷积长短期记忆神经网络时间序列预测(Matlab完整程序)
  • 【蒸滴C】C语言结构体入门?看这一篇就够了
  • 第十三届蓝桥杯
  • 消息队列mq
  • [学习笔记]黑马程序员Spark全套视频教程,4天spark3.2快速入门到精通,基于Python语言的spark教程
  • git push和 git pull的使用
  • 首发,pm3包,一个用于多组(3组)倾向评分匹配的R包
  • 基于Canal的数据同步
  • vuetify设置页面默认主题色
  • 【Python入门第二十三天】Python 继承
  • C#中,读取一个或多个文件内容的方法
  • 1 基于神经辐射场(neural Radiance Fileds, Nerf)的三维重建- 简介
  • 水果FLStudio21.0.0中文版全能数字音乐工作站DAW
  • 【GlobalMapper精品教程】055:GM坐标转换器的巧妙使用
  • C语言之中rand()函数是如何实现的
  • winform控件PropertyGrid的应用(使运行中的程序能像vistual studio那样设置控件属性)
  • SBUS的协议详解
  • 【PyTorch】教程:torch.nn.Hardshrink
  • JavaScript 函数参数
  • 【C】标准IO库函数
  • http客户端Feign