我想从二进制文件中读取所有数据,而不是最后4个字节 我们如何在python中做到这一点 请帮忙
谢谢!
答案 0 :(得分:3)
像往常一样阅读它,然后切片结果:
with open(path_to_file, 'rb') as f:
f.read()[:-4]
答案 1 :(得分:1)
这个问题很旧,但是对于其他在Google上发现此问题的人来说,请注意:执行f.read()[:-4]
会将整个文件读入内存,然后切成薄片。
如果只需要文件的前N个字节或字符,只需将大小作为参数传递给read()
函数:
with open(path_to_file, 'rb') as f:
first_four = f.read(4)
这样可以避免在您仅读取前N个字节并停止时就读取整个潜在的大文件的情况。
如果需要文件的最后N个字节或字符,则可以使用os.lseek()
来查找文件的最后一块。这更加复杂,留给读者练习。 :-)