我在MacOS 10.7.4上使用Python 2.7。这是一个较长的脚本(不是我写的)的一部分,它基本上为PHP提供了一些配置选项,将它们写入PHP的stdin,然后从它的stdout中读取它们。

实际上,我似乎无法从stdout中读取任何内容。下面的脚本应该写'hello world',但是它写的只是一个空行。

任何人都可以提出什么问题?我不太熟悉stdin和stdout在Python或PHP中的工作方式,所以我很难调试它。

php_path = '/usr/bin/php'

args = [php_path]

child = subprocess.Popen(args,

stdin=subprocess.PIPE,

stdout=subprocess.PIPE,

universal_newlines=True)

# Write to PHP stdin

print >>child.stdin, """

print "hello world\n";

# In reality we'd write some configuration options here,

# but in practice we can't even write 'hello world'.

}

?>"""

child.stdin.close()

# Read from PHP stdout

line = True

while line:

print 'line', line

line = child.stdout.readline()

print 'line from stdout', line

if line == "hello world\n":

break

else:

raise Exception, "%s: failed to read options" % (php_path)这个输出是:

line True

line from stdout

line

line from stdout Parse error: parse error in - on line 5

line Parse error: parse error in - on line 5

line from stdout

Traceback (most recent call last):

File "test.py", line 25, in

raise Exception, "%s: failed to read options" % (php_path)

Exception: /usr/bin/php: failed to read options/usr/bin/php绝对有一个PHP。

python stdin和stdout_无法使用Python写入和读取stdin / stdout相关推荐

  1. python将二维列表内容写入和读取.csv文件

    python将列表按行写入至.csv文件 # coding:utf-8 import csv list=[[1,2,3,4],[5,6,7,8],[89,55,66666,5],['张三','李四', ...

  2. 【Python】xlwt和xlrd模块写入和读取.xls版本EXCEL

    我们经常与EXCEL打交道,其实我们可以使用python的相应模块去处理EXCEL文件.2003以前的表格以.xls后缀,用xlwt来写表格,用xlrd来读取表格:搭配xlutils修改表格.2007 ...

  3. python将二维列表内容写入和读取.txt文件

    python读取txt文件至列表当中 首先看txt文件中内容. 上代码: readlines() 方法用于读取所有行(直到结束符 EOF)并返回列表 每一行的内容为列表种的一个元素 我们通过循环将内容 ...

  4. python代码读取外部变量_在Python中从外部文件中写入和读取特定的变量

    我正在写一个程序,在这个程序中,我想在外部文件中读写具有不同数据类型的特定变量. 在尝试了几个不同的模块后,我得到的最接近的方法是使用pickle. Pickle似乎很好,因为它能理解不同的数据类型, ...

  5. python写文件读文件-Python 实例:读写文件

    原标题:Python 实例:读写文件 读写文件是最常见的IO操作.内置了读写文件的函数,用法和的读写文件非常类似.在磁盘上读写文件的功能都是由提供的,现代不允许普通的程序直接操作磁盘,所以,读写文件就 ...

  6. python2没有pip命令_解决Windows下python和pip命令无法使用的问题

    一. python命令找不到 安装python之后经常会出现下面的问题 , python命令找不到,这是因为Windows的环境变量中没有定义python的安装路径 这个时候我们先找到python的安 ...

  7. python使用fpdf创建pdf并写入hello world

    python使用fpdf创建pdf并写入hello world from fpdf import FPDF # 创建pdf并写入hello world文本内容: from fpdf import FP ...

  8. python关闭读写的所有的文件-Python文件操作:文件的打开关闭读取写入

    Python文件操作:文件的打开关闭读取写入 一.文件的打开关闭 Python能以文本和二进制两种方式处理文件,本文主要讨论在Python3中文本文件的操作. 文件操作都分为以下几个步骤: 1.打开文 ...

  9. python如何读写文件-python文件的写入和读取

    1.txt,xls,doc等文件的使用 f=open("filename","w") 打开一个用于写入的文件,要写入内容时使用f.write("内容& ...

最新文章

  1. C++的STL 栈实现 判断栈的出栈顺序是否合理
  2. 信号转换| 如何使用模拟电路完成对方波信号倍频PWM转换?
  3. Halcon_灰度直方图和特征直方图的使用
  4. codevs 1105 过河
  5. AgilePoint模型驱动BPM(业务流程管理)介绍
  6. ogc是一个非营利性组织_非营利组织的软件资源
  7. Android SQLite数据库demo。架构组件Room
  8. oracle oci.dll的作用,ASP.NET bin目录中的Oracle oci.dll无法删除/不起作用
  9. 三层交换及DHCP中继配置
  10. 杭电oj-----叠筐
  11. 一阶线性常微分方程解法
  12. 小程序动态隐藏分享按钮
  13. Burg法求解AR(p)模型参数及MATLAB实现
  14. iOS屏幕旋转及其基本适配方法
  15. 使用zlib对字符串进行压缩
  16. 地图选择区域遮罩层自定义控件实现
  17. 解决小程序自定义底部菜单切换闪动
  18. 游戏设计的作品集到底该怎么做?
  19. TPMS方案 接收器 STM8L篇
  20. 微信小程序:页面布局摘要

热门文章

  1. python sql脚本_使用Python SQL脚本进行数据采样
  2. 浅谈在基本数据包装类中使用'=='与equals的区别
  3. 基于THUCNews数据的BERT分类
  4. eclipse工具中使用Data Source Explorer连接数据库(MySQL)
  5. English Voice of Way Back Into Love
  6. [Codeforces 487E]Tourists
  7. 线性表顺序表模板 纯本人手工创造
  8. android程序逆向工程
  9. ASP.NET MVC程序播放H.264视频
  10. Java_Spring MVC_Servlet