参考:
help
として設定したテキストに%が混じっているのが原因です.perentと書けばOK
import argparse parser = argparse.ArgumentParser() # エラーのもと parser.add_argument("foo", help="foo % increases the yielding amount") # これはセーフ # parser.add_argument("foo", help="foo percent increases the yielding amount")
として,python foo.py -h
するとTypeError: %o format: a number is required, not dict
とエラーするはずです.
実際,argparseは内部で%フォーマットを使っているらしく(なぜstr.format
しないんだろう),それがエラーのもとになっているようです.