python的dict判断key是否存在的方法

大家在学会python中的字典,会发现,字典中是没有特殊顺序的,但是都存储在一个特定的key下面,key是什么呢?其实key是python字典中的键,可以是数字,也可以是字符串,可以存储任意类型的对象。那你知道如何判断字典中key的存在吗?下面小编就向大家介绍python中,判断字典中是否存在key的两种方法。

方法一:使用自带函数实现

dict = {'a': {}, 'b': {}, 'c': {}}
print(dict.__contains__("b"))     返回:True
print(dict.__contains__("d"))     返回:False

第二种方法:使用in方法

#生成一个字典
d = {'a':{}, 'b':{}, 'c':{}}
#打印返回值,其中d.keys()是列出字典所有的key
print 'a' in d.keys()
print 'a' in d

知识点扩展:

python 判断dict当中key是否存在的两种方法

如果key不存在,dict就会报错:

>>> d['Thomas']
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
KeyError: 'Thomas'

要避免key不存在的错误,有两种办法,一是通过in判断key是否存在:

>>> 'Thomas' in d
False

二是通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:

>>> d.get('Thomas')
>>> d.get('Thomas', -1)
-1

注意:返回None的时候Python的交互式命令行不显示结果。

以上就是python的dict判断key是否存在的方法的详细内容,更多关于python的dict中如何判断key是否存在的资料请关注我们其它相关文章!

(0)

相关推荐

  • python dict.get()和dict['key']的区别详解

    先看代码: In [1]: a = {'name': 'wang'} In [2]: a.get('age') In [3]: a['age'] --------------------------------------------------------------------------- KeyError Traceback (most recent call last) <ipython-input-3-a620cb7b172a> in <module>() ----&g

  • python 对key为时间的dict排序方法

    如下所示: import time def date_compare(item1, item2): t1 = time.mktime(time.strptime(item1, '%Y/%m/%d')) t2 = time.mktime(time.strptime(item2, '%Y/%m/%d')) print(t1, t2) if t1 < t2: return -1 elif t1 > t2: return 1 else: return 0 if __name__ == '__main_

  • python Manager 之dict KeyError问题的解决

    程序需要多进程见共享内存,使用了Manager的dict. 最初代码如下: from multiprocessing import Process, Manager d = Manager().dict() d2 = {} def f(): d['a1'] = {} <span style="color:#ff6666;"> d['a1']['a2'] = 11</span> print d['a1']['a2'] if __name__ == '__main_

  • python迭代dict的key和value的方法

    迭代dict的key和value 我们了解了如何迭代 dict 的key和value,那么,在一个 for 循环中,能否同时迭代 key和value?答案是肯定的. 首先,我们看看 dict 对象的 items() 方法返回的值: >>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } >>> print d.items() [('Lisa', 85), ('Adam', 95), ('Bart', 59)] 可以看到,items(

  • python dict 相同key 合并value的实例

    如下所示: # #### dict中将key相同的字典合并在一个对象里 """ a = {"a": 1, "b": 2, "c": 1} for k, v in a.iteritems(): tmp.setdefault(v, []).append(k) """ tmp = {} objs = OnlineScoringTeacher.objects.filter( entry__mes

  • Python按照list dict key进行排序过程解析

    在做项目的时候,遇到这样的数据: "trends": [ { "name": "Rick Gates", "promoted_content": null, "query": "%22Rick+Gates%22", "tweet_volume": 135732, "url": "http://twitter.com/search?q=%2

  • python的dict判断key是否存在的方法

    大家在学会python中的字典,会发现,字典中是没有特殊顺序的,但是都存储在一个特定的key下面,key是什么呢?其实key是python字典中的键,可以是数字,也可以是字符串,可以存储任意类型的对象.那你知道如何判断字典中key的存在吗?下面小编就向大家介绍python中,判断字典中是否存在key的两种方法. 方法一:使用自带函数实现 dict = {'a': {}, 'b': {}, 'c': {}} print(dict.__contains__("b")) 返回:True pr

  • python中readline判断文件读取结束的方法

    本文实例讲述了python中readline判断文件读取结束的方法.分享给大家供大家参考.具体分析如下: 大家知道,python中按行读取文件可以使用readline函数,下面现介绍一个按行遍历读取文件的方法,通过这个方法,展开我们要讨论的问题: 复制代码 代码如下: filename = raw_input('Enter your file name')  #输入要遍历读取的文件路径及文件名 file = open(filename,'r') done = 0 while not  done:

  • python修改字典内key对应值的方法

    本文实例讲述了python修改字典内key对应值的方法.分享给大家供大家参考.具体实现方法如下: d2 = {'spam': 2, 'ham': 1, 'eggs': 3} # make a dictionary print d2 # order is scrambled d2['ham'] = ['grill', 'bake', 'fry'] # change entry print d2 运行结果如下: {'eggs': 3, 'ham': 1, 'spam': 2} {'eggs': 3,

  • Python获取Redis所有Key以及内容的方法

    一.获取所有Key # -*- encoding: UTF-8 -*- __author__ = "Sky" import redis pool=redis.ConnectionPool(host='127.0.0.1',port=6379,db=0) r = redis.StrictRedis(connection_pool=pool) keys = r.keys() print type(keys) print keys 运行结果: <type 'list'> ['fa

  • python 字典修改键(key)的几种方法

    python中获取字典的key列表和value列表 # -*- coding: utf-8 -*- # 定义一个字典 dic = {'剧情': 11, '犯罪': 10, '动作': 8, '爱情': 3, '喜剧': 2, '冒险': 2, '悬疑': 2, '惊悚': 2, '奇幻': 1} #通过list将字典中的keys和values转化为列表 keys = list(dic.keys()) values = list(dic.values()) # 结果输出 print("keys列表

  • Python中条件判断语句的简单使用方法

    最简单的条件语句: if expression: expr_true_suite 如上,if是关键字,expression是条件表达式,条件表达式支持多重条件判断,可以用布尔操作符and.or和not连接,expr_true_suite是代码块,expression为true时执行,代码块如果只有一行,上面的整个条件语句便可全部写到一行,但可读性差. 带elif和else的条件语句: if expression1: expr1_true_suite elif expression2: expr2

  • Python判断dict中key是否存在的3种方法实例

    目录 前言 判断方法 第一种方法:使用has_key()方法 第二种方法:使用keys()方法 第三种方法:优雅的使用 in 关键字(Python3支持,Python2不清楚) 总结 前言 今天写代码遇到一个问题,如果要获取字典中某个key的value,那么很简单,直接获取就行了. 但是如果不确定这个字典中是否存在这个key,那直接获取就有可能会报错,那么会有一个KeyError的错误被抛出,当然你也可以直接通过捕获异常的方式来处理这个问题,但我更推荐大家提前判断这个字典中是否有这个key,也就

  • python通过字典dict判断指定键值是否存在的方法

    本文实例讲述了python通过字典dict判断指定键值是否存在的方法.分享给大家供大家参考.具体如下: python中有两种方法可以判断指定的键值是否存在,一种是通过字典对象的方法 has_key 判断,另外一种是通过 in 方法,下面是详细的范例. d={'site':'http://www.jb51.net','name':'jb51','is_good':'yes'} #方法1:通过has_key print d.has_key('site') #方法2:通过in print 'body'

随机推荐