This could be an interesting error

Seymore4Head Seymore4Head at Hotmail.invalid
Sun Aug 31 17:07:06 EDT 2014


I forgot to mention this is supposed to be piglatin.  It prints the
prefix and the suffix before printing the translated word.

On Sun, 31 Aug 2014 17:02:51 -0400, Seymore4Head
<Seymore4Head at Hotmail.invalid> wrote:

>import math
>import random
>import sys
>
>ex='Hey buddy get away from the car'
>newex = ex.split()
>sentence=""
>
>print (newex)
>wait = input ("          Wait")
>
>def pigword(test):
>    for x in range(len(test)):
>        if test[x] in "AEIOUaeiou":
>            stem = test [x:]
>            prefix = test [:x]
>            pigword = stem + prefix + "ay"
>            print ("Stem ",stem)
>            print ("Prefix",prefix)
>            print (pigword)
>            break
>    return (pigword)
>
>for x in range(len(newex)):
>    sentence = sentence + pigword(newex[x])+ " "
>    print (sentence)
>    wait = input ("          Wait")
>
>The program seems to work and it does work with everything I have
>tried so far.  The one exception is if you change "the" to "my" (in
>the first line) the program crashes.
>
>
>Traceback (most recent call last):
>  File "C:\Documents and
>Settings\Administrator\Desktop\Functions\test.py", line 25, in
><module>
>    sentence = sentence + pigword(newex[x])+ " "
>  File "C:\Documents and
>Settings\Administrator\Desktop\Functions\test.py", line 22, in pigword
>    return (pigword)
>UnboundLocalError: local variable 'pigword' referenced before
>assignment
>>>> 



More information about the Python-list mailing list