在Python中,可以使用subprocess
模块来将stdout转换为字符串。
下面是一种常见的方法:
import subprocess
def capture_stdout(command):
result = subprocess.run(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
stdout = result.stdout.decode('utf-8')
return stdout
上述代码中,subprocess.run()
函数用于执行命令并捕获其输出。stdout=subprocess.PIPE
参数将标准输出重定向到一个管道,stderr=subprocess.PIPE
参数将标准错误输出重定向到一个管道。shell=True
参数允许执行shell命令。
result.stdout
是一个字节流对象,通过调用decode('utf-8')
方法将其转换为字符串。
使用示例:
command = 'ls -l'
output = capture_stdout(command)
print(output)
上述示例中,ls -l
命令的输出将被捕获并打印出来。
推荐的腾讯云相关产品:无
希望以上信息对您有所帮助!
领取专属 10元无门槛券
手把手带您无忧上云