python转二进制高位补0_转换为二进制并在Python中保持前导零

本文介绍了如何在Python中将整数转换为二进制并保持前导零,包括使用format()函数、字符串格式化方法以及bin()函数结合zfill()方法等不同的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转换为二进制并在Python中保持前导零

我试图使用Python中的bin()函数将整数转换为二进制。 但是,它总是删除我实际需要的前导零,这样结果总是8位:

例:

bin(1) -> 0b1

# What I would like:

bin(1) -> 0b00000001

有办法做到这一点吗?

8个解决方案

153 votes

使用0b功能:

>>> format(14, '#010b')

'0b00001110'

0b函数只是按照格式规范迷你语言格式化输入。 #使格式包括0b前缀,并且010大小格式化输出以适合10个字符宽度,具有0填充; 0b前缀为2个字符,其他8为二进制数字。

这是最紧凑和直接的选择。

如果要将结果放在一个更大的字符串中,请使用格式化的字符串文字(3.6+)或使用0b并在占位符#的冒号后面放置0b函数的第二个参数:

>>> value = 14

>>> f'The produced output, in binary, is: {value:#010b}'

'The produced output, in binary, is: 0b00001110'

>>> 'The produced output, in binary, is: {:#010b}'.format(value)

'The produced output, in binary, is: 0b00001110'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值