ython中的and和or
4.6. and 和 or 的特殊性质
在Python 中,and 和 or 执行布尔逻辑演算,如你所期待的一样,但是它们并不返回布尔值;而是,返回它们实际进行比较的值之一。
例 4.15. and 介绍
>>> 'a' and 'b'
'b'
>>> '' and 'b'
''
>>> 'a' and 'b' and 'c'
'c'
使用 and 时,在布尔上下文中从左到右演算表达式的值。0、''、[]、()、{}、None 在布尔上下文中为假;其它任何东西都为真。还好,几乎是所有东西。默认情况下,布尔上下文中的类实例为真,但是你可以在类中定义特定的方法使得类实例的演算值为假。你将会在第 5 章中了解到类和这些特殊方法。如果布尔上下文中的所有值都为真,那么 and 返回最后一个值。在这个例子中,and 演算 'a' 的值为真,然后是 'b' 的演算值为真,最终返回 'b'。
如果布尔上下文中的某个值为假,则 and 返回第一个假值。在这个例子中,'' 是第一个假值。
所有值都为真,所以 and 返回最后一个真值,'c'。
>>> 'a' or 'b'
'a'
>>> '' or 'b'
'b'
>>> '' or [] or {}
{}
>>> def sidefx():
... print "in sidefx()"
... return 1
>>> 'a' or sidefx()
'a'
使用 or 时,在布尔上下文中从左到右演算值,就像 and 一样。如果有一个值为真,or 立刻返回该值。本例中,'a' 是第一个真值。
or 演算 '' 的值为假,然后演算 'b' 的值为真,于是返回 'b' 。
如果所有的值都为假,or 返回最后一个假值。or 演算 '' 的值为假,然后演算 [] 的值为假,依次演算 {} 的值为假,最终返回 {} 。
注意 or 在布尔上下文中会一直进行表达式演算直到找到第一个真值,然后就会忽略剩余的比较值。如果某些值具有副作用,这种特性就非常重要了。在这里,函数 sidefx 永远都不会被调用,因为 or 演算 'a' 的值为真,所以紧接着就立刻返回 'a' 了。
相关推荐
在python中and和or返回的值并不是True和false这么简单。虽然他们看上去和c++中的&&和||有些相似。在了解and和or之前,我们先要了解python中的True和False。 在python里面,0、”、[]、()、{}、None为假,其它任何...
在Python编程语言中,`and`和`or`是两个重要的逻辑运算符,它们用于处理布尔逻辑。在本文中,我们将深入探讨这两个运算符的用法,并通过实例来加深理解。 首先,`and`运算符用于连接两个或多个条件,只有当所有条件...
python 中的and从左到右计算表达式,若所有值均为真,则返回最后一个值,若存在假,返回第一个假值。 or也是从左到有计算表达式,返回第一个为真的值。 复制代码 代码如下: IDLE 1.2.4 >>>’a’and’b’ ‘b’ >>>”...
在Python编程语言中,`and`和`or`是两种逻辑运算符,它们用于组合条件表达式,以根据多个条件的真假来决定程序的行为。理解这两个关键字的用法是掌握Python逻辑控制的关键部分。 首先,让我们来看看Python中的真值...
python中的and-or可以用来当作c用的?:用法。... 您可能感兴趣的文章:python and or用法详解python关键字and和or用法实例Python and、or以及and-or语法总结浅谈Python中(&,|)和(and,or)之间的区别
Python中and和or运算符的特殊用法,以及如何利用这些运算符简化条件判断。 - **【Python第52课】元组** 元组是不可变的序列数据类型。本课将介绍元组的特性和用途。 - **【Python第53课】数学运算** Python中...
Python中的`and`、`or`以及`and-or`语法是编程中常见的逻辑操作符,它们用于处理布尔逻辑。在Python中,这些操作符不仅返回布尔值,还可能返回参与运算的实际值。以下是对这些语法的详细解释: 1. **and**: `and`...
按位与或(&、|、^):按照二进制进行逻辑运算 ...一:逻辑与或 (and、or) 1:and :从左到右运行,运行到表达式不正确就输出False,后面的表达式逻辑短路;若运行到函数且无返回值,则输出None,且后面的表达式逻
Dockerfiles for Python 2.7 or Python 3.6 and Selenium in headless Chrome or Firefox
### Introduction to Python ... By mastering Python and PyQt, developers can create efficient, user-friendly, and scalable GUI applications that meet the needs of various industries and use cases.
=、<、>、和>=)和逻辑运算符(如and、or和not)。这些运算符在进行数值计算和逻辑判断时非常有用。 接着是Python的内置函数,它们提供了许多常用的功能,例如len()用于获取序列的长度,type()用于查看对象的类型,...
接下来是Python中的IDLE,这是一个集成开发环境(Integrated Development and Learning Environment),它带有一个交互式解释器,可以让我们直接输入并执行Python代码。IDLE提供了一个图形用户界面,使得用户能够更...
- **比较与逻辑运算符**:介绍用于条件判断的比较运算符和逻辑运算符,如`==`、`>`、`、`and`、`or`等。 #### 四、变量与值(第3章) - **变量的概念**:解释变量的作用及命名规则。 - **变量赋值**:演示如何为...
and 和 or 是python的两个逻辑运算符,可以使用and , or来进行多个条件内容的判断。下面通过代码简单说明下and or的用法: 1. or:当有一个条件为真时,该条件即为真。逻辑图如下: 测试代码如下: a=raw_input('...
If you’re ready to create your own web-based data visualizations—and know either Python or JavaScript— this is the book for you. Learn how to manipulate data with Python Understand the ...