Just just at xs4all.nl
Thu Mar 9 15:32:31 CET 2006

```In article <slrne10bpc.9pj.hexkid at ID-203069.user.individual.net>,
Pedro Graca <hexkid at dodgeit.com> wrote:

>
>
>     def curious(text):
>         """ Return the words in input text scrambled except for the first and
>         last letter. """
>         new_text = ""
>         word = ""
>         for ch in text:
>             if ch in "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ":
>                 word = word + ch
>             else:
>                 new_text = new_text + scramble(word)
>                 word = ""
>                 new_text = new_text + ch
>         return new_text
>
>     def scramble(word):
>         """ scramble word """
>         from random import randint
>
>         if len(word) < 4:
>             return word
>         new_word = word[0]
>
>         ### transform "curious" into ['u', 'r', 'i', 'o', 'u']
>         letters = []
>         for ch in word:
>             letters.append(ch)
>         del letters[0:1]
>         del letters[-1]
>
>         ### why doesn't range(len(letters) - 1, 0, -1) work?
>         for i in range(len(letters) - 1, -1, -1):
>             j = randint(0, i)
>             new_word = new_word + letters[j]
>             del letters[j]
>         return new_word + word[-1]
>
>     print curious(curious.__doc__)

def curious(text):
""" Return the words in input text scrambled except for the
first and last letter. """
new_text = ""
word = ""
for ch in text:
if ch.isalpha():
word += ch
else:
new_text += scramble(word)
word = ""
new_text += ch
new_text += scramble(word)
return new_text

def scramble(word):
""" scramble word """
from random import shuffle
if len(word) < 4:
return word
letters = list(word[1:-1])
shuffle(letters)
return word[0] + "".join(letters) + word[-1]

Just

```