300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python 数字转十六进制_在Python中将整数转换为十六进制

python 数字转十六进制_在Python中将整数转换为十六进制

时间:2022-01-16 22:45:29

相关推荐

python 数字转十六进制_在Python中将整数转换为十六进制

In Python I want to tranform the integer 3892 into a hexcode with the given format and the result \x00\x00\x0F\x34. How can this be achieved?

解决方案

You are converting to a binary representation of the number, not so much a hex representation (although Python will display the bytes as hex). Use the struct module for such conversions.

Demonstration:

>>> struct.pack('>I', 3892)

'\x00\x00\x0f4'

>>> struct.pack('>I', 4314)

'\x00\x00\x10\xda'

Note that the ASCII code for '4' is 0x34, python only displays bytes with a \x escape if it is a non-printable character. Because 0x34 is printable, python outputs that as 4 instead.

'>' in the formatting code above means 'big endian' and 'I' is an unsigned int conversion (4 bytes).

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。