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 out def 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)

【Python 12】汇率兑换5.0(Lambda函数)的更多相关文章

  1. 【Python 11】汇率兑换4.0(函数)

    1.案例描述 设计一个汇率换算程序,其功能是将美元换算成人民币,或者相反. 2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算 3.0增加功能:程序可以一直运行,知道用户选择退出 4.0 ...

  2. 【Python 10】汇率兑换3.0(while循环)

    1.案例描述 设计一个汇率换算程序,其功能是将美元换算成人民币,或者相反. 2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算 3.0增加功能:程序可以一直运行,知道用户选择退出 2.案 ...

  3. 【python】filter,map,reduce和lambda函数介绍

    filter(function, iterable)map(function, iterable)reduce(function, sequence) filter将 function依次作用于ite ...

  4. python面试题之什么是lambda函数?

    lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数. lambda所表示的匿名函数的内容应该是很简单的,如果复杂的话,干脆就重新定义一个函数了,使用l ...

  5. 【Flask】 python学习第一章 - 4.0 钩子函数和装饰器路由实现 session-cookie 请求上下文

    钩子函数和装饰器路由实现 before_request 每次请求都会触发 before_first_requrest  第一次请求前触发 after_request  请求后触发 并返回参数 tear ...

  6. python学习笔记12(函数三): 参数类型、递归、lambda函数

    一.函数参数的类型 之前我们接触到的那种函数参数定义和传递方式叫做位置参数,即参数是通过位置进行匹配的,从左到右,依次进行匹配,这个对参数的位置和个数都有严格的要求.而在Python中还有一种是通过参 ...

  7. python lambda函数详细解析(面试经常遇到)

    1 作用:通常是用来在python中创建匿名函数的 2 格式: lambda 参数[,参数] : 表达式 3 注意: (1)lambda定义的是单行函数, 如果需要复杂的函数,应该定义普通函数 (2) ...

  8. 【转】python中的lambda函数

    http://www.cnblogs.com/coderzh/archive/2010/04/30/python-cookbook-lambda.html lambda函数也叫匿名函数,即,函数没有具 ...

  9. Python自动化运维之3、函数、lambda、递归

    一.函数 函数的基础概念: 函数是python为了代码最大程度地重用和最小化代码冗余而提供的基本结构 函数是一种设计工具,它能让程序员将复杂的系统分解为可管理的部件 函数用于将相关功能打包并参数化 在 ...

随机推荐

  1. WebAssembly完全入门——了解wasm的前世今身

    前言 接触WebAssembly之后,在google上看了很多资料.感觉对WebAssembly的使用.介绍.意义都说的比较模糊和笼统.感觉看了之后收获没有达到预期,要么是文章中的例子自己去实操不能成 ...

  2. 【Java基础】【11Eclipse使用&Object类型】

    11.01_Java开发工具(常见开发工具介绍)(了解) A:操作系统自带的记事本软件 B:高级记事本软件 C:集成开发环境 IDE (Integrated Development Environme ...

  3. github总结(4)--关于git reset --hard这个命令的惨痛教训

    背景叙述: 前几天,上传自己的个站到git上的时候,手欠脑发晕的用了次git reset --hard xxxxxx 命令.由于只在线上传入了一个index.html页面(自己都不知道自己咋想的,就这 ...

  4. .NetCore部署至IIS

    部署教程 操作系统要求 Windows 7 或更高版本 Windows Server 2008 R2 或更高版本 依赖的组件 Runtime & Hosting Bundle 可以选择.NET ...

  5. 原生JS forEach()和map()遍历的区别以及兼容写法

    一.原生JS forEach()和map()遍历 共同点: 1.都是循环遍历数组中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项item,当前 ...

  6. 痞子衡嵌入式:ARM Cortex-M文件那些事(8)- 镜像文件(.bin/.hex/.s19)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是嵌入式开发里的image文件(.bin, .hex, .s19). 今天这节课是痞子衡<ARM Cortex-M文件那些事>主 ...

  7. 为什么选择 Visual Studio Code

    为什么选择 Visual Studio Code 你在 VS Code 中找到的每个功能都完成一项出色的工作,构建了一些简单的功能集,包括语法高亮.智能补全.集成 git 和编辑器内置调试工具等,将使 ...

  8. 学JAVA的第二天,静态网站制作,脑阔一点疼

    先从下载apache-tomcat-9.0.17开始 在下边这个网站下载,下边一步步来 下面删除的这些是暂时用不上的,先吧它删除了,因为会拖慢启动速度 下边把ROOT里边除WEB-INF外的全不删除了 ...

  9. Web前端 页面功能——点击按钮返回顶部的实现方法

    1. 最简单的静态返回顶部,点击直接跳转页面顶部,常见于固定放置在页面底部返回顶部功能 方法一:用命名锚点击返回到顶部预设的id为top的元素 html代码 <a href="#top ...

  10. CSS-蜂窝状展示区域(多个六边形)的一种实现方式

    网上已经有很多关于正六边形的CSS画法,主要是利用一个矩形和前后的两个三角形组合而成. 之前在看四维图新的官网的时候,发现了一种六边形的画法,比较适合多排六边形组合成蜂窝状的展示区域(注:四维图新现在 ...