Python高级应用实例对比:高效计算大文件中的最长行的长度
发布时间:2021-11-26 05:36:35
标签:Python,计算
前2种方法主要用到了列表解析,性能稍差,而最后一种使用的时候生成器表达式,相比列表解析,更省内存
列表解析和生成器表达式很相似:
列表解析
[expr for iter_var in iterable if cond_expr]
生成器表达式
(expr for iter_var in iterable if cond_expr)
方法1:最原始
longest = 0
f = open(FILE_PATH,"r")
allLines = [line.strip() for line in f.readlines()]
f.close()
for line in allLines:
linelen = len(line)
if linelen>longest:
longest = linelen
方法2:简洁
f = open(FILE_PATH,"r")
allLineLens = [len(line.strip()) for line in f]
longest = max(allLineLens)
f.close()
缺点:一行一行的迭代f的时候,列表解析需要将文件的所有行读取到内存中,然后生成列表
方法3:最简洁,最节省内存
f = open(FILE_PATH,"r")
longest = max(len(line) for line in f)
f.close()
或者
print max(len(line.strip()) for line in open(FILE_PATH))
0
投稿
猜你喜欢
- Python中 join() 函数的使用函数:string.join()Python中有join()和os.path.join()两个函数,
- 在python中加背景音乐的方法:1、导入pygame资源包;2、修改音乐的file路径;3、使用init()方法进行初始化;4、使用loa
- 今天为大家介绍使用 mitmproxy 这个抓包工具如何监控手机上网,并且通过抓包,把我们想要的数据下载下来。启动 mitmproxy首先我
- 在通过requests.post()进行POST请求时,传入报文的参数有两个,一个是data,一个是json。data与json既可以是st
- 安装官网下载http://ffmpeg.org/选择需要的版本在这个网址下载ffmpeg,https://github.com/BtbN/F
- 在开发一个程序时候,与其让它运行时崩溃,不如在它出现错误条件时就崩溃(返回错误)。这时候断言assert 就显得非常有用。python as
- 背景在爬取网站数据时,我们通常会遇到一些动态渲染页面的网站。传统的静态网站我们可以直接通过 requests.get() 函数获取页面源代码
- 1、运动速率上节中,实现了一辆汽车在马路上由下到上行驶,并使用了pygame.time.delay(200)来进行时间延迟。看了很多参考材料
- 假设你的变量叫做 MyArray,我们可作如下处理:Dim strDim strDelimiterstrDelimite
- 在python中,循环有一个语句:for语句。简单的for循环例子>>> hello = "world"
- 本文实例讲述了PHP模板引擎Smarty中变量的使用方法。分享给大家供大家参考,具体如下:一、概述:Smarty 是 PHP 众多模板引擎中
- 处理中文在进行写文件时,必须采用以下方式:tree.write(nxmlpath, "UTF-8")如果写成:tree.
- docs = [‘icassp improved human face identification using frequency dom
- 第一种情况是返回的游标是某个具体的表或视图的数据,如:SQL-Code:CREATE OR REPLACE P
- 下面这个截图,就是使用 schedule 定时执行 Notebook 的例子import scheduleimport timeimport
- 一、 迪杰斯特拉算法思想Dijkstra算法主要针对的是有向图的单元最短路径问题,且不能出现权值为负的情况!Dijkstra算法类似于贪心算
- 前言笔者用的是mac开发,但是mac自带的php功能安装十分不方便,并且和线上的linux开发环境不一致。在没有用docker之前一直用va
- Ruby中有一个很方便的Struct类,用来实现结构体。这样就不用费力的去定义一个完整的类来仅仅用作访问属性。class Dog <
- 今天有个学生问我:页面中使用GIF格式,失真太大,怎么办呢?这个问题比较简单啊,只要用JPG就可以了。我们常用的页面的图片格式有三种,GIF
- 文 | 某某白米饭来源:Python 技术「ID: pythonall」微信和 QQ 都有一个存放缓存文件的文件夹,微信在设置 -