Odpowiedź :
a)
from collections import Counter
# otwórz i odczytaj plik slowa.txt
slowa_plik = open("słowa.txt", "r")
slowa = slowa_plik.read().split("\n")
slowa_plik.close()
# pogrupuj i policz które słowo ile razy wystąpiło
licznik = Counter(slowa);
# odwróć słowa
slowa_odwr = []
for slowo in slowa:
slowa_odwr.append(slowo[::-1])
# pogrupuj i policz które odwrócone słowa ile razy wystąpiły
licznik_odwr = Counter(slowa_odwr)
# otwórz i odczytaj plik nowe.txt
nowe_plik = open("nowe.txt", "r")
nowe = nowe_plik.read().split("\n")
nowe_plik.close()
# pobierz z "licznik" i "licznik_odwr" ilość wystąpień na postawie słów występujących w nowe.txt
odpowiedz = {}
for slowo in nowe:
print(slowo + " " + str(licznik[slowo]) + " " + str(licznik_odwr[slowo]))
b)
# otwórz i odczytaj plik slowa.txt
slowa_plik = open("słowa.txt", "r")
slowa = slowa_plik.read().split("\n")
slowa_plik.close()
# stwórz listę umożliwiającą liczenie
licznik = [0]*12
# zwiększ ten element listy o 1, którego index-1 jest równy długości słowa
for slowo in slowa:
licznik[len(slowo)-1] += 1
# wypisz wynik
for i in range(0,11):
print( str(licznik[i]) + ' słów ' + str(i+1) + '-literowych' )
Wyniki z printa() możesz skopiować do pliku wynik5.txt (co jest zgodne ze standardami na maturze)