一级毛片免费不卡在线视频,国产日批视频免费在线观看,菠萝菠萝蜜在线视频免费视频,欧美日韩亚洲无线码在线观看,久久精品这里精品,国产成人综合手机在线播放,色噜噜狠狠狠综合曰曰曰,琪琪视频

python調用shell的方法 -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.oriental01.com - 電腦資料】

   

    1.1 os.system(command)

    在一個子shell中運行command命令,并返回command命令執(zhí)行完畢后的退出狀態(tài),

python調用shell的方法

。這實際上是使用C標準庫函數(shù)system()實現(xiàn)的。這個函數(shù)在執(zhí)行command命令時需要重新打開一個終端,并且無法保存command命令的執(zhí)行結果。

    1.2 os.popen(command,mode)

    打開一個與command進程之間的管道。這個函數(shù)的返回值是一個文件對象,可以讀或者寫(由mode決定,mode默認是'r')。如果mode為'r',可以使用此函數(shù)的返回值調用read()來獲取command命令的執(zhí)行結果。

    1.3 commands.getstatusoutput(command)

    使用os. getstatusoutput ()函數(shù)執(zhí)行command命令并返回一個元組(status,output),分別表示command命令執(zhí)行的返回狀態(tài)和執(zhí)行結果。對command的執(zhí)行實際上是按照{command;} 2>&1的方式,所以output中包含控制臺輸出信息或者錯誤信息。output中不包含尾部的換行符。

    2.1 subprocess.call(["some_command","some_argument","another_argument_or_path"])

    subprocess.call(command,shell=True)

    2.2 subprocess.Popen(command, shell=True)

    如果command不是一個可執(zhí)行文件,shell=True不可省。

    使用subprocess模塊可以創(chuàng)建新的進程,可以與新建進程的輸入/輸出/錯誤管道連通,并可以獲得新建進程執(zhí)行的返回狀態(tài)。使用subprocess模塊的目的是替代os.system()、os.popen*()、commands.*等舊的函數(shù)或模塊。

    最簡單的方法是使用class subprocess.Popen(command,shell=True)。Popen類有Popen.stdin,Popen.stdout,Popen.stderr三個有用的屬性,可以實現(xiàn)與子進程的通信。

    將調用shell的結果賦值給python變量

    復制代碼代碼如下:

    handle = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE)

    print handle.communicate()[0]

    在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則等待調用的程序結束后再返回。

    callback是一個wx.Process變量,如果callback不為None且syn=wx.EXEC_ASYNC,則程序結束后將調用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模塊提供的功能,

電腦資料

python調用shell的方法》(http://www.oriental01.com)。

    4、webbrowser.open(url)

    調用系統(tǒng)缺省瀏覽器打開URL地址,如 webbrowser.open('http://www.jb51.net'),也可以利用

    webbrowser.open('h:\python.zip')來執(zhí)行程序。這樣可以不必區(qū)分是文件名還是URL,不知道在Linux下是否可行。

    以上在Windows2000,Python2.4a1,wxPython 2.5.1運行。

    modify:還有一種方式:subprocess.call(*args, **kwargs)

   

您可能感興趣的文章:

php使用exec shell命令注入的方法講解

Android執(zhí)行shell命令詳解

解析如何在C語言中調用shell命令的實現(xiàn)方法

神奇的shell命令行輸入與輸出功能介紹

用shell命令讀取與輸出數(shù)據的代碼

linux shell命令執(zhí)行順序的控制方法

合并一個文件夾下多個文件內容的單行shell命令

linux shell命令的常用快捷鍵

python和shell變量互相傳遞的幾種方法

    QQ空間 搜狐微博 人人網 開心網 百度搜藏更多

    Tags:shell命令

    復制鏈接收藏本文打印本文關閉本文返回首頁

    上一篇:python和shell變量互相傳遞的幾種方法

    下一篇:windows下wxPython開發(fā)環(huán)境安裝與配置方法

   

相關文章

2012-05-05ssh批量登錄并執(zhí)行命令的python實現(xiàn)代碼

2013-11-11haskell實現(xiàn)多線程服務器實例代碼

2009-02-02wxpython 學習筆記 第一天

2009-06-06python getopt 參數(shù)處理小示例

2014-04-04使用python解析xml成對應的html示例分享

2014-06-06python網絡編程學習筆記(三):socket網絡服務器

2014-04-04python使用ctypes模塊調用windowsapi獲取系統(tǒng)版本示例

2014-04-04python生成隨機驗證碼(中文驗證碼)示例

2014-04-04Python 時間操作例子和時間格式化參數(shù)小結

2014-01-01python回調函數(shù)的使用方法

   

文章評論

   

最 近 更 新

   

python實現(xiàn)ftp客戶端示例分享

python 實現(xiàn)插入排序算法

Python中文編碼那些事

讓python json encode datetime類型

Python Trie樹實現(xiàn)字典排序

python列表與元組詳解實例

二種python發(fā)送郵件實例講解(python發(fā)郵件

python去掉字符串中重復字符的方法

python標準日志模塊logging的使用方法

python翻譯軟件實現(xiàn)代碼(使用google api完

   

熱 點 排 行

   

Python入門教程 超詳細1小時學會

python 中文亂碼問題深入分析

比較詳細Python正則表達式操作指

Python字符串的encode與decode研

Python open讀寫文件實現(xiàn)腳本

Python enumerate遍歷數(shù)組示例應

Python 深入理解yield

Python+Django在windows下的開發(fā)

python 文件和路徑操作函數(shù)小結

python 字符串split的用法分享

最新文章