2012-01-31 5 views
0

부울 배열로 이진 파일 (길이는 32 비트)을 읽으려고합니다. 내가 다음에 때 잘 작동 :파이썬 구조체 패키지를 사용하여 부울 배열로 이진 파일 읽기

_fmt = '32?' 

with open(filename, mode='rb') as fp: 
    content = struct.unpack(fmt, fp.read(struct.calcsize(fmt)) 

나는 이유를 이해하고 싶습니다 : 나는 구조체 패키지를 사용하려고하면

Using Python How can I read the bits in a byte?

는 그러나, 나는 다른 결과를 얻을 수 있습니다.

감사

답변

1

형식 '32?' 32 바이트가 아니라 32 비트를 나타낸다. http://pypi.python.org/pypi/bitarray

를 또는 여기 조리법 :

+0

그래서 내가 직접 구조체를 사용하여 파일에서 논리 값의 배열 (1 비트)를 읽을 수있는 방법은 없습니다 같아요. – Hernan

+1

오른쪽; 'struct'는 바이트를 팩하고 언팩합니다. – unutbu