go和python调用其它程序并得到程序输出

yipeiwu_com6年前Python基础

在c语言中可以用system函数调用系统命令并得到输出,通过输出重定向也可以将程序执行的输出保存到文件以供使用,但用起来不是很方便。我这里介绍下用python和go语言的实现方式,可以将其它程序的输出直接保存成变量供程序使用。

下面的示例用的是ls命名,需要安装MinGW,并将“C:\MinGW\msys\1.0\bin”加入环境变量。

一、用python调用其它程序,并得到输出

示例代码:

复制代码 代码如下:

import os
var = os.popen('ls -l').read()
print var

运行效果(以我机器为例):

二、用go语言调用其它程序,并得到输出

go代码:

复制代码 代码如下:

package main

import (
    "exec" // "os/exec" in go1
    "fmt"
)

func main(){
    cmd := exec.Command("ls", "-l")
    buf, err := cmd.Output()
    fmt.Printf("%s\n%s",buf,err)
}

运行效果如下:

相关文章

pandas series序列转化为星期几的实例

series序列中每个元素都是带有日期形式的字符串,需要将其转化为一个同等大小的series,且其中每个元素都是星期几。 1)将Series转化为datetime格式; 2)将Serie...

Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法

使用Python写文件的时候,或者将网络数据流写入到本地文件的时候,大部分情况下会遇到:UnicodeEncodeError: 'gbk' codec can't encode char...

numpy中三维数组中加入元素后的位置详解

numpy中三维数组中加入元素后的位置详解

今天做数据处理时,遇到了从三维数组中批量加入二维数组的需求。其中三维数组在深度学习的特征数据处理时经常会使用到,所以读者有必要对该小知识点做到清楚了解并掌握。现对三维数组中的元素位置结合...

使用IPython下的Net-SNMP来管理类UNIX系统的教程

引言 对于简单网络管理协议 (SNMP),大多数系统管理员都具有一定的使用经验,或者至少听说过它。如果您正在一个数据中心工作,那么您每天都可能采用某种方式与 SNMP 进行交互。有许多给...

Python 中导入csv数据的三种方法

Python 中导入csv数据的三种方法,具体内容如下所示: 1、通过标准的Python库导入CSV文件: Python提供了一个标准的类库CSV文件。这个类库中的reader()函数用...