python执行cmd命令

Posted pfeiliu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python执行cmd命令相关的知识,希望对你有一定的参考价值。

os.system

os.system用来执行cmd指令,在cmd输出的内容会直接在控制台输出,返回结果为0表示执行成功

注意:os.system是简单粗暴的执行cmd指令,如果想获取在cmd输出的内容,是没办法获到的

os.popen

如果想获取控制台输出的内容,那就用os.popen的方法了,popen返回的是一个file对象,跟open打开文件一样操作了,r是以读的方式打开

注意:os.popen() 方法用于从一个命令打开一个管道。在Unix,Windows中有效

 

如在python中调用c++程序并获取其结果:

my.cpp
#include<iostream> using namespace std; int print(){ int sum=0; for(int i=0;i<=100000000;i++){ sum+=i; } cout << sum <<endl; return sum; } int main(){ print(); return 0; }
my_numba.py
import os
from numba import jit import time @jit def add(x): he=0 i=0 # for i in range(x): # he+=i while True: he+=i i+=1 if i == x: break return int(he) start=time.time() res=add(100000000) print(res,type(res)) end=time.time() print(end-start) a=os.system("g++ my.cpp") A=os.system("a.exe") s=os.popen("g++ my.cpp") S=os.popen("a.exe","r") print(a,A) print(s.read(),S.read())

执行.py文件结果:

4999999950000000 <class int>
0.1453843116760254
987459712
0 0
 987459712

注意:os.system无法获取执行结果,os.popen可以获取执行结果

以上是关于python执行cmd命令的主要内容,如果未能解决你的问题,请参考以下文章

Python实现cmd命令连续执行

Android 逆向Android 逆向通用工具开发 ( Android 平台运行的 cmd 程序类型 | Android 平台运行的 cmd 程序编译选项 | 编译 cmd 可执行程序 )(代码片段

bat 打开cmd 执行Python文件

nodejs怎么调用python命令行

如何用shell调用多条cmd命令

如何使用Java执行cmd命令