输入人民币/美元后自动判断,输出转换后相对应的值

 1 '''
 2 作者:pasaulis
 3 版本:v2.0
 4 日期:2018.11.7
 5 功能:输入人民币/美元后自动判断,输出转换后相对应的值
 6 '''
 7 in_str_value=input('请输入人民币/美元金额(格式示例:100rmb/100usd)')
 9 usd_vs_value=6.91
10 rmb_value=''
11 usd_value=''
12 if in_str_value[-3:]=='rmb':
13     rmb_value=eval(in_str_value[:-3])
14     usd_value=rmb_value/usd_vs_value
15     print(usd_value)
16 elif in_str_value[-3:]=='usd':
17     usd_value=eval(in_str_value[:-3])
18     rmb_value=usd_value*usd_vs_value
19     print(rmb_value)
20 else:
21     print('输入格式有误,请重新输入')

 简化后:

 1 '''
 2 作者:pasaulis
 3 版本:v2.01
 4 日期:2018.11.7 13:55
 5 功能:输入人民币/美元后自动判断,输出转换后相对应的值
 6 '''
 7 #汇率
 8 usd_vs_value=6.91
 9 #让用户输入
10 in_str_value=input('请输入人民币/美元金额(格式示例:100rmb/100usd)')
11 #取输入字符串最后3位,赋值给单位
12 unit=in_str_value[-3:]
13 #取倒数第3位之前的所有数值做为值,并把字符串转为数值
14 value=eval(in_str_value[:-3])
15 #如输入rmb,就除以汇率,得美元
16 if unit=='rmb':
17     usd_value=value/usd_vs_value
18     print(usd_value)
19 #如输入usd,就乘以汇率,得人民币
20 elif unit=='usd':
21     rmb_value=value*usd_vs_value
22     print(rmb_value)
23 else:
24     print('输入格式有误,请重新输入')

 升级后:★★一直运行程序,直到输入quit

'''
作者:pasaulis
版本:v3.0
日期:2018.11.7 14:15
功能:输入人民币/美元后自动判断,输出转换后相对应的值
增加:一直在执行中,直到用户输入quit
'''
#汇率
usd_vs_value=6.91
#让用户输入
in_str_value=input('请输入人民币/美元金额(格式示例:100rmb/100usd)')
#*****相比2.0升级点:增加了一直运行直到用户输出quit
while in_str_value!='quit':
    #取输入字符串最后3位,赋值给单位
    unit=in_str_value[-3:]
    #取倒数第3位之前的所有数值做为值,并把字符串转为数值
    value=eval(in_str_value[:-3])
    #如输入rmb,就除以汇率,得美元
    if unit=='rmb':
        usd_value=value/usd_vs_value
    #----第一种输出,带字符串,带数值变量的的写法
        print('你输入的人民币对应美元的金额是:',usd_value)
        print('********************************************************************')
    #如输入usd,就乘以汇率,得人民币
    elif unit=='usd':
        rmb_value=value*usd_vs_value
    #----第2种输出带字符串,带数值变量写法
        print('你输入的美元对应人民币的金额是:'+str(rmb_value))
        print('********************************************************************' )
    else:
        print('输入格式有误,请重新输入')
    in_str_value = input('请输入人民币/美元金额(格式示例:100rmb/100usd)(退出输入quit)')

 写成函数:

'''
作者:pasaulis
版本:v4.0
日期:2018.11.7 14:30
功能:输入人民币/美元后自动判断,输出转换后相对应的值
3.0增加:一直在执行中,直到用户输入quit
4.0增加:把汇率换算成写成函数(币值,汇率);
单词:
exchange_rate:汇率
currency_converter:货币转换器
函数用法:currency_converter(币额,对应汇率)
'''
def currency_converter(in_str_value,exchange_rate):
    unit = in_str_value[-3:]  # 取输入字符串最后3位,赋值给单位
    value = eval(in_str_value[:-3])  # 取倒数第3位之前的所有数值做为值,并把字符串转为数值

    if unit == 'rmb':
        exchange_rate_real = 1 / exchange_rate
    else:
        exchange_rate_real = exchange_rate

    out=value*exchange_rate_real
    return out

#调用
ok=currency_converter('100usd',6.99)
print(ok)
原文地址:https://www.cnblogs.com/chenxi188/p/9921915.html