lambda 表达式+python内置函数

#函数python

def f1(a,b):数组

      retrun  a+bdom

 

 

#lambda方式,形参(a,b):返回值(a+b)python2.7

f2=lambda a,b : a+b函数

在一些比较简单的过程计算就能够用lambda网站

 

python内置函数

 

abc 获取绝对值编码

all 循环对象,都为真就返回真不然为假spa

>>> li
[1, 2, 3]
>>> all(li)
True翻译

#0为假对象

>>> li=[0,1,2,3]
>>> all(li)
False

 

bool 真假判断,把一个对象转成bool值

any 和all差很少只要有个为真就为真

ascii(对象),对象类中找__repr__,获取返回值。对象若是是列表那么就去list方法中找,对象是字典就去dict中找(python2.7没有这个方法)

class abc:

      def __repr__:

               return "nihao"

f1=abc()

ret=ascii(f1)

print ret

nihao

 

 

#bin  二进制   0b开头

#oct  八进制    0o开头

#int 十进制 

#hex 十六进制 0xe开头

 

二进制转换,下面方法也可用到其它进制转换上

>>> int(0b1111)#0b开头python默认就是二进制,这里就不须要指定base参数,
15

>>> int('1111',base=2)#不是0b开头的话这里须要指定一下类型,这里为2进制
15

 

#bytes  字节

#bytesarray   字节列表

 

 

 

chr()#将数字转成字符(ascill),ascill占用一个字节8位,0-256

ord()#将字符转成数字(ascill)

 

 

随机验证码:

import  random

yz=''
for i in range(6):
if i ==1 or i ==5:
num=random.randrange(0,10)
yz=str(num)+yz
else:
num=random.randrange(65,91)
yz=chr(num)+yz
print(yz)



结果:
0RBH0Q

 

 

callable 查看方法是否能够执行,返回布尔值

>>> def run():print "11"
>>> a='111'
>>> callable(a)
False
>>> callable(run)
True

 

compile 编译,这个函数能够把字符串翻译成python可执行的代码。如 :"def aa():print1 "这个就是一个字符串,经过这个函数就能够转成函数用了

 

 

divmod  这个也颇有用举个例子网站分页,1000条数据,每页展现50条,须要多少页?

>>> divmod(1000,50)
(20, 0)     #20页就够用了

 

eval #将表达式解释成python代码  例如:eval("1+2"),这样就能够直接计算。eval带返回值

exec 将字符串翻译成python代码,和eval的区别在于这个没有返回值,"for i in range(10):print i"   eval是没有办法执行这个的

 

#循环能够迭代的对象,返回为true就是筛选经过

filter(函数,可迭代的对象)

def f1(x):
if x>22:
return True
else:return False
ret=filter(f1,[11,100,5,60])
print(ret)


返回
[100, 60]

map(函数,可迭代的对象),将2个数组的值加起来

ret=map(lambda x,y:x+y,[11,100,5,60],[22,66,15,15])
print(ret)

 

globals #获取全部全局变量

locals#获取全部局部变量

 

 

hash#将对象进行hash运行算,这样就能够用一个带索引的值能够在之后的查找中快速定位,ye能够将一个很长的串减少空间

>>> f1="aaaaaaasdaxzczxvcxvzxvc00..asd"
>>> hash(f1)
-936964852

 

isinstance #判断某个对象是不是某个类建立的

>>> li=[1,2,3]
>>> r=isinstance(li,list)
>>> print r
True

 

issubclass#盘对某个类是否是子类

 

 

next#取迭代器下一个值

iter#迭代器,生成一个能够迭代的对象,当值取完后再next将报异常,通常和yield生成器配合使用。只有用的时候才会运行

>>> obj=iter(range(5))
>>> next(obj)
0
>>> next(obj)
1
>>> next(obj)
2

 

 

max#取出最大值

>>> max([11,22,33])
33

min#回去最小值

>>> min([11,22,33])
11

 

 

pow#求指数,2的10次方

>>> pow(2,10)
1024

 

 

repr#这个和ascii同样返回类的__repr__方法,区别在于ascii遇到中文会进行处理

 

reversed#将值反转

 

round#四舍五入

 

slice#切片,通常不会用到。能够切片的对象直接就能够处理

 

sum#求和

 

zip#将2个可迭代的对象进行组合,若是2个可迭代的对象个数不一致,那将被删除

>>> a=[1,2,3,4,5]
>>> b=['a','b','c','d','e']
>>> zip(a,b)
[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd'), (5, 'e')]

 

__import__ #跟import 做用同样

a=__import__(getpass)

a.xxxxx  #有点相似于别名了

 

sorted#排序

列表中也有个sort排序,实际上你用sorted(li)排序的时候也是调用list下的sort方法

>>> li=[12,1,5,9,2]
>>> li.sort()
>>> li
[1, 2, 5, 9, 12]

若是排序中包含汉子或者字符,字母转成ascii码,而后根据数字对比,汉子也会转成'xas/sd/'这样编码,这样也能够用ascii来转换了

相关文章
相关标签/搜索