字典中的循环

2024-09-30 18:29:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要从字典里写str,然后这样做:

s = '\n'.join('\t'.join(key, sectionResults[key]) for key in sectionResults)

但有一个错误:

^{pr2}$

如何修复?谢谢


Tags: keyinfor字典错误joinstrpr2
2条回答

假设sectionResults如下所示。在

sectionResults={'ones': '111', 'twos': '222', 'threes': '333', 'fours': '444'}

您需要将内部和外部联接打包到列表中。在

^{pr2}$

这应该会给你这样的结果。在

fours   444
ones    111
twos    222
threes  333

少了什么

  1. str.join在一个参数中接受一个列表。你的理解是遗漏了使它成为正确列表的方括号。

  2. 您正在使用key访问字典中的数据。这意味着您应该迭代sectionResults.keys(),而不是通常返回(key, value)元组的{}。

joined_dicts = reduce(lambda p, v: p + v, [[t,y] for t, y in [z.items() for z in sectionResults]])

s = '\n'.join(str(x) + '\t' + str(y) for x, y in joined_dicts) 

相关问题 更多 >