1 匿名函数

  匿名函数是lambda定义的没有名字的具有一些小功能的函数

  具体形式是

  

lambda 参数列表:返回值表达式
lambda x: X**2
# 求平方操作
lambda x: x>100
# 判断参数是否大于100

2 内置函数

1) int(), float(), bool(), str(), list(), set(), tuple() 和 dict()

  这些都是和类型相关的函数

  这些叫做 工厂函数

2) map(), reduce() 和 filter()

  map()函数有两个参数, 一个是处理函数, 另一个是可迭代对象, map取出可迭代对象的元素, 进行前面的函数操作, 形成新的迭代器的元素, 最终返回该迭代器

  

>>> l = [1,2,3,4,5]
>>> m = map( lambda x:x*x, l)
>>> m
<map object="" at="" 0x0000000003200240="">
>>> list(m)
[1, 4, 9, 16, 25]
</map>
reduce()函数性质同map()函数, 只是传入的函数需要设置两个参数, 具体功能是每次取迭代器中的两个元素,放入函数操作, 下次取出一个值和上一次运行的结果继续在函数中运行, 最后得到一个值并且返回

  

>>> from functools import reduce
>>> l = range(100)
>>> sumValue = reduce(lambda x,y:x+y, l)
>>> sumValue
4950
fileter()函数用于过滤, 和map()类似取一个元素放入函数中运行, 如果运行结果为True则放入生成器中, 否则不放入, 最后返回这个生成器

  

nameDict = [
{'name':'egon','age':18},
{'name':'dfire','age':1000},
{'name':'gaoluchuan','age':9000},
{'name':'fsw','age':10000},
]
filter(lambda x:x['age']>100,nameDict)
3) zip()

  拉链函数, 用于将参数中的可迭代对象的元素组个弄出来匹配成一个一个的元组

  

d={"a":1203,"b":4568,"c":1425}
for i in zip(d.keys(), d.values()):
print(i)
4) abs()

  abs是求绝对值的

  

>>> abs(-1)
1
>>> abs(1)
1
>>> abs(0)
0
5) all() 和 any()

  all函数传入一个可迭代对象, 分别遍历其中的元素, 并且进行bool值判断, 如果有一个值为False就返回False, 只有全部为True才返回True

  当all的参数是空的可迭代对象的时候返回True

  any()函数情况与all()相反, any()中传入空的可迭代对象值为False, 一个值为True就是True, 全部为False才为False

  

>>> all([])
True
>>> all([1,2,3])
True
>>> all([1,2,3,None])
False
6) bin(), oct(), hex()

  返回二进制, 八进制, 十六进制

  

>>> bin(10)
'0b1010'
7) callable()

  判断该对象是否可以被调用

  

>>> def hello():
print("hello") >>> callable(hello)
True
8) chr()

  将字符编码(数字)转化为字符

  

>>> chr(67)
'C'
9) ord()

  与chr()对应, 将字符转化为编码

  

>>> ord('a')
97
10) complex()

  生成复数的函数

  

>>> i = complex(2-4j)
>>> i.real
2.0
>>> i.imag
-4.0
11) dir()

  查看该对象中的成员内容

12) divmod()

  传入两个参数, 返回一个元组, 该元组有两个值, 一个是商, 一个是余数

  

>>> divmod(10,3)
(3, 1)
>>> divmod(15,5)
(3, 0)
13) enumerate()

  传入一个可迭代对象, 返回索引和元素组成的元组

  

>>> for i in enumerate([4,6,7,8,12]):
print(i) (0, 4)
(1, 6)
(2, 7)
(3, 8)
(4, 12)
>>> for i in enumerate([4,6,7,8,12],10):
print(i) (10, 4)
(11, 6)
(12, 7)
(13, 8)
(14, 12)
14) eval()

  获取传入的字符串, 把他当成命令执行

  

>>> l = eval("[1,2,3,4]")
>>> l
[1, 2, 3, 4]
15) hansh()

  根据传入的值生成哈希值

  

>>> hash(1234344)
1234344
>>> hash("shdaiohdsh")
64688500983994519
16) id()

  获得对象的身份(一般说是内存地址)

  

>>> a = 100
>>> id(a)
502009392
>>> b = 100
>>> id(b)
502009392
17) isinstance()

  判断对象是不是某种类型的

  

>>> a = 100
>>> isinstance(a,int)
True
>>> isinstance(a,(int,float))
True
18) iter() 和 next()

  iter获取可迭代对象的迭代器

  

>>> l = [1,2,3,4]
>>> iter(l)
<list_iterator object="" at="" 0x0000000003265828="">
</list_iterator>
next是根据迭代器生成一个值

  

>>> l = [1,2,3,4]
>>> iter(l)
<list_iterator object="" at="" 0x00000000030eab70="">
>>> ll = iter(l)
>>> next(ll)
1
>>> next(ll)
2</list_iterator 
 19) len()

  获得对象的长度

  

>>> len("hello")
5
>>> len([1,2,3])
3
20) locals() 和 globals()

  这是获取局部变量和全局变量的函数

  

>>> def f():
j = 2
print(locals()) >>> f()
{'j': 2}
>>> globals()
{'f': <function f="" at="" 0x0000000000d40378="">, '__builtins__': <module 'builtins'="" (built-in)="">, '__package__': None, '__doc__': None, 'x': 1, 'y': 'xx', '__name__': '__main__', '__spec__': None, '__loader__': <class '_frozen_importlib.builtinimporter'="">}
</class></module></function>
21) max() 和 min()

  求最大值和最小值

  

d={"a":1203,"b":4568,"c":1425}
def get_value(k):
return d[k] print( max(d, key=get_value ) )
print( min(d, key= lambda k:d[k] ) )
22) open()

  打开文件

23) pow()

  求次方, 第一个参数是底数,第二个是指数, 加入第三个参数就是对其结果求余

  

>>> pow(2,3)
8
>>> pow(2,3,3)
2
24) reversed()

  颠倒序列
>>> l = [2,8,5,6,9]
>>> reversed(l)
<list_reverseiterator object="" at="" 0x00000000030eab00="">
>>> list(reversed(l))
[9, 6, 5, 8, 2]
</list_reverseiterator>
25) slice()

  切片函数

26) sorted()

  排序序列

  

>>> sorted(l)
[2, 5, 6, 8, 9]
>>> sorted(l,reverse=True)
[9, 8, 6, 5, 2]
27) type()

  求类型

28) vars()

  没有参数的时候就是locals()  

  

python/匿名函数和内置函数的更多相关文章

  1. python基础知识15---三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数

    阅读目录 一 三元表达式.列表推导式.生成器表达式 二 递归与二分法 三 匿名函数 四 内置函数 五 阶段性练习 一. 三元表达式.列表推导式.生成器表达式 1 三元表达式 name=input('姓 ...

  2. python之三元表达式、列表推导、生成器表达式、递归、匿名函数、内置函数

    目录 一 三元表达式 二 列表推到 三 生成器表达式 四 递归 五 匿名函数 六 内置函数 一.三元表达式 def max(x,y): return x if x>y else y print( ...

  3. Python 入门基础12 --函数基础5 匿名函数、内置函数

    今日内容: 1.三元表达式 2.列表.元组生成式 | 字典生成式 3.递归 4.匿名函数 5.内置函数 一.三元表达式 三元运算符:就是 if...else... 语法糖 前提:if 和 else # ...

  4. python协程函数、递归、匿名函数与内置函数使用、模块与包

    目录: 协程函数(yield生成器用法二) 面向过程编程 递归 匿名函数与内置函数的使用 模块 包 常用标准模块之re(正则表达式) 一.协程函数(yield生成器用法二) 1.生成器的语句形式 a. ...

  5. python基础之函数式编程、匿名函数、内置函数

    一 函数式编程 不修改外部状态. 模仿数学里得函数进行编程. 用函数编程写出得代码相当精简. 可读性比较差. 例子: y=2*x+1 x=1 def test(x): return 2*x+1 tes ...

  6. python 基础篇 15 内置函数和匿名函数

    ------------------------>>>>>>>>>>>>>>>内置函数<<< ...

  7. python基础-匿名函数和内置函数

    匿名函数和内置函数 匿名函数:没有名字,使用一次即被收回,加括号就可以运行的函数. 语法:lambda 参数:返回值 使用方式: 将匿名函数赋值给变量,给匿名函数一个名字,使用这个变量来调用(还不如用 ...

  8. Python进阶(四)----生成器、列表推导式、生成器推导式、匿名函数和内置函数

    Python进阶(四)----生成器.列表推导式.生成器推导式.匿名函数和内置函数 一丶生成器 本质: ​ 就是迭代器 生成器产生的方式: ​ 1.生成器函数

  9. python 三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数

    http://www.cnblogs.com/linhaifeng/articles/7580830.html 三元表达式.列表推导式.生成器表达式.递归.匿名函数.内置函数

  10. python函数知识六 内置函数二、匿名函数与内置函数三(重要)

    19.内置函数二 abs():绝对值 lst = [1,2,-3,1,2,-5] print([abs(i) for i in lst]) enumerate("可迭代对象",&q ...

随机推荐

  1. 戴尔R720xd服务器系统安装

    型号:R720xd 开启服务器,Ctrl+R进入raid配置 配置完raid后F2对硬盘进行格式化 保存并重启 F11进入BIOS选项设置U盘启动 选择U盘启动 开始进行系统安装!

  2. selenium 基础(一)

    selenium安装 pip install selenium selenium操作浏览器原理 早期selenium 1.0 用的selenium RC, 后来selenum2集合了selenium1 ...

  3. java基础学习系列二

    循环语句 1,for(){} 2,while(){} 3,do{}while() continue和break用法 break是结束循环 continue结束本次循环

  4. java实现循环链表的增删功能

    java实现循环链表的增删功能,完整代码 package songyan.test.demo; public class Demo { // java 实现循环链表 public static voi ...

  5. Gitlab - Pull Request

    1.概述 今天查看Gmail,有网友私密我Gitlab的Pull Request工作流程,一直以为我写过这片博客,查看<Git和Gitlab协同工作>却发现遗漏了Pull Request这 ...

  6. Slow HTTP Denial of Service Attack漏洞整改方法

    前期现场反馈系统扫描出Slow HTTP Denial of Service Attack漏洞,根据以往经验提供了更改建议,居然没有生效,深入研究了一下WebLogic下该漏洞的修复方法,现记录如下: ...

  7. 【Python】 系统配置/进程等信息查看 psutil

    psutil 原以为psutil只是跟进程有关的一个模块,没想到它其实提供了从CPU到内存各种各样的信息,十分IMBA.记录一下 我用了pip install psutil安装的这个模块,不过路中遇到 ...

  8. 【Python】 命名空间与LEGB规则

    命名空间与LEGB规则 之前隐隐约约提到过一些关于Python赋值语句的特殊性的问题,这个问题的根源就在于Python中的变量的命名空间机制和之前熟悉的C也好java也好都不太一样. ■ 命名空间 所 ...

  9. 如何让shell脚本自杀

    有些时候我们写的shell脚本中有一些后台任务,当脚本的流程已经执行到结尾处并退出时,这些后台任务会直接挂靠在init/systemd进程下,而不会随着脚本退出而停止. 例如: [root@maria ...

  10. DotNetCore跨平台~Json动态序列化属性

    回到目录 Json动态序列化属性,主要为了解决一个大实体,在返回前端时根据需要去序列化,如果实体里的某个属性在任务情况下都不序列化,可以添加[JsonIgnore]特性,这种是全局的过滤,但是更多的情 ...