def file_to_wordlist(filename): f = open(filename, 'r') words = [] for line in f: # make lowercase line = line.lower() # strip punctuation line = line.replace(";", " ").replace(".", " ").replace(",", " ").replace("-", " ").replace(":", " ") words.extend(line.split(" ")) return words def print_sorted_by_frequency(frequncy): sorted_frequency = sorted(frequency.items(), key=lambda item: -item[1]) for key_value in sorted_frequency: print(key_value) words = file_to_wordlist("constitution.txt") frequency = {} for word in words: if(len(word) > 4): if word not in frequency: frequency[word] = 0 frequency[word] += 1 print_sorted_by_frequency(frequency)