如何在脚本作为模块加载时获取docopt default args

时间:2015-08-07 23:29:51

标签: python docopt

我正在开展一个有多位作者的大项目,所以我试图避免做太多改变。我有一个脚本使用docopt传递选项,并将其中一些设置为默认值。

我通过将它作为模块导入来加载该脚本中的一个类,但是当我调用一个方法时,它失败了,因为它期望一个默认选项由docopt设置,其中有很多。有没有办法从docopt中提取默认选项?

1 个答案:

答案 0 :(得分:0)

我意识到,当我差不多写完这篇文章时,有一个相当简单的解决方案。

import script
from script import SomeClass

default_args = docopt(script.__doc__, ['--required-opt', 'dummy-value'])
args = {'foo': 'bar'}
default_args.update(args)
SomeClass.some_classmethod(default_args)