• 
    

      <address id="upfr9"><pre id="upfr9"><strike id="upfr9"></strike></pre></address>
      1. <address id="upfr9"><tr id="upfr9"></tr></address><dl id="upfr9"></dl>

        Python里如何打開(kāi)外部程序

        Python里如何打開(kāi)外部程序,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

        10年積累的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶(hù)對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶(hù)得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有秀英免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

        在編寫(xiě)代碼中,經(jīng)常會(huì)遇到在  Python程序中打開(kāi)外部程序的需求,那么在Python里如何打開(kāi)外部程序呢?今天我們來(lái)介紹四種不同的方式,供大家參考收藏。

        使用 os.system()

        os.system(command)是最簡(jiǎn)單的一種方式,我們import os模塊,并調(diào)用它的system() 方法即可。

        參考以下例子:

        Python里如何打開(kāi)外部程序

        通過(guò)簡(jiǎn)單兩行代碼即可在我的電腦上打開(kāi) qq程序,因?yàn)槲沂窃贛acOS 系統(tǒng)里,所以需要在可執(zhí)行文件之前加一個(gè)open,如果是  windows只需要填寫(xiě)可執(zhí)行文件的絕對(duì)路徑即可。

        現(xiàn)在我們可以調(diào)用稍微復(fù)雜一點(diǎn)的命令,實(shí)現(xiàn)在 Python中調(diào)用ping命令:

        Python里如何打開(kāi)外部程序

        不過(guò)os.system()的缺點(diǎn)是無(wú)法獲取調(diào)用后的返回結(jié)果,只能通過(guò):

        os.system("ping www.baidu.com > result.txt") 這樣的方式把結(jié)果管道輸出到本地文件里。

        system的返回值只會(huì)有0(成功),1和2表示失敗。

        總結(jié)起來(lái) system()一共干了三件事情:

        • 從主進(jìn)程中fork一個(gè)子進(jìn)程。

        • 在子進(jìn)程中調(diào)用python的exec函數(shù)去執(zhí)行命令。

        • 在主進(jìn)程中調(diào)用wait(阻塞)等待子進(jìn)程結(jié)束。

        如果 對(duì)于fork失敗,system()函數(shù)返回-1。

        使用 os.popen()

        os.popen(command) 的調(diào)用方式和os.system()類(lèi)似,不過(guò)它是通過(guò)創(chuàng)建一個(gè)管道的方式來(lái)fork子進(jìn)程實(shí)現(xiàn)調(diào)用程序的。

        Python里如何打開(kāi)外部程序

        我們可以通過(guò)讀取popen的返回對(duì)象,以便獲取執(zhí)行結(jié)果。

        以上代碼我們可以發(fā)現(xiàn)對(duì)返回對(duì)象執(zhí)行read()方法即可獲取程序執(zhí)行后的返回結(jié)果。

        使用 subprocess.open()

        subprocess這個(gè)模塊在Python用于產(chǎn)生子進(jìn)程,可以連接子進(jìn)程的標(biāo)準(zhǔn)輸入輸出,并且可以得到子進(jìn)程的返回值。

        以下是subprocess.Popen()模塊的參數(shù)定義:

        Python里如何打開(kāi)外部程序

        subprocess.Popen() 的參數(shù)解釋?zhuān)?/p>

        Python里如何打開(kāi)外部程序

        以下通過(guò)subprocess.Popen() 執(zhí)行tree命令,樹(shù)形結(jié)構(gòu)顯示當(dāng)前程序路徑下的所有文件和目錄:

        Python里如何打開(kāi)外部程序

        Popen的參數(shù)可以是字符串(string),也可以是列表(list)。

        參考兩個(gè)以下例子:

        subprocess.Popen(["cat","test.md"]) subprocess.Popen("cat test.txt", shell=True)

        Popen()還有更多的高級(jí)用法,歡迎參考官方文檔進(jìn)行學(xué)習(xí)。

        使用subprocess.call()

        subporcess模塊還有一個(gè)call() 方法,可以用于更加簡(jiǎn)單的調(diào)用外部命令。

        subprocess.call (*popenargs , **kwargs )

        call的使用方法和Popen基本一致,沒(méi)有太大的區(qū)別,在這里只是多介紹一種使用方式。

        Python里如何打開(kāi)外部程序

        • os.system()用于簡(jiǎn)單執(zhí)行命令,可以顯示執(zhí)行結(jié)果。

        • os.popen()用于簡(jiǎn)單執(zhí)行命令,不能顯示執(zhí)行結(jié)果,可以通過(guò)變量返回執(zhí)行結(jié)果。

        • subprocess.Popen() 用于執(zhí)行復(fù)雜命令,可以顯示執(zhí)行結(jié)果,可以設(shè)置輸出內(nèi)容。

        • subprocess.call() 用于執(zhí)行復(fù)雜命令,可以顯示執(zhí)行結(jié)果,可以設(shè)置輸出內(nèi)容。

        看完上述內(nèi)容,你們掌握Python里如何打開(kāi)外部程序的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

        新聞名稱(chēng):Python里如何打開(kāi)外部程序
        URL網(wǎng)址:http://www.jbt999.com/article18/jsdigp.html

        成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、品牌網(wǎng)站制作、網(wǎng)站維護(hù)、外貿(mào)網(wǎng)站建設(shè)自適應(yīng)網(wǎng)站定制網(wǎng)站

        廣告

        聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

        h5響應(yīng)式網(wǎng)站建設(shè)

      2. 
        

          <address id="upfr9"><pre id="upfr9"><strike id="upfr9"></strike></pre></address>
          1. <address id="upfr9"><tr id="upfr9"></tr></address><dl id="upfr9"></dl>
            麻豆大黑鸡吧 | 2020亚洲天堂 | 黄色美女操逼 | 靠逼网站在线观看 | 成人性生交大免费看 | 国产精品18 高潮视频 | www..91av | 在线看黄网站 | 欧美熟妇xxxxxx | 国产乱伦自拍 |