Как я могу узнать, сколько раз строка появляется в текстовом файле?

#python

#python

Вопрос:

Мне был предоставлен путь к файлу .txt (P) файл и строка (строки). Мне нужно вывести, сколько раз S появляется в P.

Введенный мной код:

 import re
results = re.findall(S, P)
print(len(results))
 

Сбой программы при вводе: ../content/textfiles/parrot.txt попугай

Ожидаемый результат: 3

Результат вашей программы: 1

Ответ №1:

Кажется, "parrot.txt" это имя текстового файла, в котором строка "parrot" появляется 3 раза. Вы правильно определили, что "parrot" она появляется в имени файла "parrot.txt" только один раз. Вам нужно будет открыть и прочитать текстовый файл, если вы хотите подсчитать, сколько раз "parrot" он появляется не в названии, а в самом файле.

Комментарии:

1. Спасибо тебе, Джон. Это именно то, чего мне не хватало.

2. Перед import re тем, как я добавил file1=open(P,'r') data=file1.read()

3. Это должно решить проблему, хотя вы также должны убедиться, что закрыли файл (или используете with ). Будучи Python, я подозреваю, что файл представляет собой отрывок из знаменитого эскиза Dead Parrot . Полная стенограмма содержит гораздо больше, чем 3. Если этот ответ решает проблему адекватно, вы можете пометить его как принятый (с помощью флажка рядом с вопросом).