我有一个像这样的课程
import sys
class ACommand(object):
@classmethod
def cmd(cls, argv=sys.argv):
" Executes the command. "
pass
使用Sphinx对其进行记录时,会将sys.argv
扩展为当前值,从而产生类似以下签名的内容
classmethod cmd(argv=['/path/to/sphinx-build', '-b', 'html', '-d', '_build/doctrees', '.', '_build/html'])
我觉得在文档中使用sys.argv
比扩展更方便。我怎样才能做到这一点?
答案 0 :(得分:0)
您可以创建代理对象,例如
class ListProxy(object):
def __init__(self, l):
self.list = l
def __getitem__(self, i):
return self.list[i]
然后
@classmethod
def cmd(cls, argv=ListProxy(sys.argv)):
" Executes the command. "
或者,更容易,你可以做到
@classmethod
def cmd(cls, argv=None):
" Executes the command. "
if argv is None:
argv = sys.argv