博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Python 12】汇率兑换5.0(Lambda函数)
阅读量:5171 次
发布时间:2019-06-13

本文共 1661 字,大约阅读时间需要 5 分钟。

 1.案例描述

设计一个汇率换算程序,其功能是将美元换算成人民币,或者相反。

2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算

3.0增加功能:程序可以一直运行,知道用户选择退出

4.0将汇率转换功能封装到函数中

5.0将简单函数改为lambda函数

2.案例分析

3.Lambda函数(匿名函数)

用于简单的、能够在一行内表示的函数,计算结果为返回值。

<函数名称>
= lambda
<参数列表>
:
<表达式>

4.上机实验

"""    作者:梁斌    功能:汇率兑换    版本:5.0    日期:02/08/2017    2.0 新增功能:根据输入判断是人民币还是美元,进行相应的转换计算    3.0 增加功能:程序可以一直运行,直到用户选择退出    4.0 增加功能:将汇率兑换功能封装到函数中    5.0 增加功能:(1) 使程序结构化 (2) 简单函数的定义 lambda"""# def convert_currency(im, er):#     """#         汇率兑换函数#     """#     out = im * er#     return outdef main():    """        主函数,形参为空    """    # 汇率    USD_VS_RMB = 6.77    # 带单位的货币输入    currency_str_value = input('请输入带单位的货币金额:')    unit = currency_str_value[-3:]    if unit == 'CNY':        exchange_rate = 1 / USD_VS_RMB    elif unit == 'USD':        exchange_rate = USD_VS_RMB    else:        exchange_rate = -1    if exchange_rate != -1:        in_money = eval(currency_str_value[:-3])        # 使用lambda定义函数(一个参数x)        convert_currency2 = lambda x: x * exchange_rate        # # 调用函数        # out_money = convert_currency(in_money, exchange_rate)        # 调用lambda函数        out_money = convert_currency2(in_money)        print('转换后的金额:', out_money)    else:        print('不支持该种货币!')if __name__ == '__main__':    main()

编程技巧 

1.主要的逻辑处理全部都写到main函数中,使用固定的调用方式。

if __name__ == '__main__':    main()

2.定义lambda函数和调用lambda函数

# 使用lambda定义函数(一个参数x)convert_currency2 = lambda x: x * exchange_rate# 调用lambda函数out_money = convert_currency2(in_money)
# 使用lambda定义函数(两个参数x,y)convert_currency2 = lambda x,y: x * y# 调用lambda函数out_money = convert_currency2(in_money,exchange_rate)

 

转载于:https://www.cnblogs.com/badboy200800/p/10560497.html

你可能感兴趣的文章
《http权威指南》阅读笔记(二)
查看>>
软件工程
查看>>
http协议
查看>>
js替换问题replace和replaceAll
查看>>
c++11 : range-based for loop
查看>>
中国农历2013,2014 (zz.IS2120@BG57IV3)
查看>>
用virtualenv建立独立虚拟环境 批量导入模块信息
查看>>
Sublime Text3 插件:convertToUTF8
查看>>
BZOJ4060 : [Cerc2012]Word equations
查看>>
hdu2089不要62(数位dp)
查看>>
JAVA输出最大值和最小值
查看>>
64位weblogic11g安装
查看>>
oracle、mysql、sql server等;流行数据库的链接驱动配置
查看>>
UvaLive 6664 Clock Hands
查看>>
PCB 周期计算采用 SQL 函数调用.net Dll 标量函数 实现
查看>>
Problem B: 取石子
查看>>
dbflow 批量 增删查改
查看>>
Mybatis常见配置错误总结
查看>>
Python学习笔记001——Linux
查看>>
Vue: 常用指令
查看>>