From 439f250c00d9cecb9559ca33e412a376ed010998 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Sat, 24 Nov 2007 11:31:46 +0000 Subject: #1344: document that you need to open std{in,out,err} with PIPE if you want communicate() to work as described. --- Doc/library/subprocess.rst | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst index 64bc70b..17242c4 100644 --- a/Doc/library/subprocess.rst +++ b/Doc/library/subprocess.rst @@ -195,7 +195,12 @@ Instances of the :class:`Popen` class have the following methods: communicate() returns a tuple (stdout, stderr). - .. note:: + Note that if you want to send data to the process's stdin, you need to create + the Popen object with ``stdin=PIPE``. Similarly, to get anything other than + ``None`` in the result tuple, you need to give ``stdout=PIPE`` and/or + ``stderr=PIPE`` too. + +.. note:: The data read is buffered in memory, so do not use this method if the data size is large or unlimited. -- cgit v0.12