python这个汇率转换程序怎么编写?

Python019

python这个汇率转换程序怎么编写?,第1张

可以参考代码:

def test(n):

    if n[-1]=="R":

        return str(int(n[0:-1])/6.5)+"D"

    elif n[-1]=="D":

        return str(int(n[0:-1])*6.5)+"R"

或是可以使用input获取键盘输入的字符,而不是作为方法的传入参数n

据观察 小数点后只需保留两位有效数字 

另:程序较简单,忽略了精度问题

def cal(money):

    try:

        money=float(money)

        if money<0:raise ValueError

        AUD=0.96*money

        USD=0.75*money

        Euro=0.67*money

        DBP=0.496*money

    except Exception,e:

        print "ERROR!Please input valid money, we support positive numbers in String or Float or Integer"

    else:

        print "NZ$ %0.2f   AUD %0.2f   USD %0.2f   EURO %0.2f   GBP %0.2f"%(money,AUD,USD,Euro,DBP)     

 

 

 测试程序:

cal("99999")

输出: NZ$ 9999.00   AUD 9599.04   USD 7499.25   EURO 6699.33   GBP 4959.50

cal(99999)

输出: NZ$ 9999.00   AUD 9599.04   USD 7499.25   EURO 6699.33   GBP 4959.50

cal(99999.9999)

输出:NZ$ 10000.00   AUD 9600.00   USD 7500.00   EURO 6700.00   GBP 4960.00

cal(-10.99)

输出:ERROR!Please input valid money, we support positive numbers in String or Float or Integer

# 设置人民币与美元的汇率

exchange_rate = 6.74

# 输入函数

money_str = input("您好,请您输入含有rmb(人民币),usa(美元)的字母的金额:")

print("您输入的金额为:", money_str)

# 截取的输入单位

unit = money_str[-3:]

print("您截取的单位为:", unit)

if unit == "rmb":

# 截取输入函数的数值

rmb_str_value = money_str[:-3]

# 字符型数据转化为浮点型数据

rmb_float = float(rmb_str_value)

# 计算两者的汇率

usa = rmb_float / exchange_rate

# 输出函数

print("经过换算后的美元金额为:", usa)

elif unit == "usa":

# 截取输入函数的数值

usa_str_value = money_str[:-3]

# 字符型数据转化为浮点型数据

usa_float = float(usa_str_value)

# 计算两者的汇率

rmb = usa_float * exchange_rate

# 输出函数

print("经过换算后的人民币金额为:", rmb)

else:

print("您输入的格式有错误,请关闭之后重新输入!