• [^] # Re: Pas convaincu

    Posté par . En réponse au journal Tous les parsers JSON sont mauvais. Évalué à 4.

    La documentation Python de ce module indique :

    JSONDecodeError will be raised if the given JSON document is not valid.

    Or, le document est valide, lancer cette exception serait donc techniquement ne pas respecter l'interface promise au développeur. Ceci étant dit, oui, la possibilité d'une RecursionError devrait être au moins évoquée dans la doc.

    Il reste que dans la plupart des langages interprétés, il y a certaines erreurs qui peuvent presque toujours se produire. En Python, les MemoryError en sont de bons exemples. Même si dans 99.9% des cas, cette erreur n'est lancée que si l'utilisateur fait quelque chose d'incorrect, elle peut techniquement se produire dans n'importe quelle opération.

    S'il est critique d'attraper toutes les exceptions, alors le modèle except ExceptionPrecise (pour les cas prévus) suivi de except (tout court), suivi éventuellement de else et finally est probablement le meilleur à adopter. Mais dans tous les cas, ce genre d'exceptions "système" peuvent toujours jouer des tours et je ne pense pas que ce soit le rôle de chaque module de le considérer.