将字节转换为字符串?
我使用这段代码从外部程序获得标准输出:
>>> from subprocess import *
>>> command_stdout = Popen(['ls', '-l'], stdout=PIPE).communicate()[0]
Communications()方法返回一个字节数组:
>>> command_stdout
b'total 0\n-rw-rw-r-- 1 thomas thomas 0 Mar 3 07:03 file1\n-rw-rw-r-- 1 thomas thomas 0 Mar 3 07:03 file2\n'
但是,我希望将输出作为一个普通的Python字符串来处理。这样我就可以像这样打印出来:
>>> print(command_stdout)
-rw-rw-r-- 1 thomas thomas 0 Mar 3 07:03 file1
-rw-rw-r-- 1 thomas thomas 0 Mar 3 07:03 file2
我以为这就是b2a_qp()方法,但当我尝试时,再次得到了相同的字节数组:
>>> binascii.b2a_qp(command_stdout)
b'total 0\n-rw-rw-r-- 1 thomas thomas 0 Mar 3 07:03 file1\n-rw-rw-r-- 1 thomas thomas 0 Mar 3 07:03 file2\n'
有人知道如何将字节值转换回字符串吗?我是说,用“电池”而不是手工操作。我希望Python 3没有问题。
POPMUISE
陪伴而非守候
慕工程0101907
相关分类