如何创建一个将字典作为输入并输出其键的名称的函数?所以喜欢:
input_dictionary = {"foo": 1, "bar": 2}
names = get_names(input_dictionary) # returns ["foo", "bar"]
答案 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或密钥列表。字典更改时,此视图对象将反映该更改。