반응형
긴 16진수 문자열에서 파이썬 바이트 개체를 만드는 방법은 무엇입니까?
문자열에 다음과 같은 16진수의 긴 시퀀스가 있습니다.
000000000000484240FA063DE5D0B744ADBED63A81FAEA390000C8428640A43D5005BD44
훨씬 더 긴, 수 킬로바이트입니다.이것을 python 2.6/3에서 바이트 객체로 변환하는 내장된 방법이 있습니까?
result = bytes.fromhex(some_hex_string)
Python3를 포함한 Python 2.7 이상에서 작동합니다.
result = bytearray.fromhex('deadbeef')
참고: 시스템에 문제가 있는 것 같습니다.bytearray.fromhex()
Python 2.6에서 기능합니다.python.org 설명서에는 함수가 문자열을 인수로 수락하지만 적용하면 다음 오류가 발생한다고 나와 있습니다.
>>> bytearray.fromhex('B9 01EF')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: fromhex() argument 1 must be unicode, not str`
16진수 코덱으로 이 작업을 수행할 수 있습니다.i:
>>> s='000000000000484240FA063DE5D0B744ADBED63A81FAEA390000C8428640A43D5005BD44'
>>> s.decode('hex')
'\x00\x00\x00\x00\x00\x00HB@\xfa\x06=\xe5\xd0\xb7D\xad\xbe\xd6:\x81\xfa\xea9\x00\x00\xc8B\x86@\xa4=P\x05\xbdD'
binasci 모듈을 사용해 봅니다.
from binascii import unhexlify
b = unhexlify(myhexstr)
import binascii
binascii.a2b_hex(hex_string)
그게 제가 한 방식입니다.
언급URL : https://stackoverflow.com/questions/443967/how-to-create-python-bytes-object-from-long-hex-string
반응형
'programing' 카테고리의 다른 글
C에서 "signed int"가 "unsigned int"보다 빠른 이유는 무엇입니까? (0) | 2023.07.22 |
---|---|
MySQL의 필드 증가는 원자적입니까? (0) | 2023.07.22 |
Python에서 길이가 같은 여러 개의 목록 인터리브 (0) | 2023.07.22 |
대응 라우터 및 스프링 부트 컨트롤러로 작업하는 방법 (0) | 2023.07.22 |
외부 "C"는 함수 선언에만 필요합니까? (0) | 2023.07.22 |