Argparse-Einschränkung bei der Schachtelung von sich gegenseitig ausschließenden Gruppen: Ein frustrierendes Rätsel

2025-06-14

Das Python-Modul argparse bietet zwar praktische Funktionen zum Verarbeiten von Befehlszeilenargumenten, einschließlich sich gegenseitig ausschließender Gruppen, weist aber eine frustrierende Einschränkung beim Verschachteln auf. Betrachten Sie ein Programm mit mehreren Timeout-Einstellungen, bei dem Benutzer entweder einzelne Timeouts anpassen oder sie vollständig deaktivieren können. Argparse unterstützt nicht die Verschachtelung einer "no-timeout"-Option in einer Gruppe einzelner Timeout-Optionen, was die Konfiguration umständlich macht. Während Sie eine sich gegenseitig ausschließende Gruppe in einer regulären Gruppe verschachteln können, ist das Gegenteil nicht unterstützt, und die offizielle Dokumentation gibt diese Einschränkung explizit an. Dies zwingt Entwickler dazu, manuell zu überprüfen, ob bestimmte Optionen verwendet wurden, was Komplexität hinzufügt.

Entwicklung