作者andwwww (要有决心啊)
看板Python
标题[问题] 如何将int32转成bytes
时间Sat Oct 2 20:54:44 2021
我现在想把一个integer 32转成bytes,
但似乎都查不到比较简单直接的作法,
我现在是写成一个function,
def Int32toBytes(Number)
B1 = chr(Number // 2 ** 24).encode('latin1')
Q1 = Number % 2 ** 24
B2 = chr(Q1 // 2 ** 16).encode('latin1')
Q2 = Q1 % 2 ** 16
B3 = chr(Q2 // 2 ** 8).encode('latin1')
Q3 = Q2 % 2 ** 8
B4 = chr(Q3).encode('latin1')
B = B1 + B2 + B3 + B4
return B
譬如我执行
Int32toBytes(3),就可以得到 b'\x00\x00\x00\x03'
Int32toBytes(1000),就可以得到 b'\x00\x00\x03\xe8'
不知道有没有更好的方法,感谢帮忙!!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.160.253.43 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1633179287.A.862.html
1F:推 s0914714: 用struct的pack 10/02 21:27
2F:推 Woqeker: to_bytes? 10/02 21:31
3F:→ andwwww: 感谢一楼的方法 10/03 00:42
5F:→ andwwww: 感谢四楼的说明 二楼的方法更适合我的应用 感谢!! 10/03 03:48
6F:→ leolarrel: 二楼正解 10/04 13:56