如何用Python启动应用程序实例?

14 投票
7 回答
54653 浏览
提问于 2025-04-11 09:35

我正在写一个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

这个内容摘自 一个邮件列表的帖子,不过网上有很多类似的例子。

撰写回答