为了账号安全,请及时绑定邮箱和手机立即绑定

Python-如何将字符串传递到子进程.Popen(使用stdin参数)?

Python-如何将字符串传递到子进程.Popen(使用stdin参数)?

守候你守候我 2019-06-19 10:57:57
Python-如何将字符串传递到子进程.Popen(使用stdin参数)?如果我这样做的话:import subprocessfrom cStringIO import StringIOsubprocess.Popen(['grep','f'], stdout=subprocess.PIPE,stdin=StringIO('one\ntwo\nthree\nfour\nfive\nsix\n')).communicate()[0]我得到:Traceback (most recent call last):   File "<stdin>", line 1, in ?   File "/build/toolchain/mac32/python-2.4.3/lib/python2.4/subprocess.py", line 533, in __init__    (p2cread, p2cwrite,   File "/build/toolchain/mac32/python-2.4.3/lib/python2.4/subprocess.py", line 830, in _get_handles     p2cread = stdin.fileno()AttributeError: 'cStringIO.StringI' object has no attribute 'fileno'显然,cStringIO.StringIO对象与文件鸭子的作用不够接近,无法适应子进程。我该怎么处理这件事?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 660 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信