Как прочитать файл и распечатать его, пропуская определенные строки в python - PullRequest
0 голосов
/ 09 июля 2019

Я хотел бы читать файл построчно, но игнорировать любой файл, содержащий двоеточие (:).

В настоящее время я открываю один файл, читаю его и пытаюсь распечатать, прежде чем в конце концов поместить егов новый файл.

def shoppinglist():
    infile = open('filename.txt')
    contents = infile.readline()
    output = open('outputfilename.txt', 'w')
    while ":" not in contents:
        contents = infile.readline()
    else:
        contentstr = contents.split()
        print(contentstr)
    output.write(contents)
    infile.close()
    output.close()

Как есть, одна строка повторяется снова и снова.

1 Ответ

0 голосов
/ 09 июля 2019

Попробуйте:

def shoppinglist():
    contents = ""
    with open('filename.txt', 'r') as infile:
        for line in infile.readlines():
            if ":" not in line:
                contents += line

    with open('outputfilename.txt', 'w') as output_file:
        output_file.write(contents)

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