python调用其它程序

时间:2025-04-12 21:13:57

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 ('让它下载,我们接下来做其他事情。。。。')