Как считать две отдельные строки в текстовом файле и утверждать, что они равны друг другу? - PullRequest
0 голосов
/ 04 ноября 2018

Учитывая текстовый файл, который содержит кучу обзоров playstation 4, мне поручили извлечь строки, включающие «rating:» и «review:», сохранив их в свои собственные списки. Мне нужно иметь возможность использовать

 assert len(ratings) == len(reviews)

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

ratings=[] 
reviews=[]
def line_count(fname):
    with open("PlayStation-4-Console_reviews.txt") as text_file:
        for i, line in enumerate(text_file):
            pass
    return i+1
print(line_count("PlayStation-4-Console_reviews.txt"))

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

Ответы [ 2 ]

0 голосов
/ 04 ноября 2018

На основании ответа Кори вы можете сделать что-то вроде этого:

ratings = []
reviews = []


def line_count(filename="PlayStation-4-Console_reviews.txt"):
    with open(filename) as f:
        for line in f.read().splitlines():
            if 'review' in line: reviews.append(line)
            elif 'rating' in line: reviews.append(line)


assert len(ratings) == len(reviews)
0 голосов
/ 04 ноября 2018

Вы можете использовать ключевое слово in, чтобы проверить, является ли одна строка подстрокой другой:

if 'review' in line:
    reviews.append(line)
elif 'ratings' in line:
    ratings.append(line)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...