Python比较运算符(关系运算符)
比较运算符,也称关系运算符,用于对常量、变量或表达式的结果进行大小比较。如果这种比较是成立的,则返回 True(真),反之则返回 False(假)。
True 和 False 都是 bool 类型,它们专门用来表示一件事情的真假,或者一个表达式是否成立。
Python 支持的比较运算符如表 1 所示。
表 1 Python 比较运算符汇总
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
time 模块的 gmtime() 方法用来获取当前的系统时间,精确到秒级,因为程序运行非常快,所以 t1 和 t1 得到的时间是一样的。== 用来判断 t1 和 t2 的值是否相等,所以返回 True。
虽然 t1 和 t2 的值相等,但它们是两个不同的对象(每次调用 gmtime() 都返回不同的对象),所以t1 is t2
返回 False。这就好像两个双胞胎姐妹,虽然她们的外貌是一样的,但它们是两个人。
那么,如何判断两个对象是否相同呢?答案是判断两个对象的内存地址。如果内存地址相同,说明两个对象使用的是同一块内存,当然就是同一个对象了;这就像两个名字使用了同一个身体,当然就是同一个人了。