Python 里 and、or 的计算规则是怎样的?

Python010

Python 里 and、or 的计算规则是怎样的?,第1张

如下:

第一种情况,只有一个运算符:(在不加括号的时候,and优先级大于or)。

1、and:从左到右,若所有值均为真,则返回后一个值,有一个假的值,则返回第一个假的值。

2、or:从左到右,返回第一个为真的值,都为假返回后一个值。

例如:

x or y的值只可能是x或y,x为真就是x,x为假就是y。

x and y的值只可能是x或y,x为真就是y,x为假就是x 。

第二种情况,多个运算符:

1、表达式从左至右运算,若 or 的左侧逻辑值为 True ,直接输出 or 左侧表达式 。

2、表达式从左至右运算,若 and 的左侧逻辑值为 False ,则忽略后面表达式,直到有 or 出现,输出 and 左侧表达式到 or 的左侧,参与接下来的逻辑运算。

Python语言特点:

1、简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。

2、易学:Python极其容易上手,因为Python有极其简单的说明文档。

3、易读、易维护:风格清晰划一、强制缩进。

4、速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。

1、and为且,and两边的变量都是true的时候结果是true

如:1)5>3 and 4>2     True

       2)5>3 and 4<2     False

2、or为或,有一个是true的时候结果即为true

如:1)5>3 or 4>2     True

        2) 5>3 or 4<2      True

3、not取反.

如:1)not 5>3     False

       2)not  5<3     True

4、当not和and及or在一起运算时,优先级为是 not >and >or.

如果有括号,括号的优先级最高,先运算括号中的结果。

| 算术运算符 |

+:两个数相加两个数相加,或是字符串连接

-:两个数相减

*:两个数相乘,或是返回一个重复若干次的字符串

/:两个数相除,结果为浮点数

%:取模,返回两个数相除的余数

//:两个数相除,返回商的整数部分

**:幂运算,返回乘方结果

| 关系运算符 |

==:比较对象是否相等

!=:比较对象是否不相等

>:大于,例如a>b,将比较a与b的大小,a>b返回True,否则返回False

<:小于,例如a<b,将比较a与b的大小,a<b返回true,否则返回false<p="">

>=:大于等于,例如a>=b,将比较a与b的大小,a>=b返回True,否则返回False

<=:小于等于,例如a<=b,将比较a与b的大小,a<=b返回True,否则返回False

| 赋值运算符 |

=:常规赋值运算符,将运算结果赋值给变量

+=:加法赋值运算符,例如 a+=b 等效于 a=a+b

-=:减法赋值运算符,例如 a-=b 等效于 a=a-b

*=:乘法法赋值运算符,例如 a*=b 等效于 a=a*b

/=:除法赋值运算符,例如 a/=b 等效于 a=a/b

//=:取整除赋值运算符,例如 a//=b 等效于 a=a//b

%=:取模赋值运算符,例如 a%=b 等效于 a=a%b

**=:幂运算赋值运算符,例如 a**=b 等效于 a=a*b

| 逻辑运算符 |

and:与运算,如果a 为False,a and b返回False 否则返回y的计算值

or:或运算,如果a非0,返回a的值,否则返回b的值

not:非运算,如果a为True,返回False,如果a为False,返回True

| 成员运算符 |

in:如果在指定的序列中找到值返回True,否则返回False

not in:如果在指定的序列中找到值返回True,否则返回False

| 身份运算符 |

is:判断两个标识符是不是引用自一个对象

is not:判断两个标识符是不是引用自不同对象