subprocess.popen
将输出作为类字节返回,如下所示
b' Caption FreeSpace Size \ r \ n \ r \ nC:807194624
63869808640 \ r \ n \ n \ n \ n:\ r \ n \ r \ n 216847310848 2748779065344 \ r \ n \ n \ r \ n \ r \ n'
如何删除\r\r\n
的所有出现或如何将其转换为python字符串或数组
答案 0 :(得分:1)
您可以删除translate之类的字符
b'Caption FreeSpace ... \r\r\n\r\r\n'.translate(None, b'\r\n')
导致
b'Caption FreeSpace Size C: 807194624 63869808640 D: Y: 216847310848 2748779065344 '
如果您知道返回数据的编码,可能需要使用decode,它会为您提供一个字符串以供进一步处理。
例如,假设它是用utf-8编码的,你可以用它的默认值调用decode
并直接调用它上面的split
来用空白字符分割得到像这样的数组
b'Caption FreeSpace ... \r\r\n\r\r\n'.translate(None, b'\r\n').decode().split()
结果
['Caption', 'FreeSpace', 'Size', 'C:', '807194624', '63869808640', 'D:', 'Y:', '216847310848', '2748779065344']
答案 1 :(得分:0)
my_str = "hello world"
my_str_as_bytes = str.encode(my_str)
my_decoded_str = my_str_as_bytes.decode()
答案 2 :(得分:0)
您可以通过以下方式打印它:
print(b'Caption FreeSpace ... \r\r\n\r\r\n'.decode())
结果:
Caption FreeSpace ...