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 cookielib 登录人人网的实现代码
Dec 19 Python
python使用PyGame绘制图像并保存为图片文件的方法
Apr 24 Python
python中string模块各属性以及函数的用法介绍
May 30 Python
python爬取网易云音乐评论
Nov 16 Python
Python实现的在特定目录下导入模块功能分析
Feb 11 Python
Python实现二叉树的常见遍历操作总结【7种方法】
Mar 06 Python
利用python list完成最简单的DB连接池方法
Aug 09 Python
python入门之基础语法学习笔记
Feb 08 Python
Python流程控制语句的深入讲解
Jun 15 Python
PyQt5结合matplotlib绘图的实现示例
Sep 15 Python
Python通过getattr函数获取对象的属性值
Oct 16 Python
Python的logging模块基本用法
Dec 24 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 获取远程网页内容的函数
2009/09/08 PHP
PHP备份数据库生成SQL文件并下载的函数代码
2012/02/05 PHP
php实现监控varnish缓存服务器的状态
2014/12/30 PHP
用roll.js实现的图片自动滚动+鼠标触动的特效
2007/03/18 Javascript
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
用Juery网页选项卡实现代码
2011/06/13 Javascript
js判断运行jsp页面的浏览器类型以及版本示例
2013/10/30 Javascript
js交换排序 冒泡排序算法(Javascript版)
2014/10/04 Javascript
JavaScript动态创建link标签到head里的方法
2014/12/22 Javascript
jQuery实现简洁的轮播图效果实例
2016/09/07 Javascript
Angular 常用指令实例总结整理
2016/12/13 Javascript
Bootstrap CSS组件之分页(pagination)和翻页(pager)
2016/12/17 Javascript
基于js 字符串indexof与search方法的区别(详解)
2017/12/04 Javascript
详解Angular系列之变化检测(Change Detection)
2018/02/26 Javascript
JavaScript中arguments和this对象用法分析
2018/08/08 Javascript
JQuery事件委托原理与用法实例分析
2019/05/13 jQuery
Layui 导航默认展开和菜单栏选中高亮设置的方法
2019/09/04 Javascript
vue实现表单录入小案例
2019/09/27 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
[01:20]DOTA2 2017国际邀请赛冠军之路无止竞
2017/06/19 DOTA
一个小示例告诉你Python语言的优雅之处
2014/07/04 Python
python如何通过twisted实现数据库异步插入
2018/03/20 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)
2020/01/18 Python
如何使用pandas读取txt文件中指定的列(有无标题)
2020/03/05 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
python 瀑布线指标编写实例
2020/06/03 Python
猫途鹰英国网站:TripAdvisor英国(旅游社区和旅游评论)
2016/08/30 全球购物
Currentbody美国/加拿大:美容仪专家
2020/03/09 全球购物
学生会竞聘书范文
2014/03/31 职场文书
文明礼仪演讲稿
2014/05/12 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
幼儿教师辞职信范文
2015/03/02 职场文书
舞蹈社团活动总结
2015/05/07 职场文书
导游词之五台山
2019/10/11 职场文书
pycharm2021激活码使用教程(永久激活亲测可用)
2021/03/30 Python