允许用户删除python中的用户输入

时间:2013-08-15 17:31:27

标签: python raw-input

这是一个非常基本的问题,我遇到了麻烦。我有一个python程序,当我使用raw_input获取用户输入时,每当我尝试删除用户已经输入的内容时,此符号显示为:^H,而不是允许我删除我拥有的内容已打字。如何允许用户删除他们输入的以前的内容?

2 个答案:

答案 0 :(得分:5)

如果您导入readline模块,raw_input()应该使用它而不进行进一步修改,您将获得更好的控制序列支持。

更多信息:http://docs.python.org/2/library/readline.html

答案 1 :(得分:1)

在这种情况下,您将需要使用cmd模块。像这样:

import cmd
import sys, string
class CLI(cmd.Cmd):
    def __init__(self):
        cmd.Cmd.__init__(self)
        self.prompt = '> '
        self.text=''
    def do_input(self, arg):
        self.text=arg
        sys.exit(1)

尝试一下:

“>>> cli = CLI()

“>>> cli.cmdloop()

“>输入测试

“>>> cli.text

'测试'