如何检查我想要的密钥是否存在于python中

时间:2011-04-03 10:49:56

标签: python tuples

我有一组看起来像这样的物体:

('MATE555', ([('Wdfd',7), ('dfs', 2), ('Tdfs77', 2), ('Fsf1', 1), ('s01', 1), ('Bdf1', 1), ('fs01', 1)],))

我希望创建的函数检查名称密钥是否存在。如果它存在,它将返回元组的第二部分,如果不存在则返回'无密钥'。
例如

  

get_list('MATE555')会返回   [('Wdfd',7),('dfs',2),('Tdfs77',   2),('Fsf1',1),('s01',1),('Bdf1',   1),('fs01',1)]和   get_list(“HIW6”)将返回“无键”

2 个答案:

答案 0 :(得分:2)

为什么使用元组对象作为'key - >价值'数据模型? Python有一个名为“Dictionary”的HashMap类,它应该用来代替'key - >的元组。值'数据模型,因为它提供了比元组更多的灵活性:

从列表创建dict:

your_dict = dict([(key1, value1), (key2, value2), (key3, value3), ...])

所以在你的情况下:

your_dict = dict([your_tuple])

在dict中搜索密钥:

if your_key in your_dict:
    print your_dict[your_key]
else:
    print "Key not present."

添加新的密钥 - >价值'对:

your_dict[new_key] = new_value_object

删除'密钥 - >价值'来自dict:

del your_dict[key]

等...更多信息可以在这里找到:http://docs.python.org/library/stdtypes.html#mapping-types-dict

答案 1 :(得分:1)

if your_list[0] == 'MATE555':
   print your_list[1]
else:
   print 'no key'

请先阅读Python教程......这是Python基础知识......