我想讓我的python程序在Windows中執行一個文件。這意味着如果我嘗試執行.txt
文件,它將以默認的.txt
查看器打開。那可能嗎?用Python在windows中執行文件
我試過subprocess.call
,但我得到WindowsError: [Error 193] %1 is not a valid Win32 application
。我試圖運行的文件是.png
文件。
我想讓我的python程序在Windows中執行一個文件。這意味着如果我嘗試執行.txt
文件,它將以默認的.txt
查看器打開。那可能嗎?用Python在windows中執行文件
我試過subprocess.call
,但我得到WindowsError: [Error 193] %1 is not a valid Win32 application
。我試圖運行的文件是.png
文件。
os.startfile("myText.txt") #open text editor
os.startfile("myText.pdf") #open in pdf viewer
os.startfile("myText.html") #open in webbrowser
是你應該怎麼做這個
然而
os.startfile("my_prog.py")
可能是一個壞主意,因爲沒有辦法知道是否Python是設置爲默認打開*的.py或如果一個texteditor或ide被設置爲默認打開* .py
謝謝,這就是我一直在尋找。沒有cmd窗口,只是簡單地啓動文件 –
假設您有一個文件myText.txt
。
如果您想通過命令行打開該文件,您可以簡單地寫入~$ myText.txt
。
所以在Python中,你可以運行一個打開文件的cmd命令。說:
import os
os.system("myText.txt") #Requires myText.txt and the python file to be in same folder. Otherwise full path is required.
這將打開默認編輯器中的文件,或者如果它是一個exe文件,只需運行它。
cmd窗口已經打開了相當長的一段時間(大約5秒),但它完成了這項工作。謝謝! –
即使當你雙擊一個文件,它需要幾秒鐘來打開文件(除非你有一個驚人的CPU或SSD)... –
這將啓動與註冊的應用程序的文件擴展名.txt
:
import os
os.system("start myText.txt")
與子你需要
subprocess.call("start myText.txt", shell=True)
因爲start
是外殼的一部分。
你可以發佈更多關於你傳遞給'subprocess.call'和完整的追溯?答案可能在那裏! – mprat
@mprat'subprocess.call([「C:\\ Path \\ To \\ png_file.png」])'希望它會使用默認的png查看器 –
執行,您需要使用'subprocess.call(「file。 png「,shell = True)'或'os.system(」file.png「)'而不是 –