python执行外部命令或URL
在Python/wxPython環(huán)境下,執(zhí)行外部命令或者說在Python程序中啟動另一個程序的方法一般有這么幾個:
1、os.system(command)
2、wx.Execute(command, syn=wx.EXEC_ASYNC, callback=None)
????? 若置syn為wx.EXEC_ASYNC則wx.Excute函數(shù)立即返回,若syn=wx.EXEC_SYNC則等待調(diào)用的程序結(jié)束后再返回。
????? callback是一個wx.Process變量,如果callback不為None且syn=wx.EXEC_ASYNC,則程序結(jié)束后將調(diào)用wx.Process.OnTerminate()函數(shù)。
os.system()和wx.Execute()都利用系統(tǒng)的shell,執(zhí)行時會出現(xiàn)shell窗口。如在Windows下會彈出控制臺窗口,不美觀。下面的兩種方法則沒有這個缺點。
3、class subprocess.Popen
????? 最簡單的用法是:
????? import subprocess
????? subprocess.Popen(command, shell=True)
????? 如果command不是一個可執(zhí)行文件,shell=True不可省。
前面三個方法只能用于執(zhí)行程序和打開文件,不能處理URL,打開URL地址可用webbrowser模塊提供的功能。
4、webbrowser.open(url)
????? 調(diào)用系統(tǒng)缺省瀏覽器打開URL地址,如 webbrowser.open('http://www.google.com'),也可以利用
????? webbrowser.open('h:\python.zip')來執(zhí)行程序。這樣可以不必區(qū)分是文件名還是URL,不知道在Linux下是否可行。
以上在Windows2000,Python2.4a1,wxPython 2.5.1運行。
modify:還有一種方式:subprocess.call(*args, **kwargs)
轉(zhuǎn)載于:https://blog.51cto.com/ylj798/1063337
總結(jié)
以上是生活随笔為你收集整理的python执行外部命令或URL的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Eclipse 高亮显示
- 下一篇: 拜年!