1. abs() 获取绝对值
1
2
3
4
5
6
7
8
9
10
11
12
|
abs ( - 10 ) - - - > 10 abs ( 10 ) - - - > 10 abs ( 0 ) - - - > 0 a = - 10 a.__abs__() - - - > 10 |
2. all() 参数为可迭代对象,迭代对象为空时,返回True.如果迭代对象的所有元素都为真,那么返回True,否则返回False.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
all ([ 'python' , 123 ]) - - - > True all ([]) - - - > True all ([ 0 ]) - - - > False all ( " " ) - - - > True all ( 1 , ' ' , 2 , None ) - - - > False |
3.any() 参数为可迭代对象,参数为空时返回True
1
2
3
4
5
|
print ( any ([ None , 0 , ' ' ,{}, 1 ])) - - - > True print ( any ( ' ' )) - - - > True |
4.sum() 求和
1
2
3
|
res = sum (i for i in range ( 5 )) #(i for i in range(5))为生成器表达式 print (res) - - - > 12 |
5.bin() 将参数转化为二进制
1
2
|
print ( bin ( 3 )) - - - > 0b11 |
6.bool() 布尔函数,返回bool值,False或True
1
2
3
4
5
6
7
8
|
print ( bool ( 0 )) - - - > False print ( bool ( None )) - - - > False print ( bool ( ' ' )) - - - > False |
7. ascii() 调用对象的__repr__()方法,获得该方法的返回值.
8.bytes() 将一个字符串转化为字节类型
1
2
3
4
5
6
7
8
9
10
|
print (bytes( 'hello' ,encoding = 'utf8' )) - - - >b 'hello' s = 'python' print (bytes(s, encoding = 'utf-8' )) - - - >b 'python' a = '王' print (bytes(a, encoding = 'utf-8' )) - - - >b 'xe7x8ex8b' |
9.str() 将字符类型/数值类型等转换为字符串类型
1
2
3
4
5
|
print ( str (b 'xe7x8ex8b' , encoding = 'utf-8' )) # 字节转换为字符串 - - - > '王' str ( 1 ) # 整数转换为字符串 - - - > '1' |
10.chr() 查看十进制数对应的ASCII字符
1
2
3
4
5
|
print ( chr ( 67 )) - - - >C print ( chr ( 65 )) - - - >A |
11.ord() 查看某个ASCII对应的十进制数
1
2
|
print ( ord ( 'A' )) - - - > 65 |
12.callabe() 判断对象是否可以被调用,能被调用的对象就是一个callables对象,比如函数和带有__call__()的实例
1
2
3
4
5
6
7
|
def test(): pass print ( callable (test)) - - - > True print ( callable ( sum )) - - - > True |
13. classmethod() 用来指定一个方法为类的方法,由类直接调用执行,只有一个cls参数,执行雷的方法时,自动将调用该方法的类赋值给cls.没有此参数指定的类的方法为实例方法
1
2
3
4
5
6
7
8
9
10
11
12
|
class Province: country = "中国" def __init__( self , name): self .name = name @classmethod def show( cls ): # 类方法,由类调用,最少要有一个参数cls,调用的时候这个参数不用传值,自动将类名赋值给cls print ( cls ) # 调用方法 Province.show() |
14.complie() 将字符串编译成python能识别或可以执行的代码,也可以将文字读成字符串再编译
1
2
3
4
5
6
|
1 compile (source, filename, mode, flags = 0 , dont_inherit = False , optimize = - 1 ) 2 将source编译为代码或者AST对象。代码对象能过通过 exec 语句来执行或者 eval ()进行求值。 3 参数source:字符串或者AST(abstract syntax trees)对象。 4 参数filename:代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。 5 参数model:指定编译代码的种类。可以指定 'exec' , 'eval' , 'single' 。 6 参数flag和dont_inherit:这两个参数为可选参数。 |
1
2
3
|
s = "print('helloworld')" print ( compile (s, "<string>" , "exec" )) - - - ><code object <module> at 0x000001C648038390 , file "<string>" , line 1 > |
15.complex()
1
2
3
|
1 创建一个值为real + imag * j的复数或者转化一个字符串或数为复数。如果第一个参数是字符串,则不需要指定第二个参数。 2 参数real: int , long , float 或字符串。 3 参数imag: int , long , float 。 |
1
2
3
4
5
6
|
x = complex ( 1 - 2j ) print (x.real) - - - > 1.0 print (x.imag) - - - > 2.0 |
16. delattr() 删除对象的属性
17.int() #数据类型,整型
1
2
3
4
5
6
7
8
|
int num = 1 #num=int(1) print ( type (num)) #查看num的类型 - - - > < class 'int' > print ( isinstance (num, int )) #判断num是否为int类型 print (num is 1 ) #is 是身份运算,根据id去判断身份 |
18. float() 讲一个字符串或整数转换为浮点数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
print ( float ()) - - - > 0.0 print ( float ( '123' )) - - - > 123.0 print ( float ( 1 )) - - - > 1.0 print ( float ( 'a' )) Traceback (most recent call last): File "<pyshell#45>" , line 1 , in <module> float ( 'a' ) ValueError: could not convert string to float : 'a' |
19.list() 参数为可迭代对象
1
2
3
4
5
6
7
8
9
10
11
|
list x = [] x = list (i for i in range ( 10 )) #生成器表达式,以元组的形式呈现 print (x) - - - >[ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ] 列表构造函数 list ([iterable]) list 的构造函数。参数iterable是可选的,它可以是序列,支持编译的容器对象,或iterator对象。 该函数创建一个元素值,顺序与参数iterable一致的列表。如果参数iterable是一个列表,将创建 列表的一个拷贝并返回,就像语句iterables[:]。 |
20.tuple() 元组
21.dict() 创建数据字典
1
2
3
4
5
6
7
8
9
10
11
12
13
|
d = { 'a' : 1 } d = dict (x = 1 ,y = 2 ,z = 3 ) print (d) - - - >{ 'y' : 2 , 'x' : 1 , 'z' : 3 } print ( dict ()) 空字典 - - - >{} print ( dict (one = 1 , two = 2 )) - - - >{ 'one' : 1 , 'two' : 2 } print ( dict ({ 'one' : 1 , 'two' : 2 })) - - - >{ 'one' : 1 , 'two' : 2 } |
22.set() 集合
1
2
3
4
5
6
7
|
s = { 1 , 2 , 3 , 4 , 4 } print (s) - - - >{ 1 , 2 , 3 , 4 } s.add( 5 ) print (s) - - - >{ 1 , 2 , 3 , 4 , 5 } |
23.frozenset() 不可变集合
1
2
3
4
5
6
7
|
frozenset ([iterable]) set 和 frozenset 最本质的区别是前者是可变的,后者是不可变的。当集合对象会被改变时(例如删除,添加元素),只能使用 set , 一般来说使用fronzet的地方都可以使用 set 。 参数iterable:可迭代对象。 f = frozenset ({ 1 , 2 , 3 , 4 }) print ( type (f)) - - - > < class 'frozenset' > |
24.dir() 不带参数时返回当前范围内的变量,方法和定义的类型列表,带参数时返回参数的属性,方法列表
1
2
3
4
|
print ( dir ()) - - - >[ '__builtins__' , '__doc__' , '__loader__' , '__name__' , '__package__' , '__spec__' , 'li' , 'li1' , 'li2' , 'li_1' ] >>> dir ( list ) [ '__add__' , '__class__' , '__contains__' , '__delattr__' , '__delitem__' , '__dir__' , '__doc__' , '__eq__' , '__format__' , '__ge__' , '__getattribute__' , '__getitem__' , '__gt__' , '__hash__' , '__iadd__' , '__imul__' , '__init__' , '__iter__' , '__le__' , '__len__' , '__lt__' , '__mul__' , '__ne__' , '__new__' , '__reduce__' , '__reduce_ex__' , '__repr__' , '__reversed__' , '__rmul__' , '__setattr__' , '__setitem__' , '__sizeof__' , '__str__' , '__subclasshook__' , 'append' , 'clear' , 'copy' , 'count' , 'extend' , 'index' , 'insert' , 'pop' , 'remove' , 'reverse' , 'sort' ] print ( dir ( sum )) #输出sum下有哪些可被sum调用的方法。(对象.方法),sum.方法 |
25.divmod() 分别取商和余数.二个参数x和y,输出元组(x//y,x%y)
1
2
|
print ( divmod ( 100 , 33 )) - - - >( 3 , 1 ) |
26. enumerate() 返回一个可以枚举的对象,该对象的next()方法将返回一个元组
1
2
3
4
5
6
7
8
9
10
11
12
13
|
for i in enumerate ([ 'a' , 'b' , 'c' , 'd' ]): print (i) - - - >( 0 , 'a' ) ( 1 , 'b' ) ( 2 , 'c' ) ( 3 , 'd' ) ( 0 , 'x' ) ( 1 , 'y' ) for i in enumerate ({ 'x' : 1 , 'y' : 2 }): print (i) - - - - >( 0 , 'x' ) ( 1 , 'y' ) |
27.eval() 将字符串str中的表达式提取出来并运行
1
2
3
4
5
6
|
s = "1+2*3" print ( type (s)) - - - > < class 'str' > print ( eval (s)) - - - > 7 |
28.exec() 执行字符串或complie方法编译过的字符串,没有返回值
29.filter() 过滤器,构造一个序列,等价于[ item for item in iterables if function(item)],在函数中设定过滤条件,逐一循环迭代器中的元素,将返回值为True时的元素留下,形成一个filter类型数据
1
2
3
4
5
6
7
|
filter (function, iterable) 参数function:返回值为 True 或 False 的函数,可以为 None 。 参数iterable:序列或可迭代对象。 def bigerthan5(x): return x > 5 print ( filter (bigerthan5, [ 3 , 4 , 5 , 6 , 7 , 8 ])) - - - > [ 6 , 7 , 8 ] |
30.format() 格式化输出字符串,format(value, format_spec)实质上是调用了value的__format__(format_spec)方法
1
2
|
print ( "I am {0}, I like {1}!" . format ( "xu" , "moon" )) - - - > 'I am xu, I like moon!' |
31.getattr() 获取对象的属性
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
getattr ( object , name [, defalut]) 获取对象 object 名为name的特性,如果 object 不包含名为name的特性,将会抛出AttributeError异常;如果不包含名为name的特性 且提供default参数,将返回default。 参数 object :对象 参数name:对象的特性名 参数default:缺省返回值 print ( getattr ( list , 'append' )) - - - > <method 'append' of 'list' objects> mylist = [ 3 , 4 , 5 ] append(mylist, 6 ) print (mylist) - - - >[ 3 , 4 , 5 , 6 ] print ( getattr ( list , 'add' )) - - - >Traceback (most recent call last): File "<stdin>" , line 1 , in <module> AttributeError: type object 'list' has no attribute 'add' print ( getattr ( list , 'add' , 'NoMethod' )) - - - > 'NoMethod' |
32.globals() 返回一个描述当前全局变量的字典
1
2
3
|
a = 1 print ( globals ()) - - - > { '__loader__' : < class '_frozen_importlib.BuiltinImporter' >, 'a' : 1 , '__builtins__' : <module 'builtins' (built - in )>, '__doc__' : None , '__name__' : '__main__' , '__package__' : None , '__spec__' : None } |
33.hasattr()
1
2
3
4
5
6
7
8
9
10
|
hasattr ( object ,name) 判断对象 object 是否包含名为name的特性( hasattr 是通过调用 getattr ( object ,name))是否抛出异常来实现的。 参数 object :对象 参数name:特性名称 print ( hasattr ( list , 'append' )) - - - > True print ( hasattr ( list , 'add' )) - - - > False |
34.hash() 哈希值
1
2
3
4
|
hash ( object ) hash 是一种算法,二个数值相等 hash 值是确定的唯一的,常用来校验数据。<br> hash 值不能逆推。 如果对象 object 为哈希表类型,返回对象 object 的哈希值。哈希值为整数,在字典查找中,哈希值用于快递比价字典的键。 两个数值如果相等,则哈希值也相等。 |
35.hex() 十进制转化为十六进制
1
2
|
print ( hex ( 10 )) - - - > 0xa |
36. id() 查看唯一标识的身份
37. help() 返回对象的帮助文档
38. input() 获取用户输入内容
39. isinstance() 检查对象是否是类的对象,返回True或False
1
2
3
4
5
6
|
isinstance (obj, cls ) 检查obj是否是类 cls 的对象, 返回 True 或 False class Foo( object ): pass obj = Foo() isinstance (obj, Foo) |
40. issubclass() 检查一个类是否是另一个类的子类。返回True或False
1
2
3
4
5
6
7
8
9
10
|
issubclass (sub, super ) 检查sub类是否是 super 类的派生类(子类)。返回 True 或 False class Foo( object ): pass class Bar(Foo): pass issubclass (Bar, Foo) |
41. iter()
1
2
3
4
5
6
|
iter (o[, sentinel]) 返回一个iterator对象。该函数对于第一个参数的解析依赖于第二个参数。 如果没有提供第二个参数,参数o必须是一个集合对象,支持遍历功能(__iter__()方法)或支持序列功能(__getitem__()方法), 参数为整数,从零开始。如果不支持这两种功能,将触发TypeError异常。 如果提供了第二个参数,参数o必须是一个可调用对象。在这种情况下创建一个iterator对象,每次调用iterator的 next ()方法来无 参数的调用o,如果返回值等于参数sentinel,触发StopIteration异常,否则将返回该值。 |
42. len() 返回对象长度,参数可以是序列类型(字符串,元组或列表)或映射类型(如字典)
43. locals() 打印当前可用的局部变量的字典
1
2
3
|
不要修改 locals ()返回的字典中的内容;改变可能不会影响解析器对局部变量的使用。 在函数体内调用 locals (),返回的是自由变量。修改自由变量不会影响解析器对变量的使用。 不能在类区域内返回自由变量。 |
44. lambda匿名函数
因为lambda函数没有函数名,引用计数为0,内存会被清理,所有匿名函数常与内置函数一起使用。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
求出工资最高的 salaries = { 'egon' : 3000 , 'alex' : 1000000 , 'wupeiqi' : 10000 , 'yuanhao' : 2500 } def get_value(k): return salaries[k] print ( max (salaries)) - - - - >yuanhao print ( max (salaries,key = get_value)) #迭代输出key,调用get_value函数,参数为key,得到每个人工资, max再进行比较工资,打印最大的人名key值 - - - >alex 使用匿名函数求出工资最高的 f = lambda k:salaries[k] #匿名函数不写函数名,返回值为salaries[k] print (f) #f 相当于函数名 - - - - - > <function < lambda > at 0x0000000002823A60 > print (f( 'egon' )) - - - - > 3000 print ( max (salaries,key = lambda k:salaries[k])) #求出最高工资的人 - - - - >alex print ( min (salaries,key = lambda k:salaries[k])) #求出最低工资的人 - - - - >yuanhao |
45. zip() ‘拉链’,一对一的
1
2
3
4
5
6
7
8
9
10
|
l1 = [ 1 , 2 , 3 ] s = "hel" for i in zip (l1,s): #zip(l1,s)为可迭代的 print (i) - - - - >( 1 , 'h' ) ( 2 , 'e' ) ( 3 , 'l' ) l1 = [ 1 , 2 , 3 , 4 ],s不变,输出结果也同上;l1不变,s = "hell" ,输出结果也同上。 因为 zip ()函数为一一对应的 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
用 zip 函数求最高工资的人 salaries = { 'egon' : 3000 , 'alex' : 1000000 , 'wupeiqi' : 10000 , 'yuanhao' : 2500 } print (salaries.keys(),salaries.values()) #dict_keys(['egon', 'alex', 'wupeiqi', 'yuanhao']) dict_values([3000, 1000000, 10000, 2500]) z = zip (salaries.keys(),salaries.values()) print (z) - - - - > < zip object at 0x00000000027F3C08 > for i in z: print (i) - - - - >( 'egon' , 3000 ) ( 'alex' , 1000000 ) ( 'wupeiqi' , 10000 ) ( 'yuanhao' , 2500 ) z = zip (salaries.values(),salaries.keys()) #工资value和人名key互换位置 print ( max (z)) - - - - >( 1000000 , 'alex' ) z = zip (salaries.values(),salaries.keys()) #因为已经迭代完成了,所以要重新迭代 print ( min (z)) - - - - >( 2500 , 'yuanhao' ) |
46. sorted() 返回列表,列表包含所有的元素,按升序排列
1
2
3
4
5
6
7
8
9
10
11
|
l = [ 3 , 4 , 1 , 0 , 9 , 10 ] print ( sorted (l)) - - - - >[ 0 , 1 , 3 , 4 , 9 , 10 ] s = "hello abc" print ( sorted (s)) - - - - - >[ ' ' , 'a' , 'b' , 'c' , 'e' , 'h' , 'l' , 'l' , 'o' ] #降序 reverse 反转 print ( sorted (l,reverse = True )) - - - - >[ 10 , 9 , 4 , 3 , 1 , 0 ] |
1
2
3
|
salaries = { 'egon' : 3000 , 'alex' : 1000000 , 'wupeiqi' : 10000 , 'yuanhao' : 2500 } print ( sorted (salaries)) #默认是按照字典salaries的key去排序的 - - - - - >[ 'alex' , 'egon' , 'wupeiqi' , 'yuanhao' ] |
1
2
3
4
5
|
排序且修改 l = [ 3 , 2 , 0 , 10 ] l = sorted (l) print (l) - - - >[ 0 , 2 , 3 , 10 ] |
47. map() 映射,第一个参数为函数,第二个参数为可迭代对象
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
l = [ 1 , 2 , 3 , 4 , 7 , 5 ] x = [i * * 2 for i in l] print (x) - - - - >[ 1 , 4 , 9 , 16 , 49 , 25 ] #上述用map函数实现 #迭代取l 的值,传递给lamba函数 m = map ( lambda item:item * * 2 ,l) print (m) - - - - >< map object at 0x00000000021DC3C8 > for i in m: print (i) - - - > 1 4 9 16 49 25 for 循环也可用 print ( list (m))来实现,不过要重新迭代 m = map ( lambda item:item * * 2 ,l) print ( list (m)) <br> - - - - >[ 1 , 4 , 9 , 16 , 49 , 25 ] |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
map (function, iterable,...) 对于参数iterable中的每个元素都应用fuction函数,并将结果作为列表返回。 如果有多个iterable参数,那么fuction函数必须接收多个参数,这些iterable中相同索引处的元素将并行的作为function函数的参数。 如果一个iterable中元素的个数比其他少,那么将用 None 来扩展改iterable使元素个数一致。 如果有多个iterable且function为 None , map ()将返回由元组组成的列表,每个元组包含所有iterable中对应索引处值。 参数iterable必须是一个序列或任何可遍历对象,函数返回的往往是一个列表( list )。 li = [ 1 , 2 , 3 ] data = map ( lambda x :x * 100 ,li) print ( type (data)) data = list (data) print (data) 运行结果: < class 'map' > [ 100 , 200 , 300 ] |
48.max() 返回给定元素里最大值
1
2
3
4
5
|
max (iterable [,args...][, key]) 如果只提供iterable参数,函数返回可遍历对象(如:字符串,元组或列表)中最大的非空元素。 如果提供多个参数,那么返回值最大的那个参数。 可选参数key是单参数的排序函数。 如果提供key参数,必须是以命名的形式,如: max (a, b, c, key = fun) |
49.min() 返回给定元素里最小值
1
2
3
4
5
|
min (iterable [,args...][, key]) 如果只提供iterable参数,函数返回可遍历对象(如:字符串,元组或列表)中最小的非空元素。 如果提供多个参数,那么返回值最小的那个参数。 可选参数key是单参数的排序函数。 如果提供key参数,必须是以命名的形式,如: max (a, b, c, key = fun) |
50.object()
1 获取一个新的,无特性(geatureless)对象。 Object 是所有类的基类。它提供的方法将在所有的类型实例中共享。 2 该函数时 2.2 .版本新增, 2.3 版本之后,该函数不接受任何参数。 |
51.open() 打开文件
1
2
3
4
5
6
7
8
9
10
|
open (filename [, mode [, bufsize]]) 打开一个文件,返回一个 file 对象。 如果文件无法打开,将处罚IOError异常。 应该使用 open ()来代替直接使用 file 类型的构造函数打开文件。 参数filename表示将要被打开的文件的路径字符串; 参数mode表示打开的模式,最常用的模式有: 'r' 表示读文本, 'w' 表示写文本文件, 'a' 表示在文件中追加。 Mode的默认值是 'r' 。 当操作的是二进制文件时,只要在模式值上添加 'b' 。这样提高了程序的可移植性。 可选参数bufsize定义了文件缓冲区的大小。 0 表示不缓冲; 1 表示行缓冲;任何其他正数表示使用该大小的缓冲区; 负数表示使用系统默认缓冲区大小,对于tty设备它往往是行缓冲,而对于其他文件往往完全缓冲。如果参数值被省却。 使用系统默认值。 |
52.print() 输出函数
1
2
3
4
|
python2中的 print 语句被python3中的 print ()函数取代。 如何限制 print 的默认换行: 1. python2版本下,在 print 输出的最后加一个逗号 ',' 2. python3. 4 以后, print (value, ...,sep = ' ',end='
', file = sys.stdout,flush = False ),将end设为空即可。 |
53.range() 根据需要生成一个指定范围的数字,可以提供你需要的控制来迭代指定的次数
1
2
3
4
5
6
7
|
用于创建包含连续算术值的列表( list )。常用于 for 循环。参数必须是普通整数。 参数step默认值为 1 ,参数start的默认值为 0 。 全参数调用该函数将返回一个普通整数列表。 step 可以是正整数或者负整数。不可以为 0 ,否则将处罚ValueError异常。 range ( 3 )代表 0 , 1 , 2. 等价于 range ( 0 , 3 ) print ( range ( 0 , 10 , 2 )) #第一个参数是起始数,第二个是终止数(不包含这个),第三个数步数 - - - - >[ 0 , 2 , 4 , 6 , 8 ] |
55. repr() 将任意值转换为字符串,供计时器读取的形式
1
2
3
|
返回一个对象的字符串表示。有时可以使用这个函数来访问操作。 对于许多类型来说, repr ()尝试返回一个字符串, eval ()方法可以使用该字符串产生对象; 否则用尖括号括起来的,包含类名称和其他二外信息的字符串被返回。 |
56.reversed() 反转,逆序对象,反着排序。
1
2
|
返回一个逆序的iterator对象。参数seq必须是一个包含__reversed__()方法的对象或支持序列操作(__len__()和__getitem__()) 该函数是 2.4 中新增的 |
1
2
|
print ( list ( reversed ([ 1 , 3 , 5 , 9 ]))) - - - - - >[ 9 , 5 , 3 , 1 ] |
57.round() 四舍六入五留双,五留双留离整数最近的偶数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
print ( round ( 10.3 )) - - - - > 10 print ( round ( 10.5 )) - - - - > 10 print ( round ( 10.6 )) - - - - > 11 print ( round ( 10.9 )) - - - - > 11 print ( round ( 11.5 )) - - - - > 12 |
58.pow() 幂函数
1
2
3
4
5
|
print ( pow ( 3 , 2 )) #3**2 - - - - > 9 print ( pow ( 3 , 2 , 2 )) #3**2%2 - - - - > 1 |
59. reduce() 合并,第一个参数为函数,第二个参数为可迭代对象。第三个参数可有可无,默认初始值。
1
2
3
4
5
6
7
8
9
10
11
|
from functools import reduce #合并 l = list ( range ( 100 )) print (l) - - - - >[ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , 63 , 64 , 65 , 66 , 67 , 68 , 69 , 70 , 71 , 72 , 73 , 74 , 75 , 76 , 77 , 78 , 79 , 80 , 81 , 82 , 83 , 84 , 85 , 86 , 87 , 88 , 89 , 90 , 91 , 92 , 93 , 94 , 95 , 96 , 97 , 98 , 99 ] print ( reduce ( lambda x,y:x + y,l, 100 )) i = iter (l) # 100 next(i) --->100,0----->x,y-x+y-->100 # 100 next(i)---->100,1----->x,y--x+y-->101 # 101 next(i)----->101,2 - - - - > 5050 |
60. filter 过滤
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
name_l = [ { 'name' : 'egon' , 'age' : 18 }, { 'name' : 'dragonFire' , 'age' : 1000 }, { 'name' : 'gaoluchuan' , 'age' : 9000 }, { 'name' : 'fsw' , 'age' : 10000 }, ] f = filter ( lambda d:d[ 'age' ] > 100 ,name_l) print (f) - - - - - >< filter object at 0x00000000027DCCF8 > print ( list (f)) #与map函数不同的是其返还的是查询的内容 - - - - >[{ 'name' : 'dragonFire' , 'age' : 1000 },{ 'name' : 'gaoluchuan' , 'age' : 9000 },{ 'name' : 'fsw' , 'age' : 10000 }] for i in f: print (i) - - - - >{ 'name' : 'dragonFire' , 'age' : 1000 } { 'name' : 'gaoluchuan' , 'age' : 9000 } { 'name' : 'fsw' , 'age' : 10000 } |
61.oct() 十进制转化为八进制
1
2
|
print ( oct ( 10 )) - - - - > 0o12 |
62.slice 切片
1
2
3
4
5
6
7
|
l = [ 1 , 2 , 3 , 4 , 5 ] print (l[ 2 : 4 ]) - - - >[ 3 , 4 ] s = slice ( 2 , 4 ) print (l[s]) - - - - >[ 3 , 4 ] |
63. vars 没有参数时和locals()一样,有参数得到字典
64. __import__
1
2
3
4
5
6
7
|
import time #print(time) ----><module 'time' (built-in)> time.sleep( 3 ) 上述代码等价于下面代码内容 m = __import__ ( 'time' ) #print(m) ----><module 'time' (built-in)> m.sleep( 3 ) |