获取字典的关键名称列表

时间:2016-03-29 12:46:33

标签: python python-2.7

如何创建一个将字典作为输入并输出其键的名称的函数?所以喜欢:

input_dictionary = {"foo": 1, "bar": 2}
names = get_names(input_dictionary) # returns ["foo", "bar"]

3 个答案:

答案 0 :(得分:2)

使用keys()

>>> input_dictionary = {"foo": 1, "bar": 2}
>>> print input_dictionary.keys()
['foo', 'bar']

所以函数是:

def dictkeys(mydictionary):
    return mydictionary.keys()

输出:

>>> dictkeys(input_dictionary)
['foo', 'bar']

你真的不需要这个功能,因为它只是简单地使用dictionaryname.keys()

答案 1 :(得分:2)

input_dictionary = {"foo": 1, "bar": 2}
input_dictionary.keys() # ["foo", "bar"]

答案 2 :(得分:2)

您应该阅读字典的Python documentation(有关Python 3.5的信息,请参阅here)。有多种方法可以做到这一点。

您可以使用:

input_dictionary.keys(),显然是最简单的解决方案:

def get_names(input_dictionary):
    return input_dictionary.keys()

input_dictionary.iterkeys(),要获得字典键上的迭代器,那么您可以迭代这些键来创建它们的列表:

def get_names(input_dictionary):
    list_of_keys = []
    for key in input_dictionary.iterkeys():
        list_of_keys.append(key)
    return list_of_keys

input_dictionary.iteritems(),它返回字典(key, value)对上的迭代器,你可以迭代然后提取密钥:

def get_names(input_dictionary):
    list_of_keys = []
    for item in input_dictionary.iteritems():
        list_of_keys.append(item[0])
    return list_of_keys

input_dictionary.popitem(),它会弹出(删除)并从您的字典中返回一个任意(key, value)对,您可以从中提取密钥。但是,你可能不想要这个,因为它会清除你的字典

最后,input_dictionary.viewitems()input_dictionary.viewkeys()分别获取(key, value)对的view或密钥列表。字典更改时,此视图对象将反映该更改。