Je veux attraper plusieurs exceptions sur la même ligne, mais avoir des résultats différents en fonction de la déclenchement de l'exception. J'essaie de résumer un ensemble de numéros dans un fichier texte et que vous souhaitez vérifier sur la valeur et les erreurs IO. Le problème que je vais avoir est-ce que cela déclenche toujours sur le premier condition du test IF. p> p>
3 Réponses :
peut utiliser deux sauf cette condition comme celle-ci
Merci. Je savais déjà que, mais je veux que cela se produise dans un sauf, sauf (parce que je suis têtu: p)
Peut utiliser isinstance () code> méthode comme solution @aaron Bentley. Cette solution est bonne pour votre état.
Je recommande d'utiliser une clause par exception. Voici la version "Je suis têtue": voici la version par clause par exception: p> Vous pouvez voir que Dans la première version, vous devez mettre en œuvre la vérification du type, que la manipulation des exceptions de Python vous donnerait autrement vous donner gratuitement. Et la deuxième version est aussi légèrement plus courte. P> p>
except (IOError, ValueError) as e: if instanceof(e, IOError): #...
Pourquoi essayez-vous cela? Vous devrez utiliser un grand
si / elif / elif / elif / code> bloc. Je pense que c'est mieux si vous utilisez
sauf code> à la place.
Essayez / Sauf Code> exécutera le bon code pour la bonne exception,
si / else code> exécutera toujours toutes les conditions.