python - 有没有办法做到这一点?
问题描述
我目前正在学习python,我必须制作一个具有一些科学运算的计算器。现在我正在制作一个代码来检测它是否列出了一个操作。
import math
op=input("Type in Operation Here(*,/,-,+, sine, cosine,tangent,**,sqrt,pi)")
if op!= '*',"/",'-','+','sine','cosine','tangent','**','sqrt','pi':
print("Please type in a Operator that is listed above")
elif op== "sine":
sine=float(input("Enter Number for Sine"))
print(math.sin(sine))
elif op== "cosine":
cos=float(input("Enter Number for Cosine"))
print(math.cos(cos))
elif op== "tangent":
tang=float(input("Enter Number for Tang"))
print(math.tan(tang))
elif op=="sqrt":
sqrt=float(input("Enter Number For Square Root:"))
print(math.sqrt(sqrt))
elif op=="pi":
pi=float(input("Enter Number to Pi:"))
print(math.pi*pi)
else:
nub=float(input("Enter Number Here:"))
nub2=float(input("Enter Another Number Here:"))
if op == '+':
print(nub+nub2)
elif op == '-':
print(nub-nub2)
elif op == '*':
print(nub*nub2)
elif op == '/':
print(nub/nub2)
else:
if op =="**":
exp = float(input("Enter Base Here:"))
power = float(input("Enter Power Here:"))
print(exp**power)
当我运行代码时,它有一个指向第三行的无效语法。有没有简单的方法来解决这个错误?
解决方案
if op not in ['*',"/",'-','+','sine','cosine','tangent','**','sqrt','pi']:
推荐阅读
- verilog - 如何实现溢出代码?我不知道怎么了
- angular - 自 Angular 8 更新以来,无法导入 Angular 材质的特定入口点
- postgresql - 如何授予对整个数据库的选择权限?(不是模式)
- reactjs - React,如何告诉一个父组件所有子组件都完成了更新?
- node.js - Node.js - 仅显示 JSON 响应中的最后一个元素
- c - stdout 和 stderr 纠缠不清?
- soap - 在 WSO2 ESB 中调用代理服务时找不到操作的端点引用 (EPR)
- excel - 在excel单元格中定义数组并在excel数组公式中使用该单元格
- python - 将下一行附加到上一行
- nginx - 入口控制器不处理流量