Skip to main content
 首页 » 编程设计

python之Python 中的 Continue 语句仅在循环开始时返回。如何让它进入任何代码位置

2025年05月04日18三少

我有这个简单的代码:

var = 1 
while var == 1 :  
   try: 
        num = int(raw_input("Enter a number  :")) 
   except ValueError: 
        print "Thats not a number!" 
        continue 
   try: 
        num2 = int(raw_input("Enter another number :")) 
   except ValueError: 
        print "Thats not a number!" 
        continue 
   print "Sum of previous 2 inputs:="+str(num+num2) 
print "Good bye!" 

现在第一个 continue 语句完成了工作,但第二个没有。因为它返回到循环的顶部,但我需要它返回捕获到第二个异常的位置,所以它会要求再次输入第二个数字,而不是第一个数字。

有什么想法吗?

请您参考如下方法:

您可以考虑在函数中输入一个数字——这样可以避免将相同的代码写两次:

def input_int(prompt): 
    while True: 
        try: 
            return int(raw_input(prompt)) 
        except ValueError: 
            print "That's not a valid integer!" 
 
... 
num = input_int("Please enter a number: ") 
num2 = input_int("Please enter another number: ")