#1344: document that you need to open std{in,out,err} with PIPE if you want
communicate() to work as described.
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 @@
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.