"""This module contains a code example related to
Think Python, 2nd Edition
by Allen Downey
http://thinkpython2.com
Copyright 2015 Allen Downey
License: http://creativecommons.org/licenses/by/4.0/
"""
from __future__ import print_function, division
from rotate import rotate_word
def make_word_dict():
"""Read the words in words.txt and return a dictionary
that contains the words as keys"""
d = dict()
fin = open('words.txt')
for line in fin:
word = line.strip().lower()
d[word] = None
return d
def rotate_pairs(word, word_dict):
"""Prints all words that can be generated by rotating word.
word: string
word_dict: dictionary with words as keys
"""
for i in range(1, 14):
rotated = rotate_word(word, i)
if rotated in word_dict:
print(word, i, rotated)
if __name__ == '__main__':
word_dict = make_word_dict()
for word in word_dict:
rotate_pairs(word, word_dict)