如何在非常大的文本文件(〜150 GB)中找到最大的数字?

用户名

我有一个文本文件,大约有100000000行,以下各类型:

string num1 num2 num3 ... num500
string num1 num2 num3 ... num40

我想找到此文件中存在的最大数字。

我当前的代码读取每一行,将其按空格分割,然后在当前行中存储最大的数字。然后,将其与下一行的最大数量进行比较,并保留两者中较大的一个。

with open(filename,'r') as f:
    prev_max = -1
    for line in f:
        line = [int(n) for n in line.split(' ')[1:]]
        max = max_num(line)
        if max > prev_max:
            prev_max = max

但这需要永远。有一个更好的方法吗?

我也欢迎使用awk或其他shell命令的解决方案。

编辑:添加了我如何读取文件。

oguz ismail

对于awk而言,这是一项微不足道的任务。

awk 'NR==1{m=$2} {for(i=2;i<=NF;++i) if(m<$i) m=$i} END{print m}' file

如果保证文件不全为零或负数,则可以删除NR==1{m=$2}一部分。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Powershell中以预定义的字符串拆分非常大的文本文件(4GB),并快速完成

你如何在java文本文件中找到最大和最小的数字?

按最大行分割非常大的文本文件

通过bash从文件中找到最大的数字

如何从提供的向量中找到最大的数字?

在文本文件中找到最大的数字并写其行

在文本文件中找到最长的单词和最大的数字

如何从数字输入文件中找到最大数字

如何在给定输入的数字中找到最大的数字?

如何在文本文件中找到最小的数字?(爪哇)

如何在文本文件中找到某个单词

如何在Prolog中找到数字的最大位数?

如何在多个数组中找到最大的数字

在文本文件中找到匹配的最大区域

如何处理非常大的文本文件?

如何从数组中找到第100个最大的数字

如何使用for循环在对象中找到最大的数字?

如何快速显示大(GB)文本文件?

如何在Java 8中从N个数字中找到最大的M个数字?

如何在MATLAB中处理“非常大的图像文件”并找出最大的像素

如何在文本文件中找到不匹配的括号?

如何在类似XML的文本文件中找到包含单词的第n个“ <”符号?

如何在Java中的文本文件中找到重复项

如何在文本文件中找到字符之前的内容

如何在文本文件中找到行号和行号?

如何在文本文件中找到项目的总和

如何在python中找到文本文件的ASCII值?

如何从数十亿个数字中找到10个最大数字?

如何在文件處理中從文本文件中找到每一行的最小值和最大值?