Python 如何将此txt文件解析为csv?

Python 如何将此txt文件解析为csv?,python,parsing,Python,Parsing,如何将其解析为csv文件 [{“新比赛”:0,“原赛”:146,“推荐赛”:342,“得分”:10.442},{“新比赛”:0,“原赛”:146,“推荐赛”:11,“得分”:12.4652521},{“新比赛”:0,“原赛”:238,“推荐赛”:55,“得分”:11.459223},{“新比赛”:0,“原赛”:238,“推荐赛”:654,“得分”:12.33},{“新比赛”:0,“原赛”:203,“推荐赛”:119,“分数”:2.384},{“新匹配”:0,“原始sid”:203,“推荐sid”

如何将其解析为csv文件

[{“新比赛”:0,“原赛”:146,“推荐赛”:342,“得分”:10.442},{“新比赛”:0,“原赛”:146,“推荐赛”:11,“得分”:12.4652521},{“新比赛”:0,“原赛”:238,“推荐赛”:55,“得分”:11.459223},{“新比赛”:0,“原赛”:238,“推荐赛”:654,“得分”:12.33},{“新比赛”:0,“原赛”:203,“推荐赛”:119,“分数”:2.384},{“新匹配”:0,“原始sid”:203,“推荐sid”:274274,“分数”:18.36}]

是我的ad.txt文件


我想创建一个包含“new_match”、“original_sid”、“Recommendated_sid”和“score”列的数据帧。有什么方法可以快速做到这一点吗?

这看起来像json,所以您应该能够喜欢它。这会将您的CSV打印到输出

#!/usr/bin/env python3

import json
import csv
import sys

# pass in your ad.txt
d = json.load(open(sys.argv[1]))
csvw = csv.DictWriter(sys.stdout, fieldnames=['new_match', 'original_sid', 'recommended_sid', 'score'])
csvw.writeheader()
for i in d:
    csvw.writerow(i)
使用熊猫:

将熊猫作为pd导入
数据=[
{“新匹配”:0,“原始匹配”:146,“推荐匹配”:342,“分数”:10.442
{“新匹配”:0,“原始匹配”:146,“推荐匹配”:11,“分数”:12.4652521},
{“新匹配”:0,“原始匹配”:238,“推荐匹配”:55,“分数”:11.459223},
{“新匹配”:0,“原始sid”:238,“推荐sid”:654,“分数”:12.33},
{“新匹配”:0,“原始匹配”:203,“推荐匹配”:119,“分数”:2.384},
{“新匹配”:0,“原始匹配”:203,“推荐匹配”:274274,“分数”:18.36}
]
df=pd.DataFrame(数据)
数据\u csv=df.到\u csv(索引=False)

Hi here,可能使用
csv.reader
:可能重复的