我正在尝试从压缩文件中提取信息。 我用了这段代码:
import codecs
!gunzip pagecounts-20150501-000000.gz
log = codecs.open('pagecounts-20150501-000000', 'r')
lines = log.readlines(1)
print(lines)
然而它只给我文件中的第一个字母。该文件实际上有4列,但我想使用数据框或任何其他结构存储前两列用于海量数据(几乎186328237行)。
答案 0 :(得分:1)
你只是要求第一行中的第一个字符:
lines = log.readlines(1)
您只是将'1'传递给readlines
'read()
method - 如果您想要阅读更多内容,请更改该值,或者您可以使用readline()
方法一次读一行。
来自docs:
readlines ([ sizehint [, keepends ]])阅读所有可用的行 输入流并将它们作为行列表返回。
使用编解码器的解码器方法实现行结尾 如果keepends为true,则包含在列表条目中。
sizehint ,如果给定,则作为size参数传递给流 read()方法。
要阅读第一行,请尝试:
lines = log.readline()