是否可以创建具有可编辑默认值的输入?
Is it possible to create an input with an editable default value?
我是一个 python 新手,目前正在以各种方式摆弄它。
但我有点难以创建具有可编辑默认值的输入。
例如,
如果您运行输入,会有默认值,您可以更改或保留它。
是否可以使用标准库创建这样的输入?
您可以测试用户是否输入了任何内容,如果他们没有替换它:
default_val = 'Default answer'
inp = input("Enter a string (default value is: '"+default_val+"'): ")
if not inp:
inp = default_val
print(inp)
这输出:
Enter a string (default value is: 'Default answer'):
Default answer
或
Enter a string (default value is: 'Default answer'): Different answer
Different answer
default = 'spam'
user_input = input(f"Enter a string (default: {default}):") or default
print(user_input)
输出:
Enter a string (default: spam): # user hit Enter
spam
请注意,这假设用户输入永远不会是空字符串(即,空字符串对于您的用例来说是无效输入)。
使用input
default = "foo"
while default != "quit":
default = input(f"Enter a value ({default}): ")
每次需要点回车,输入quit
退出
我是一个 python 新手,目前正在以各种方式摆弄它。
但我有点难以创建具有可编辑默认值的输入。
例如,
如果您运行输入,会有默认值,您可以更改或保留它。
是否可以使用标准库创建这样的输入?
您可以测试用户是否输入了任何内容,如果他们没有替换它:
default_val = 'Default answer'
inp = input("Enter a string (default value is: '"+default_val+"'): ")
if not inp:
inp = default_val
print(inp)
这输出:
Enter a string (default value is: 'Default answer'):
Default answer
或
Enter a string (default value is: 'Default answer'): Different answer
Different answer
default = 'spam'
user_input = input(f"Enter a string (default: {default}):") or default
print(user_input)
输出:
Enter a string (default: spam): # user hit Enter
spam
请注意,这假设用户输入永远不会是空字符串(即,空字符串对于您的用例来说是无效输入)。
使用input
default = "foo"
while default != "quit":
default = input(f"Enter a value ({default}): ")
每次需要点回车,输入quit