diff options
-rwxr-xr-x | Lib/pydoc.py | 16 | ||||
-rw-r--r-- | Misc/NEWS | 3 |
2 files changed, 15 insertions, 4 deletions
diff --git a/Lib/pydoc.py b/Lib/pydoc.py index 95eb318..4f22887 100755 --- a/Lib/pydoc.py +++ b/Lib/pydoc.py @@ -1695,9 +1695,17 @@ class Helper: 'CONTEXTMANAGERS': ('context-managers', 'with'), } - def __init__(self, input, output): - self.input = input - self.output = output + def __init__(self, input=None, output=None): + self._input = input + self._output = output + + @property + def input(self): + return self._input or sys.stdin + + @property + def output(self): + return self._output or sys.stdout def __repr__(self): if inspect.stack()[1][3] == '?': @@ -1874,7 +1882,7 @@ Enter any module name to get more help. Or, type "modules spam" to search for modules whose descriptions contain the word "spam". ''') -help = Helper(sys.stdin, sys.stdout) +help = Helper() class Scanner: """A generic tree iterator.""" @@ -15,6 +15,9 @@ Core and Builtins Library ------- +- Issue #8198: In pydoc, output all help text to the correct stream + when sys.stdout is reassigned. + - Issue #7909: Do not touch paths with the special prefixes ``\\.\`` or ``\\?\`` in ntpath.normpath(). |