lambda & 三元运算
lambda & 三元运算
lambda:
1 >>> def add(x,y): #定义一个加法函数2 return x+y #返回两个参数的相加的值34 >>> z=f(3,4)5 >>> print(z)6 7 #调用加法函数返回77 >>> lambda x,y:x+y8 <function <lambda> at 0x0000020F385B86A8>9 #可以看到lambda是一个 function(函数)类对象10 >>> f=lambda x,y:x+y #功能实现的跟add(x,y)一样11 >>> f(1,2)12 313 >>> f(3,4)14 715 >>> def multiply(x,y):16 return x*y1718 >>> multiply(3,4)19 1220 >>> multiply=lambda x,y:x*y21 >>> multiply(3,4)22 1223 >>> def subtract(x,y):24 return x-y2526 >>> subtract(3,4)27 -128 >>> subtract=lambda x,y:x-y29 >>> subtract(3,4)30 -13132 >>> def divide(x,y):33 return x/y3435 >>> divide(4,2)36 2.037 >>> divide=lambda x,y:x/y38 >>> divide(4,2)39 2.04041 #上面的乘法函数,减法函数,除法函数都可以用lambda表达式来代替,更方便
1、上面可以看出lambda表达式可以很方便的用来代替简单的函数
三元表达式:
2、下面来看看什么是三元运算,python的三元运算格式如下:
result=值1 if x<y else 值2 这个是什么意思呢,就是结果=值1 if 条件1 else 值2
语法如下:
result = x if condition else y
>>> def f(x,y):return x - y if x>y else abs(x-y)#如果x大于y就返回x-y的值 ,否则就返回x-y的绝对值>>> f(3,4) #3<4,不满足if 条件,它返回else里面的绝度值1>>> f(4,3)1>>> def f(x,y):return 1 if x>y else -1#如果x大于y就返回x-y的值 ,否则就返-1>>> f(3,4) #3小于4 , 返回-1-1>>> f(4,3) #4大于3,返回11>>>
看起来有点别扭,实际上还可以这样写:
result = (x, y)[condition]
# result = (x, y)[condition]a = 1b = 2result = (a, b)[a < b]# 成立返回第二个print(result)result = (a, b)[a > b]# 不成立返回第一个print(result)
lambda & 三元运算的更多相关文章
- Day 7 :一句话Python(匿名函数-lambda,三元运算,列表表达式,生成器表达式)
注意: 1.所有的列表表达式都可以转换成生成器表达式 2.经量让标傲世简化你得操作,增加代码可读性 3.如果代码过于复杂,应该转换成普通代码 4.再代码中尽可能多使用生成器表达式. 三元运算符:简化代 ...
- 三元运算与lambda表达式
#三元运算,就是对if else的简写 if 1 == 1: print("jasper") else: print("sb") 三元运算写法 name=&qu ...
- python_way,day3 集合、函数、三元运算、lambda、python的内置函数、字符转换、文件处理
python_way,day3 一.集合 二.函数 三.三元运算 四.lambda 五.python的内置函数 六.字符转换 七.文件处理 一.集合: 1.集合的特性: 特性:无序,不重复的序列 如果 ...
- 三元运算+lambda表达式
#三元运算,三目运算,if else简写 if 1 == 1: name = "liangml" else: name = "NB" #如果 1==1 成立,n ...
- 三元运算和lambda表达式
19.三目运算,三元运算: if else 的简写: name = 'alex' if 1 == 1 else 'SB' ==> 等价于 if 1 == 1: ...
- Python之路第三天,基础(3)-set,函数,内置函数,文件,三元运算,lambda
set集合 集合是一个无序的,不重复的元素集合. 集合的创建: name_set = {'tom','jerry','alex','rose'} 或 name_set = set(['tom','je ...
- 第三天 函数 三元运算 lambda表达式 内置函数 文件操作
面向过程: 直接一行一行写代码,遇到重复的内容复制黏贴. 不利于代码阅读 代码没有复用 面向对象 将代码块定义为函数,以后直接调用函数 增强了复用性 函数的定义方法 def 函数名(传递参数): 函数 ...
- 三元运算&匿名函数lambda
lambda # 语法: # 参数 : 返回值 # 1.不带参数的lambda表达式 def func(): return '开挂的人生不需要解释' func = lambda : '开挂的人上不需要 ...
- python lambda表达式与三元运算
1.三元运算 格式: 为真时的结果 if 判定条件 else 为假时的结果 #!/usr/bin/python # -*- coding: UTF-8 -*- def f(x, y): # 如果x大于 ...
随机推荐
- vue本地和线上环境(域名)配置
vue本身为运行脚手架项目自家搭载了一个nodejs后台环境,本地可通过proxyTable来处理跨域问题,但是上线(或生产环境)之后改域名真是一件麻烦的事情,所以进行一些配置. config/ind ...
- Java 开发小常识
从理论上来讲Java做的系统并不比其他语言开发出来的系统更占用内存,那么为什么却有这么多理由来证明它确实占内存呢?两个字,陋习. 1.别用new Boolean().在很多场景中Boolean类型是必 ...
- powershell解决win10开始菜单和通知中心无法打开
然后通过 Ctrl + Shift + Esc 弹出任务管理器点击文件-->运行新任务 在打开的填写框里面输入 "powershell"同时勾选下方的"以管理员身份 ...
- CAD出现向程序发送命令时出现问题提示解决方法分享
大家有没有遇到在使用cad打开图纸的时候提示向程序发送命令时出现错误的情况呢,如果你在使用cad的时候出现了这个提示,是由于软件的兼容性出现了问题,那么该怎么办呢,下面小编就给大家带来cad打开图纸提 ...
- TP5.0: 显示错误信息
在TP5中,我们运行的代码有错误无法执行时,只显示页面错误,而不显示错误信息 对我我来讲是无法接受滴!!毕竟我还是个小渣渣,查看了百度,解决方案是: 在application/config,php中找 ...
- April 13 2017 Week 15 Thursday
Happiness takes no account of time. 幸福不觉光阴过. Do you know the theory of relativity? If you know about ...
- 修改jupyter notebook的工作路径
两种方法 一 修改jupyter notebook快捷方式的属性 ①根据下图找到jupyter的快捷方式:jupyter notebook→更多→打开文件位置 ②右键打开属性-将目标一栏中最后的%US ...
- python IDE-pycharm在virtualenv里安装软件
1 windows命令行,进入venv下的scripts目录,执行activate.bat进入虚拟环境 2 以selenium安装为例,输入pip install selenium回车开始安装 3 ...
- python--requests库 安装及简单使用
官方文档:http://www.python-requests.org/en/master/ 1 安装requests库 2 get请求不带参数的 带参数的 3 post请求 更多使用请看官方文档 ...
- 2019.03.16 ZJOI2019模拟赛 解题报告
得分: \(100+27+20=147\)(\(T1\)巨水,\(T2,T3\)只能写暴力分) \(T1\):深邃 比较套路的一眼题,显然是一个二分+贪心,感觉就是\(NOIP2018Day1T3\) ...