如何用Python启动应用程序实例?
我正在写一个Python脚本,这个脚本会执行很多任务,其中一个任务是打开一个Excel的实例。请问在我的脚本中,最好的方法是什么?
7 个回答
7
subprocess模块的目的是为了取代一些旧的模块和函数,比如:
- os.system
- os.spawn*
- os.popen*
- popen2.*
- commands.*
.
import subprocess
process_one = subprocess.Popen(['gqview', '/home/toto/my_images'])
print process_one.pid
8
或者
os.system("start excel.exe <path/to/file>")
(假设它在路径中,并且你是在Windows系统上)
在Windows上,你也可以直接使用 start <文件名>
,这也可以工作——前提是这个文件的扩展名已经和某个程序关联好了(比如xls文件就是这样)。
12
虽然使用 Popen
的回答在一般情况下是合理的,但如果你想在这个特定情况下做一些有用的事情,我建议使用 win32api
。
大致可以这样做:
from win32com.client import Dispatch
xl = Dispatch('Excel.Application')
wb = xl.Workbooks.Open('C:\\Documents and Settings\\GradeBook.xls')
xl.Visible = True # optional: if you want to see the spreadsheet
这个内容摘自 一个邮件列表的帖子,不过网上有很多类似的例子。