Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Программирование на языке Python, задача с Coursera

Задание с Курсеры

Во входном файле (вы можете читать данные из файла input.txt) записан текст. Словом считается последовательность непробельных подряд идущих символов. Слова разделены одним или большим числом пробелов или символами конца строки. Для каждого слова из этого текста подсчитайте, сколько раз оно встречалось в этом тексте ранее.

Формат ввода

Вводится текст.

Формат вывода

Выведите ответ на задачу.

Вожусь с нею уже несколько дней. Пожалуйста, не копипастите решения из других источников - я их все пересмотрела и опробовала, они проверку не проходят.

Мой вариант (тоже не прошел, runtime error). Може кто-нибудь сможет разгадать задачу?)

inf = open('input.txt', 'r', encoding='utf-8')
outFile = open('output.txt', 'w', encoding='utf-8')
count = {}
for line in inf:
words = list(line.strip().split())
for words in words:
count[word] = count.get(word, 0) + 1
print((count[word] - 1), sep=' ', end=' ', file=outFile)

На фото примеры ввода и вывода

По дате
По рейтингу
Аватар пользователя
Новичок
5лет

counts = {}
results = []

words = [x.strip() for x in open('input.txt', 'r', encoding='utf-8').read().split()]

for word in words:
____counts.setdefault(word, 0)
____results.append(counts[word])
____counts[word] += 1

print(*results)

Аватар пользователя
Просветленный
5лет

Коротко опиши чо нада, лень читать, я катку про*бываю