使用 Go 语言的 os 包中的函数 exec.Command 来调用 Python 脚本中的命令。不仅可以执行python脚本。也适用于各种如shell命令等 第一种写法。

package main

import (

"os/exec"

"fmt"

"strings"

)

args := []string{"a.py", "第一个参数", "第二个参数"}

// out是执行完python脚本,脚本中输出的内容

out, err := exec.Command("python", args...).Output()

if err != nil{

println(fmt.Sprintf("err: %s", err))

}

//可以将out转换为string查看输出的具体内容

println(fmt.Sprintf("out: %s", out))

第二种写法

cmd := exec.Command("python", "a.py", "第一个参数", "第二个参数")

var out bytes.Buffer

var stderr bytes.Buffer

cmd.Stdout = &out

cmd.Stderr = &stderr

err := cmd.Start() //使用start即可无需关注执行脚本进度情况,可以理解为后台运行

if err != nil {

println(fmt.Sprintf("报错err: %s, 具体报错细节: %s", err.Error(), stderr.String())))

}

推荐阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: