转换为十六进制
我有这个二进制字符串,
bit_string = "0000111100001111010001111011001110110010010100110000101100001111"
我无法理解这个代码片段以将其转换为十六进制
res = '{:0>16x}'.format(int(bit_string, 2))
I have this binary string
bit_string = "0000111100001111010001111011001110110010010100110000101100001111"
I can't understand this code snippet to convert it to hexadecimal
res = '{:0>16x}'.format(int(bit_string, 2))
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
第一步是将数字的二进制表示形式转换为 int,使用
int
方法,基数为2
然后关于 doc
format_spec >输入
部分因此,使用以下命令获取十六进制输出
现在使用
{:0>16x}
>
进行更多格式化code> :强制字段在可用空间内右对齐0
:填充值0
而不是空格16
:填充于长度16那个不会影响你的值,它的十六进制长度已经是 16,但这里的值更小
The first step is converting the binary representation of your number into an int, use the
int
method, with base2
Then regarding the doc
format_spec > type
partSo use the following to get hex output
Now more formatting with
{:0>16x}
>
: Forces the field to be right-aligned within the available space0
: pad with the value0
and not space16
: pad at length 16That doesn't affect your value, which is already of length 16 in hex, but here with smaller values