想要跑一個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)
這樣就可以了