我们知道字典方法get()是查找并返回字典中的某个键的值,找到则返回该值,找不到则返回None。
Python中还有一种方法可以判断字典中是否有某个值,这种方法就是恒等运算符。
●恒等运算符
字典中的恒等运算符是is和is not。
实例:
dictionary={"Tom":"tall","William":"handsome"}
x=dictionary.get("Jack")
print(x is None)
#打印结果:True
print(x is not None)
#打印结果:False
●补充:get()方法的自定义返回值
字典方法get()有两个参数,第一个是必选参数key,第二个是可选参数,并且是可自定义的参数,是get()方法的返回值,即如果不写则get()方法默认返回None,如果要写,可自定义这个参数,get()方法将返回此自定义参数值。
实例:
dictionary={"Tom":"tall","William":"handsome"}
dictionary.get("Jack")
#返回结果为:None
dictionary.get("Jack","Jack is not here")
#返回结果为:Jack is not here
●=、==和is的区别
①=在任何编程语言中都是赋值,赋值是引用,引用是引用内存地址。
②==是比较两个值是否相等,比较的是两个对象的内容是否相等,即内存地址可以不同,内容相同就行。
③is是比较两个实例对象是不是完全相同,它们是不是同一个对象,即id是不是相同,是不是占用同一块内存空间。
④ is 运算符比==效率高,在变量和None进行比较时,应该使用is。
实例:
a=[1,2,3,4,5,6]
b=a
c=[1,2,3,4,5,6]
print(a == b)
#打印结果为True,因为b和a内容相同
print(a is b)
#打印结果为True,因为b引用a,即内存地址相同
print(a == c)
#打印结果为True,因为a和c内容相同
print(a is c)
#打印结果为False,因为a和c内存地址不同
跟我一起学习Python
领取专属 10元无门槛券
私享最新 技术干货