Sum=input("请输入带字符(¥ OR $)的金额:")
if Sum[0] in ['$']:
R=int(eval(Sum[1:])*7.1)
print("美元转换为人民币后是:¥{:.2f} 元".format(R))
elif Sum[0] in ['¥','¥']:
D=int(eval(Sum[1:])/7.1)
print("人民币转换为美元后是:${:.2f} 美元".format(D))
else:
print("输入格式错误")
去掉int就行 eval这里本身返回就是个float没必要在float
while True:
Sum = input("请输入带字符(¥ OR $)的金额:")
if Sum[0] in ['$']:
R=eval(Sum[1:])*7.1
print("美元转换为人民币后是:¥{:.2f} 元".format(R))
elif Sum[0] in ['¥','¥']:
D=eval(Sum[1:])/7.1
print("人民币转换为美元后是:${:.2f} 美元".format(D))
else:
print("输入格式错误")
R和D别转换为int类型啊,这样就丢失小数部分了啊
不要用int,改成float
如:R=float(eval(Sum[1:])*7.1)