我通过raw_input
(使用for
循环)从用户那里获得了输入。
我可以使用哪些代码来确保如果用户只按 Enter ,它会保留默认值(即raw_input
在没有值时返回空字符串''
输入的)?
因此,默认值采用变量形式:
age_years = 2
cash_earned_last_year = 1000
growth = 0.02
答案 0 :(得分:0)
如果我理解正确,您需要迭代用户插入的值,如果用户只键入Enter键,则替换为空字符串。
def values_input():
return raw_input("Please enter value or 'quit' to finish: ")
values = []
for code in iter(values_input, "quit"):
if len(code) == 0:
values +=['']
else:
values += [code]
print values
答案 1 :(得分:0)
您可以使用if
检查用户是否只按下了输入。作为jonrsharpe
说,只有 Enter 会将您的输入设置为空字符串,即''
。
if user_answer_1 == '':
age_years = 2
cash_earned_last_year = 1000
growth = 0.02
如果用户应该按Enter键或提供大量输入,那么如果他的第一个答案是 Enter ,您可以使用break来跳过其余的问题。
while True:
user_age_answer = input('\nAge?')
if user_age_answer == '':
age_years = 2
cash_earned_last_year = 1000
growth = 0.02
# Skips the rest of the questions.
break
# Here go the rest of the questions.
user_cash_answer = input('Cash?')
# And then you do what you want with the answers.
age_years = user_age_answer
# This break is used to exit loop.
break