尝试从二进制数的左端去除“0b1”。

以下代码导致剥离所有二进制对象。 (不好)

>>> bbn = '0b1000101110100010111010001' #converted bin(2**24+**2^24/11)
>>> aan=bbn.lstrip("0b1")  #Try stripping all left-end junk at once.
>>> print aan    #oops all gone.
''

因此,我分两步完成了.lstrip():
>>> bbn = '0b1000101110100010111010001' #    Same fraction expqansion
>>> aan=bbn.lstrip("0b")# Had done this before.
>>> print aan    #Extra "1" still there.
'1000101110100010111010001'
>>> aan=aan.lstrip("1")#  If at first you don't succeed...
>>> print aan    #YES!
'000101110100010111010001'

这是怎么回事?

再次感谢您通过一个简单的步骤解决了这一问题。 (请参阅我之前的问题)

最佳答案

Strip系列将arg视为要删除的字符的设置。默认设置为“所有空白字符”。

你要:

if strg.startswith("0b1"):
   strg = strg[3:]

09-12 11:33