Witam
Mam zadanie połączyć dwa pliki tekstowe razem. W pliku znajdują się same wyrazy oddzielone enterem. Wynikiem ma być trzeci plik tekstowy. O ile jest to proste to trudność polega na tym że w pliku trzecim nie ma być powtórzeń. Więc wymyśliłem coś takiego że biorę wyraz z pliku pierwszego i szukam go w pliku końcowym. Jeśli go tam nie ma to ma dopisać. Jeśli się znajduje to ma wsiąść kolejny wyraz i znowu szukać.
Napisałem już coś takiego:
def read():
with open('slowo.txt') as reader:
for slowo in reader:
yield slowo
def write():
with open('dictionary.txt', 'r') as writer:
for slowo2 in writer:
yield slowo2
for read1 in read():
for read2 in write():
#print(read1.strip() + ' oraz ' + read2.strip())
if read1.strip() == read2.strip():
print('słowo już jest: '+ read1.strip())
break
if read1.strip() != read2.strip():
pass
Zatrzymałem się na tym że skąd program ma wiedzieć że dotarł do końca pliku żeby mógł podjąć decyzję że słowa brakuje. Czy jest inne rozwiązanie tego zagadnienia niż te które wymyśliłem.