gpt4 book ai didi

python - 一种保证从无序字典中排序键/值列表的方法?

转载 作者:行者123 更新时间:2023-11-28 19:56:40 24 4
gpt4 key购买 nike

我有一本字典,其中包含标题和数据。有没有办法将这些数据分成两个列表,同时保持从字典中提取的顺序?我必须分别处理键列表和值列表,然后使用这些列表构建一个字符串。

这很重要,因为我将它们分别打印出来,并且输出必须匹配。列表是否乱序与输入时的顺序无关紧要。只要他们的位置在列表中匹配,就可以了。

这是一个非常简单的例子来表示这种情况:

mydict = {'Hello':1, 'World':2, 'Again':3}
keys = mydict.keys()
values = mydict.values()

print 'The list of keys are: %s' % stringify(keys)
print 'The corresponding values are: %s' % stringify(values)

# Output:
> The list of keys are: Hello, Again, World
> The corresponding values are: 1, 3, 2

我知道我可以构建一个有序字典,然后保证获得键/值排序,但我也想处理这种情况(非有序字典)。

最佳答案

即使您看到这些对的顺序是任意的,keys()values() 的输出始终对齐,假设你不修改字典。来自docs :

If items(), keys(), values(), iteritems(), iterkeys(), and itervalues() are called with no intervening modifications to the dictionary, the lists will directly correspond. This allows the creation of (value, key) pairs using zip(): pairs = zip(d.values(), d.keys()). The same relationship holds for the iterkeys() and itervalues() methods: pairs = zip(d.itervalues(), d.iterkeys()) provides the same value for pairs. Another way to create the same list is pairs = [(v, k) for (k, v) in d.iteritems()].

关于python - 一种保证从无序字典中排序键/值列表的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17708345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com