Как написать функцию, которая проверяет, повторяются ли элементы в файле? - PullRequest
0 голосов
/ 04 апреля 2020

У меня есть файл "f.txt", и в нем много чисел в виде типа str. Каждое число имеет максимум 9 цифр и минимум 3. Каждое число отделяется символом новой строки (поэтому каждое число находится в отдельной строке, я не знаю, как правильно отформатировать это, чтобы примеры ниже не были ' t с точки зрения форматирования).

Я хочу написать функцию, которая просматривает файл и проверяет, есть ли в этом файле числа, которые повторяются. Внутренняя часть файла выглядит так:

1244816 \ n 2760125 \ n 1102758 \ n 713765 \ n 6521147 \ n 4711995 \ n 1494276 \ n 12336119 \ n 8398120 \ n 1215092 \ n 8125139 \ n .. .

with open("ket.txt") as f:
line = f.readline()
status = True
while status:
    if line == #looping through the entire file to see if there is
               #identical number:
        status = False

У меня есть псевдокод? Я не уверен, как я могу достигнуть части комментария все же.

1 Ответ

0 голосов
/ 04 апреля 2020

Допустим, у меня есть файл f.txt, содержащий:

12324
41564
7754564654654
123
87642
123
89745312

Затем следующий скрипт python, назовем его scan.py:

def main():
    with open('f.txt', 'r') as f:
        numbers_seen = set()
        for n in f:
            if n in numbers_seen:
                print('{} appears more than once!'.format(n.strip()))
                return
            numbers_seen.add(n)


if __name__ == '__main__':
    main()

, затем запускаем python scan.py даст:

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