14.3.4.5 コールバックの例 2: オプションの順番をチェックする

もう少し面白みのある例を示します: この例では、"-b" を発見して、その後で "-a" がコマンドライン中に現れた場合にはエラーになります。

def check_order(option, opt_str, value, parser):
    if parser.values.b:
        raise OptionValueError("can't use -a after -b")
    parser.values.a = 1
[...]
parser.add_option("-a", action="callback", callback=check_order)
parser.add_option("-b", action="store_true", dest="b")

ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。