比较运算符,也称关系运算符,用于对常量、变量或表达式的结果进行大小比较。如果这种比较是成立的,则返回 True(真),反之则返回 False(假)。 True 和 False 都是 bool 类型,它们
True 和 False 都是 bool 类型,它们专门用来表示一件事情的真假,或者一个表达式是否成立,我们将在《Python bool布尔类型》中详细讲解。
Python 支持的比较运算符如表 1 所示。>
前面的值大于后面的值,则返回 True,否则返回 False。
<
小于,如果<
前面的值小于后面的值,则返回 True,否则返回 False。
==
等于,如果==
两边的值相等,则返回 True,否则返回 False。
>=
大于等于(等价于数学中的 ≥),如果>=
前面的值大于或者等于后面的值,则返回 True,否则返回 False。
<=
小于等于(等价于数学中的 ≤),如果<=
前面的值小于或者等于后面的值,则返回 True,否则返回 False。
!=
不等于(等价于数学中的 ≠),如果!=
两边的值不相等,则返回 True,否则返回 False。
is
判断两个变量所引用的对象是否相同,如果相同则返回 True,否则返回 False。
is not
判断两个变量所引用的对象是否不相同,如果不相同则返回 True,否则返回 False。
Python 比较运算符的使用举例:
print("89是否大于100:", 89 > 100) print("24*5是否大于等于76:", 24*5 >= 76) print("86.5是否等于86.5:", 86.5 == 86.5) print("34是否等于34.0:", 34 == 34.0) print("False是否小于True:", False < True) print("True是否等于True:", True < True)运行结果:
89是否大于100: False
24*5是否大于等于76: True
86.5是否等于86.5: True
34是否等于34.0: True
False是否小于True: True
True是否等于True: False
== 和 is 的区别
初学 Python,大家可能对 is 比较陌生,很多人会误将它和 == 的功能混为一谈,但其实 is 与 == 有本质上的区别,完全不是一码事儿。== 用来比较两个变量的值是否相等,而 is 则用来比对两个变量引用的是否是同一个对象,例如:
import time #引入time模块 t1 = time.gmtime() # gmtime()用来获取当前时间 t2 = time.gmtime() print(t1 == t2) #输出True print(t1 is t2) #输出False运行结果:
True
False
虽然 t1 和 t2 的值相等,但它们是两个不同的对象(每次调用 gmtime() 都返回不同的对象),所以
t1 is t2
返回 False。这就好像两个双胞胎姐妹,虽然她们的外貌是一样的,但它们是两个人。那么,如何判断两个对象是否相同呢?答案是判断两个对象的内存地址。如果内存地址相同,说明两个对象使用的是同一块内存,当然就是同一个对象了;这就像两个名字使用了同一个身体,当然就是同一个人了。