如何在输入中添加名称进行编辑?
新名称
name = input("New your name : ")
print(name)
New your name :
如何添加名称进行编辑? (编辑名称Charles)
类似
edit = "Charles"
name = input("Edit your name : " + edit)
print(name)
Edit your name : Charles
谢谢你的帮助..
答案 0 :(得分:3)
如果您的Python是使用readline
支持编译的,那么您实际上只能使用标准库来执行此操作:
import readline
def make_pre_input_hook(default):
def pre_input_hook():
readline.insert_text(default)
readline.redisplay()
return pre_input_hook
readline.set_pre_input_hook(make_pre_input_hook('Charles'))
name = input('Edit your name: ')
print('You are now called {}.'.format(name))
请注意,使用Python 2,您需要使用raw_input
代替input
。
答案 1 :(得分:2)
我认为只有命令行才能做到这一点。相反,我建议在括号中提供一些默认值,并在用户不输入任何输入时使用它。这也是更常见的,并且如果他想要更改默认值(无需删除),则需要用户更少的击键。
>>> name = input("Enter name (some default): ") or "some default"
Enter name (some default):
>>> name
'some default'
>>> name = input("Enter name (some default): ") or "some default"
Enter name (some default): foobar
>>> name
'foobar'
这里,or "some default"
的效果是,如果表达式的第一部分 - input
的结果 - 为空,则使用第二部分,即默认值。
答案 2 :(得分:0)
怎么样:
defaultname = 'Charles'
nameprompt = 'Enter your name, or just press Return to accept the default name.\nDefault Name: '+defaultname
name = input(nameprompt)
if name == '':
name = defaultname