<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">Il giorno 12 luglio 2017 09:45, Massimiliano della Rovere <span dir="ltr"><<a href="mailto:massimiliano.dellarovere@gmail.com" target="_blank">massimiliano.dellarovere@gmail.com</a>></span> ha scritto:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><br><div class="gmail_quote"><span class=""><div dir="ltr">Il giorno mar 11 lug 2017 alle ore 15:12 Marco Beri <<a href="mailto:marcoberi@gmail.com" target="_blank">marcoberi@gmail.com</a>> ha scritto:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br></div></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Ma a che pro avere nell'iterabile due classi di eccezioni, una che dipende dall'altra? Alla fine non ti basta quella più generica? Cosa mi sfugge?</div><div><br></div><div><br></div><div>Piuttosto è possibile fare questo:</div><div><br></div><div>try:<br>    qualcosa()<br></div><div><div>except KeyError as exc:<br>    ommamma1()<br></div></div><div><div>except KeyError as exc:<br>    ommamma2()<br></div></div><div><br></div><div><br></div></div></div></div></blockquote></span><div>Supponi di avere una libreria che su un metodo può sollevare differenti eccezioni diverse e per entrambe devi effettuare la stessa azione. Invece di sciorinare più blocchi "except:" con lo stesso codice, le accorpi.</div><div><br></div><div>Relativamente all'usare quella più generica, potrebbe essere troppo generica e ti fa gestire eccezioni che non vorresti prendere.</div><div>Esempio: se devi trappare IndexError e KeyError, ok puoi usare LookupError; ma se vuoi IndexError e TypeError, il parente più prossimo ad entrambe è "Exception" generica, ma non vuoi usarla altrimenti l'except "assorbe" tutte le eccezioni.</div></div></div><br></blockquote></div>Penso che la domanda fosse diversa, cioè gestire Eccezioni genitore e figli nello stesso blocco. Se hai Error1 ed Error2 con Error1 genitore di Error2 e già gestisci nell'iterable Error1, non serve aggiungerci anche Error2. <br></div><div class="gmail_extra"><br></div><div class="gmail_extra">saluti,<br></div><div class="gmail_extra">Gianluca<br></div></div>