我正在写一个程序,我希望有这样的参数:
--[no-]foo Do (or do not) foo. Default is do.
Run Code Online (Sandbox Code Playgroud)
有没有办法让argparse为我这样做?
我正在使用Python 3.2
在argparse中有什么方法可以解析标志[+-]a,b,c,d吗?
foo.py +s -b
Run Code Online (Sandbox Code Playgroud)
应存放在真正dest的s和虚假dest的b,很像由Windows完成attrib或Linux的chmod.
目前,我用2个独立的参数+s,并-s用store_true和store_false,分别.但它创造了一个丑陋的帮助,它列出每个标志两次(+ a&-a)
另一种解决方法是使用正则表达式手动解析扩展的arg(这在某种程度上似乎更容易并且使用自定义描述,但在此之前我只想环顾四周是否有任何使用argparse本身可以执行相同操作的东西.