Вопрос:
У меня есть этот код
#Ask for word w = input(«Type in a word to create acronym with spaces between the words:») #Seperate the words to create acronym s = w.split(» «) letter = s[0] #print answer print(s.upper(letter))
И я знаю, что мне нужен цикл for, чтобы перебирать слова, чтобы получить первую букву каждого слова, но я не могу понять, как это сделать. Я пробовал много разных типов, но я продолжал получать ошибки.
Ответ №1
Попробуй это. Он печатает конкатенированную версию первой буквы каждого слова.
w = input(«Type in a word to create acronym with spaces between the words:») print(».join([e[0] for e in w.split()]).upper()) Ответ №2
Попробуй это
w = input(«Type a phrase with a space between the words:») w_up_split = w.upper().split() acronym = «» for i in w_up_split: acronym += (i[0]) print(acronym) Ответ №3for word in w.split(» «): first_letter = word[0] print(first_letter.upper()) Ответ №4
В коде, который вы указали, вы берете первое слово в списке списков.
s = w.split(» «) letter = s[0]
Если кто-то вводит “Привет, как вы”, это будет равно
s == [«Hi»][«how»][«are»][«you»]
И тогда буква будет равна первому индексу s, который будет [“Привет”]
Вы хотите пройти каждое слово и взять каждое письмо
acronym = [] for x in s: acronym.append(x[0])
Получи, что хочешь.