Migrieren von optparse-Code zu argparse

Das Modul argparse bietet mehrere High-Level-Funktionen, die das Modul optparse nicht nativ bereitstellt, darunter

  • Behandlung von Positionsargumenten.

  • Unterstützung von Unterbefehlen.

  • Zulassen alternativer Optionspräfixe wie + und /.

  • Behandlung von Argumenten im Stil Null-oder-mehr und Eins-oder-mehr.

  • Erzeugung informativerer Nutzungsnachrichten.

  • Bereitstellung einer wesentlich einfacheren Schnittstelle für benutzerdefinierte type und action.

Ursprünglich versuchte das Modul argparse, die Kompatibilität mit optparse aufrechtzuerhalten. Aufgrund der grundlegenden Designunterschiede zwischen der Unterstützung der deklarativen Verarbeitung von Kommandozeilenoptionen (während die Verarbeitung von Positionsargumenten der Anwendung überlassen wird) und der Unterstützung von sowohl benannten Optionen als auch Positionsargumenten in der deklarativen Schnittstelle ist die API im Laufe der Zeit von der von optparse abgewichen.

Wie in Auswahl einer Argumenten-Parser-Bibliothek beschrieben, können Anwendungen, die derzeit optparse verwenden und mit dessen Funktionsweise zufrieden sind, optparse einfach weiter verwenden.

Anwendungsentwickler, die eine Migration in Erwägung ziehen, sollten auch die Liste der intrinsischen Verhaltensunterschiede in diesem Abschnitt überprüfen, bevor sie entscheiden, ob eine Migration wünschenswert ist.

Für Anwendungen, die sich für die Migration von optparse zu argparse entscheiden, sollten die folgenden Vorschläge hilfreich sein