Python 開啟目錄與指定檔案

來源:互聯網
上載者:User

標籤:

 

Python開啟外部檔案有很多方法,

os.popen
開啟外部程式,但發現只能開啟檔案所在目錄的檔案

os.system
可開啟外部檔案
os.system(command)
command 要執行的命令,相當於在Windows的cmd視窗中輸入的命令。如果要向程式或者指令碼傳遞參數,可以使用空格分隔程式及多個參數。

os.startfile  (推薦)
可開啟外部程式
os.startfile (path [, operation])
這樣執行的動作與在Windows Explorer中雙擊檔案相同。在應用程式運行之後, 函數就會返回。此外不能等待完成或者從應用程式獲得結束代碼。path的值是相對於目前的目錄而言。operation是一個可選的字串, 用於指定開啟path時執行的動作。它的預設值是 ‘open‘, 但也可以將它置為‘print’、‘edit‘、‘explore‘或‘find‘[確切的列表跟path的類型有關( Windows)]。

win32process.CreateProcess
參數說明:

CreateProcess(appName, commandLine , processAttributes , threadAttributes , bInheritHandles ,dwCreationFlags , newEnvironment , currentDirectory , startupinfo )


其參數含義如下。
appName:可執行檔檔案名稱。
commandLine:命令列參數。
processAttributes:進程安全屬性,如果為None,則為預設的安全屬性。
threadAttributes:安全執行緒屬性,如果為None,則為預設的安全屬性。
bInheritHandles:繼承標誌。
dwCreationFlags:建立標誌。
newEnvironment:建立進程的環境變數。
currentDirectory:進程的目前的目錄。
startupinfo :建立進程的屬性。

 

使用:
1 import win32process2 win32process.CreateProcess(‘c:\\windows\\notepad.exe‘, ‘‘, None , None , 0 ,win32process. CREATE_NO_WINDOW , None , None , win32process.STARTUPINFO())




----------------------
推薦使用startfile 和 win32process
 1       Obj=‘C:\Users\Administrator\Desktop‘   or ‘C:\Users\Administrator\Desktop\chrome.exe‘ 2       if Obj and os.path.exists(Obj):  #檔案or 目錄存在 3             if os.path.isfile(Obj): 4                 import win32process 5                 try:   # 開啟外部可執行程式 6                     win32process.CreateProcess(Obj, ‘‘,None , None , 0 ,win32process. CREATE_NO_WINDOW , None , None ,win32process.STARTUPINFO()) 7                 except Exception, e: 8                     print(e) 9             else:10                 os.startfile(str(Obj))  # 開啟目錄11 12         else:  # 不存在的目錄13             print(‘不存在的目錄‘)

 



 

Python 開啟目錄與指定檔案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.