首页 > 解决方案 > 如何跳过输入并生成错误代码?

问题描述

一般来说,我对 python 和编码非常非常陌生。我仍在学习非常基础的知识,但我也在尝试在 python 中玩耍并尝试不同的东西。我尝试制作一个非常基本的计算器,它可以 +、-、*、/,将一个数字乘以另一个数字的幂,并取 1 个数字的平方根。唯一我不知道该怎么做的就是用 num2 跳过第三个输入,当我输入运算符“sqrt”时,我只取 num1 的 sqrt。另外我想告诉用户,如果他们输入的 num1 小于 0,那么他们会得到一个错误。

如果我需要学习更多来做这样的事情,我想知道吗?我还没有了解循环,所以我还是很新。希望我能得到一些帮助

#Making a basic calculator
from math import*
num1 = float(input("Enter first number: "))
op = input("Enter operator: ")
num2 = float(input("Enter second 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 == "sqrt":
    print(sqrt(num1))
elif op == "sqrt" and num1 <= 0:
    print("You cannot take the square root of numbers smaller than 0")
else:
    print("Invalid operator")

标签: pythoninput

解决方案


最简单的做法是检查是什么,只在需要op时才询问:num2

op = input("Enter operator: ")
if op != "sqrt":
    num2 = float(input("Enter second number: "))

推荐阅读