Python: Проверить, есть ли в файле указанная c строка текста - PullRequest
0 голосов
/ 14 июля 2020

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

Вот код, который Я не могу приступить к работе:

f=open("to-read.txt","r")

found = False
for x in f.readlines():
    print(x)
    if x is "Hello, World!" or x is "Hello, World!\n":
        found = True

print(found)

Я хочу, чтобы код печатал True, если Hello, World находится в любой из строк в to-read.txt, и False, если нет.

Когда я запускаю его, он читает строки, но никогда не находит «Hello, World!».

Ответы [ 2 ]

0 голосов
/ 14 июля 2020

Вы можете использовать ключевое слово in , чтобы проверить, существует ли указанная строка c в вашем файле

with open('to-read.txt', 'r') as f:
    lines = [line.strip('\n') for line in f.readlines]    # Getting each line without the new_line '\n'

    if 'Hello, World!' in lines:
        print(True)

    else:
         print(False)
0 голосов
/ 14 июля 2020
with open("to-read.txt", "r") as f:
   found = any("Hello, World!" in x for x in f)

print(found)

или, если вы хотите убедиться, что строка в точности соответствует «Hello, World!» вместо содержит его, вы можете использовать ==.

    found = any(x == "Hello, World!\n" for x in f)

или даже просто

    found = "Hello, World!\n" in f.readlines()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...