python中3種調(diào)用可執(zhí)行文件.exe的方法
總結(jié):最后一種方法可以同時打開兩個文件。
方法一、os.system() 會保存可執(zhí)行程序中的打印值和主函數(shù)的返回值,且會將執(zhí)行過程中要打印的內(nèi)容打印出來
import os
main = "project1.exe"
r_v = os.system(main)
print (r_v )
方法二、commands.getstatusoutput() 會保存可執(zhí)行程序中的打印值和主函數(shù)的返回值,但不會將執(zhí)行過程中要打印的內(nèi)容打印出來
import subprocess
import os
main = "project1.exe"
if os.path.exists(main):
rc,out= subprocess.getstatusoutput(main)
print (rc)
print ('*'*10)
print (out)
方法三、popen() 會保存可執(zhí)行程序中的打印值,但不會保存主函數(shù)的返回值,也但不會將執(zhí)行過程中要打印的內(nèi)容打印出來
import os
main = "project1.exe"
f = os.popen(main)
data = f.readlines()
f.close()
print (data)
另外,上面提到的三種方式,實際上都是在python中執(zhí)行命令,因此他們不只是用來執(zhí)行可執(zhí)行文件,也可以用來執(zhí)行l(wèi)inux系統(tǒng)中別的指令。
————————————————
import subprocess import os #main = "F:\BaiduNetdiskDownload\FoxitReader.exe F:\BaiduNetdiskDownload\PSiCC2-CN.pdf" pdf_file = "F:\BaiduNetdiskDownload\FoxitReader.exe F:\BaiduNetdiskDownload\程序員的自我修養(yǎng).pdf" src ="F:\BaiduNetdiskDownload\PSiCC2-CN.pdf" #md_file = "C:\Program Files\Typora\Typora.exe H:\gitLab\cpractice\程序員的自我修養(yǎng).md" md_file = "D:\App\Typora\Typora.exe H:\gitLab\cpractice\程序員的自我修養(yǎng).md" # 這種方式 只能打開一個 exe, 另一個打開,需要先關(guān)閉上一個exe #r_v = os.system(pdf_file) #r_v = os.system(md_file) #print (r_v) #方式 2 也需要關(guān)閉上一個打開的文件 才能繼續(xù)執(zhí)行另一個exe 文件 #rc,out = subprocess.getstatusoutput(md_file) #rc,out = subprocess.getstatusoutput(pdf_file) #rc, out = subprocess.getstatusoutput(md_file) # 最終使用這種方式,可以同時打開 兩個不同類型的文件 。 os.popen(md_file) os.popen(pdf_file)
原文鏈接:https://blog.csdn.net/zsc201825/article/details/80918185
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。