想要跑一个baseline发现输入是json文件
所以需要把txt文件处理一下
代码
# -*- coding: utf-8 -*-
import json
import random
f1 = open('new_train_withintro.txt', encoding='utf-8')
c = open('temp.json', 'w', encoding='utf-8')
readline1 = f1.readlines()
for line1 in readline1:
user={}
line1 = line1.strip('\n')
x,y=line1.split("__label__")
x,z=x.split("fengexian",1)
sents = z.split("fengexian")
random.shuffle(sents)
sents=sents[:20]
s=""
for sen in sents :
s+=sen+"。"
labels=[]
y=y.strip(" ")
y=y.split(" ")
for label in y :
labels.append(label)
user["content"]=s
user["title"]=x
user["tag"]=labels
jsonStr = json.dumps(user)
c.write(jsonStr)
结果处理之后发现结果是这样的
查了查发现原来是这个函数json.dumps()会自动把编码转化为转换ascii
jsonStr=json.dumps(user,ensure_ascii=False)
这样就可以了