如何将多个字典组合成一个字符串?(键和值)



我有两个字典:

dict_1 = {'key1': 'value1'}
dict_2 = {'key2': 'value2'}

我想把它们组合成一个字符串,类似于这样(不需要看起来完全像那样):

key1 value1 - key2 value2

我试着这样做:

final_string = ' - '.join(chain(map(lambda x: x, {**dict_1, **dict_2})))

但是它给了我这个:

key1 - key2

我不知道要改变什么才能得到键和值?有人能帮我一下吗?

对你的代码做一个小小的调整:

' - '.join(map(lambda kv: ' '.join(kv), {**dict_1, **dict_2}.items()))

您可以使用items()

' - '.join([' '.join(i) for i in ({**dict_1, **dict_2}.items())])
'key1 value1 - key2 value2'

可以使用列表推导式:

res = ' - '.join([f"{k} {v}" for d in [dict_1, dict_2] for k, v in d.items() ])
print(res)

相关内容

最新更新