python中什么是运算符

  • 来源:网络
  • 更新日期:2020-08-27

摘要:python 运算符是:1、算术运算, 用于加减乘除等数学运算;2、赋值运算,用于接收运算符或方法调用返回的结果;3、比较运算, 用于做大小或等值比较运算;4、逻辑运算,用于做 与、或、非

python 运算符是:1、算术运算, 用于加减乘除等数学运算;2、赋值运算,用于接收运算符或方法调用返回的结果;3、比较运算, 用于做大小或等值比较运算;4、逻辑运算,用于做 与、或、非运算;5、位运算, 用于二进制运算。

【相关学习推荐:python教程】

python 运算符是:

说完常用的数据类型,再来说下运算符。运算符用于将各种类型的数据进行运算,让静态的数据跑起来。

编程语言中的运算大致分为以下几个大类:

算术运算, 用于加减乘除等数学运算

赋值运算,用于接收运算符或方法调用返回的结果

比较运算, 用于做大小或等值比较运算

逻辑运算,用于做 与、或、非运算

位运算, 用于二进制运算

每种运算中所包含的符号称为相应的运算符,如 算术运算符、比较运算符等。

一、算术运算

二、赋值运算

三、比较运算

Python有8中比较操作,它们具有相同的优先级。比较操作可以被任意连接,比如 x< y <= z 等同于 x < y and y <= z,只是第一种形式下的y只被评估一次。另外,当 x < y不成立时,这两种形式下的z都不会被评估。

说明:

a) 不同类型的对象进行比较,从来不会相等(不同的数字类型除外);

b) 当把<、<=、> 和 >=操作符在这几种情况下会抛出TypeError异常: (1) 用于复数和另外的内置数字类型进行比较时;(2) 比较的对象为不同类型,无法进行比较时;(3) 未定义的其他情况下;

c) 一个类的不同实例通常是不相等的,除非该类定义了__eq__()方法;

d) 一个类的实例不能相对于同一类或其他类的的其他实例进行排序,除非该类定义了足够的方法__lt__(), __le__(), __gt__(), __ge__()。如果想要比较运算符的常规含义, __lt__()和__eq__()就足够了;

e) is 和 is not操作符的行为是不能自定义的;另外,它们可以被应用到两个不同类型的对象,不会已发异常。

f) 另外两个具有相同句法优先级的操作是 in 和 not in,它们支持序列、集合和映射类型的对象。

g) 比较运算的结果为布尔值:True 或 False

四、逻辑运算

“真”值测试(Truth Value Testing)

在讲解“布尔运算”之前,我们先来说下Python中的一个特殊操作--“真”值测试。

Python中的任何一个对象都可以被测试“真”值。这里说的“真”值测试可以这样理解:Python中的任何一个对象都可以转换为一个布尔值,而这个“真”值测试就是获取一个对象对应的布尔值的过程。

Python中只有下面这些值对应的布尔值为False:

NoneFalse数字类型中的0,如:0, 0.0, 0j任意空序列,如:'', (), []任意一个空映射,如:{}一个用户自定义类的实例--该用户自定义类中定义了一个__bool__()或__len__()方法,且实例调用该方法时返回整数0或布尔值False

除此之外,所有的其它值对应的布尔值都是True, 因此许多类型的对象永远是True。

"真"值测试可以被用在 if或while条件中,也可以作为布尔操作的操作数。

布尔运算(Boolean Operations)

Python中的逻辑运算称为“布尔运算(Boolean Operations)”,操作符包括:and(与)、or(或)、not(非)。

下面按照他们的优先级升序顺序进行说明:

说明:

a)or是一个短路操作符,也就是说,只有第一个参数的评估结果为False时,第二个参数才会被评估;

b) and也是一个短路操作符,也就是说,只有第一个参数的评估结果为True时,第二个参数才会被评估;

c) not操作符比非布尔操作符优先级低,因此,not a == b 被解释为 not (a == b);如果写成 a == not b会包语法错误。

五、位运算

按位运算是指把数字转换为二进制来进行计算,位运算符包括以下几种:

假设:

a = 60,对应的二进制格式为 0011 1100

b = 13, 对应的二进制格式为 0000 1101

想了解更多相关学习,敬请关注php培训栏目!