Как сделать так, чтобы питон не выводил значение из input()?

У меня есть скрипт, который спрашивает у пользователя его имя, вроде:

print(input('What\'s your name? '))

И в ответ я получаю:

What's your name? Boris
Boris

Есть ли какой-то способ сделать так, чтобы вывод выглядел так же, но без первой строки? (What's your name? Boris). Или другими словами - как сделать так, чтобы метод input() после ввода - ничего не выводил?

Нашёл способ решения в этом вопросе, но как сказано в комментариях - при использовании того метода - пользователь не видит собственный ввод в терминале. А потому это решение не валидно, так как в моём случае пользователь должен видеть собственный ввод, но как только он нажал клавишу Enter - этот ввод не должен выводиться в окно терминала, пока переменная, использующая этот ввод не будет выведена через print().

Пример желаемого вывода в терминале:

Boris

Без строки What's your name? Boris


Ответы (3 шт):

Автор решения: MiniMax

Можно стереть введённое пользователем слово с помощью Escape последовательностей для управления терминалом, в частности положением курсора. Лучше использовать библиотеки, чем непосредственно коды - для независимости от конкретного терминала, но я библиотеками не пользовался, поэтому сказать ничего не могу. В Linux для этих целей есть tput утилита.

На Ubuntu я сделал так:

print('What\'s your name? ', end='')
print("\033[s", end='')     # Сохраняем положение курсора

name = input()

print("\033[u", end='')     # Восстанавливаем положение курсора
print("\033[K")             # Очищаем строку начиная с текущего
                            # положения курсора до конца

введите сюда описание изображения

→ Ссылка
Автор решения: Александр
import getpass
name = getpass.getpass(prompt="What's your name?")
→ Ссылка
Автор решения: Сергей

У тебя input задает вопрос, а ты выводишь его с print. Otvet: name = input("Whats ur name ?\n")

По факту ты только вводишь значение.

→ Ссылка