【发布时间】:2011-11-09 23:10:30
【问题描述】:
我已经尝试了几种不同的方法,但结果似乎总是一样的。直到这里的文件结束,我才能让 Python 读取。它只在中途停止。我尝试过二进制和 ASCII 模式,但这两种模式的结果相同。我还检查了文件中是否有任何特殊字符被切断并且没有。此外,我尝试指定要阅读多少,但它仍然在同一个地方中断。
它是这样的:
f=open("archives/archivelog", "r")
logtext=f.read()
print logtext
无论我是从 bash 还是从 python 调用它,无论我是普通用户还是 root,都会发生这种情况。
但是,如果文件与我在同一目录中,它就可以正常工作。
f=open("archivelog", "r")
logtext=f.read()
print logtext
这就像一场梦。知道为什么吗?
【问题讨论】:
-
您是否收到任何错误消息?
-
肯定还有别的。它应该双向工作。
-
文件有多大(以字节为单位),你得到的部分块有多大?
-
当它不起作用时,
archives/archivelog的内容是什么,Python打印什么?是否有任何裸回车或退格字符可能导致您的终端覆盖早期的输出并让您认为它没有以某种方式写入整个火? -
你确定这两个文件是一样的吗?只需对它们进行比较或计算两个文件的 md5sum 并验证它是否匹配。
标签: python linux file directory