#8198: the Helper class should not save the stdin and stdout objects
at import time, rather by default use the current streams like the other APIs that output help.
This commit is contained in:
parent
bb1901529d
commit
78aa396415
16
Lib/pydoc.py
16
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."""
|
||||
|
|
Loading…
Reference in New Issue