我正在尝试使用freebase数据转储,但它接触到我在使用python读取文件时遇到了一些问题.看起来我的程序无法读取所有行.
def test2():
count=0
for line in open(FREEBASE_TOPIC):
count+=1
return count
def test3():
count=0
for line in open(FREEBASE_QUAD):
count+=1
return count
if __name__ == "__main__":
print "FREEBASE TOPIC - NR LINES:",test2()
print "FREEBASE QUAD - NR LINES:",test3()
结果如下:
FREEBASE TOPIC - ITR TIME: 1.21000003815
FREEBASE TOPIC - NR LINES: 1643010
FREEBASE QUAD - ITER TIME: 0.797000169754
FREEBASE QUAD - NR LINES: 3155131
这可以是全部.它看起来很少包含整个freebase.我无法看到如何在2秒内迭代一个33GB文件和另一个5GB文件.
怎么了?我正在下载文件,以防下载过程中出现问题,但我的连接需要几十年的时间,所以我在平均时间问.文件大小是正确的,我打印了一些线条,看起来是正确的.
解决方法:
我遇到了一个问题:
open('file', 'rb')
应该解决它.
chr(26)
有时会导致文件模式’r’的文件结尾是默认的.