Python 中的 'and' vs '&'2024 年 8 月 29 日 | 4 分钟阅读 在接下来的教程中,我们将了解 Python 编程语言中 'and' 和 '&' 之间的区别。 理解 Python 中 'and' 和 '&' 之间的区别这些是我们将在 Python 中使用的一些运算符;然而,两者之间存在根本的区别。'and' 运算符用于测试所使用的两个表达式是否逻辑上为TRUE。另一方面,'&' 运算符在与False/True 值一起使用时,测试它们是否都为 TRUE。 在 Python 编程语言中,空的内置对象通常被视为逻辑上为False。然而,在这种情况下,非空的内置对象始终为逻辑上为True。因此,当用户希望在列表不为空时执行某些操作,而在列表为空时执行其他操作时,这为常规使用提供了一种便利。 现在让我们进一步了解上面讨论的两个运算符。
注意:当整数值为 0 时,我们将其视为 False。然而,当我们在逻辑上使用它时,我们将其视为 True。这是因为 'and' 运算符测试这两个表达式是否(在逻辑上)为 True - 而 '&' 运算符对从两个语句获得的结果执行不同的按位 AND 操作。现在让我们看一些演示这些运算符用法的示例。 示例 1输出 18 2 说明 在上面的代码片段中,我们声明了两个变量,并使用 'and' 和 '&' 运算符执行了操作。结果,操作的输出存在差异。这是因为 'and' 测试两个表达式是否在逻辑上为True,而 '&' 对两个语句的输出执行按位AND 操作。 编译器检查第一个语句中的第一个表达式是否为True。如果第一个表达式为False,它将不会测试第二个表达式,并立即返回False。这个过程称为“惰性求值”。如果第一个表达式为True,则测试第二个表达式,根据AND 操作的规则,仅当两个语句都为True 时,结果才为True。在上面的示例中,编译器测试第一个表达式,值为6 的 q 为True。编译器接着处理第二个表达式,因为 p 的值为18,所以它也为True。因此,输出也是18。 在第二个语句中,编译器正在对表达式的输出执行按位的 & 操作。在这里,语句的求值如下: 执行按位 & 操作后,我们将得到: 因此,输出为2。 让我们看另一个例子来详细说明这一点。 示例 2输出 8 12 说明 在上面的代码片段中,我们声明了两个变量并打印了两个操作的结果。 第一个语句对两个变量执行按位 AND 操作,第二个语句评估 print 中的语句并打印答案。 在第一个语句中,a = 1011, b = 1100,对 a 和 b 执行 & 得到 1000,这是十进制值 8 的二进制值。 在第二个语句中,表达式 'a and b' 首先求值 a;如果 a 为False(或零),则由于上面解释的“惰性求值”,它会立即返回其值;否则,将求值 b。如果 b 也非零,则返回结果值。返回 b 的值是因为它是检查语句真伪的最后一个值。 因此,建议在循环中使用布尔值和 'and'。 下一主题Python 中的加密包 |
在本教程中,我们将学习如何检测给定的字符串是否是字谜(anagram)。但首先我们应该熟悉字谜的概念。什么是字谜?字谜是一种情况,其中一个字符串或数字被重新排列,使得重新排列后的字符串的每个字符...
5 分钟阅读
? 使用 Python 内置的 type() 方法,您可以确定变量的类型。type() 函数将变量的数据类型作为字符串返回。以下是使用 type() 函数的示例:x = 5 print(type(x)) 输出:<class 'int'> 在此示例中,我们创建了一个变量 x 并赋值...
阅读 3 分钟
理解二维码 二维码是一种机器可读的条形码,以二维像素化形式设计。二维码可用于存储各种数据。“QR”是“快速响应”(Quick Response)的缩写。二维码于1994年由日本工程师原昌宏(Masahiro Hara)发明...
5 分钟阅读
列表是 Python 中最常用的数据结构之一。我们不断在许多不同的应用程序中使用列表,从解决简单问题到复杂问题。在 Python 中,列表取代了数组,具有以下优点:大小动态,可以在单个列表中存储不同数据类型的项目 我们...
阅读 3 分钟
自定义解析器行为 Python 模块 'configparser'。利用 ConfigParser 模块来监督任何应用程序的用户文档和文件。文档格式被协调成段落;每个部分都可以包含用于协调数据的键值对。还支持使用 Python 格式化字符串技术进行键值插入...
阅读 8 分钟
给定两个变量,如果一个变量的值依赖于另一个变量的值,我们说这些变量是相关的。两个变量之间关系的统计度量称为“相关性”。在这里,相互依赖的两个变量是...
阅读9分钟
在本教程中,我们将用 Python 编写反转链表的程序。链表用于动态存储元素。链表是一种像数组一样的线性数据结构,但它动态存储元素。每个元素连接...
阅读 8 分钟
什么是二叉搜索树?二叉树是一种二叉数据结构,包含不同的节点,每个节点最多有两个子节点。这些节点遵循一些属性,包括:二叉树的左节点的值小于根节点的值。……
5 分钟阅读
?在一个充满学生的教室里,至少有两个学生同名的可能性很高。我们如何称呼这些学生?我们将使用唯一标识每个人的姓氏或家族姓氏。在Python的对象教室中,...
阅读 10 分钟
制作小规模项目,例如基于文本用户界面 (TUI) 的掷骰子应用程序,可以帮助我们提高 Python 编程能力。我们将学习收集和验证用户输入、从包和模块导入代码、使用写入函数、利用...
阅读20分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India