带你认识运算符(中):逻辑运算符 | Python从入门到精通:入门篇之九

简介: 本节将讲述逻辑运算符和非布尔值的逻辑运算符是如何运算的。

第八节:带你认识运算符(上)

逻辑运算符

逻辑运算符主要用来做一些逻辑运算。

9.1逻辑运算符

逻辑运算符包括:

  • not 逻辑非
    可以对符号右侧的值进行非运算。

image.png
对于布尔值,非运算会对其进行取反操作。true变false,false变true。
对于非布尔值,会先将其转换成布尔值,再进行取反。

  • and 逻辑与
    可以对符号两侧的值进行与运算。

只有两边的值都为true时,结果才返回true,只要有一个false,就会返回false。所以与运算找false,找到就返回false。
image.png
Python中的与运算是短路的与,如果第一个值是false,就不再看第二个值。
image.png

  • or 逻辑或
    可以对符号两侧的值进行或运算。

或运算,两个值中只要有一个true就会返回true。
所以,或运算是找true,只要有一个true,就会返回true。
image.png
在Python中,或运算是短路的或,如果第一个值是true,则不再看第二个值。
image.png

练习:
1.尝试对布尔值进行三种逻辑运算。
2.尝试对非布尔值进行三种逻辑运算,并观察返回结果。

9.2非布尔值的逻辑运算符

  • 非布尔值的非运算
    非布尔值做逻辑运算的时候先转换成布尔值:空性的是false,其他都是true。

非运算就直接取反。true变false。false变true。

  • 非布尔值的与或运算
    非布尔值转换成布尔值的时候:空性的是false,其他都是true。

当我们对非布尔值进行与或运算时,Python会将其当做布尔值运算,最终会返回原值。那么返回哪个原值呢?
与运算是找false:如果第一个值是false,则直接返回第一个值,就不看第二个值;如果第一个值是true,第二个也是true的话,找不到false,则返回第二个值;第二个是false的话,则返回该false的值,也就是返回第二个值。
image.png
或运算是找true:如果第一个值是true,就不看第二个值了,直接返回第一个值;如果第一个值是false,则判断第二个值,第二个值为true,即返回,若第二个值为false,找不到true,则返回最后一个值,即第二个值。
image.png
第十节:逻辑运算符

视频学习:阿里云大学之Python进阶必看

配套Python进阶文章点击此处获取

相关文章
|
9天前
|
存储 程序员 开发者
Python编程基础:从入门到实践
【10月更文挑战第8天】在本文中,我们将一起探索Python编程的奇妙世界。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的信息。我们将从Python的基本概念开始,然后逐步深入到更复杂的主题,如数据结构、函数和类。最后,我们将通过一些实际的代码示例来巩固我们的知识。让我们一起开始这段Python编程之旅吧!
|
6天前
|
Python
【python从入门到精通】-- 第五战:函数大总结
【python从入门到精通】-- 第五战:函数大总结
29 0
|
1天前
|
存储 算法 Python
【10月更文挑战第16天】「Mac上学Python 27」小学奥数篇13 - 动态规划入门
本篇将通过 Python 和 Cangjie 双语介绍动态规划的基本概念,并解决一个经典问题:斐波那契数列。学生将学习如何使用动态规划优化递归计算,并掌握编程中的重要算法思想。
32 3
|
3天前
|
设计模式 开发者 Python
Python编程中的设计模式:从入门到精通####
【10月更文挑战第14天】 本文旨在为Python开发者提供一个关于设计模式的全面指南,通过深入浅出的方式解析常见的设计模式,帮助读者在实际项目中灵活运用这些模式以提升代码质量和可维护性。文章首先概述了设计模式的基本概念和重要性,接着逐一介绍了几种常用的设计模式,并通过具体的Python代码示例展示了它们的实际应用。无论您是Python初学者还是经验丰富的开发者,都能从本文中获得有价值的见解和实用的技巧。 ####
|
5天前
|
机器学习/深度学习 人工智能 算法
机器学习基础:使用Python和Scikit-learn入门
【10月更文挑战第12天】本文介绍了如何使用Python和Scikit-learn进行机器学习的基础知识和入门实践。首先概述了机器学习的基本概念,包括监督学习、无监督学习和强化学习。接着详细讲解了Python和Scikit-learn的安装、数据处理、模型训练和评估等步骤,并提供了代码示例。通过本文,读者可以掌握机器学习的基本流程,并为深入学习打下坚实基础。
11 1
|
7天前
|
机器学习/深度学习 人工智能 算法
机器学习基础:使用Python和Scikit-learn入门
本文介绍了如何使用Python和Scikit-learn进行机器学习的基础知识和实践。首先概述了机器学习的基本概念,包括监督学习、无监督学习和强化学习。接着详细讲解了Python和Scikit-learn的安装、数据处理、模型选择与训练、模型评估及交叉验证等关键步骤。通过本文,初学者可以快速上手并掌握机器学习的基本技能。
32 2
|
6天前
|
自然语言处理 Python
【python从入门到精通】-- 第三战:输入输出 运算符
【python从入门到精通】-- 第三战:输入输出 运算符
35 0
【python从入门到精通】-- 第三战:输入输出 运算符
|
5天前
|
机器学习/深度学习 人工智能 架构师
Python学习圣经:从入门到精通Python,打好 LLM大模型的基础
Python学习圣经:从0到1精通Python,打好AI基础
|
5天前
|
数据可视化 定位技术 Python
Python数据可视化--Matplotlib--入门
Python数据可视化--Matplotlib--入门
13 0
|
5天前
|
数据挖掘 索引 Python
Python数据分析篇--NumPy--入门
Python数据分析篇--NumPy--入门
16 0