Python调用外部程序

By | 2013/03/19

python调用外部程序有好几种方式,这里只介绍system&popen两种:

 

import os
os.system(r'"D:\Program Files\Foxit Software\Foxit reader.exe" abc.pdf')

偶想””是不可缺少的,因为路径中有空格,否则极容易出错;对-参数不了解,不发表意见

使用os.system会有几个问题:
1、os.system会阻塞程序继续运行(如果是图形界面,还会把图形界面搞的没反应),当然如果需要阻塞,自然不是问题。
2、os.system会打开一个命令行窗口,这是比较讨厌的;除非你确实需要显示这个命令行窗口或者本来就是命令行里运行的。

所以还是建议使用 os.popen,基本语法是一样的

import os
os.popen(r'"D:\Program Files\Foxit Software\Foxit reader.exe" abc.pdf')

这样不会出现命令行窗口,不会阻塞程序运行
如果需要阻塞程序运行,可以这样写:

os.popen(r'"D:\Program Files\Foxit Software\Foxit reader.exe" abc.pdf').read()

Leave a Reply

Your email address will not be published. Required fields are marked *