ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

函数和作用域

2022-05-27 12:31:36  阅读:141  来源: 互联网

标签:函数 作用域 args value msg print def lambda


#作用域
#匿名函数
def isodd(x):
return x%2

a=isodd(10)
print(a)

isodd = lambda x: x%2
#无参数
#func= lambda:3,14
#func()
#print(a)
myadd = lambda x,y:x+y
A=myadd(1,2)
print(A)

mysum= lambda x,y,*args:x+y+sum(args)
mysum(1,2,3,4,5)

dlist=[{'name':'sun','age':10},{'name':'li','age':13},{'name':'zhao','age':12}]
sorted(dlist,key=lambda item:item.get('age'))

#函数式编程
l=['1','2','3']
[int(val)for val in l]
r=map(int,l)
list(r)

r1= [90,80,40]
r2=[88,92,77]
r=map(lambda x,y:x+y,r1,r2)
print(list(r))

#消费统计
bill=['Apple 20','Pear 5','Banana 10']
r=map(lambda x:x.split()[-1],bill)
value = list(r)
print(value)
print(sum(map(int,value)))

#reduce
from functools import reduce

#1~10阶乘
reduce(lambda x,y:x*y,range(1,11))



#filter
#1.循环调用function
#2.保留被function处理的结果为True元素

#过滤偶数
l=[1,2,3,4,5,6]
list(filter(lambda x:x%2==0,l))

#过滤成绩
report=[[90,80],[50,70],[50,45]]
r=filter(lambda item:sum(item)/len(item) >=60,report)
print(list(r))



#闭包函数内部定义函数,内部函数使用外部变量,称之为闭包
def loginfo(msg,*args,**kwargs):
print('info:',msg)

def debug(msg,*args,**kwargs):
print('debug:',msg)

def logerror(msg,*args,**kwargs):
print('error:',msg)

def warning(msg,*args,**kwargs):
print('warning:',msg)

def logfunc():
level='info'
def logmsg(msg,*args,**kwargs):
print(f"{level}{msg}")
return logmsg
f=logfunc()

#函数当参数
def str2int(value):
print('in str2inf')
return int(value)

def pdeal(f):
def deal(value):
v = value.strip()
return f(v)
return deal

func=pdeal(str2int)
func('100')

标签:函数,作用域,args,value,msg,print,def,lambda
来源: https://www.cnblogs.com/zhangcaiwang1/p/16317176.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有