Python匿名函数的使用

变量,函数

#encoding=utf-8
infor={10:122,2:233,3:22,56:445}

nums=[1,2,2,2,2,33,46,26,3463,26,634]
nums.sort()#默认从小到大排序 [1, 2, 2, 2, 2, 26, 26, 33, 46, 634, 3463]
print(nums)
nums.sort(reverse=True)#从大到小排序[3463, 634, 46, 33, 26, 26, 2, 2, 2, 2, 1]
print(nums)
nums.reverse()
print(nums)
#对列表中的字典进行排序
information=[{"name":"vivi","age":12},{"name":"lyly","age":13},{"name":"bail","age":17}]
information.sort(key=lambda x:x["name"])#[{'age': 17, 'name': 'bail'}, {'age': 13, 'name': 'lyly'}, {'age': 12, 'name': 'vivi'}]
print(information)
information.sort(key=lambda x:x["age"])#[{'age': 12, 'name': 'vivi'}, {'age': 13, 'name': 'lyly'}, {'age': 17, 'name': 'bail'}]
#采用了匿名函数的方法,x代表了字典,要比较的对象,x:x['age']是取得要比较的值
print(information)

#匿名函数作为一个参数
def test(q,p,func):
	result=func(q,p)
	return result
result=test(11,22,lambda x,y:x+y) #


#Python的动态特性,匿名函数可以作为输入
#funLambda=input("请输入匿名函数")
#resuLamba=test(11,22,funLambda)#这种输入适用于Python2

#python中input输入的内容都是当做字符串进行处理
#所以在Python3中要进行处理
#funLambda=eval(funLambda) #将字符串转换为原来的本义

#2个变量的交换,可以用其他语言一样的方法,也可以这样
a=100
b=200
a,b=b,a
print(a,b)#(200, 100)

#列表作为引用
a1=100
def test1(a1):
	a1+=a1
	print(a1) #200,a1指向的不可变的,指向新的变量生成的值
test1(a1)
print(a1)#100

a2=[100]
def test2(a2):
	a2+=a2#修改a2指向的地址中的值,直接修改地址对应的值
	a2=a2+a2 #==>[100]+[100]====>[100,100]先计算右边,a2重新指向新生成的[100,100]
	print(a2) #[100,100]  ,a1指向可修改变量,改变其中的值
test2(a2)
print(a2)#[100,100]




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一枚努力的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值