Я изучаю список Python и строковые функции. Мне нужно написать конкретную функцию. Моя функция корректно возвращает задачу Else. Однако я не могу использовать только первую и последнюю буквы каждого слова в данном предложении. Спасибо за вашу помощь, я могу использовать только основные функции, как указано в подсказках.
Вот задача: Если данное предложение начинается с *, первая и последняя буквы каждого слова в предложении заглавные, и возвращает предложение без *. Иначе, объединяет все слова в заданном предложении, разделяя их запятой, и возвращает результат.
Например, если мы вызовем capitalize_or_join_words(*я люблю python), мы получим в ответ I LovE PythoN. Если мы вызовем capitalize_or_join_words(i love python), мы получим взамен i,love,python. Если мы вызовем capitalize_or_join_words(i love python ), мы получим взамен i,love,python.
Советы. Функция startswith() проверяет, начинается ли строка с определенного символа. Функция capitalize() делает первую букву строки прописной. Функция upper() преобразует все символы нижнего регистра в строке в верхний регистр. Функция join() создает одну строку из списка нескольких строк.
def capitalize_or_join_words(sentence):
if sentence.startswith('*'):
s = sentence.replace('*','')
s2 = s.split()
s3 = []
for word in s2:
s3 += word.capitalize()
temp = ",".join(s3)
sentence_revised = temp
else:
s = sentence.split()
sentence_revised = ",".join(s)
return sentence_revised