2018年12月14日 函数 总结

 

map() 处理序列中每个元素,得到迭代器,该迭代器  元素个数和位置与原来一致

filter() 遍历序列中的每个元素,判断每个元素得到布尔值,如果是true则留下来

people=[
    {'name':"abc","age":100},
    {"name":"def","age":80},
    {'name':'sxj',"age":30},
    {"name":"hid","age":99},
]

res=filter(lambda p:p["age"]<50,people)
print(list(res))

reduce:处理一个序列,然后把序列进行合并操作

from functools import reduce
print(reduce(lambda x,y:x+y,range(1,101)))
print(reduce(lambda x,y:x+y,range(100),100))

 

#内置函数
print('1.abs绝对值:',abs(-1))
print("2.all把序列中每个元素做bool运算,所有都为真就为真,(如果为空这里也返回True)其他为假:",all([1,2,"2","1",]),all("1230"))
print('3.any 只要有1个是True那就是真:',any([1,3,4,2,0]))
print('4.bin 转化成二进制:',bin(12))
print('5.bool 判断真假:',bool(1))
print('6.bytes把字符串做一个编码',bytes("你好",encoding='utf-8'))
print('7.decode 解码:',bytes("你好",encoding='utf-8').decode("utf-8") )
print('8.chr的用法:ASII玛的转化:',chr(189))
print('9.dir,目录方法,检查函数的属性或内置方法',dir(all))
print('10.divmod取商得余数',divmod(13,3))#页面做抽屉,分页功能,10代表总共有多少纪录,3代表一页房多少纪录
print('11.enumerate用法见前面案例')
print('12.eval用法:1.把字符串表达式用来执行计算,2.提取字符串中的数据功能',eval("1+2-3+2*4"))
print('13.hash运算',hash("abc"))#能进行hash运算的就是不可变类型
print('14.hex方法:转化16进制:',hex(15))
print('15.oct方法:转化8进制:',oct(15))
print('16.id 方法:打印对象内存地址:',id("sxj"))
print('17.isinstance方法,判断是否是已知的数据类型:',isinstance(1,int),isinstance("abc",(list,str,dict,tuple,set)))
print('18.globals方法和locals方法:',"见百度:返回全局变量,和返回局部变量")
print('19.max取最大值:',max([1,2,3,4,5,3,4,2]))
print('20.min取最小值:',min({1,2,3,4,5,3}))

 

max/min 后直接跟序列会返回此序列的最大/最小值

max(iterable, key, default) 求迭代器的最大值,其中iterable 为迭代器,max会for i in … 遍历一遍这个迭代器,然后将迭代器的每一个返回值当做参数传给key=func 中的func(一般用lambda表达式定义) ,然后将func的执行结果传给key,然后以key为标准进行大小的判断。

 

salaries={
    'egon':3000,
    'alex':100000000,
    'wupeiqi':10000,
    'yuanhao':2000
}
print(max(salaries,key=lambda k:salaries[k]))#默认比较的是字典的key

 ---------------------------------------

云计算openstack

————————————————

zip()

#zip 拉链方法
print(dict(zip("abc",(1,2,3)))) #注意zip只能一一对应
print(list(zip(("a",'b','c'),(1,2,3))))
print(tuple(zip(("a",'b','c'),(1,2,3))))
print(dict(zip("hello","12345")))
p={"name":"alex","age":18,"gender":'none'}
print(list(zip(p.keys(),p.values())))
print(list(p.keys()))
print(list(p.values()))

Python内置函数——zip

zip(iter1,iter2,...) 将很多迭代器的每一个元素组成一一对应的元组,然后生成一个迭代器每次迭代都返回一组前面生成的元组

 

posted @ 2018-12-14 15:30  小圣庄  阅读(125)  评论(0编辑  收藏  举报