【发布时间】:2012-07-15 12:06:03
【问题描述】:
argparse 中是否有任何方法可以解析 [+-]a,b,c,d 之类的标志?
foo.py +s -b
应该将 True 存储在 s 的 dest 中,并将 False 存储在 b 的 dest 中,就像 Windows attrib 或 Linux chmod 所做的那样。
目前,我使用 2 个单独的参数 +s 和 -s 分别与 store_true 和 store_false。但它创建了一个丑陋的帮助,它列出了每个标志两次 (+a & -a)
另一种解决方法是使用正则表达式手动解析扩展的 arg(不知何故,这似乎更容易并使用自定义描述,但是在这样做之前我只是想看看是否有任何使用我可以使用 argparse 本身执行相同的操作。
【问题讨论】: