您的位置:首页 > 编程语言 > Python开发

day③: python 内置函数

2016-01-23 22:39 399 查看
all():全部为真,才为真。any():其中一个为真,就为真bin():表示二进制bytearray():转化为字节数组(py3)byte():转化为字节字符串(py3)callable():检查对象object是否可调用.ord():ASCII码转数字chr():数字转ASCII码dir():返回任意对象的属性和方法列表input():期望用户输入的是一个有效的表达式raw_input():将用户的输入包装成一个字符串hex():转化为16进制help(sys)#交互式帮助int(obj)#转型为整形str(obj)#转为字符串len(obj)#返回对象或序列长度oct():8进制open(file,mode)#打开文件#mode(r读,w写,a追加)range(0,3)#返回一个整形列表raw_input("str:")#等待用户输入type(obj)#返回对象类型abs(-22)#绝对值random#随机数choice()#随机返回给定序列的一个元素divmod(x,y)#函数完成除法运算,返回商和余数。round(x[,n])#函数返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数strip()#是去掉字符串两端多于空格,该句是去除序列中的所有字串两端多余的空格del#删除列表里面的数据cmp(x,y)#比较两个对象#根据比较结果返回一个整数,如果x<y,则返回-1;如果x>y,则返回1,如果x==y则返回0max()#字符串中最大的字符min()#字符串中最小的字符sorted()#对序列排序reversed()#对序列倒序enumerate()#返回索引位置和对应的值sum()#总和super():通过子类访问父类的方法list()#变成列表可用于迭代eval('3+4')#将字符串当表达式求值得到7exec'a=100'#将字符串按python语句执行exec(a+'=new')#将变量a的值作为新的变量tuple()#变成元组可用于迭代#一旦初始化便不能更改的数据结构,速度比list快zip(s,t)#返回一个合并后的列表s=['11','22']t=['aa','bb']结果:[('11','aa'),('22','bb')]isinstance(object,int)#测试对象类型intxrange([lower,]stop[,step])#函数与range()类似,但xrnage()并不创建列表,而是返回一个xrange对象(1)lambda简单函数的表示方式
#普通函数
deffunc(arg):
returnarg+1
result=func(123)
printresult
print("")
#lambda
my_lambda=lambdaarg:arg+1
result=my_lambda(123)
printresult
结果:
124
124
[/code](2)mapmap(...)map(function,sequence[,sequence,...])->list#遍历序列,对序列中每个元素进行操作,最终获取新的序列。#将函数func作用于给定序列(s)的每个元素,并用一个列表来提供返回值;如果func为None,func表现为一个身份函数,返回一个含有每个序列中元素集合的n个元组的列表例子:
#每个元素增加100
li=[11,22,33]
new_list=map(lambdaa:a+100,li)
printnew_list
print""
#两个列表对应元素相加
li=[11,22,33]
sl=[1,2,3]
new_list=map(lambdaa,b:a+b,li,sl)
printnew_list
print""
##
defcube(x):returnx*x*x
range(1,11)
printmap(cube,range(1,11))
#结果
[111,122,133]
[12,24,36]
[1,8,27,64,125,216,343,512,729,1000]
[/code](3)filterfilter(...)filter(functionorNone,sequence)->list,tuple,orstring#对于序列中的元素进行筛选,最终获取符合条件的序列#调用一个布尔函数func来迭代遍历每个seq中的元素;返回一个使func返回值为true的元素的序列例子:
#获取列表中大于12的所有元素集合
li=[11,22,33,1,34,5,63,40]
new_list=filter(lambdaarg:arg>22,li)
printnew_list
print""
#获取列表中可以被2和3整除的所有元素集合
f=lambdax:x%2==0andx%3==0
printfilter(f,range(2,25))
结果:
[33,34,63,40]
[6,12,18,24]
[/code](4)reducereduce(...)reduce(function,sequence[,initial])->value#对于序列内所有元素进行累计操作#将二元函数作用于seq序列的元素,每次携带一堆(先前的结果以及下一个序列元素),连续地将现有的结果和下一个值作用在获得的随后的结果上,最后减少我们的序列为一个单一的返回值;如果初始值init给定,第一个比较会是init和第一个序列元素而不是序列的头两个元素例子:
result=reduce(lambdax,y:x+y,range(1,11))
printresult
#结果
55
[/code]end来自为知笔记(Wiz)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: