python - 有没有办法配对字典项目?

标签 python dictionary

我想要做的是能够遍历我的字典并一次成对地打印出两个值,而无需将它们加倍。 所以如果我有:

dict = {'player1':'Bob' , 'player2':'John', 'player3':'Greg', 'player4':'Tim'}

我希望它能够将它分成两两而不加倍。 这样我就可以得到

Bob and John, Greg and Tim OR Bob and Greg, John and Tim.

抱歉,如果我没有很好地解释这一点,但希望你能理解我的意思。

最佳答案

d = {'player1':'Bob' , 'player2':'John', 'player3':'Greg', 'player4':'Tim'}

players = list(d.values())
print(', '.join('{} and {}'.format(players[i], players[i+1]) for i in range(0, len(players), 2)))

打印(例如):

John and Greg, Bob and Tim

您可以将第二行替换为

players = sorted(d.values())

获取按字母顺序排序的玩家列表。否则顺序将是任意的。

仅适用于偶数个玩家。

关于python - 有没有办法配对字典项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15020211/

相关文章:

python - 将数字转换为 Excel 的基数 26

python - cv2.imshow() 在 PyCharm (MacOS) 中无法正常工作

字符串中的Python类

dictionary - LZW (Limpel-Ziv-Welch) 字典编码定界符问题

Python Pandas : How to optimally compare each value of a dictionary with all other values?

python - 如何控制 django REST 框架返回的 JSON 的顺序?

python - "Can only join an iterable" python 错误

JavaScript Promise.all 代码未按预期工作

ios - Objective-C - 读取 JSON key 时的问题

Python 更新字典中键名的所有值