Построение кортежа словаря из файла TXT. Выведите другой файл TXT, чтобы проверить точность моего словаря. - PullRequest
0 голосов
/ 05 октября 2018

Использование python 3.6 в Spyder

Я пытаюсь создать код, в котором я получаю следующее:

- создайте кортеж из словаря, который будет отслеживать количество, показывающее, какчасто слово и тег появляются вместе в списке

- выводит файл с оператором печати, который даст текстовый файл с тем же стилем, что и входной файл (позиция слова, слово, тег)

Я делаю это, чтобы использовать его с другим входным файлом без последнего столбца (позиция слова, слово) и назначать теги на основе того, что есть в моем словаре.

Входной файлкак показано (поля разделены табуляцией):

1 i PRP

2 хочу VBP

3 до

4 перейти VB

Код, который у меня пока есть, это

file=open("/Users/Desktop/training.txt").read().split('\n')

d = {}
for i in file:
    if i[1:] in d.keys():
        d[i[1:]] += 1
    else:
        d[i[1:]] = 1

with open('/Users/Desktop/2output.txt', 'w') as file:
for nested_list in d.keys():
    for word in nested_list:
         file.write(word + '\t')
         file.write('\n')

со всем кодом, я получаю следующие результаты: i

i

P
R
P

'
d

M
D

l
i
k
e

V
B

Так что я выбрасываю слово положение в моем коде.Мои вопросы:

Как мне сохранить положение слова в моем коде?

Почему я получаю один символ в строке?

Большое спасибо.Вся помощь очень ценится.

1 Ответ

0 голосов
/ 05 октября 2018

Я не уверен, что вы подразумеваете под

Все в основном работало, кроме оператора записи, который выводит файл, который я нигде не могу найти, никакой ошибки, но он просто не работает

Возможно, ваша проблема в том, что вы не указали полный путь при открытии файла записи.Раньше в программе вы читали "/Users/Desktop/training.txt", но позже вы открываете '2output.txt' без указания полного пути.Я бы попробовал открыть '/Users/Desktop/2output.txt' и посмотреть, сохранен ли выходной файл в папке Desktop.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...