我有一个二进制文件,它是一个简单的有符号32位ieee754float列表。它们没有被任何东西隔开,只是一个接一个地出现,直到EOF。我如何从这个文件中读取并将它们正确解释为float?我尝试使用read(4),但它会自动将它们转换为带有ascii编码的字符串。我也尝试过使用bytearray但这一次只需要1个字节,而不是我需要的4个字节。 最佳答案 struct.unpack('f',file.read(4))你也可以一次解包几个,这样会更快:struct.unpack('f'*n,file.read(4*n))