相关疑难解决方法(0)

在Python中移动到文件中的任意位置

假设我经常需要处理具有未知但大量行数的文件.每一行在闭区间[0,R]中包含一组整数(空格,逗号,分号或一些非数字字符是分隔符),其中R可以任意大.每行的整数数量可以变化.通常我会在每一行上获得相同数量的整数,但有时我会使用不相等的数字组.

假设我想转到文件中的第N行并检索该行上的第K个数字(并假设输入N和K有效 - 也就是说,我不担心输入错误).我如何在Python 3.1.2 for Windows中有效地执行此操作?

我不想逐行遍历文件.

我尝试使用mmap,但是当我在这里搜索SO时,我了解到这可能不是32位版本的最佳解决方案,因为4GB限制.事实上,我无法弄清楚如何简单地将N行移离当前位置.如果我至少可以"跳转"到第N行,那么我可以使用.split()并以这种方式获取Kth整数.

这里的细微差别是我不需要从文件中抓取一行.我需要抓住几行:它们不一定都是彼此靠近的,我得到它们的顺序很重要,而且顺序并不总是基于某些确定性函数.

有任何想法吗?我希望这是足够的信息.

谢谢!

python file python-3.x

9
推荐指数
1
解决办法
3570
查看次数

标签 统计

file ×1

python ×1

python-3.x ×1