У меня есть следующий фрагмент кода, который я пытаюсь запуститьпитона 3 не Concat байт Str для списка
import json
import textProcess as tp
review = open('../inres_review.json')
vocabulary = open('../vocabulary.txt','w+')
label = open('../label.txt','w+')
data = open('../data.txt','w+')
voc = []
revs = []
lab = []
dat = []
i=1
for line in review:
jre = json.loads(line)
jstar = jre['stars']
text = jre['text']
lab.append(jstar)
ws = tp.removeStopPunc(text)
revs.append(ws)
voc += ws
i += 1
for i in lab:
label.write(str(i)+"\n")
print ("label created successfully!")
voc = list(set(voc))
print (len(voc))
print (type(i))
for i in voc:
vocabulary.write(i.encode('UTF-8')+"\n")
print ("Vocabulary created successfully!")
for revid, rev in enumerate(revs):
dat.append({})
for w in rev:
if w in voca:
k = voca.index(w)+1
if k not in dat[revid]:
dat[revid][k] = 1
else:
dat[revid][k] += 1
print (len(revs))
for revid, rev in enumerate(dat):
for k,v in rev.iteritems():
s = str(revid+1)+' '+str(k)+' '+str(v)+'\n'
data.write(s)
print ("successfully create data")
review.close()
vocabulary.close()
label.close()
data.close()
Однако, независимо от того, каких изменений я я реализую я получаю следующее ошибка. Кто-нибудь может указать, что здесь не так?
TypeError Traceback (most recent call last)
<ipython-input-18-21a3dc9eb8ad> in <module>()
33 print (type(i))
34 for i in bvoca:
---> 35 vocabulary.write(i.encode('UTF-8')+"\n")
36 print ("successfully create vocabulary!")
37
TypeError: can't concat bytes to str
Любая помощь приветствуется!
вопросы выше были исправлены .. Однако, когда я запускаю мой код выглядит как последний блок кода не получается выполнить, потому что мой файл data.txt пуст, также вывод не печатает len (revs) и «успешно созданные данные». Любая идея, что это может быть? –