思维导图: https://www.processon.com/mindmap/5c10cb5ee4b0090a2c9db92f

1. 匿名函数统一的名字是:<lambda>

 使用场景: 配合着sorted, map, filter 一起使用

# fn = lambda a, b : a + b # 定义一个很简单的函数. 复杂的函数不要用lambda
# ret = fn(3, 5)
# print(ret)
# print(func)
# print(fn)

2. sorted 排序函数.  让你自己去定义排序的规则

  执行流程:
    把可迭代对象中的每一项拿出来, 作为参数传递给后面key函数.
    函数返回数字. 根据数字进行排序

lst = [11,5,36,1,27,58]

# s = sorted(lst) # 默认从小到大排序.
# print(s) # lst = ["胡一菲", "张伟", "关谷神奇", "曾小贤吕小布", "诺澜"]
# # 按照字符串长度排序
# def func(s):
# return len(s) # 返回长度 lst = [11,5,36,1,27,58] # s = sorted(lst) # 默认从小到大排序.
# print(s) # lst = ["胡一菲", "张伟", "关谷神奇", "曾小贤吕小布", "诺澜"]
# # 按照字符串长度排序
# def func(s):
# return len(s) # 返回长度

3. filter 过滤

  把可迭代对象打开. 把内部元素一个一个的传递给前面的函数. 由这个函数决定此项是否保留

 lst = ["张无忌", "张翠山", "范冰冰", "金毛狮王", "李冰冰"]
#
# # 过滤掉姓张的人
# # 把可迭代对象打开. 把内部元素一个一个的传递给前面的函数. 由这个函数决定此项是否保留
# f = filter(lambda name : not name.startswith("张"), lst)
#
# print("__iter__" in dir(f)) # 可迭代对象
# for el in f:
# print(el)

4. 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))

5. eval 是把字符串类型的数据作为代码进行执行

# eval 是把字符串类型的数据作为代码进行执行
# s = "18+2"
# ret = eval(s) # 执行字符串类型的代码
# print(ret) # code = input("请输入你要执行的代码:")
# ret = eval(code)
# print(ret) # s = "{'name':'alex', 'age':18, 'isMan':False}" # 字符串
# # 把字符串类型的代码还原回字典, 列表, 元组
# ret = eval(s) # 侧重的有返回值
# print(ret)
# print(type(ret))

6. exec execute 执行字符串类型的代码, 不能太长. 不能太乱

# code = input("请输入你要执行的代码")
# exec(code) # 没有返回值. 想要返回值用eval
# print(a) # pycharm报错不一定准

7.compile 编译: 把你要执行的代码先预编译. 通过exec和eval可以执行我们的代码

code = '''
for i in range(10):
if i % 2 == 0:
print(i)
''' c = compile(code, "", "exec") # 预加载代码
# exec
exec(c) # 运行代码 # 可以使用complie写一个编程大赛.

15 Python之内置函数的更多相关文章

  1. python之内置函数(一)

    一.内置函数一1.内置函数总览 abs() dict() help() min() setattr()all() dir() hex() next() slice() any() divmod() i ...

  2. python之内置函数(二)与匿名函数、递归函数初识

    一.内置函数(二)1.和数据结构相关(24)列表和元祖(2)list:将一个可迭代对象转化成列表(如果是字典,默认将key作为列表的元素).tuple:将一个可迭代对象转化成元组(如果是字典,默认将k ...

  3. Python之内置函数

    内置函数 python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数. 分类学习内置函数: 总共 ...

  4. what's the python之内置函数

    what's the 内置函数? 内置函数,内置函数就是python本身定义好的,我们直接拿来就可以用的函数.(python中一共有68中内置函数.)     Built-in Functions   ...

  5. python之内置函数与匿名函数

    一内置函数 # print(abs(-1)) # print(all([1,2,'a',None])) # print(all([])) #bool值为假的情况:None,空,0,False # # ...

  6. python之内置函数,匿名函数

    什么是内置函数? 就是Python给你提供的,拿来直接用的函数,比如print,input等等.其实就是我们在创建.py的时候python解释器所自动生成的内置的函数,就好比我们之前所学的作用空间 内 ...

  7. python之内置函数,匿名函数,递归函数

    一. 内置函函数 什么是内置函数?就是Python给你提供的,拿来直接用的函数,比如print,input等等.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就 ...

  8. python之内置函数(lambda,sorted,filter,map),递归,二分法

    一.lambda匿名函数 为了解决一些简单需求而设计的一句话函数,lambda表示的是匿名函数,不需要用def来声明,一句话就可以声明出一个函数. 语法: 函数名 = lambda 参数 : 返回值 ...

  9. Python之内置函数一

    一:绝对值,abs i = abs(-123) print(i) # 打印结果 123 二:判断真假,all,与any 对于all # 每个元素都为真,才是True # 假,0,None," ...

随机推荐

  1. C# how to properly make a http web GET request

    C# how to properly make a http web GET request EDIT 23/11/17 Updated to throw out examples using asy ...

  2. import 和 require 的 区别

    node编程中最重要的思想就是模块化,import和require都是被模块化所使用. 遵循规范 require 是 AMD规范引入方式 import是es6的一个语法标准,如果要兼容浏览器的话必须转 ...

  3. Springboot2.0实现URL拦截

    1.创建一个登陆拦截器SecurityInterceptor,它继承HandlerInterceptorAdapter类 package com.cn.commodity.config; import ...

  4. mybatis如何遍历Map的key和value【增删改查】

    转: mybatis如何遍历Map的key和value 2017年11月28日 10:07:57 Joker_Ye 阅读数:4158   1.sql.xml <?xml version=&quo ...

  5. 六十二:CSRF攻击与防御之系统准备之注册功能

    CSRF攻击原理: 配置信息 import osSQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:123456@127.0.0.1:3306/test'S ...

  6. Selenium下Chrome配置

    地址:https://peter.sh/experiments/chromium-command-line-switches/ chrome_options.add_argument('--headl ...

  7. nvm 安装及操作 node版本管理

    安装 > curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash 安装完成后重启下 ...

  8. WDM-波分复用

    波分复用WDM(Wavelength Division Multiplexing)是将两种或多种不同波长的光载波信号(携带各种信息)在发送端经复用器(亦称合波器,Multiplexer)汇合在一起,并 ...

  9. DOM事件练习 I

    目录 input框动态显示事件 红绿灯模拟 顶部广告栏关闭 鼠标悬停IMG上时,更换另一张图片 悬浮框自动出现 模态框案例 input框动态显示事件 <head> <meta cha ...

  10. vue2-org-tree 基于VUE的部门组织架构组件,增删节点实现

    本文所用组件传送门:vue-org-tree 本文基于antd (其他前端组件框架操作基本都类似的: iview,elementui,boostrap-vue...) 当然,github上还有其他类似 ...