<p>您当前的代码有两个问题:</p>
<ol>
<li>您需要在<code>while</code>循环之外声明<code>invalidCount</code>对象</li>
<li>您缺少要退出循环的<code>break</code>语句</li>
</ol>
<p>试试这个:</p>
<pre><code>invalidCount =0
while True:
choice= int(input("Enter your Choice(1,2,3,4) from above:"))
if choice in (1,2,3,4):
num1 = float(input("Enter first number :"))
num2 = float(input("Enter second number :"))
if choice == 1:
print("Addition of 2 numbers {} and {} is {} ".format(num1,num2,add(num1,num2)))
elif choice == 2:
print("Subtraction of 2 numbers {} and {} is {} ".format(num1,num2,sub(num1,num2)))
elif choice == 3:
print("Multiplication of 2 numbers {} and {} is {} ".format(num1,num2,mul(num1,num2)))
elif choice == 4:
print("Division of 2 numbers {} and {} is {} ".format(num1,num2,div(num1,num2)))
break
else:
if invalidCount <=3:
invalidCount += 1
print("Invalid Input with retry no {}".format(invalidCount))
else:
print("Exceeded maximum number of Invalid re-try")
break
</code></pre>