python迭代算法举例_python大神总结223个Python小例子,满满干货,建议收藏啦

元素都为真

接受一个可迭代对象,如果可迭代对象的所有元素都为真,那么返回 True,否则返回False

元素至少一个为真

接受一个可迭代对象,如果可迭代对象里至少有一个元素为真,那么返回True,否则返回False

ascii展示对象

调用对象的 _repr_ 方法,获得该方法的返回值,如下例子返回值为字符串

转为字典

创建数据字典

枚举对象

返回一个可以枚举的对象,该对象的next()方法将返回一个元组。

过滤器

在函数中设定过滤条件,迭代元素,保留返回值为True的元素:

动态获取对象属性

获取对象的属性

上面的都是一些简单的招式,我们再来看一些进阶的总结的不错的招式,看完之后一定让你功力大涨!

码字不易废话两句:有需要python学习资料的或者有技术问题交流可以私信小编发送“01”即可

创建属性的两种方式

返回 property 属性,典型的用法:

使用python装饰器,实现与上完全一样的效果代码:

聚合迭代器

创建一个聚合了来自每个可迭代对象中的元素的迭代器:

onlocal用于内嵌函数中

关键词nonlocal常用于函数嵌套中,声明变量i为非局部变量;如果不声明,i+=1表明i为函数wrapper内的局部变量,因为在i+=1引用(reference)时,i未被声明,所以会报unreferenced variable的错误。

else和if实现计算器

这种设计思路非常巧妙,在实际的生产环境中经常会用到,非常简洁,跟代码大全里面的表查询有异曲同工之妙。

全展开,如何把这样的嵌套数组展开

例如[[[1,2,3],[4,5]]],这个题目其实也是我曾经面试的一个题目

何完全展开成一维的。这个小例子实现的flatten是递归版,两个参数分别表示带展开的数组,输出数组。

groupby单字段分组

气记录:

a = [{'date': '2019-12-15', 'weather': 'cloud'},

{'date': '2019-12-13', 'weather': 'sunny'},

{'date': '2019-12-14', 'weather': 'cloud'}]

照天气字段weather分组汇总:

输出结果:

loud

{'date': '2019-12-15', 'weather': 'cloud'}

{'date': '2019-12-14', 'weather': 'cloud'}

sunny

{'date': '2019-12-13', 'weather': 'sunny'}

tter和key函数

注意到sort和groupby所用的key函数,除了lambda写法外,还有一种简写,就是使用itemgetter:

结果:

cloud

{'date': '2019-12-15', 'weather': 'cloud'}

{'date': '2019-12-14', 'weather': 'cloud'}

sunny

{'date': '2019-12-13', 'weather': 'sunny'}

统计异常出现次数和时间的装饰器

写一个装饰器,统计某个异常重复出现指定次数时,经历的时长。

批量转换成xlsx

需要相关资料的小伙伴们

关注我,私信“资料”即可免费获取啦

需要的小伙伴们主动一点哦

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值