此错误严格按照examples found on the docs进行。而且,您无法在任何地方找到任何有关它的说明,无论是that long long docs page,google还是stackoverflow。另外,阅读optparse.py
会显示OptionGroup在那里,这会增加混乱。
Python 2.6.1 (r261:67515, Feb 11 2010, 00:51:29)
>>> from optparse import OptionParser
>>> outputGroup = OptionGroup(parser, 'Output handling')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'OptionGroup' is not defined
我敢打赌,有人发现我的错误不到1分钟。 :)
是的,这意味着我知道答案,但是因为我花了这么长时间才发现我想在这里“记录”它。
答案 0 :(得分:6)
这可能是another example的原因better to import modules than functions from modules。
OptionGroup
在模块optparse
中定义。
命令
from optparse import OptionParser
将OptionParser
放入全局命名空间,但完全忽略OptionGroup
。
要修复代码,请导入optparse
模块,然后访问其部分,如下所示:
import optparse
parser = optparse.OptionParser()
outputGroup = optparse.OptionGroup(parser, 'Output handling')