lambda函数胡使用
#coding:utf-8g = lambda x,y:x*y/*必须亦g=*/print g(2,3)/*print必须有*/swtich函数使用def jia(x,y):
return x+ydef jian(x,y): return x-ydef cheng(x,y): return x*ydef chu(x,y): return x/yoperator = {"+":jia,"-":jian,"*":cheng,"/":chu}def f(x,o,y): print operator.get(o)(x,y)/*字典的用法*/f(3,"+",3)常用函数pow(x,y)x的y次幂 pow(x,y,z)x的y次幂再除以z求模 divmod(x,y)交换x和y的位置 round()返回一个浮点数callable()测试一个函数可不可以被调用 isinstance(l,list)判断对象的类型 cmp()比较两个字符串range()快速生成一个序列 xrange()生成器,不出现序列,效率比range高很多 类型转化函数type()类型 int()整数型 long()长整形 float()浮点型 complex()复数型str(x ) 将对象 x 转换为字符串tuple(s ) 将序列 s 转换为一个元组list(s ) 将序列 s 转换为一个列表chr(x ) 将一个整数转换为一个字符ord(x ) 将一个字符转换为它的整数值hex(x ) 将一个整数转换为一个十六进制字符串oct(x ) 将一个整数转换为一个八进制字符串内置函数string函数的应用/*必须是针对字符串使用的*/用help查询的时候用法help(str.replace)#coding:utf-8s='13234443213223'print s.replace('2','d')/*s必须标明.不可少*/print s.replace('2','d',1))/*最后的一表示只替换一次*/
str.capitalize()把字符串首字母转化为大写
str.split('x',y)做切割用的,x表示切割的位置,y表示切割的次数s=“hello word”
string.replace(s,'hello','good')/*替换*/序列处理函数len()求长度max()求最大值 filter(f,l)主要用于序列的操作 f表示取大于5的数,l表示一个列表,表示取出在l中符合f的值#coding:utf-8name=['milo','zou','tom']
age=[20,30,40]tel=['133','156','234']t=['x','y']print zip(name,age,tel,t) /*zip和map的区别*/print map(None,name,age,tel,t)a=[1,3,5]
b=[2,3,4]def mf(x,y): return x*yprint map(None,a,b)/*输出a,b对应为位置的成对列表*/print map(mf,a,b)/*把a,b列表的值在mf语句中实现*/L=range(1,101)
def rf(x,y): /*可以转化为reduce(lambda x,y:x+y,l*/ 若想取lL列表中的偶数值filter(lambda x:if x%2 ==0.1,L) 无法运行,其中包含两个函数 return x +y 应该为filter(lambda x:x%2 ==0.1,L)print reduce(rf,L)/*把L中的数据在rf中运算*/D:\Python安装程序\python.exe C:/Users/欢/PycharmProjects/untitled/ll.py[('milo', 20, '133', 'x'), ('zou', 30, '156', 'y')][('milo', 20, '133', 'x'), ('zou', 30, '156', 'y'), ('tom', 40, '234', None)][(1, 2), (3, 3), (5, 4)][2, 9, 20]5050Process finished with exit code 0