gpt4 book ai didi

python - 将位转换为字节序列

转载 作者:太空宇宙 更新时间:2023-11-04 09:19:02 24 4
gpt4 key购买 nike

给定一个 4 位大小以内的 Python 整数,如何使用按位算术而不是字符串处理将其转换为 4 字节大小以内的整数,原始中的每一位对应一个重复8次的bit是哪个byte?

例如:0b1011 应该变成 0b11111111000000001111111111111111

最佳答案

向 ncoghlan 致歉:

expanded_bits = [
0b00000000000000000000000000000000,
0b00000000000000000000000011111111,
0b00000000000000001111111100000000,
0b00000000000000001111111111111111,
0b00000000111111110000000000000000,
0b00000000111111110000000011111111,
0b00000000111111111111111100000000,
0b00000000111111111111111111111111,
0b11111111000000000000000000000000,
0b11111111000000000000000011111111,
0b11111111000000001111111100000000,
0b11111111000000001111111111111111,
0b11111111111111110000000000000000,
0b11111111111111110000000011111111,
0b11111111111111111111111100000000,
0b11111111111111111111111111111111,
]

然后用你想转换的半字节索引这个列表:

>>> bin(expanded_bits[0b1011])
"0b11111111000000001111111111111111"

关于python - 将位转换为字节序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5061737/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com