用python将集合写入输出文件

2024-10-05 10:04:55 发布

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

我通常对列表使用json,但对集合不起作用。有没有类似的函数可以把一个集合写入输出文件f?像这样的,但是对于布景:

f=open('kos.txt','w')
json.dump(list, f)
f.close()

Tags: 文件函数txtjson列表closeopendump
1条回答
网友
1楼 · 发布于 2024-10-05 10:04:55

json不是特定于python的格式。它知道列表和字典,但不知道集合或元组。在

但是如果您想持久化纯python数据集,可以使用字符串转换。在

with open('kos.txt','w') as f:
   f.write(str({1,3,(3,5)}))  # set of numbers & a tuple

然后用ast.literal_eval再次读一遍

^{pr2}$

这也适用于集合列表,嵌套的集合列表。。。只要数据可以按字面意思进行评估。因此,基本上用str序列化任何python基本对象结构都可以用它来解析。在

您也可以使用pickle模块,但它创建二进制数据,因此更加“不透明”,而且还有一种使用json:Python sets are not json serializable的方法。但为了你的需要,我会坚持str/ast.literal_eval

相关问题 更多 >

    热门问题