У меня есть .TSV-файл с именами фильмов и данными фильмов, которые я анализирую с помощью пакета PYDOT. файл связан Here. Файл, содержащий JSON, используемый для его создания, связан с Here.Юникод правильно пишет, неправильно читает
Файл написан на основе разобранного JSON и написан с использованием кодировки utf-8. Хотя файл правильно пишет, когда я прочитал его обратно в Python, интерпретатор, кажется, последовательно останавливается на следующей строке:
'Taken\t["Liam Neeson", " Maggie Grace", " Jon Gries", " David Warshofsky"]\n'
'The Walking Dead\t["Andrew Lincoln", " Steven Yeun", " Chandler Riggs",'
Вывод должен выглядеть следующим образом, и записывается как таковой в файле :
Taken ["Liam Neeson", " Maggie Grace", " Jon Gries", " David Warshofsky"]
The Walking Dead ["Andrew Lincoln", " Steven Yeun", " Chandler Riggs", " Norman Reedus"]
Toy Story 3 ["Tom Hanks", " Tim Allen", " Joan Cusack", " Ned Beatty"]
здесь код, который используется для создания текстового файла:
step3v2=open('step3.txt', 'rU')
step4=codecs.open('step4.txt', mode='w', encoding='utf-8')
data=[]
merged=''
for line in step3v2:
data.append(json.loads(line))
for row in data:
moviename=row[u'Title']
row[u'Actors']=row[u'Actors'].split(',')
actors=json.dumps(row[u'Actors']) + '\r\n'
merged+=moviename + '\t'
merged+=actors
step4.write(merged)
Вот код для чтения файла:
graph=pydot.Dot(graph_type='graph', charset='utf8')
step4v2=open('step4.txt', 'rU')
textfile=step4v2.readlines()
for line in textfile:
print repr(line)
переводчик, кажется, arbritarily останавливается на следующих line: означает что? есть ли ошибка? или он просто ждет или? –
Ошибка. В строке есть больше, что интерпретатор просто не читает. Я отредактирую вопрос для большей ясности. – Mike
и произвольно означает иногда? или всегда? –