pydoc使用文件句柄参数生成帮助文本

时间:2011-09-14 11:13:00

标签: python

我有一个带有以下参数列表的函数:

def print(*line, sep=' ', end='\n', file=sys.stdout, default = 'full'):

不幸的是,模块的pydoc帮助文本显示如下:

FUNCTIONS
print(*line, sep=' ', end='\n', file=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='cp850'>, default='full')

如何让pydoc将文件参数设为file=sys.stdout而不是显示对象的血腥细节?

顺便说一下,

Python 3.2。

1 个答案:

答案 0 :(得分:1)

简易解决方案:

def print(*line, sep=' ', end='\n', file=None, default = 'full'):
    '''If file is None, defaults to sys.stdout.'''

    if file is None:
        file = sys.stdout

(但请考虑不使用printfile作为标识符。print esp。将永远打破Python 2兼容性。)