• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦>學習電腦>電腦安全>系統安全>

    Python怎么調用系統命令

    時間: 黎正888 分享

      Python經常被稱作“膠水語言”,因為它能夠輕易地操作其他程序,輕易地包裝使用其他語言編寫的庫。在Python/wxPython環境下,執行外部命令或者說在Python程序中啟動另一個程序的方法,下面就讓學習啦小編教大家Python怎么調用系統命令。

      Python調用系統命令的方法

      1、os.system(command)

      os.system()函數用來運行shell命令。此命令可以方便的調用或執行其他腳本和命令

      #打開指定的文件 >>>os.system('notepad *.txt')

      這個調用相當直接,且是同步進行的,程序需要阻塞并等待返回。返回值是依賴于系統的,直接返回系統的調用返回值,所以windows和Linux是不一樣的。

      2、wx.Execute(command, syn=wx.EXEC_ASYNC, callback=None)

      若置syn為wx.EXEC_ASYNC則wx.Excute函數立即返回,若syn=wx.EXEC_SYNC則等待調用的程序結束后再返回。

      callback是一個wx.Process變量,如果callback不為None且syn=wx.EXEC_ASYNC,則程序結束后將調用wx.Process.OnTerminate()函數。

      os.system()和wx.Execute()都利用系統的shell,執行時會出現shell窗口。如在Windows下會彈出控制臺窗口,不美觀。下面的兩種方法則沒有這個缺點。

      3、import subprocess

      subprocess.Popen(args, bufsize=0, executable=None, stdin=None, stdout=None, stderr=None, preexec_fn=None, close_fds=False, shell=False, cwd=None, env=None, universal_newlines=False, startupinfo=None, creationflags=0)

      subprocess.call(["cmd", "arg1", "arg2"],shell=True)

      Note:

      1. 參數args可以是字符串或者序列類型(如:list,元組),用于指定進程的可執行文件及其參數。

      2. 如果command(args)不是一個可執行文件,shell=True不可省。否則如copy\del命令可能會出現FileNotFoundError錯誤。

      3. Popen.wait()可以得到命令的返回值

      4. 如果是windows下的命令,則文件路徑如果用的是linux格式會報錯:The syntax of the command is incorrect.

      舉個栗子

      if subprocess.Popen('dir /b %s' % filename, shell=True).wait() == 0

      如果filename字符串中有空格,則會出現錯誤:File Not Found錯誤

      可以通過下面["cmd", "arg1", "arg2"]兩種方式

      if subprocess.Popen(["dir", "/b", filename], shell=True).wait() == 0

      if subprocess.call(["dir", "/b", filename], shell=True) == 0

      [Python中subprocess學習]

      4、webbrowser.open(url)

      前面三個方法只能用于執行程序和打開文件,不能處理URL,打開URL地址可用webbrowser模塊提供的功能。

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

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

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

      [python調用shell的方法]

      5. os.popen(command[,mode[,bufsize]])

      舉個栗子

      >>> import os

      >>> p = os.popen("dir c:", 'r')

      >>> p.read()

      bla bla... <這里是dir正確的輸出>

      >>> p.close()

      >>> p = os.popen("dir d:", 'r') # 電腦中沒有D盤

      >>> p.read()

      ''

      >>> p.close()

      1

      >>>

      可以看出,popen方法通過p.read()獲取終端輸出,而且popen需要關閉close().當執行成功時,close()不返回任何值,失敗時,close()返回系統返回值. 可見它獲取返回值的方式和os.system不同。

      6. 使用commands模塊

      舉個栗子

      >>> import commands

      >>> commands.getstatusoutput('ls /bin/ls')

      (0, '/bin/ls')

      >>> commands.getstatusoutput('cat /bin/junk')

      (256, 'cat: /bin/junk: No such file or directory')

      >>> commands.getstatusoutput('/bin/junk')

      (256, 'sh: /bin/junk: not found')

      >>> commands.getoutput('ls /bin/ls')

      '/bin/ls'

      >>> commands.getstatus('/bin/ls')

      '-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls'

      根據你需要的不同,commands模塊有三個方法可供選擇。getstatusoutput, getoutput, getstatus。

    Python怎么調用系統命令相關文章

    1.Linux系統常用命令合集

    2.unix和linux密碼丟失怎么辦

    3.android重要知識點總結

    4.python版本低怎么升級

    5.Linux命令行中網速怎么測試

    Python怎么調用系統命令

    Python經常被稱作膠水語言,因為它能夠輕易地操作其他程序,輕易地包裝使用其他語言編寫的庫。在Python/wxPython環境下,執行外部命令或者說在Python程序中啟動另一個程序的方法,下面就讓學習啦小編教大家Python怎么調用系統命令。 Pyt
    推薦度:
    點擊下載文檔文檔為doc格式

    精選文章

    • Python的系統命令有哪些
      Python的系統命令有哪些

      ython具有易讀、易學、易維護、可移植性、跨平臺等特點而深受歡迎,并在最近幾年迅速崛起。下面就讓學習啦小編教大家Python的系統命令,希望對大家有

    • 怎么取消shutdown的系統重啟命令
      怎么取消shutdown的系統重啟命令

      shutdown命令很容易搜到,但是重啟命令shutdown的取消卻有時不靈,怎么辦呢?下面就讓學習啦小編教大家取消shutdown的系統重啟命令。 取消shutdown系統重啟命令

    • 蘋果系統怎么打開命令行
      蘋果系統怎么打開命令行

      蘋果系統同樣擁有命令執行程序,下面就讓學習啦小編教大家如何打開蘋果系統的命令性。 蘋果系統命令行的打開方法一 我們這里先介紹通過圖形方式打

    • WIN7怎么打開系統命令提示符
      WIN7怎么打開系統命令提示符

      經常使用Windows系統,就會發現通過Windows的窗口界面并不是能完成所有操作,有時還必須使用命令提示符,在其中執行相應的命令才能完成相應的操作。那

    1753473 主站蜘蛛池模板: 天堂8在线天堂资源bt| 色费女人18毛片a级毛片视频| 象人族女人能吃得消吗| 精品一久久香蕉国产线看观看下| 欺凌小故事动图gif邪恶| 日韩大片观看网址| 小小在线观看视频www软件| 国产精品欧美一区二区三区| 国产亚洲美女精品久久久久| 亚洲视频在线不卡| 久久精品无码一区二区三区免费| 一本色道久久88亚洲精品综合| 3d动漫精品啪啪一区二区免费| 草莓视频在线免费| 污视频网站免费观看| 日本特黄高清免费大片爽| 天堂8在线天堂资源bt| 国产在线观看免费完整版中文版| 低头看我是怎么c哭你的细节| 久草视频福利资源站| a在线观看欧美在线观看| 麻豆国产人免费人成免费视频| 男女高潮又爽又黄又无遮挡| 日韩精品无码一本二本三本| 大陆一级毛片免费视频观看| 国产偷亚洲偷欧美偷精品| 亚洲欧美成人在线| 中文字幕日韩人妻不卡一区| 777丰满影院| 田中瞳中文字幕久久精品| 日本边添边摸边做边爱的网站 | 偷拍激情视频一区二区三区| 九九久久精品国产AV片国产| 97色偷偷色噜噜狠狠爱网站97 | 萌白酱在线视频| 欧美国产日产片| 在线观看国产精品日韩AV| 四虎影视在线影院在线观看| 久久精品国产久精国产| 香蕉视频a级片| 波多野结衣女教师|