首页 > 解决方案 > 我想知道是否有办法跳过特定的行,这样它就不会被执行

问题描述

我正在构建一个计算器,我想知道在选择“root”选项时是否可以跳过 num2 输入。

这是我的代码:

num1 = float(input("Enter a number: "))
op = input("Enter a operator: ")
if op not in operators:
    print("Invalid operator")
    start()
num2 = float(input("Enter a number: "))

if op == "+":
    print(num1 + num2)
elif op == "-":
    print(num1 - num2)
elif op == "*":
    print(num1 * num2)
elif op == "/":
    print(num1 / num2)
elif op == "^":
    print(pow(num1, num2))
elif op == "root":
    print(math.sqrt(num1))

restart = input("Continue?: ")

if restart == "yes":
    start()
else:
    sys.exit(0)

我希望这个被忽略:

num2 = float(input("Enter a number: "))

在这种情况下:

elif op == "root":
    print(math.sqrt(num1))

标签: python

解决方案


将第二个数字输入语句放在后面if

op = input("Enter a operator: ")
if op != "root":
    num2 = float(input("Enter a number: "))

推荐阅读