字符串与二进制串的相互转换

一个问题,在Python中,如何将一个字符串转换为相应的二进制串(01形式表示),并且能够将这个二进制串再转换回原来的字符串

阅读 29.4k
2 个回答

一个简单版本

def encode(s):
    return ' '.join([bin(ord(c)).replace('0b', '') for c in s])

def decode(s):
    return ''.join([chr(i) for i in [int(b, 2) for b in s.split(' ')]])
    
>>>encode('hello')
'1101000 1100101 1101100 1101100 1101111'
>>>decode('1101000 1100101 1101100 1101100 1101111')
'hello'
>>> bin(int('256', 10))
'0b100000000'
>>> str(int('0b100000000', 2))
'256'
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题