欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實現(xiàn)處理管道的方法

 更新時間:2015年06月04日 14:59:16   作者:amibaren  
這篇文章主要介紹了Python實現(xiàn)處理管道的方法,實例分析了Python實現(xiàn)管道調(diào)用子程序的技巧,需要的朋友可以參考下

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

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

這里就介紹怎么使用Python來處理這些管道

管道調(diào)用子程序

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

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

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

他的輸出結(jié)果是:

line0
line1
line2
line3
line4
line5
line6
line7
line8
line9

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

相關(guān)文章

最新評論