我们知道,Python的API非常多,功能非常强大,而且非常易用。Python之所以强大,一个重要原因是因为Python非常容易与其他编程语言交互。这就让Python拥有了无限扩展性。就算Python无法实现某个功能,可以用其他语言实现,然后Python直接调用即可。
Python与其他编程语言交互,主要有如下两种方法:
(1)调用动态库,如.dll,.so等;
(2)直接执行外部命令,并接收外部命令的返回结果;
第1种方法我会在后面的文章中详细讨论,本文主要讲解如何使用Python执行外部的命令,并传递参数和接收返回值,然后做更进一步的处理。本文将介绍6种执行外部命令的方法,并比较这6中方法的优缺点。史称这6种执行外部命令的方法为六脉神剑。
Python执行外部命令的6种方法:
1. system函数
基本的调用格式如下:
import os
os.system("some_command with args");
system函数会将命令和参数传递给系统的Shell。这么做非常好,因为您实际上可以用这种方式一次运行多个命令,并设置管道和输入/输出重定向。例如:
import os
os.system("cat command.py | grep -n sub