内置函数思维导图:https://www.processon.com/mindmap/5c10ca52e4b0c2ee256ac034
内置函数
匿名函数
匿名函数统一的名字是:<lambda>
使用场景: 配合着sorted, map, filter 一起使用
fn = lambda a, b : a + b # 定义一个很简单的函数. 复杂的函数不要用lambda ret = fn(3, 5) print(ret) print(fn)
sorted 排序函数. 让你自己去定义排序的规则
执行流程:
把可迭代对象中的每一项拿出来, 作为参数传递给后面key函数.
函数返回数字. 根据数字进行排序
lst = [11,5,36,1,27,58] s = sorted(lst) # 默认从小到大排序. print(s) lst1 = [\"胡一菲\", \"张伟\", \"关谷神奇\", \"曾小贤吕小布\", \"诺澜\"] def func(s): return len(s) # 返回长度 s = sorted(lst, key=func) print(s) #使用匿名函数配合sorted使用 #print(sorted(lst, key=lambda s:len(s) ))
filter 过滤
把可迭代对象打开. 把内部元素一个一个的传递给前面的函数. 由这个函数决定此项是否保留
lst = [\"张无忌\", \"张翠山\", \"范冰冰\", \"金毛狮王\", \"李冰冰\"] # 过滤掉姓张的人 f = filter(lambda name : not name.startswith(\"张\"), lst) print(\"__iter__\" in dir(f)) # 可迭代对象 for el in f: print(el) lst = [ {\"name\":\"alex\", \"shengao\":150, \"tizhong\":250}, {\"name\":\"wusir\", \"shengao\":158, \"tizhong\":150}, {\"name\":\"taibai\", \"shengao\":177, \"tizhong\":130}, {\"name\":\"ritian\", \"shengao\":165, \"tizhong\":130}, {\"name\":\"nvshen\", \"shengao\":160, \"tizhong\":120}, {\"name\":\"baolang\", \"shengao\":183, \"tizhong\":190} ] # 过滤掉体重大于180的人 想要的是 小于180 f = filter(lambda d : d[\'tizhong\'] <= 180, lst) print(list(f))
map 映射函数
lst = [\"篮球球\", \"打打台球\", \"唱歌\", \"爬慌山\", \"步\"] m = map(lambda s: \"爱好:\"+s , lst) print(list(m)) lst = [1,5,78,12,16] # 计算每个数字的平方 print([i **2 for i in lst]) m = map(lambda i: i ** 2, lst) print(list(m))
eval 是把字符串类型的数据作为代码进行执行
s = \"18+2\" ret = eval(s) # 执行字符串类型的代码 print(ret) s = \"{\'name\':\'alex\', \'age\':18, \'isMan\':False}\" # 字符串 ret = eval(s) # 侧重的有返回值 print(ret) print(type(ret))
exec execute 执行字符串类型的代码, 不能太长. 不能太乱
code = input(\"请输入你要执行的代码\") exec(code) # 没有返回值. 想要返回值用eval print(a) # pycharm报错不一定准
compile 编译: 把你要执行的代码先预编译. 通过exec和eval可以执行我们的代码
code = \'\'\' for i in range(10): if i % 2 == 0: print(i) \'\'\' c = compile(code, \"\", \"exec\") # 预加载代码 exec(c) # 运行代码
继续阅读与本文标签相同的文章
下一篇 :
云栖科技评论第52期:第五次计算革命
-
Agentless监控实践中的预警指标采集
2026-05-19栏目: 教程
-
企业为什么要上云?企业如何上云?
2026-05-19栏目: 教程
-
工作流在Kubernetes集群中的实践
2026-05-19栏目: 教程
-
如何从5万设备中找出频繁掉线设备,长期不在线的设备?
2026-05-19栏目: 教程
-
零售数据观(一):如何花30分钟成为一个标签设计“达人”
2026-05-19栏目: 教程
