一、将汇率兑换功能封装在函数中
'''
整段注释
功能:汇率兑换
版本:4.0
日期:18/02/7
新增功能:根据输入判断是人民币还是美元,进行相应的转换计算
新增功能:程序可以一直运行,直到用户选择退出
新增功能:将汇率兑换功能封装在函数中
'''
USD_VS_RMB = 6.77 #常量
def convert_currency(im,er):
'''
汇率兑换函数
'''
out = im * er
return out
#输入货币
s = input('请输入货币(CNY or USD)金额(输入Q退出)')
#获取货币单位 取字符串后三位
unit = s[-3:]
if unit == 'USD':#如果是美元
exchange_rate = USD_VS_RMB
elif unit == 'CNY':#如果输入人民币
exchange_rate = USD_VS_RMB
else:
exchange_rate = -1
if exchange_rate != -1:
in_money = eval(s[0:-3])
#调用参数
out_money = convert_currency(in_money,exchange_rate)
print("转换后的金额:",out_money)
else:
print('目前版本只支持美元(USD)和人民币(CNY)的兑换计算')
二、函数的定义
- python的内置函数
Input(),print(),eval()....
- 自定义函数
def 函数名(参数列表):
函数体
Return 返回值列表
三、注意
- 反向缩进 shift+tab
- 函数定义以后要养成写函数功能的注释,一般采用多行注释三个引号
四、使程序结构化
'''
整段注释
功能:汇率兑换
版本:5.0
日期:18/02/8
2.0新增功能:根据输入判断是人民币还是美元,进行相应的转换计算
3.0新增功能:程序可以一直运行,直到用户选择退出
4.0新增功能:将汇率兑换功能封装在函数中
5.0新增功能:使程序结构化,使用lambda函数
'''
#def convert_currency(im,er):
#'''
# 汇率兑换函数
# '''
#out = im * er
#return out
def main():
USD_VS_RMB = 6.77 #常量
#输入货币
s = input('请输入货币(CNY or USD)金额(输入Q退出)')
#获取货币单位 取字符串后三位
unit = s[-3:]
if unit == 'USD':#如果是美元
exchange_rate = USD_VS_RMB
elif unit == 'CNY':#如果输入人民币
exchange_rate = USD_VS_RMB
else:
exchange_rate = -1
if exchange_rate != -1:
in_money = eval(s[0:-3])
#使用lambda函数
convert_currency2 = lambda x:x * exchange_rate
out_money = convert_currency2(in_money)
#调用函数
#out_money = convert_currency(in_money,exchange_rate)
print("转换后的金额:",out_money)
else:
print('目前版本只支持美元(USD)和人民币(CNY)的兑换计算')
#__name__ 本身等于'__main__'
if __name__ == '__main__':
main()
五、Lambda函数
- 定义
函数名 = lambda 参数列表:表达式
- 用于简单的能够在一行内表示的函数,计算结果为返回值。