我有一本字典d = {1:-0.3246, 2:-0.9185, 3:-3985, ...}
。
如何将d
的所有值提取到列表l
中?
答案 0 :(得分:263)
如果您只需要字典键1
,2
和3
,请使用:your_dict.keys()
。
如果您只需要词典值-0.3246
,-0.9185
和-3985
,请使用:your_dict.values()
。
如果您想同时使用键和值:your_dict.items()
,它会返回元组列表[(key1, value1), (key2, value2), ...]
。
答案 1 :(得分:32)
使用values()
>>> d = {1:-0.3246, 2:-0.9185, 3:-3985}
>>> d.values()
<<< [-0.3246, -0.9185, -3985]
答案 2 :(得分:13)
对于Python 3,您需要:
list_of_dict_values = list(dict_name.values())
答案 3 :(得分:12)
如果您想要所有值,请使用:
dict_name_goes_here.values()
如果您想要所有密钥,请使用:
dict_name_goes_here.keys()
如果您想要所有项目(包括键和值),我会使用:
dict_name_goes_here.items()
答案 4 :(得分:9)
在dict上调用values()
方法。
答案 5 :(得分:5)
如果您想要所有值,请使用:
dict_name_goes_here.values()
答案 6 :(得分:3)
d = <dict>
values = d.values()
答案 7 :(得分:3)
要查看按键:
for key in d.keys():
print(key)
获取每个键引用的值:
for key in d.keys():
print(d[key])
添加到列表中:
for key in d.keys():
mylist.append(d[key])
答案 8 :(得分:2)
对于嵌套字典,字典列表和列出字典的字典,...您可以使用
def get_all_values(d):
if isinstance(d, dict):
for v in d.values():
yield from get_all_values(v)
elif isinstance(d, list):
for v in d:
yield from get_all_values(v)
else:
yield d
一个例子:
d = {'a': 1, 'b': {'c': 2, 'd': [3, 4]}, 'e': [{'f': 5}, {'g': 6}]}
list(get_all_values(d)) # returns [1, 2, 3, 4, 5, 6]
PS:我爱yield
。 ;-)
答案 9 :(得分:0)
Pythonic duck-typing原则上应确定一个对象可以做什么,即它的属性和方法。通过查看字典对象,可以尝试猜测它至少具有以下之一:dict.keys()
或dict.values()
方法。您应该尝试使用此方法来使用在运行时进行类型检查的编程语言,尤其是那些具有鸭子类型性质的编程语言。
答案 10 :(得分:-1)
dictionary_name={key1:value1,key2:value2,key3:value3}
dictionary_name.values()
答案 11 :(得分:-1)
普通 Dict.values()
会返回这样的东西
dict_values(['value1'])
dict_values(['value2'])
如果你只想要值使用
list(Dict.values())[0] # 在列表下