Хочу узнать с помощью цикла в python'e есть ли совпадения в файле. txt?
У меня есть проблема. В файле есть очень много ссылок, и я хочу через цикл в python узнать есть ли одинаковые ссылки в файле. txt так-как если будут одинаковые ссылки у меня будет ошибка в другом коде. https://pastebin.com/9sbTu89C вот пример как я пытался решить эту проблему, но явно я написал что-то не то.
with open('test.html', 'r') as file:
urls = sorted([u.strip() for u in file.readlines()])
urls_duplicate = sorted(list(set([u for u in urls if urls.count(u) > 1])))
print(urls_duplicate)
with open('test.txt', 'r') as file:
all_lines = file.readlines()
not_dupl = []
dupl = []
for line in all_lines:
if line not in not_dupl:
not_dupl.append(line)
else:
dupl.append(line)
print(set(dupl))
vasiklas, можно использовать Counter. Он посчитает кол-во использований каждой ссылки. Т.е. потом можно отобразить все, у которых более 1.
from collections import Counter
with open('test.txt', 'r') as file:
links = file.read().splitlines()
c = Counter(links)
print([link for link, cnt in c.items() if cnt>1])