파이썬에서 어떻게 이진 파일을 버퍼에로드 한 다음 개별 바이트를 문자열이 아닌 숫자로 읽는가? 같은 파일로파이썬 : 정수로 버퍼에 이진 파일을 읽습니다. 슬라이스
0
A
답변
3
with open('binary.txt',"rb",buffering=-1) as f:
for line in f:
for c in line:
print(c)
:
"abcde"
는
>>>
97
98
99
100
101
생산 옵션 버퍼링 인수는 여기에 설명되어 있습니다 :
Python io.open버퍼링이 설정하는 데 사용되는 옵션 정수 버퍼링 정책. 버퍼 오버런 (바이너리 모드에서만 허용), 1에서 라인 버퍼링 선택 (텍스트 모드에서만 사용 가능) 및 고정 크기 청크 버퍼 크기를 나타내는 정수> 1 을 전달하려면 0을 전달합니다. 인수가 제공되지 않으면 기본 버퍼링 정책은 다음과 같이 작동합니다.
• 이진 파일은 고정 크기 청크로 버퍼링됩니다. 버퍼의 크기는 기본 장치의 "블록 크기"를 결정하고 DEFAULT_BUFFER_SIZE로 떨어지는 경험적 방법을 사용하여 선택됩니다. 많은 시스템에서 버퍼는 일반적으로 4096 또는 8192 바이트 길이입니다.
그리고 당신은 정말 치열하고 조작에 계획한다면, 당신은 당신의 코멘트에 대답하려면 bytearray
line = bytearray(line)
으로 각 라인을 변환 할 수 있습니다이되는 문자를 필터링하는 방법을 보여줍니다 반복하다 :
with open('binary.txt',"rb",buffering=-1) as f:
for line in f:
for c in [b for b in line if b in range(663,765)]: #in a certain range
print(c)
for c in [b for b in line if b == 5]: #is a certain number
print(c)
관련 문제
- 1. 이진 데이터를 C로 정수로 변환
- 2. 이진 값을 정수로 해석하십시오.
- 3. 문자열 슬라이스 파이썬
- 4. 슬라이스 파이썬 매트릭스
- 5. 파이썬 슬라이스 할당
- 6. 파이썬 namedtuple 슬라이스
- 7. 파이썬 슬라이스 목록
- 8. 슬라이스 목록 (파이썬 3)
- 9. PHP는 file()을 사용하지만 정수로 행을 읽습니다.
- 10. 설치 패키지의 파일을 읽습니다.
- 11. 파이썬 : ftp 파일이 버퍼에 갇혔습니까?
- 12. 바이너리 모드에서 파일을 읽습니다.
- 13. C++ : 버퍼에 이진 파일 읽기를 저장하십시오.
- 14. 파이썬 : str을 정수로 변환
- 15. PHP에서 이진 문자열을 정수로 변환
- 16. 파이썬에서 정수로 이진 문자열 해석하기
- 17. 서버에서 거대한 파일을 읽습니다.
- 18. .Net에서 텍스트와 이진 정보가 모두 포함 된 파일을 읽습니다.
- 19. 정수로 가득 찬 이진 파일을 읽고 C의 ASCII 형식으로 인쇄하십시오.
- 20. 파이썬 중첩 된 목록 슬라이스
- 21. 파이썬 배열 포함 슬라이스 인덱스
- 22. 파이썬을 사용하여 이진 파일에서 숫자 데이터를 읽습니다.
- 23. 파이썬 : 정수로 숫자를 확인하십시오.
- 24. 파이썬 : 문자열을 정수로 변환하기
- 25. 시간을 정수로 변환하는 파이썬
- 26. 이진 파일 쓰기 후 음수를 읽습니다
- 27. h5py로 HDF5 파일을 읽을 때 파이썬 슬라이스 객체를 사용합니까?
- 28. Sdcard에서 동적으로 파일을 읽습니다.
- 29. 낙타가 파일을 계속 읽습니다.
- 30. 파일을 자동으로 읽습니다.
나는 초기 질문이 전부는 아님을 안다. 그 명확하고 메신저 여전히 뭔가를 누락. 아래 예제와 같이 HennyH의 예와 같이 전체 파일을 인쇄하는 방법을 알고 있지만 바이트 5 만 인쇄하려면 어떻게해야합니까? 또는 663에서 765로 모든 바이트를 인쇄하고 싶습니까? – 16num
업데이트 된 답변 @sixteenornumber를 참조하십시오. – HennyH