Python中调用外部程序主要是通过两个方法实现的, 一个是os库的 system 函数,另外一个是 subprocess 库。
函数
"""
使用os库的 system 函数 调用其它程序 是非常方便的。
函数调用外部程序的时候, 必须要等被调用程序执行结束, 才会接着往下执行代码。 否则就会一直等待。
就把命令行内容 作为 system 函数的参数 即可
"""
import os
cmd = r'wget /nginx/nginx-1.13.'
os.system(cmd)
print('下载完毕')
函数
"""
如果想达到类似文件浏览器双击打开一个文件的效果可以使用 函数。
这个函数的参数可以是任何 非可执行程序 文件
"""
# 可以调用该xlsx对应的关联程序(Excel)来打开该文件。
os.startfile('d:\\统计数据.xlsx')
模块
subprocess 模块提供了 更多的 调用外部程序的功能,弥补了函数的缺点。
"""
有的时候,启动外部程序后,Python程序本身并不需要等待外部程序结束。
比如,启动 wget下载命令, 下载1个文件。让它下载就可以了, 然后程序还要继续去做其他的任务。
这时候, 就不能用, 因为它会等待 外部程序结束。可以用subprocess里面的Popen。
"""
from subprocess import Popen
proc = Popen(
args='wget http://xxxxserver/',
shell=True
)
print ('让它下载,我们接下来做其他事情。。。。')