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)

這樣就可以了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章