从文件末尾逐行读取文件的高效内存方法
file-read-backwards的Python项目详细描述
向后读取文件
从文件末尾逐行读取文件的高效内存方法
- 自由软件:麻省理工学院许可证
- 文档:https://file-read-backwards.readthedocs.io。
功能
此包用于以节省内存的方式逐行以unicode形式读取python 2.7和python 3的文件。
它目前支持ascii、拉丁语-1和utf-8编码。
它支持将“\r”、“\r\n”和“\n”作为新行。
用法示例
为python2.7使用向后读取文件的示例:
#!/usr/bin/env python2.7 from file_read_backwards import FileReadBackwards with FileReadBackwards("/tmp/file", encoding="utf-8") as frb: # getting lines by lines starting from the last line up for l in frb: print l
使用python3.3的另一个例子
from file_read_backwards import FileReadBackwards with FileReadBackwards("/tmp/file", encoding="utf-8") as frb: # getting lines by lines starting from the last line up for l in frb: print(l)
另一种使用文件的方式是通过readline(),在python3.3中:
from file_read_backwards import FileReadBackwards with FileReadBackwards("/tmp/file", encoding="utf-8") as frb: while True: l = frb.readline() if not l: break print(l, end="")
学分
这个包是用Cookiecutter和audreyr/cookiecutter-pypackage项目模板创建的。
历史记录
1.0.0(2016-12-18)
- pypi上的第一个版本。
1.1.0(2016-12-31)
- 增加了对“拉丁语-1”的支持。
- 包装上标明“生产/稳定”。
1.1.1(2017-01-09)
- 更新了readme.rst,使编码支持和Python2.7和3支持更加清晰。
1.1.2(2017-01-11)
- 文件重新整理。用法示例现在在readme.rst中
- 小重构
1.2.0(2017-09-01)
- 包括Context Manager样式,因为它提供更干净/自动关闭功能
1.2.1(2017-09-02)
- 使文档字符串与google风格和一些代码行保持一致
1.2.2(2017-11-19)
- 重新发布1.2.1以便于更新travis&pyup的pypi页面。
2.0.0(2018-03-23)
模仿python文件对象行为。
- filereadbackwards不再创建多个迭代器(1.x.y版本的行为更改)
- 添加readline()函数时,每次重新运行一行,并在到达文件结尾时使用尾随的新行和空字符串。 精细打印:后面的新行将是os.linesep(而不是文件中的任何新行类型)。