Home > OS >  If input is: Jane Silly Doe Output is: Doe, J.S. If input is: Julia Clark Output is: Clark, J. Issue
If input is: Jane Silly Doe Output is: Doe, J.S. If input is: Julia Clark Output is: Clark, J. Issue

Time:07-19

If input is: Jane Silly Doe Output is: Doe, J.S.

If input is: Julia Clark Output is: Clark, J. Issue:

I can make it run for either or but not both

This only works for input Jane Silly Doe but not for input Julia Clark. I can make it run for either or but not both at the same time.

string = input()
words = string.split()
title = ''
for word in words:
    title  = word

another = (words[-1] ',')
second = (words[0])
third = (words[1])
fourth = second   third

upper = ''
for char in fourth:
    if char.isupper():
        upper  = char

join_string = '.'.join(upper)
print(another, join_string   '.')

CodePudding user response:

You can use fixed index like words[1] use slicing words[:-1] to get all values except the last one

def shorten(string):
    words = string.split()
    result = words[-1]   ', '
    for char in ''.join(words[:-1]):
        if char.isupper():
            result  = char   "."
    print(result)
shorten("Julia Clark")  # Clark, J.
shorten("Jane Silly Doe")  # Doe, J.S.
shorten("Jane Silly Jack James Doe")  # Doe, J.S.J.J.
  • Related