#python
Вопрос:
Я просто хочу ввести текст:
text = input('Your text: ')
И после того, как пользователь введет текст, я хочу, чтобы программа брала из него только заглавные буквы и печатала их.
Что означает самый простой способ? — Ну, постарайтесь не использовать функции, списки и тому подобное. Постарайтесь сделать программу как можно проще. Заранее спасибо.
Комментарии:
1. Это будет трудно сделать с учетом ваших ограничений.
2. Что вы уже пробовали? Мы будем рады дать вам обратную связь, но здесь не место просить кого-то решить эту проблему.
Ответ №1:
for char in text: if char.isupper(): print(char)
Комментарии:
1. Огромное спасибо. Но как я могу напечатать их в одной строке?
2.
print(char, end="")
перестанет выводить новые строки3. печать(символ, конец=»»)
Ответ №2:
Несколько встроенных способов сделать это:
Понимание списка:
uppercase_chars = [char for char in text if char.isupper()]
Функции фильтра:
uppercase_chars = filter(str.isupper,text)
Хотя оба этих ответа возвращают списки, мы можем легко свернуть их в строки, используя str.join
примерно так:
''.join(uppercase_chars)
Они не так просты, как ответ BVB44, но их гораздо чаще можно увидеть в реальном коде.
Ответ №3:
Используйте цикл for, чтобы проверить, является ли каждый символ прописным, и добавьте его в новую переменную, если это так. Как это работает: Для каждого символа в переменной my_string
Python проверяет , является ли символ прописным. Если это так, он добавляет его в переменную output
. Это держит все на одной линии.
my_string = input("Type some stuff ") output = '' for char in my_string: if char.isupper(): output = output char print(output)