текст перезаписывается в выходной файл - PullRequest
0 голосов
/ 30 января 2020
from urllib import request
from redditscore.tokenizer import CrazyTokenizer
tokenizer = CrazyTokenizer()
url = "http://www.site.uottawa.ca/~diana/csi5386/A1_2020/microblog2011.txt"
for line in request.urlopen(url):
    tokens = tokenizer.tokenize(line.decode('utf-8'))
    #print(tokens)
with open('your_file.txt', 'a') as f:
    print(tokens)
    for item in tokens:
        f.write("%s\n" % item)

В вышеприведенном коде мой вывод представлен в виде списка в переменных токенах. Когда я пытаюсь распечатать вывод в файл, текст перезаписывается. Я получаю только последнюю строку своего вывода

, пожалуйста, помогите ..

1 Ответ

0 голосов
/ 30 января 2020

Вы создаете новый экземпляр tokens каждый раз, когда l oop запускается в нижней части, поэтому он перезаписывает

for line in request.urlopen(url):
    tokens = tokenizer.tokenize(line.decode('utf-8'))

, поэтому лучше добавлять токены в список

from urllib import request
from redditscore.tokenizer import CrazyTokenizer
tokenizer = CrazyTokenizer()
url = "http://www.site.uottawa.ca/~diana/csi5386/A1_2020/microblog2011.txt"

tokens = []
for line in request.urlopen(url):
    tokens.extend(tokenizer.tokenize(line.decode('utf-8')))
    #print(tokens)

with open('your_file.txt', 'a') as f:
    print(tokens)
    for item in tokens:
        f.write("%s\n" % item)
...