我正在尝试在 Python 中使用和操作 subprocess.check_output() 的输出结果,但由于其以字节形式返回,因此需要进行转换。
for line in output:
# Do stuff
不能正常工作。有没有办法将输出重构为在标准输出时呈现的行格式?或者什么是搜索并使用此输出的最佳方法?
提前致谢!
subprocess.check_output()
返回一个单个字符串。使用str.splitlines()
方法迭代该字符串中的各个行:
for line in output.splitlines():
对于任何跟进的人:
output = subprocess.check_output(cmd, shell=True)
for line in output.splitlines():
print(line)
将输出:
b'first line'
b'second line'
b'third line'
正在进行:
output = subprocess.check_output(cmd, shell=True)
output = output.decode("utf-8")
for line in output.splitlines():
print(line)
将输出:
first line
second line
third line