内建函数,Python内置的函数(build in function),不需要引用其他包,一般成为BIF

abs()

计算绝对值,abs(-10),接收number,返回一个number

max()

求序列的的最大值(可迭代的),同时也可以比较一些数字

min()

求序列的最小值(可迭代的),同时也可以比较一些数字

len()

求序列的长度,(字典也可以,求index的个数)

divmod(x,y)

求x,y的商和余数,存放在元组中

pow(x,y,z)

求x的y次方,如果有第三个参数,那么把前面的结果和第三个参数求余

round(number)

用来四折五入,后面可以跟精度(先把number编程浮点数,然后看保留几位)

例子:

把12.45转换成float,那么就不是12.45了,而可能是12.4999999了

callable()

判断一个对象是否是可调用的,比如函数,类都是可以调用的,但是变量无法调用

type()

查看对象的类型

isinstance(对象,类型)

判断一个对象是否是给定类型。类型可以是多个,只要是其中1个即可(类型1,类型2)

a='213'isinstance(a,str)

返回True

cmp(x,y)

比较两个对象的大小,x大于y返回1,x等于y返回-1,x小于y返回-1,字符串也可以比较,是按单个字符的大小开始比对。

str()

可以把任何数据转换成字符串(字典,元组,也会直接输出)

hex(10)

把10进制转换为8进制

eval()

把字符串当做一个有效的表达式来求值

eval('1+2') 返回3

eval("[1,2,3]") 返回[1,2,3]

oct()

把10进制转换为8进制

chr(i)

i的范围是0~255,求i对应的acsii码值

ord(i)

i的范围是ascii的值,求对应的值

字符串处理的相关函数(方法)

a.capitalize()

对字符串a进行首字母大写,首字母是数字则不变

a.replace(old,new,[count])

把旧的字符串,替换为新的字符串,count 可以去指定替换几次

a.split(分隔符,[切几次])

把字符串进行分隔,返回的是一个列表,默认是空格或tab键分隔(有几个空格无所谓,全都当成1个)

分隔符.join(可迭代的对象)

返回一个字符串,把可迭代的对象转连接成字符串,用分隔符来分隔

string模块,需要导入string模块(import string)

string.lowercase

string.uppercase

打印所有的大小写的字母

string.capitalize('hello')

把第一个字符串替换为大写

string.replce('hello','l','a')

把hello中的,l替换为a

filter(函数或空,序列)

用来过滤,把序列的每一个元素,交给函数来处理。如果为None,则什么也不做,直接输出(序列),如果有函数,那么只有函数的返回值为True才打印序列中的元素

例子:

defeven(n):if n % 2 ==0:returnTrue

filter(even,xrange(10))

[0,2, 4, 6, 8]

高级写法:

filter(lambda x: x%2 ==0,xrange(10)

zip(seq1,seq2,seqN...)

把seq1和seq2组合成1个大的列表,每个序列取1个组成元组,存放在整合后的列表中,如果序列的长度不同,那么就以最小的序列的长度为基准。

map(func,seq1,seq2)

返回也是一个列表,func可以是一个函数也可以是个None,如果为None,那么返回的列表长度以当前最长列表为基准,依旧是依次去每个列表中去取,只不过没有的,用none补充

例子:

l1 = [1, 2, 3]

l2= ['a', 'b', 'c', 'd']

l3= ['I', 'II', 'III', 'IV', 'V', 'VI']

map(None,l1,l2,l3)

[(1, 'a', 'I'),

(2, 'b', 'II'),

(3, 'c', 'III'),

(None,'d', 'IV'),

(None, None,'V'),

(None, None,'VI')]

如果函数位上是一个函数,那么如果只有1列表,那么就需要这个函数定义1个参数,然后每次把列表中的1个元素交给函数进行处理,并打印

如果需要处理两个序列,那么函数就必须定义2个参数,去接受这两个序列的元素。

高级应用:

map(lambda x,y:x+y,l1,l4)

reduce(func,seq)

只能定义1个序列,然后传递给func进行处理。(lambda函数求累加)