Jason Donegan
Jason Donegan

Reputation: 49

How do I separate words in python?

I have tried to make this work with a phrase, but I am having issues with getting it to the ie to go at the end of the words. For example HankTIE ouYIE would be the output of the input Thank You.

Here is what I have:

string=input("Please input a word: ")
def silly_encrypter(string):
    strr = string.split()
    for strr in string:
        first_letter_at_the_end = strr[1:] + strr[0]
        ie_at_the_end = first_letter_at_the_end + "IE"
        print (ie_at_the_end)

silly_encrypter(string)

Upvotes: 0

Views: 213

Answers (2)

RufusVS
RufusVS

Reputation: 4137

Upon reading the accepted answer, I had to provide a cleaner solution:

def silly_encryptor(phrase, suffix="IE"):
    new_phrase = []
    for word in phrase.split():
        new_phrase.append(word[1:]+word[:1]+suffix)
    return " ".join(new_phrase)

phrase = input("Please enter your phrase: ")
print (silly_encryptor(phrase))

Upvotes: 0

ppwater
ppwater

Reputation: 2277

You can do this:

string=input("Please input a word: ")
def silly_encrypter(string):
    splitspace = string.split() # first split the string into spaces.
    for s in splitspace: # then looping over each element,
        strlist = list(s) # turn the element into a list
        strlist.append(strlist[0]) # first number to the last
        del strlist[0] # delete the first number
        strlist[0] = strlist[0].capitalize() # Capitalize the first letter
        strlist.append('IE') # add IE
        print(''.join(strlist), end=" ") # join the list

silly_encrypter(string)

Upvotes: 2

Related Questions