YDL | Tips for NLP-1

想要跑一个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)

这样就可以了


猜你喜欢

转载自blog.csdn.net/yangdelu855/article/details/80836566
今日推荐