这章我们介绍如何用Python的运算符.
Python运算符包括赋值运算符、算术运算符、关系运算符、逻辑运算符、位运算符、成员运算符和身份运算符。
算术运算符
算术运算符包括四则运算符、求模运算符和求幂运算符。Python中的算术运算符和表达式如下表所示。
注意 与C、Java语言不同,Python不支持自增运算符和自减运算符。例如,i++、i--是错误的语法。
下面演示了Python中算术运算符的使用方法。
以下假设变量a为10,变量b为20:
比较(关系)运算符
关系运算符即对两个对象进行比较的符号。Python中的关系运算符和表达式如下表所示。
Python中的关系运算符和表达式
假设变量a持有10和变量b持有20,则:
大家有什么不懂的或者不会的可以加群 python学习交流 579817333
赋值运算符
逻辑表达式是用逻辑运算符和变量连接起来的式子。任何语言的逻辑运算符都只有3种——逻辑与、逻辑或和逻辑非。C、Java语言的逻辑运算符用&&、||、!表示,Python采用and、or、not表示。下表列出了Python中的逻辑运算符和表达式。
假设变量持有10和变量b持有20,则:
位运算符
位运算符作用于位和位操作执行位。假设,如果a =60;且b =13;现在以二进制格式它们将如下:
a = 0011 1100
b = 0000 1101
-----------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
Python语言支持下位运算符
逻辑运算符
下表列出了所有Python语言支持的逻辑运算符。假设变量a持有10和变量b持有20,则:
来试一试看看这些比较运算符会得到什么样结果
>>> 3 < 6
True
>>>
>>> 3 == 6
False
>>>
>>> 3 > 6
False
>>>
>>> 8.2 <= 8
False
>>>
>>> 8.2 <= 8.2
True
>>>
>>> 8.2 <= 8.20001
True
>>>
>>> 3 != 6
True
>>>
>>> 3 <> 6
True
成员运算符
除了前面讨论的运算符,Python成员运算符,在一个序列中成员资格的测试,如字符串,列表或元组。有两个成员运算符解释如下:
成员运算符,可以判断一个元素是否在某一个序列中。比如可以判断一个字符是否属于这个字符串,可以判断某个对象是否在这个列表中等等。
Python中的成员操作符的使用语法是:
obj [not] in sequence
这个操作符返回值是True或者False。
身份运算符
身份运算符用于比较两个对象的存储单元
身份运算符用来判断两个变量的引用对象是否指向同一个内存对象,即id(varibale1) ?= id(variable2)。
is:判断两个标识符是不是引用自一个对象
is not:判断两个标识符是不是引用自不同对象
需要注意的是: is 和 == 的意义并不相同。
大家有什么不懂的或者不会的可以加群 python学习交流 579817333
运算符优先级
如果你有一个如2 + 3 * 4那样的表达式,是先做加法呢,还是先做乘法?我们的中学数学告诉我们应当先做乘法——这意味着乘法运算符的优先级高于加法运算符。
下面这个表给出Python的运算符优先级,从最低的优先级(最松散地结合)到最高的优先级(最紧密地结合)。这意味着在一个表达式中,Python会首先计算表中较下面的运算符,然后在计算列在表上部的运算符。
下面这张表(与Python参考手册中的那个表一模一样)已经顾及了完整的需要。事实上,我建议你使用圆括号来分组运算符和操作数,以便能够明确地指出运算的先后顺序,使程序尽可能地易读。例如,2 + (3 * 4)显然比2 + 3 * 4清晰。与此同时,圆括号也应该正确使用,而不应该用得过滥(比如2 + (3 + 4))。