Python 3 - 如何列出字典中的前 5 个值?

use*_*090 1 python dictionary python-3.x

我从 JSON 加载字典数据,如下所示:

list_of_people = json.load(open('list_of_people.json'))
Run Code Online (Sandbox Code Playgroud)

我想从此 JSON 中选择前 5 个值项。我尝试这样做:

print(data.values()[0:5])
Run Code Online (Sandbox Code Playgroud)

然而,这导致了

TypeError: 'dict_values' object is not subscriptable
Run Code Online (Sandbox Code Playgroud)

我该如何列出呢?

Ada*_*Er8 5

只需投射values到一个列表,如下所示:

print(list(data.values())[0:5])
Run Code Online (Sandbox Code Playgroud)

注意:如果您使用的是 Python 3.5 及更早版本,字典不会维护顺序,在这种情况下,“前 5 个元素”并不是真正的东西......

如果您有特定的方法对它们进行排序,则可以使用sorted排序,然后才使用切片[0:5]