Python入门及进阶笔记 Python 内置函数小结
内置函数
常用函数
1.数学相关
•abs(x)
abs()返回一个数字的绝对值。如果给出复数,返回值就是该复数的模。
>>>printabs(-100) 100 >>>printabs(1+2j) 2.2360679775
•divmod(x,y)
divmod(x,y)函数完成除法运算,返回商和余数。
>>>divmod(10,3) (3,1) >>>divmod(9,3)(3,0)
•pow(x,y[,z])
pow()函数返回以x为底,y为指数的幂。如果给出z值,该函数就计算x的y次幂值被z取模的值。
>>>printpow(2,4) 16 >>>printpow(2,4,2) 0 >>>printpow(2.4,3) 13.824
•round(x[,n])
round()函数返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
>>>round(3.333) 3.0 >>>round(3) 3.0 >>>round(5.9) 6.0
•min(x[,y,z...])
min()函数返回给定参数的最小值,参数可以为序列。
>>>min(1,2,3,4) 1 >>>min((1,2,3),(2,3,4)) (1,2,3)
•max(x[,y,z...])
max()函数返回给定参数的最大值,参数可以为序列。
>>>max(1,2,3,4) 4 >>>max((1,2,3),(2,3,4)) (2,3,4)
2.序列相关
•len(object)->integer
len()函数返回字符串和序列的长度。
>>>len("aa") 2 >>>len([1,2]) 2
•range([lower,]stop[,step])
range()函数可按参数生成连续的有序整数列表。
>>>range(10) [0,1,2,3,4,5,6,7,8,9] >>>range(1,10) [1,2,3,4,5,6,7,8,9] >>>range(1,10,2) [1,3,5,7,9]
•xrange([lower,]stop[,step])
xrange()函数与range()类似,但xrnage()并不创建列表,而是返回一个xrange对象,它的行为
与列表相似,但是只在需要时才计算列表值,当列表很大时,这个特性能为我们节省内存。
>>>a=xrange(10) >>>printa[0] 0 >>>printa[1] 1 >>>printa[2] 2
3.对象及类型
•callable(object)
callable()函数用于测试对象是否可调用,如果可以则返回1(真);否则返回0(假)。可调用对象包括函数、方法、代码对象、类和已经定义了调用方法的类实例。
>>>a="123" >>>printcallable(a) False >>>printcallable(chr) True
•cmp(x,y)
cmp()函数比较x和y两个对象,并根据比较结果返回一个整数,如果x<y,则返回-1;如果x>y,则返回1,如果x==y则返回0。
>>>a=1 >>>b=2 >>>c=2 >>>printcmp(a,b) -1 >>>printcmp(b,a) 1 >>>printcmp(b,c) 0
•isinstance(object,class-or-type-or-tuple)->bool
测试对象类型
>>>a='isinstancetest' >>>b=1234 >>>isinstance(a,str) True >>>isinstance(a,int) False >>>isinstance(b,str) False >>>isinstance(b,int)True
•type(obj)
type()函数可返回对象的数据类型。
>>>type(a) <type'list'> >>>type(copy) <type'module'> >>>type(1) <type'int'>
内置类型转换函数
1.字符及字符串
•chr(i)
chr()函数返回ASCII码对应的字符串。
>>>printchr(65) A >>>printchr(66) B >>>printchr(65)+chr(66) AB
•ord(x)
ord()函数返回一个字符串参数的ASCII码或Unicode值。
>>>ord("a") 97 >>>ord(u"a") 97
•str(obj)
str()函数把对象转换成可打印字符串。
>>>str("4") '4' >>>str(4) '4' >>>str(3+2j) '(3+2j)'
2.进制转换
•int(x[,base])
int()函数把数字和字符串转换成一个整数,base为可选的基数。
>>>int(3.3) 3 >>>int(3L) 3 >>>int("13") 13 >>>int("14",15) 19
•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
•hex(x)
hex()函数可把整数转换成十六进制数。
>>>hex(16) '0x10' >>>hex(123) '0x7b'
•oct(x)
oct()函数可把给出的整数转换成八进制数。
>>>oct(8) '010' >>>oct(123) '0173'
•complex(real[,imaginary])
complex()函数可把字符串或数字转换为复数。
>>>complex("2+1j") (2+1j) >>>complex("2") (2+0j) >>>complex(2,1) (2+1j) >>>complex(2L,1) (2+1j)
3.数据结构
•tuple(x)
tuple()函数把序列对象转换成tuple。
>>>tuple("helloworld") ('h','e','l','l','o','','w','o','r','l','d') >>>tuple([1,2,3,4]) (1,2,3,4)
•list(x)
list()函数可将序列对象转换成列表。如:
>>>list("helloworld") ['h','e','l','l','o','','w','o','r','l','d'] >>>list((1,2,3,4)) [1,2,3,4]
序列处理函数
常用函数中的len()、max()和min()同样可用于序列。
•filter(function,list)
调用filter()时,它会把一个函数应用于序列中的每个项,并返回该函数返回真值时的所有项,从而过滤掉返回假值的所有项。
>>>defnobad(s): ...returns.find("bad")==-1 ... >>>s=["bad","good","bade","we"] >>>filter(nobad,s) ['good','we']
•map(function,list[,list])
map()函数把一个函数应用于序列中所有项,并返回一个列表。
>>>importstring >>>s=["python","zope","linux"] >>>map(string.capitalize,s) ['Python','Zope','Linux']
map()还可同时应用于多个列表。如:
>>>importoperator >>>s=[1,2,3];t=[3,2,1] >>>map(operator.mul,s,t)#s[i]*t[j] [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()函数获得序列中前两个项,并把它传递给提供的函数,获得结果后再取序列中的下一项,连同结果再传递给函数,以此类推,直到处理完所有项为止。
[code]
>>>importoperator
>>>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
[code]
wklken
Email:wklken@yeah.net