Как я могу получить последнюю версию raw_input? Мой py задает вопросы (raw_input), и если пользовательские типы неправильно спрашивают одно и то же снова, и пользователю нужно вводить все заново, так как я могу получить последний вход, чтобы пользователь мог просто отредактировать его? (Например, при нажатии клавиши на клавиатуре)Python user input replay
1
A
ответ
1
Вы ищете readline
module. Вот example from effbot.org:
# File: readline-example-2.py
class Completer:
def __init__(self, words):
self.words = words
self.prefix = None
def complete(self, prefix, index):
if prefix != self.prefix:
# we have a new prefix!
# find all words that start with this prefix
self.matching_words = [
w for w in self.words if w.startswith(prefix)
]
self.prefix = prefix
try:
return self.matching_words[index]
except IndexError:
return None
import readline
# a set of more or less interesting words
words = "perl", "pyjamas", "python", "pythagoras"
completer = Completer(words)
readline.parse_and_bind("tab: complete")
readline.set_completer(completer.complete)
# try it out!
while 1:
print repr(raw_input(">>> "))
0
Используйте readline
модуль.
import readline
# Everything magically works now!
Есть более сложные функции, доступные, если вы хотите завершить вкладку и другие лакомства.
Да! Спасибо :) – lazyy001