首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在python中调用外部程序并检索输出并返回代码?

在Python中调用外部程序并检索输出并返回代码,可以使用subprocess模块。subprocess模块允许你创建新的进程、连接到它们的输入/输出/错误管道,并获取它们的返回代码。以下是一个示例代码:

代码语言:python
代码运行次数:0
复制
import subprocess

def run_command(command):
    process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
    output, error = process.communicate()
    return_code = process.returncode
    return output.decode('utf-8'), error.decode('utf-8'), return_code

command = "echo 'Hello, World!'"
output, error, return_code = run_command(command)

print("Output: ", output)
print("Error: ", error)
print("Return Code: ", return_code)

在这个示例中,我们定义了一个名为run_command的函数,它接受一个命令作为参数,并使用subprocess.Popen来执行该命令。stdoutstderr参数设置为subprocess.PIPE,以便我们可以捕获输出和错误。shell=True表示在shell中运行命令。

process.communicate()方法用于获取命令的输出和错误。process.returncode获取命令的返回代码。

最后,我们使用decode('utf-8')将输出和错误从字节转换为字符串,并将它们打印到控制台。

请注意,在实际应用中,使用shell=True可能会导致安全问题。因此,最好避免在不必要的情况下使用它。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 领券