Python 将简单类序列化为文件中的一行
我有一个非常简单的Python类Post,它只有3个字符串字段:author、timestamp和content 我想将这些对象序列化到一个文件中,所以我尝试了Pickle,但每个文件使用3行,我只想迭代文件的每一行,并将1行转换为1个Post对象Python 将简单类序列化为文件中的一行,python,serialization,Python,Serialization,我有一个非常简单的Python类Post,它只有3个字符串字段:author、timestamp和content 我想将这些对象序列化到一个文件中,所以我尝试了Pickle,但每个文件使用3行,我只想迭代文件的每一行,并将1行转换为1个Post对象 将这些对象序列化为一行的简单方法是什么?可以将对象存储为CSV文件的行。CSV文件的每一行都有三个逗号分隔的值,分别是author、timestamp和content。请查看csv库: 您可能最终会做这样的事情(未经测试): 你能修改Post类吗?
将这些对象序列化为一行的简单方法是什么?可以将对象存储为CSV文件的行。CSV文件的每一行都有三个逗号分隔的值,分别是author、timestamp和content。请查看csv库: 您可能最终会做这样的事情(未经测试):
你能修改
Post
类吗?
posts = [ Your Posts array ]
with open('posts.csv', 'w', newline='') as csvfile:
fieldnames = ['author', 'timestamp', 'content']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
for p in posts:
writer.writerow({'author': p.author, 'timestamp': p.timestamp, 'content' : p.content})