Pour le coup de la liste en paramètre, on préfère en effet initialiser à une valeur comme None, puis tester if servers is None: servers = list() dans le cœur de la fonction.
On pourrait aussi dire que dans le parser, "store" est l'action par défaut (donc peut-être supprimé), et qu'une option comme --mon-option a automatiquement un dest qui vaut mon_option. Je m'appuie toujours dessus pour ne pas surcharger la lecture des parsers. Le seul cas où je définis dest explicitement, c'est lorsque j'utilise action='store_false', par exemple:
[^] # Re: Petite revue de code...
Posté par vermillon . En réponse au journal Mon premier projet open source. Évalué à 3.
Pour le coup de la liste en paramètre, on préfère en effet initialiser à une valeur comme
None, puis testerif servers is None: servers = list()dans le cœur de la fonction.On pourrait aussi dire que dans le parser, "store" est l'action par défaut (donc peut-être supprimé), et qu'une option comme
--mon-optiona automatiquement undestqui vaut mon_option. Je m'appuie toujours dessus pour ne pas surcharger la lecture des parsers. Le seul cas où je définis dest explicitement, c'est lorsque j'utiliseaction='store_false', par exemple:Ce qui permet d'avoir ensuite dans le code
if args.retry(et pas un horribleif not args.no_retry) tout en ayant une valeur par défaut à True.