我正在創建一個Python腳本,它執行一堆任務,其中一個任務是啓動並打開一個Excel實例。在我的腳本中完成這個操作的理想方式是什麼?如何使用Python啓動應用程序的實例?
12
A
回答
10
雖然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
從a mailing list post採取,但有很多的例子。
0
8
或
os.system("start excel.exe <path/to/file>")
(假設它是在路徑,而你在Windows上)
,並在Windows上,只是start <filename>
的作品 - 如果它已經是一個關聯的擴展(如xls會)
+3
請注意,在Windows上,如果您使用`os.system()`,您將看到cmd窗口快速打開和關閉。恕我直言,最好使用`os.startfile()`。 – 10basetom 2014-12-30 04:06:08
7
我喜歡popen2監控進程的能力。
excelProcess = popen2.Popen4("start excel %s" % (excelFile))
status = excelProcess.wait()
http://www.python.org/doc/2.5.2/lib/module-popen2.html
編輯:要知道,調用wait()將阻塞,直到該處理。根據你的腳本,這可能不是你想要的行爲。
7
的子模塊打算更換幾個其他,舊模塊和功能,如:
- 使用os.system
- os.spawn *
- os.popen *
- popen2 。*
- 命令。*
。
import subprocess
process_one = subprocess.Popen(['gqview', '/home/toto/my_images'])
print process_one.pid
1
正如其他人所說,我會建議os.system。如果有人正在尋找一個Mac兼容的解決方案,這裏有一個例子:
import os
os.system("open /Applications/Safari.app")
相關問題
- 1. 如何使用launchd啓動應用程序的多個實例?
- 2. 如何從應用程序內啓動新的應用程序實例?
- 3. 繼續使用在啓動時啓動的應用程序實例
- 4. 如何重新啓動Azure應用程序服務實例
- 5. 如何只啓用我的應用程序的一個實例
- 6. 運行git pull然後啓動真實應用程序的Python啓動程序
- 7. 使用Python啓動Google Compute實例
- 8. 使用python-boto啓動Openstack實例
- 9. 如何使用setup.py安裝後啓動python應用程序?
- 10. 如何使用Python和PyQt4啓動默認應用程序
- 11. 無法實例化活動ComponentInfo啓動我的應用程序
- 12. 如何在嘗試啓動新應用程序時使應用程序的第一個實例最大化
- 13. 啓動應用程序以啓動亞馬遜EC2實例時啓動
- 14. Vaadin爲單個應用程序啓動多個應用程序實例
- 15. 如何啓動AWS EC2上的實例啓動程序
- 16. Python的另一應用程序啓動
- 17. Python web應用程序部署多個應用程序實例
- 18. 使用OpsWorks實例啓動實例AMI
- 19. 潤泉啓動示例應用程序
- 20. 防止啓動Java應用程序的多個實例
- 21. 無法啓動節點webkit應用程序的多個實例
- 22. 防止android啓動應用程序的另一個實例
- 23. 從Widget啓動現有的應用程序實例
- 24. 在Mac上啓動Java應用程序的另一個實例
- 25. 在WPF中啓動應用程序,如何不使用啓動uri,但窗口實例
- 26. 如何在不同的應用程序域中啓動控制檯應用程序的多個實例?
- 27. 如何以編程方式重新啓動單實例應用程序
- 28. 如何從我的應用程序啓動Facebook應用程序?
- 29. 如何在c#中的單個進程中使用線程啓動exe應用程序的多個實例?
- 30. 如何使用自動啓動在系統啓動時啓動應用程序?
IPC - http://en.wikipedia.org/wiki/Inter-process_communication – warren 2008-10-29 17:53:45