Я написал функцию python, которая должна принимать строку и возвращает ту же строку со всеми четными индексированными символами в каждом слове в верхнем регистре и всеми нечетными индексированными символами в каждом слове в нижнем регистре.
Например: to_weird_case ('Weird string case') # => возвращает 'WeIrD StRiNg CaSe'
def to_weird_case(string):
s = list(string.split(" "))
words = []
for word in s:
w = map(lambda x: x.upper() if word.index(x)%2 == 0 else x.lower(), word)
w = "".join(list(w))
words.append(w)
#print(words)
return " ".join(words)
Теперь к моей проблеме: как только будет передано более одного слова, последние буквы последнее слово все преобразуются в верхний регистр, и я не понимаю, почему ...
Например: to_weird_case ('Это тест') возвращает This Is A TeSTII
Спасибо за помощь