将python字典写入textfi

2024-03-28 13:57:45 发布

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

我想在一个文本文件中编写python字典,其中每行包含一个键及其值,逗号作为分隔符。我正在使用以下代码:

with open(compounds, 'w') as f:
    for key, value in dict_NTID_IDs_in_EisDatabase.items():
        f.write('%s:%s\n' % (key, value))

但它返回以下错误TypeError:expected str,bytes或os.PathLike公司对象,而不是列表


Tags: key代码infor字典valueaswith
3条回答

问题是,在初始化复合文件时,不能将其解释为文件路径,因为它是一个列表。 把这个放在代码前面:

compounds = "my_dict.txt"

这将把你的字典写在你所在目录的一个文件中。您可以检查您所在的目录,或者用os包更改它。你知道吗

它应该与此配合使用:

with open(compounds, 'w') as f:
    for key, value in zip(dict_NTID_IDs_in_EisDatabase.keys(), dict_NTID_IDs_in_EisDatabase.values()):
        f.write('%s,%s\n' % (key, value))

您也可以使用前面提到的dict.items(),但是dict.items()返回tuple((key0, value0), (key1, value1) ...)。你知道吗

回到你的问题,你可以使用:

with open(compounds, 'w') as f:
    for item in dict_NTID_IDs_in_EisDatabase.items():
        f.write('%s,%s\n' % (item[0], item[1]))

希望对你有帮助!你知道吗

dic = {'Python' : '.py', 'C++' : '.cpp', 'Java' : '.java'}
f = open("dic.txt","w")
f.write( str(dic) )
f.close()

相关问题 更多 >