1
如何獲取最後一個raw_input?我的py問了一個問題(raw_input),如果用戶類型錯誤再次要求相同,並且用戶需要重新輸入,那麼如何獲取最後一個輸入以使得用戶只需編輯它?(就像一個按下按鍵的shell一樣)Python用戶輸入重播
如何獲取最後一個raw_input?我的py問了一個問題(raw_input),如果用戶類型錯誤再次要求相同,並且用戶需要重新輸入,那麼如何獲取最後一個輸入以使得用戶只需編輯它?(就像一個按下按鍵的shell一樣)Python用戶輸入重播
您正在尋找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(">>> "))
是的!謝謝 :) – lazyy001