python常用函数第二部分。
一,python类型转换函数
chr(i)
chr()函数返回ASCII码对应的字符串。
复制代码 代码示例:
>>> print chr(65) A
>>> print chr(66) B
>>> print chr(65)+chr(66) AB
ord(x)
ord()函数返回一个字符串参数的ASCII码或Unicode值。
复制代码 代码示例:
>>> ord("a") 97
>>> ord(u"a") 97
hex(x)
hex()函数可把整数转换成十六进制数。
复制代码 代码示例:
>>> hex(16) '0x10'
>>> hex(123) '0x7b'
oct(x)
oct()函数可把给出的整数转换成八进制数。
复制代码 代码示例:
>>> oct(8) '010'
>>> oct(123) '0173'
long(x[,base])
long()函数把数字和字符串转换成长整数,base为可选的基数。
复制代码 代码示例:
>>> long("123") 123L
>>> long(11) 11L
float(x)
float()函数把一个数字或字符串转换成浮点数。
复制代码 代码示例:
>>> float("12") 12.0
>>> float(12L) 12.0
>>> float(12.2) 12.199999999999999
>>> float(12.3) 12.300000000000001
>>> float(12.4) 12.4
int(x[,base])
int()函数把数字和字符串转换成一个整数,base为可选的基数。
复制代码 代码示例:
>>> int(3.3) 3
>>> int(3L) 3
>>> int("13") 13
>>> int("14",15) 19
list(x)
list()函数可将序列对象转换成列表。
复制代码 代码示例:
>>> list("hello world") ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
>>> list((1,2,3,4)) [1, 2, 3, 4]
str(obj)
str()函数把对象转换成可打印字符串。
复制代码 代码示例:
>>> str("4") '4'
>>> str(4) '4'
>>> str(3+2j) '(3+2j)'
tuple(x)
tuple()函数把序列对象转换成tuple。
复制代码 代码示例:
>>> tuple("hello world") ('h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd')
>>> tuple([1,2,3,4]) (1, 2, 3, 4)
二,python序列常用函数
filter(function,list)
调用filter()时,它会把一个函数应用于序列中的每个项,并返回该函数返回真值时的所有项,从而过滤掉返回假值的所有项。
复制代码 代码示例:
>>> def nobad(s):
... return s.find("bad") == -1
...
>>> s = ["bad","good","bade","we"]
>>> filter(nobad,s) ['good', 'we']
这个例子通过把nobad()函数应用于s序列中所有项,过滤掉所有包含“bad”的项。
map(function,list[,list])
map()函数把一个函数应用于序列中所有项,并返回一个列表。
复制代码 代码示例:
>>> import string
>>> s=["python","zope","
linux"]
>>> map(string.capitalize,s) ['Python', 'Zope', 'Linux']
>>> import operator
>>> s=[1,2,3]; t=[3,2,1]
>>> map(operator.mul,s,t) [3, 4, 3]
如果传递一个None值,而不是一个函数,则map()会把每个序列中的相应元素合并起来,并返回该元组。
复制代码 代码示例:
>>> a=[1,2];b=[3,4];c=[5,6]
>>> map(None,a,b,c) [(1, 3, 5), (2, 4, 6)]
reduce(function,seq[,init])
reduce()函数获得序列中前两个项,并把它传递给提供的函数,获得结果后再取序列中的下一项,连同结果再传递给函数,以此类推,直到处理完所有项为止。
复制代码 代码示例:
>>> import operator
>>> reduce(operator.mul,[2,3,4,5]) # ((2*3)*4)*5 120
>>> reduce(operator.mul,[2,3,4,5],1) # (((1*2)*3)*4)*5 120
>>> reduce(operator.mul, [2,3,4,5],2) # (((2*2)*3)*4)*5 240
zip(seq[,seq,...])
zip()函数可把两个或多个序列中的相应项合并在一起,并以元组的格式返回它们,在处理完最短序列中的所有项后就停止。
复制代码 代码示例:
>>> zip([1,2,3],[4,5],[7,8,9]) [(1, 4, 7), (2, 5, 8 )]
如果参数是一个序列,则zip()会以一元组的格式返回每个项。
复制代码 代码示例:
>>> zip((1,2,3,4,5)) [(1,), (2,), (3,), (4,), (5,)]
>>> zip([1,2,3,4,5]) [(1,), (2,), (3,), (4,), (5,)]