1. list列表排序

 #### sort排序
nums = [,,,,,] nums.sort()
print(nums) ### 结果
[, , , , , ]

######## 逆序
In []: nums.sort(reverse=True) In []: nums
Out[]: [, , , , , , ]
#####  翻转
In []: nums.reverse() In []: nums
Out[]: [, , , , , , ]

2.字典排序

 infors = [{"name":"alex","age":},{"name":"jack","age":}]
infors.sort(key=lambda x:x["age"]) #按照age排序 print(infors)

    

  把list的元素,单个元素字典,传入到x,即 x:x['name'] 就是    {“name”:“alex”,“age”:43} :alex

3.lambda应用:

  1)版本1:求11+22

 def test(a,b):
result = a+b
return result num = test(11,22)
print(num)

  

  2)版本2:

 def test(a,b,func):
result = func(a,b)
return result num = test(11,22,lambda x,y:x+y)
print(num)

       

  3)版本3:动态语言

 #-*- coding:utf-8 -*-         python2执行
def test(a,b,func):
result = func(a,b)
return result func_new = input("请输入一个匿名函数:") #python2 input是函数
num = test(11,22,func_new)
print(num)

      

  4)版本4:eval  去掉字符串的 “ ”

 ####  python3 执行

 def test(a,b,func):
result = func(a,b)
return result #func_new = input("请输入一个匿名函数:") func_new = input("请输入一个匿名函数:")
func_new = eval(input(func_new)) #eval把字符串的“”去掉
num = test(11,22,func_new)
print(num)

    

3.面试题:交换两个变量的值

  1)版本1:空瓶子t

 a = 4
b = 5
t = 0
print("a=%s,b=%s"%(a,b))
t = a
a = b
b = t
print("a=%s,b=%s"%(a,b))

      

  2)版本2:不用第三个变量

 #### 第2种,不用第三个变量
a = a+b
b = a-b
a = a-b
print("a=%s,b=%s"%(a,b))

  3)版本3:python独有

#####  第3种
a,b = b,a
print("a=%s,b=%s"%(a,b))

    

3.num += num 与 num = num +num 的区别

  1)版本1:a = 100

 ###  不可变类型 数字 字符串  元组
a = 100
def test(num):
num += num
print(num) test(a) print(a)

      

  2)版本2:a = [100]

 #a = 100
a = [100] #list列表是可变类型
def test(num):
num += num # 直接在num变量的内存地址修改,然后还是指向 a
print(num) test(a) print(a)

      ‘’

  3) 版本3: num = num + num

 ###  python中 变量是引用的
#a = 99
a = [100]
def test(num):
#num += num
num = num + num #执行得到结果 [100,100] 然后让 num 再重新指向它
print(num) test(a) print(a)

    

  

day9 匿名函数 lambda的更多相关文章

  1. python--函数式编程 (高阶函数(map , reduce ,filter,sorted),匿名函数(lambda))

    1.1函数式编程 面向过程编程:我们通过把大段代码拆成函数,通过一层一层的函数,可以把复杂的任务分解成简单的任务,这种一步一步的分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计的基本单元. ...

  2. 内置函数filter()和匿名函数lambda解析

    一.内置函数filter filter()函数是 Python 内置的一个高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回由符合条件迭代器 ...

  3. python的匿名函数lambda解释及用法

    lambda函数的语法只包含一个语句,如下:    lambda arg1,arg2,.....argn:expression(主要是看下面的例子)代码示例: #-*- coding:utf-8 -* ...

  4. 匿名函数lambda,过滤函数filter,映射类型map

    匿名函数lambda, 作用是不用定义函数,用完之后会自动被删掉,在使用执行脚本的时候,使用lambda就可以省下定义函数的过程,简化代码的可读性. 格式是 例子g=lambda x,y:x+y g( ...

  5. 6.1 函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数

      函数的返回值: 函数一旦执行到   return,函数就会结束,并会返回return 后面的值,如果不使用显式使用return返回,会默认返回None . return None可以简写为   r ...

  6. python的匿名函数 lambda的使用方法详解以及使用案例

    1.匿名函数是用lambda这个关键字定义 lambda  x:x+1   第一个x代表形参,x+1相当于函数的返回值 #lambda x:x+1 第一个x代表形参,x+1相当于函数的返回值 def ...

  7. Python学习笔记010——匿名函数lambda

    1 语法 my_lambda = lambda arg1, arg2 : arg1 + arg2 + 1 arg1.arg2:参数 arg1 + arg2 + 1 :表达式 2 描述 匿名函数不需要r ...

  8. Python中的匿名函数lambda的用法

    一.lambda函数的简介  对lambda函数,它其实是一个类似于def的函数,只不过lambda是一个不需要定义函数名的匿名函数.当我们在有些时候,需要做一些简单的数学计算时,如果定义一个def函 ...

  9. 『Python基础-14』匿名函数 `lambda`

    匿名函数和关键字lambda 匿名函数就是没有名称的函数,也就是不再使用def语句定义的函数 在Python中,如果要声匿名函数,则需要使用lambda关键字 使用lambda声明的匿名函数能接收任何 ...

随机推荐

  1. Java HttpURLConnection模拟请求Rest接口解决中文乱码问题

    转自:http://blog.csdn.net/hwj3747/article/details/53635539 在Java使用HttpURLConnection请求rest接口的时候出现了POST请 ...

  2. React 简单实例 (React-router + webpack + Antd )

    React Demo  Github 地址 经过React Native 的洗礼之后,写了这个 demo :React 是为了使前端的V层更具组件化,能更好的复用,同时可以让你从操作dom中解脱出来, ...

  3. array和matrix

    array:数组 matrix:矩阵 list:列表 a = [[1,2,3],[4,5,6]] 两种array的定义方式,第一种方式可以看出list不是array,但却有很大的联系 a = np.a ...

  4. mysql存储过程学习(一)

    转载 什么是存储过程,存储过程的作用及优点  mysql存储过程详细教程  mysql 使用存储过程批量插数据 一.存储过程介绍: 存储过程(Stored Procedure)是一组为了完成特定功能的 ...

  5. Ubunru 16.04 kinetic 下安装turtlebot2

    默认安装Ubuntu16.04以及ROS kinetic 防止忘记. 1. 准备工作: $ sudo apt-get install python-rosdep python-wstool ros-k ...

  6. Linux 启动进程结束进程通用代码

    linux启动springboot项目 start.sh #!/bin/sh rm -f tpid nohup java -jar restDate--SNAPSHOT.jar --spring.pr ...

  7. OPENGL绘制文字

    OPENGL没有提供直接绘制文字的功能,需要借助于操作系统. 用OPENGL绘制文字比较常见的方法是利用显示列表.创建一系列显示列表,每个字符对应一个列表编号.例如,'A'对应列表编号1000+'A' ...

  8. --oracle删除数据库表(无主键)中重复的记录

    --oracle删除数据库表(无主键)中重复的记录 1,  CREATE TABLE newtable as SELECT distinct * FROM T_SYSTEM_MENU_PRIV; 2, ...

  9. C#设计模式 —— 单例模式

    嗯,这是本人的第一篇随笔,就从最简单的单例模式开始,一步一步地记录自己的成长. 单例模式是最常见的设计模式之一,在项目代码中几乎随处可见.这个设计模式的目的就是为了保证实例只能存在一个.单例模式往下还 ...

  10. parseInt("08")或parseInt("09")转换返回0的解决办法

    在javascript中使用parseInt()函数转换成整数时会遇到以下这种情况: 使用parseInt()转换'01'~'07'时可以转换成整数1~7,而转换'08'和'09'时,就会出现转换结果 ...