如何在Python中重置输入?
如何重置输入呢?
假设代码是:
input_x = raw_input("insert #")
print input_x + 1
print input_x
当执行到第三行时,我希望它显示 insert #
,这样就形成一个循环。请问我该怎么做呢?
4 个回答
使用一个 while 循环
while True: # infinite loop
input_x = raw_input("insert #")
print input_x + 1
print input_x
if some_condition: #you should put some_condition for break the loop
#because it will be an infinite loop
break #break the loop
在编程中,有时候我们会遇到一些问题或者错误,这时候我们可以去网上的技术论坛,比如StackOverflow,去寻找解决方案或者向其他人提问。在这些论坛上,很多人会分享他们的经验和解决办法,帮助我们更好地理解问题。
例如,如果你在写代码的时候遇到了一个错误,你可以把这个错误的信息发到论坛上,其他有经验的人可能会给你一些建议,告诉你怎么修复这个问题。这样,你不仅能解决眼前的问题,还能学到一些新的知识,以后遇到类似的情况时就能更快地解决了。
总之,StackOverflow是一个很好的学习和交流的平台,适合所有想要提高编程技能的人。
while True:
input_x = raw_input("insert a number or write 'end' to exit: ")
if input_x=='end': break
print int(input_x) + 1
print input_x
像这样吗?
while True:
input_x = raw_input("insert #")
print int(input_x) + 1
print input_x
当然,这样会造成一个无限循环,所以如果你在终端运行这个程序,等你觉得够了就可以按 CTRL + C 来退出它。(或者在你的循环里加一个 break
来跳出循环。)
你还需要注意以下几点:从 raw_input
获取的输入类型是 string
(字符串)。所以你要么把 input_x
转换成 int
(整数),要么把 + 1
转换成 + str(1)
(这样会把你输入的内容和字符 '1'
连接起来,比如如果你输入的是 abc
,那么 print input_x + str(1)
会输出 abc1
)。
使用一个 while 循环:
while True:
input_x = int(raw_input("insert # or 0 to quit"))
if input_x == 0: # break loop if user enters 0
print "Goodbye"
break
print input_x + 1
print input_x
使用 int(raw_input("插入数字#"))
来把输入的字符串转换成整数。这里假设你只输入整数,这样做是合理的,因为你要对每个输入的值加 1
。raw_input
返回的是一个字符串,所以如果你输入 123
而不转换成 int
,它实际上是一个字符串 '123'
。
这个循环会一直重复,直到我们添加一个 break
条件。当用户输入 0
时,我们就会退出这个循环。