python处理文本一处代码优化过程

来源:互联网 发布:淘宝宝贝关联阿里巴巴 编辑:程序博客网 时间:2024/06/06 16:45

先是这么写的

filter( lambda : True if keyword in .decode(‘utf8’) else False, alls )

运行花费18 s,太慢了
改改看

filter( lambda : True if keyword in .decode(‘utf8’) else False, alls.read().split(‘\n’) )

不太行,难道是list遍历太慢,改成tuple

filter( lambda : True if keyword in .decode(‘utf8’) else False, (.strip() for in alls) )

依旧18 s,一点没改善
这时看到了decode,莫非是它把速度拖垮的?初一想不觉得,因为系统函数调用不会太慢的吧,改改看吧

filter( lambda : True if keyword in else False, alls.read().decode(‘utf8’).split(‘\n’) )

速度快了,8 s 结束,果然for里头调用函数对速度有极大影响

0 0
原创粉丝点击