Python实现处理管道的方法


Posted in Python onJune 04, 2015

本文实例讲述了Python实现处理管道的方法。分享给大家供大家参考。具体分析如下:

Linux下的可以施展的最炫的魔法是什么?相信不同的人说法不同,但是如果没有管道,那么恐怕在绚丽魔法的都会失去魔力

这里就介绍怎么使用Python来处理这些管道

管道调用子程序

我们想在程序中使用一个子程序,但是需要动态的传递参数(这里说的动态,是指根据上次子程序输入的结果来决定这次输入什么),怎么办呢,不用慌,有subprocess!

下文我先介绍一个例子代码,以及他的输出结果!

#!/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()

他的输出结果是:

line0
line1
line2
line3
line4
line5
line6
line7
line8
line9

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
详解Python的Django框架中的templates设置
May 11 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
Jun 16 Python
Python中的字符串替换操作示例
Jun 27 Python
flask中主动抛出异常及统一异常处理代码示例
Jan 18 Python
初探利用Python进行图文识别(OCR)
Feb 26 Python
python中几种自动微分库解析
Aug 29 Python
Python列表切片常用操作实例解析
Mar 10 Python
在服务器上安装python3.8.2环境的教程详解
Apr 26 Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
Jun 02 Python
python能否java成为主流语言吗
Jun 22 Python
Idea安装python显示无SDK问题解决方案
Aug 12 Python
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
Apr 14 Python
python定时器(Timer)用法简单实例
Jun 04 #Python
python避免死锁方法实例分析
Jun 04 #Python
python中字符串前面加r的作用
Jun 04 #Python
python生成器generator用法实例分析
Jun 04 #Python
python函数装饰器用法实例详解
Jun 04 #Python
Python中函数的参数定义和可变参数用法实例分析
Jun 04 #Python
python类装饰器用法实例
Jun 04 #Python
You might like
PHP防止跨域提交表单
2013/11/01 PHP
PHP微框架Dispatch简介
2014/06/12 PHP
Laravel 5框架学习之Eloquent 关系
2015/04/09 PHP
Apache启动报错No space left on device: AH00023该怎么解决
2015/10/16 PHP
PHP中list()函数用法实例简析
2016/01/08 PHP
我见过最全的个人js加解密功能页面
2007/12/12 Javascript
js修改table中Td的值(定义td的双击事件)
2013/01/10 Javascript
jQuery中inArray方法注意事项分析
2016/01/25 Javascript
Javascript的表单验证-揭开正则表达式的面纱
2016/03/18 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
基于jQuery实现一个marquee无缝滚动的插件
2017/03/09 Javascript
详解如何在vue中使用sass
2017/06/21 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
js使用highlight.js高亮你的代码
2017/08/18 Javascript
详解Vue2的diff算法
2021/01/06 Vue.js
[01:18]一目了然!DOTA2DotA快捷操作对比第一弹
2014/07/01 DOTA
[01:00:35]2018DOTA2亚洲邀请赛3月30日B组 EffcetVSMineski
2018/03/31 DOTA
Python中的hypot()方法使用简介
2015/05/18 Python
Linux系统上Nginx+Python的web.py与Django框架环境
2015/12/25 Python
python实现读取并显示图片的两种方法
2017/01/13 Python
Python使用Scrapy保存控制台信息到文本解析
2017/12/27 Python
基于python绘制科赫雪花
2018/06/22 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
如何使用Python破解ZIP或RAR压缩文件密码
2020/01/09 Python
python网络编程socket实现服务端、客户端操作详解
2020/03/24 Python
CSS3 实现图形下落动画效果
2020/11/13 HTML / CSS
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
Expedia西班牙:预订酒店、机票、旅行和廉价度假套餐
2019/04/10 全球购物
联想英国官网:Lenovo英国
2019/07/17 全球购物
公司企业表扬信
2014/01/11 职场文书
山东省召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
2014大学班主任工作总结
2014/11/08 职场文书
捐款仪式主持词
2015/07/04 职场文书
观看禁毒宣传片后的感想
2015/08/11 职场文书
2016幼儿园教师年度考核评语
2015/12/01 职场文书
MySQL 可扩展设计的基本原则
2021/05/14 MySQL