萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> Python實現處理管道的方法

Python實現處理管道的方法

   本文實例講述了Python實現處理管道的方法。分享給大家供大家參考。具體分析如下:

  Linux下的可以施展的最炫的魔法是什麼?相信不同的人說法不同,但是如果沒有管道,那麼恐怕在絢麗魔法的都會失去魔力

  這裡就介紹怎麼使用Python來處理這些管道

  管道調用子程序

  我們想在程序中使用一個子程序,但是需要動態的傳遞參數(這裡說的動態,是指根據上次子程序輸入的結果來決定這次輸入什麼),怎麼辦呢,不用慌,有subprocess!

  下文我先介紹一個例子代碼,以及他的輸出結果!

  ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #!/usr/bin/python from subprocess import * # Subprocess management,可以做很多子進程的文件,我們要引入這個文件 p = Popen(["cat", "-n"], bufsize=1024,stdin=PIPE, stdout=PIPE, close_fds=True) # 打開程序第一個參數是一個列表(程序名稱,參數) # 第二個參數是緩沖區大小 # stdin,stdout是設置是否打開這些管道,如果他的值是subprocess.PIPE的話, # 就會打開,同stdin一樣的還有stderr # close_fds設置為true(unix-only)所有的文件描述符除了(0,1,2)在子程序執行前都會關閉 (fin, fout) = (p.stdin, p.stdout) for i in range(10): # 你會懂的^_^ fin.write("line" + str(i)) fin.write('n') fin.flush() print fout.readline()

  他的輸出結果是:

  ?

1 2 3 4 5 6 7 8 9 10 line0 line1 line2 line3 line4 line5 line6 line7 line8 line9

  希望本文所述對大家的Python程序設計有所幫助。

copyright © 萬盛學電腦網 all rights reserved