Python 如何将字典转换为合适的格式以保存到文件
我是python新手,但是遇到了一个问题 我保存了一个文件,看起来像:Python 如何将字典转换为合适的格式以保存到文件,python,file,dictionary,Python,File,Dictionary,我是python新手,但是遇到了一个问题 我保存了一个文件,看起来像: a,1 b,2 c,3 我可以使用以下代码将其转换为字典: file = open("dict.txt",'r') dictionary = {} for line in file: x = line.split(",") key = x[0] value = x[1] value = value [:-1] dictionary[k
a,1
b,2
c,3
我可以使用以下代码将其转换为字典:
file = open("dict.txt",'r')
dictionary = {}
for line in file:
x = line.split(",")
key = x[0]
value = x[1]
value = value [:-1]
dictionary[key] = value
有一些代码允许用户编辑元素(所以字典现在由a:1、b:2、c:3、d:4组成)
然而,我需要以上面提到的形式得到字典
所以
这可能吗
另外,如果答案中有一些解释,我将非常感谢您所指定的内容,您可以使用
items()
函数循环遍历字典的键/值对,并将每一对写入文件:
当然,将data\u dict
更改为您的字典,等等-这只是一个示例
在一些边缘情况下,这将不起作用,例如,如果键或值包含逗号。如果您希望正确存储逗号分隔的数据,您可能需要查看。使用
csvWriter
模块。我正在尝试在不导入模块的情况下找到解决方案,然后使用一个简单的for
循环来迭代字典,并写入以逗号分隔的键和值。我能问一下导入模块有什么问题吗?只要键没有逗号,您的示例就可以工作。不,CSV不是这样工作的。当CSV字段中有逗号时,它将被转义(\,
):好的,我只是警告OP它的限制。@DYZ我将在帖子中编辑限制的描述:)
a,1
b,2
c,3
d,4
data_dict = {'a': 1, 'b': 2, 'c': 3}
with open('data.txt', 'w') as file:
for key, value in data_dict.items():
file.write(str(key) + ',' + str(value) + '\n')