Как вернуться на одну строку назад после печати чего-либо в консолиPython

Программы на Python
Ответить
Anonymous
 Как вернуться на одну строку назад после печати чего-либо в консоли

Сообщение Anonymous »

Я создал эту программу, которая имитирует то, как в фильмах показывают брутфорс. как это работает: он запрашивает у пользователя какой-то текст, а затем в консоли печатает буквы одну за другой, пока буква текста не совпадет. это продолжается для всех букв текста.
import time
import os

capital = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"]
lower = [element.lower() for element in capital]
text = input("Enter your text: ")

for index, char in enumerate(text):
index = 0

while True:
if str(char) == lower[index]:
time.sleep(0.2)
break
elif str(char) != lower[index]:
time.sleep(0.2)
print(lower[index], end='\r')
index += 1

print(char, end='\r')

Но я столкнулся с проблемой. Ожидаемый результат после запуска программы:
enter your text: def def

Но я получаю:
enter your text: def
d
e
f

Я знаю, что могу просто использовать end='' или end='\r' в строке 20 для отключения новой строки или добавления символа возврата. но оба они не работают.
Например, если я использую end='', результат будет:
Enter your text: def

fa

или end='\r':
Enter your text: def

f


Подробнее здесь: https://stackoverflow.com/questions/792 ... he-console
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»