如何将“二进制string”转换为Python3中的正常string?
例如,我有一个像这样的string( subprocess.check_output
返回值):
>>> b'a string' b'a string'
不pipe我做了什么,它总是用麻烦的b'
打印在string之前:
>>> print(b'a string') b'a string' >>> print(str(b'a string')) b'a string'
有没有人有任何想法如何使用它作为一个正常的string或将其转换为一个正常的string?
解码它。
>>> b'a string'.decode('ascii') 'a string'
要从string获取字节,请对其进行编码。
>>> 'a string'.encode('ascii') b'a string'
如果来自falsetru的回答不起作用,您还可以尝试:
>>> b'a string'.decode('utf-8') 'a string'