Dlaczego powinienem używać go zamiast optparse? Czy ich nowe funkcje, o których powinienem wiedzieć, to ?
@ odpowiedź Mikołaja Obejmuje to również, jak sądzę, ale nie bardziej „meta” Pytanie zacząć:
Dlaczego kolejny wiersza polecenia parsowania moduł został stworzony?
To numer jeden dylemat, gdy dowolny przydatny moduł jest dodawany do biblioteki standardowej: co zrobić, gdy znacznie lepiej, ale wstecznie kompatybilne, sposobem zapewnienia tego samego rodzaju funkcjonalności wyłania?
Albo trzymasz się starego i co prawda przerośniętego sposobu (zazwyczaj gdy mówimy o skomplikowanych paczkach: asyncore vs twisted, tkinter vs wx lub Qt, ...) lub kończysz na wielu niekompatybilnych sposobach zrobienia to samo (parsery XML, IMHO, są jeszcze lepszym tego przykładem niż parsery z wiersza poleceń - ale pakiet email
w porównaniu z niezliczonymi dawnymi sposobami radzenia sobie z podobnymi problemami też nie jest zbyt daleko ;-).
Być może w dokumentach pojawiają się groźne pomruki na temat starych sposobów, które są "przestarzałe", ale (tak długo, jak zachowujecie kompatybilność wsteczną), nie można ich naprawdę zabrać bez zatrzymywania dużych, ważnych aplikacji z przeniesienia do nowsze wydania Pythona.
(Dylemat numer dwa, niezwiązany bezpośrednio z twoim pytaniem, jest streszczony w starym powiedzeniu "standardowa biblioteka jest tam, gdzie dobre pakiety idą na śmierć" ... z wydaniami co półtora roku, pakiety, które nie są dostępne 't bardzo, bardzo stabilny, nie potrzebujący wydania częściej niż to, może rzeczywiście cierpieć znacznie, będąc "zamrożony" w standardowej bibliotece ... ale, to naprawdę inny problem).
A może nie używać, ponieważ od 2012 r. Python ma łatwy, wydajny i naprawdę * fajny * moduł do analizowania argumentów o nazwie docopt. http://docopt.org – ndemou
spróbuj kliknąć to jest wrapper wokół optparse. –