Python удаление строки ввода - PullRequest
1 голос
/ 14 января 2020

Я хотел бы иметь ввод l oop в python 3, где информация, которая вводится, автоматически удаляется с терминала (например, через 3 секунды). Я знаю функцию с \ r до go вернуться в очередь, но бороться с автоматами c новая строка после ввода.

while True:
    inputStr = (input("Add the hidden word: ")).lower()
    processingTheInput(inputStr) #some sort of function using the input word

Ответы [ 2 ]

1 голос
/ 14 января 2020

Экранирующие коды Ansi не будут работать одинаково на всех терминалах, но это может удовлетворить ваши потребности. «\ 033» - это escape-символ. '[1A' говорит go вверх на одну строку, а '[K' говорит стирание до конца этой строки.

prompt = 'Add the hidden word: '
inputStr = input(prompt).lower()
print ('\033[1A' + prompt + '\033[K')
1 голос
/ 14 января 2020

Вы хотите очистить терминал с помощью функции

# import only system from os 
from os import system, name 

# import sleep to show output for some time period 
from time import sleep 

# define our clear function 
def clear(): 

    # for windows 
    if name == 'nt': 
        _ = system('cls') 

    # for mac and linux(here, os.name is 'posix') 
    else: 
        _ = system('clear') 

Теперь вам нужно иметь функцию, которая добавляет ваше слово в список, затем запускает функцию очистки, а затем, наконец, может выбрать слово в конце

...