2014-12-08 3 views
0

파이썬, 16 진수, 정수, LSB와 혼동스러워집니다. 번호가 있습니다. 의 내가 진수 형식으로 쓰기16 진수 형식의 숫자 작성 Python

number=1000 

가정 해 봅시다 :

new = '%08x' % number 
#000003e8 

지금 내가 이러한 형식이 숫자를 인쇄해야합니다

\xe8\x03\x00\x00 

이 어떤 도움이

을 주시면 감사하겠습니다! 감사!

+0

대신 * bytes *로 변환 하시겠습니까? 그런 다음'struct.pack()'을 사용하십시오. –

+0

유사한 문제와 관련된 스레드가 있습니다. [정수 값을 파이썬에서 4 바이트 배열로 변환하는 방법] (http://stackoverflow.com/questions/6187699/how-to-convert-integer-value-to-array-of-four-bytes -in-python). –

답변

0

"16 진수"형식이 아닙니다.

원하는 것은 값의 바이트에서 오는 값을 코드 포인트 ("문자")로 구성된 문자열입니다.

여러 가지 방법이 있습니다. 하나는 chr()입니다. 당신은 그것에 대해 struct.pack을 사용할 수 있습니다

1

:

print repr(struct.pack("I", 1000)) 
+0

완벽한! 고마워요. 정확히 내가 필요한 것입니다! 그러나 그것은 ''('\ xe8 \ x03 \ x00 \ x00')에 인쇄됩니다. 나는 그것을 원하지 않습니다! 그 (것)들을 제거하는 방법 있는가? –

+0

발견 : string = string1.replace (" '", ""). 도움 주셔서 감사합니다. –

0

왜 당신은 단순히 말할 수 없다 :

num = 1000 
num.to_bytes(4, 'little') 

내가 here을 제안처럼?