Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将简单类序列化为文件中的一行_Python_Serialization - Fatal编程技术网

Python 将简单类序列化为文件中的一行

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

我有一个非常简单的Python类Post,它只有3个字符串字段:author、timestamp和content

我想将这些对象序列化到一个文件中,所以我尝试了Pickle,但每个文件使用3行,我只想迭代文件的每一行,并将1行转换为1个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})