[Tutor] problem with an anagram program

jessica cruz jessica06cruz at yahoo.com
Mon Mar 9 09:28:38 CET 2009


I just started learning python an I'm currently working on this program. The purpose of this program is to read a string of letters from user input and print out all the words which are anagrams of the input string. This is what I have and when I try to run the program it says that there is an error "invalid syntax" but I can't figure out where. 




#this reads all of the words in the file into a list
infile = open('/afs/cats/courses/cmps012a-cm/pa1/wordList.txt')
wdcount = int(infile.readline()) #first item is count of all the words
word_list = infile.readlines()
wordList = []

# code that will be compared will be a histogram type code with frequency
# characters
def code(w):
    hist = []
    chars = list(w) 
    chars.sort() 
    for letter in chars: 
        if not letter in hist:  # when the letter is not already in hist, 
            hist.extend([letter, str(w.count(letter))])  # its added to hist along with its freq.
        else: 
            continue
    coding = "".join(hist) # then they are joined as one string
    return coding




# new list is made with words in word_list followed by its code
for word in  word_list:
    wordList.append(word) 
    wordList.append(code(word[:(len(word)-2)])) 


while True:
    word1 = raw_input('Enter word:') 
    word = word1.lower() 
    sig = code(word) 
    i = 1 
    if sig in wordList: 
        print "Anagrams:"
        while i <= len(wordList):  # when the sig of the inputed word is in the word list, 
            if sig == wordList[i]
            print wordList[i-1]  # the corresponding words are printed
            i += 2 # then adds two because codes are every other entry
    else:
        print "No anagrams"
    choice = raw_input("Continue? (yes/no)")
    if choice == 'y' or choice == 'yes':
        continue
    else:
        break
            
        
        
    
        
    



              
    
    
    





      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20090309/54781b33/attachment.htm>


More information about the Tutor mailing list