0

所以在学校,我们打算做一个二进制和十进制转换器。到目前为止,我已经发现了这个bin()功能,它大致为我提供了我需要的东西:

bin(10)
#0b1010  

但是,我在想如何0b在开始时删除 ,以便我只剩下1010.

真的有人知道是什么0b意思吗?

4

3 回答 3

4

0b意味着它是二进制的。而且,要删除它,只需执行以下操作:

>>> bin(10)
'0b1010'
>>> bin(10)[2:]
'1010'
>>> bin(12345)
'0b11000000111001'
>>> bin(12345)[2:]
'11000000111001'
>>>

该解决方案利用了 Python 的切片表示法

于 2013-10-21T15:04:45.770 回答
2

我不确定您到底在问什么,但我认为它的“我如何修剪字符串的开头”

你可以通过切片来做到这一点:

>>> s = "I am a string"
>>> s[5:]
'a string'

因此,在您的情况下,它将是:

>>> bin(10)[2:]
'1010'
于 2013-10-21T15:05:04.880 回答
1

还有另一种方法可以将数字转换为二进制,而不用0b开头

>>> '{0:0b}'.format(10)
'1010'

这个问题将对您 在 python 中将整数转换为二进制有帮助

于 2013-10-21T19:12:50.133 回答