我有一个类似的Python代码
output = str(check_output(["./listdevs.exe", "-p"]))
print (output)
当在命令提示符中运行此Python代码时,我会遇到以下输出
b'80ee:0021rn8086:1e31rn'
我想将其显示在\n被替换为一条看起来像的实际新线
'80ee:0021
8086:1e31'
结果以字节为单位。因此,您必须调用decode
方法来将字节对象转换为字符串对象。
>>> print(output.decode("utf-8"))
如果使用Python 3.7+,可以将text=True
传递给subprocess.check_output
以获得字符串形式的结果。
在3.7之前,您可以使用universal_newlines=True
。text
只是universal_newlines
的别名。
output = str(subprocess.check_output(["./listdevs.exe", "-p"], text=True))