将字典内容输出为指定的文本格式

问题描述

我有一本包含以下信息的字典

dict = {'key1':['1:2','2:3','3:4'],'key2':['4:5','5:6']}

我需要使用以下格式将其放到文本文件中,密钥及其值要用逗号分隔,不要用引号引起来,每个密钥及其值都应由新行分隔

key1,1:2,2:3,3:4
key2,4:5,5:6

如果我使用以下代码,但未获得预期的输出,将不胜感激

with open('test.txt','w',encoding = 'utf-8') as f:
     f.writelines(f'{k},{v}\n'for k,v in dict .items())

解决方法

就像Patrick所说的那样使用join

d = {'key1':['1:2','2:3','3:4'],'key2':['4:5','5:6']}

for k,v in d.items():
    print(f'{k},{",".join(v)}')

#or writing to a file:
with open('test.txt','w',encoding = 'utf-8') as f:
     f.writelines(f'{k},".join(v)}\n' for k,v in d.items())

根据要求输出