python 几个内置的函数的用法

2017-11-30  本文已影响8人  Miltonlong

enumerate(iterable[, start])
enumerate 本身是列举,枚举的意思。该函数需要一个传入一个可迭代对象(必备),和一个起始值,默认是 0 。得到 enumerate 的类,可以用 list tuple set dict 等函数去转换成对象的类型。

>>> li = ['a','b','c','d']
>>> enumerate(li)
<enumerate object at 0x0000000002ED8C60>
>>> list(enumerate(li))
[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')]
>>> set(enumerate(li))
{(1, 'b'), (3, 'd'), (2, 'c'), (0, 'a')}
>>> dict(enumerate(li))
{0: 'a', 1: 'b', 2: 'c', 3: 'd'}
>>> list(enumerate(li,10))
[(10, 'a'), (11, 'b'), (12, 'c'), (13, 'd')]
>>> dict(enumerate(li,10))
{10: 'a', 11: 'b', 12: 'c', 13: 'd'}

filter(function or None, iterable) --> filter object
需要在传入一个函数,和一个可迭代对象,返回了一个 filter 的类。

>>> ff = lambda x: x in range(1,11)
>>> li = ['a','ases','1','5',143,2,4]
>>> filter(ff,li)
<filter object at 0x0000000002ED0438>
>>> list(filter(ff,li))
[2, 4]

map(func, *iterables) --> map object
map 在这里的意思是 映射,遍历 的意思,需要传入一个函数和一个可迭代的对象,返回一个 map 的类。遍历可迭代对象,通过传入的函数处理后返回。

>>> gg = lambda x : x**2
>>> li = [1,3,5,7,9]
>>> map(gg,li)
<map object at 0x0000000002ED0C18>
>>> list(map(gg,li))
[1, 9, 25, 49, 81]

zip(iter1 [,iter2 [...]]) --> zip object
传入多个可迭代对象,可以是不同的类型,一一对应组成元组。注意:在传入无序的可迭代类型时,由于无序的特性,得到的结果会产生随机性。

>>> li1=[1,2,'sf',[1,2]]
>>> tu = ('g',5,7,1)
>>> se ={'hd','dr',2,7,5}
>>> zip(li1,tu,se)
<zip object at 0x0000000002DDE508>
>>> list(zip(li1,tu,se))
[(1, 'g', 2), (2, 5, 5), ('sf', 7, 7), ([1, 2], 1, 'hd')]
函数名 作用
bin() 转换为二进制
oct() 转换为八进制
hex() 转换为十六进制
ord() 将字符转换成对应的 ASCII 码
chr() 将 ASCII 码转换成对应的字符
上一篇下一篇

猜你喜欢

热点阅读