题目描述:
#思路,1.导入包,2.定义相关函数3.输入和输出处理
from __future__ import division #返回真实商
#加法
def add(x,y):
z = x+y
print("{0:.4f}+{1:.4f}={2:.4f}".format(x,y,z))
#print(format(x,'.4f'),"+",format(y,'.4f'),"=",format(z,'.4f'))
#减法
def subtract(x,y):
z = x-y
print("{0:.4f}-{1:.4f}={2:.4f}".format(x, y, z))
#print(format(x,'.4f'),"-",format(y,'.4f'),"=",format(z,'.4f'))
#乘法
def multiply(x,y):
z = x*y
print("{0:.4f}*{1:.4f}={2:.4f}".format(x, y, z))
#print(format(x,'.4f'),"*",format(y,'.4f'),"=",format(z,'.4f'))
# 除法
def divide(x,y):
if y == 0.0:
#if abs(y)<1e-12:
print("Wrong!Division by zero!")
else:
z =x/y
print("{0:.4f}/{1:.4f}={2:.4f}".format(x, y, z))
#print(format(x,'.4f'),"/",format(y,'.4f'),"=",format(z,'.4f'))
#输入处理
def input_(bos2):
for i in range(len(bos2)):
#if bos2[i] == "+" or bos2[i] == "/" or bos2[i] == "-" or bos2[i] == "*":
if not bos2[i].isdigit() and bos2[i]!=".":
#(bos2[:i])
num1 = float(bos2[:i])
oper = bos2[i]
num2 = float(bos2[i + 1:])
return num1,oper,num2
if __name__ == "__main__":
bos2 = input()
num1,oper,num2=input_(bos2)
#print(num2,type(num2))
if oper == '+':
add(num1,num2)
elif oper == "-":
subtract(num1,num2)
elif oper =="*":
multiply(num1,num2)
elif oper =="/":
divide(num1,num2)
else:# elif oper not in "+-*/":
print("Invalid operation!")
运行截图: