Comparing Python Command-Line Parsing Libraries – Argparse, Docopt, and Click
realpython.com
realpython.com
With docopt I think I have to basically re-implement a templating system in order to build the help text, and this system has to be aware of the parse rules. I can do that, but it seems easier to just tell argparse the list of options directly.
Click definitely looks interesting, and a quick read of the documentation suggests it might 'fit my brain' better than argparse. For example, I don't like how argparse supports automatic expansion of long arguments because I think it leads to forward compatibility problems. That support can be disabled in recent versions of Python, but I agree with click that it simply shouldn't be supported, except through an explicit alias list.
I particularly liked seeing the final section on packaging your CLI scripts.