From cde310d5d22a4a44903cea167f3d855c56e2e494 Mon Sep 17 00:00:00 2001 From: Christophe Nanteuil Date: Sat, 10 Feb 2018 16:26:49 +0100 Subject: [PATCH] Tutorial Errors and Exceptions Review. --- tutorial/errors.po | 187 +++++++++++++++++++++++---------------------- 1 file changed, 95 insertions(+), 92 deletions(-) diff --git a/tutorial/errors.po b/tutorial/errors.po index 5f24930f..855ab45c 100644 --- a/tutorial/errors.po +++ b/tutorial/errors.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-05-27 19:40+0200\n" -"PO-Revision-Date: 2017-05-16 22:24+0200\n" +"PO-Revision-Date: 2018-02-10 15:24+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.11\n" +"X-Generator: Poedit 2.0.2\n" #: ../Doc/tutorial/errors.rst:5 msgid "Errors and Exceptions" @@ -27,10 +27,10 @@ msgid "" "tried out the examples you have probably seen some. There are (at least) " "two distinguishable kinds of errors: *syntax errors* and *exceptions*." msgstr "" -"Jusqu'à maintenant, les messages d'erreurs ont seulement été mentionnés, " -"mais si vous avez essayé les exemples vous avez certainement vu plus que " -"cela. En fait, il y a au moins deux types d'erreurs à distinguer : les " -"*erreurs de syntaxe* et les *exceptions*." +"Jusqu'ici, les messages d'erreurs ont seulement été mentionnés. Mais si vous " +"avez essayé les exemples vous avez certainement vu plus que cela. En fait, " +"il y a au moins deux types d'erreurs à distinguer : les *erreurs de syntaxe* " +"et les *exceptions*." #: ../Doc/tutorial/errors.rst:15 msgid "Syntax Errors" @@ -54,12 +54,12 @@ msgid "" "colon (``':'``) is missing before it. File name and line number are printed " "so you know where to look in case the input came from a script." msgstr "" -"L'analyseur répère la ligne incriminée et affiche une petite 'flèche' " +"L'analyseur indique la ligne incriminée et affiche une petite 'flèche' " "pointant vers le premier endroit de la ligne où l'erreur a été détectée. " "L'erreur est causée (ou, au moins, a été détectée comme telle) par le " "symbole placé *avant* la flèche. Dans cet exemple la flèche est sur la " -"fonction :func:`print` car il manque deux points (``':'``) justeavant. Le " -"nom de fichier et le numéro de ligne sont affichés pour vous permettre de " +"fonction :func:`print` car il manque deux points (``':'``) juste avant. Le " +"nom du fichier et le numéro de ligne sont affichés pour vous permettre de " "localiser facilement l'erreur lorsque le code provient d'un script." #: ../Doc/tutorial/errors.rst:37 @@ -77,8 +77,8 @@ msgid "" msgstr "" "Même si une instruction ou une expression est syntaxiquement correcte, elle " "peut générer une erreur lors de son exécution. Les erreurs détectées durant " -"l'exécution son appelées des *exceptions* et ne sont pas toujours fatales : " -"vous apprendrez bientôt comment les traîter dans vos programmes. La plupart " +"l'exécution sont appelées des *exceptions* et ne sont pas toujours fatales : " +"nous apprendrons bientôt comment les traiter dans vos programmes. La plupart " "des exceptions toutefois ne sont pas prises en charge par les programmes, ce " "qui génère des messages d'erreurs comme celui-ci : ::" @@ -93,12 +93,12 @@ msgid "" "convention). Standard exception names are built-in identifiers (not reserved " "keywords)." msgstr "" -"La dernière ligne du message d'erreur indique la cause de l'erreur. Les " -"exceptions peuvent être de différents types, et ce type est indiqué dans le " +"La dernière ligne du message d'erreur indique ce qui s'est passé. Les " +"exceptions peuvent être de différents types et ce type est indiqué dans le " "message : les types indiqués dans l'exemple sont :exc:`ZeroDivisionError`, :" "exc:`NameError` et :exc:`TypeError`. Le texte affiché comme type de " "l'exception est le nom de l'exception native qui a été déclenchée. Ceci est " -"vrai pour toutes les exceptions natives, mais n'est pas une obligation pour " +"vrai pour toutes les exceptions natives mais n'est pas une obligation pour " "les exceptions définies par l'utilisateur (même si c'est une convention bien " "pratique). Les noms des exceptions standards sont des identifiants natifs " "(pas des mots réservés)." @@ -109,7 +109,7 @@ msgid "" "caused it." msgstr "" "Le reste de la ligne fournit plus de détails en fonction du type de " -"l'exception et de ce qui l'a causé." +"l'exception et de ce qui l'a causée." #: ../Doc/tutorial/errors.rst:69 msgid "" @@ -118,17 +118,18 @@ msgid "" "a stack traceback listing source lines; however, it will not display lines " "read from standard input." msgstr "" -"La partie précédente du message d'erreur montre le contexte dans lequel " -"s'est produite l'exception, sous la forme d'une trace de pile d'exécution. " -"En général, celle-ci contient les lignes du code source ; toutefois, les " -"lignes lues à partir de l'entrée standard ne seront pas affichées." +"La partie précédente dans le message d'erreur indique le contexte dans " +"lequel s'est produite l'exception, sous la forme d'une trace de pile " +"d'exécution. En général, celle-ci contient les lignes du code source ; " +"toutefois, les lignes lues à partir de l'entrée standard ne sont pas " +"affichées." #: ../Doc/tutorial/errors.rst:74 msgid "" ":ref:`bltin-exceptions` lists the built-in exceptions and their meanings." msgstr "" -"Vous trouverez dans :ref:`bltin-exceptions` la liste des exceptions natives " -"et leur signification." +"Vous trouvez la liste des exceptions natives et leur signification dans :ref:" +"`bltin-exceptions`." #: ../Doc/tutorial/errors.rst:80 msgid "Handling Exceptions" @@ -147,29 +148,29 @@ msgstr "" "exceptions. Regardez l'exemple suivant, qui demande une saisie à " "l'utilisateur jusqu'à ce qu'un entier valide ait été entré, mais permet à " "l'utilisateur d'interrompre le programme (en utilisant :kbd:`Control-C` ou " -"un autre raccourci que le système supporte) ; notez qu'une interruption " +"un autre raccourci que le système accepte) ; notez qu'une interruption " "générée par l'utilisateur est signalée en levant l'exception :exc:" "`KeyboardInterrupt`." #: ../Doc/tutorial/errors.rst:96 msgid "The :keyword:`try` statement works as follows." -msgstr "L'instruction :keyword:`try` fonctionne comme ceci." +msgstr "L'instruction :keyword:`try` fonctionne comme ceci :" #: ../Doc/tutorial/errors.rst:98 msgid "" "First, the *try clause* (the statement(s) between the :keyword:`try` and :" "keyword:`except` keywords) is executed." msgstr "" -"Premièrement, la *clause try* (instruction(s) placée(s) entre les mots-clés :" -"keyword:`try` et :keyword:`except`) est exécutée." +"premièrement, la *clause try* (instruction(s) placée(s) entre les mots-clés :" +"keyword:`try` et :keyword:`except`) est exécutée ;" #: ../Doc/tutorial/errors.rst:101 msgid "" "If no exception occurs, the *except clause* is skipped and execution of the :" "keyword:`try` statement is finished." msgstr "" -"Si aucune exception n'intervient, la *clause except* est sautée et " -"l'exécution de l'instruction :keyword:`try` est terminée." +"si aucune exception n'intervient, la clause ``except`` est sautée et " +"l'exécution de l'instruction :keyword:`try` est terminée ;" #: ../Doc/tutorial/errors.rst:104 msgid "" @@ -178,11 +179,11 @@ msgid "" "keyword:`except` keyword, the except clause is executed, and then execution " "continues after the :keyword:`try` statement." msgstr "" -"Si une exception intervient pendant l'exécution de la clause 'try', le reste " -"de cette clause est sauté. Si son type correspond à un nom d'exception " -"indiqué après le mot-clé :keyword:`except`, la clause 'except' " +"si une exception intervient pendant l'exécution de la clause ``try``, le reste " +"de cette clause est sauté. Si le type d'exception levée correspond à un nom " +"indiqué après le mot-clé :keyword:`except`, la clause ``except`` " "correspondante est exécutée, puis l'exécution continue après l'instruction :" -"keyword:`try`." +"keyword:`try` ;" #: ../Doc/tutorial/errors.rst:109 msgid "" @@ -191,8 +192,8 @@ msgid "" "handler is found, it is an *unhandled exception* and execution stops with a " "message as shown above." msgstr "" -"Si une exception intervient qui ne corresponde à aucune exception mentionnée " -"dans la clause 'except', elle est transmise à l'instruction :keyword:`try` " +"si une exception intervient et ne correspond à aucune exception mentionnée " +"dans la clause ``except``, elle est transmise à l'instruction :keyword:`try` " "de niveau supérieur ; si aucun gestionnaire d'exception n'est trouvé, il " "s'agit d'une *exception non gérée* et l'exécution s'arrête avec un message " "comme indiqué ci-dessus." @@ -205,13 +206,13 @@ msgid "" "not in other handlers of the same :keyword:`try` statement. An except " "clause may name multiple exceptions as a parenthesized tuple, for example::" msgstr "" -"Une instruction :keyword:`try` peut comporter plusieurs clauses except, pour " -"permettre la prise en charge de différentes exceptions. Mais un seul " +"Une instruction :keyword:`try` peut comporter plusieurs clauses ``except`` " +"pour permettre la prise en charge de différentes exceptions. Mais un seul " "gestionnaire, au plus, sera exécuté. Les gestionnaires ne prennent en charge " -"que les exceptions qui interviennent dans la clause try correspondante, pas " -"dans d'autres gestionnaires de la même instruction :keyword:`try`. Mais une " -"même clause except peut citer plusieurs exceptions sous la forme d'un tuple " -"entre parenthèses, comme dans cet exemple : ::" +"que les exceptions qui interviennent dans la clause `try` correspondante, " +"pas dans d'autres gestionnaires de la même instruction :keyword:`try`. Mais " +"une même clause ``except`` peut citer plusieurs exceptions sous la forme d'un " +"tuple entre parenthèses, comme dans cet exemple : ::" #: ../Doc/tutorial/errors.rst:123 msgid "" @@ -221,18 +222,18 @@ msgid "" "class). For example, the following code will print B, C, D in that order::" msgstr "" "Une classe dans une clause :keyword:`except` est compatible avec une " -"exception si elle est de la même classe ou d'une de ses classes dérivées " -"(mais l'inverse n'est pas vrai --- une clause except spécifiant une classe " -"dérivée n'est pas compatible avec une classe de base.) Par exemple, le code " -"suivant affichera B, C et D dans cet ordre : ::" +"exception si elle est de la même classe ou d'une de ses classes dérivées. " +"Mais l'inverse n'est pas vrai, une clause ``except`` spécifiant une classe " +"dérivée n'est pas compatible avec une classe de base. Par exemple, le code " +"suivant affiche B, C et D dans cet ordre : ::" #: ../Doc/tutorial/errors.rst:147 msgid "" "Note that if the except clauses were reversed (with ``except B`` first), it " "would have printed B, B, B --- the first matching except clause is triggered." msgstr "" -"Notez que si les clauses except avaient été inversées (avec ``except B`` en " -"premier), il aurait affiché B, B, B --- la première clause except " +"Notez que si les clauses ``except`` avaient été inversées (avec ``except B`` " +"en premier), il aurait affiché B, B, B --- la première clause ``except`` " "correspondante étant déclenchée." #: ../Doc/tutorial/errors.rst:150 @@ -243,12 +244,12 @@ msgid "" "message and then re-raise the exception (allowing a caller to handle the " "exception as well)::" msgstr "" -"La dernière clause except peut omettre le(s) nom(s) d'exception(s), pour " -"servir de joker. C'est toutefois à utiliser avec beaucoup de précautions, " -"car il est très facile de masquer une vraie erreur de programmation par ce " -"biais. Elle peut aussi être utilisée pour afficher un message d'erreur avant " -"de re-lever l'exception (en permettant à un appelant de prendre également en " -"charge l'exception) ::" +"La dernière clause ``except`` peut omettre le(s) nom(s) d'exception(s) et " +"joue alors le rôle de joker. C'est toutefois à utiliser avec beaucoup de " +"précautions car il est facile de masquer une vraie erreur de programmation " +"par ce biais. Elle peut aussi être utilisée pour afficher un message " +"d'erreur avant de propager l'exception (en permettant à un appelant de gérer " +"également l'exception) ::" #: ../Doc/tutorial/errors.rst:169 msgid "" @@ -257,10 +258,11 @@ msgid "" "for code that must be executed if the try clause does not raise an " "exception. For example::" msgstr "" -"L'instruction :keyword:`try` ... :keyword:`except` a également une *clause " -"else* optionnelle qui, lorsqu'elle est présente, doit suivre toutes les " -"clauses except. Elle est utile pour du code qui doit être exécuté " -"lorsqu'aucune exception n'a été levée par la clause try. Par exemple : ::" +"L'instruction :keyword:`try` ... :keyword:`except` accepte également une " +"*clause else* optionnelle qui, lorsqu'elle est présente, doit se placer " +"après toutes les clauses ``except``. Elle est utile pour du code qui doit " +"être exécuté lorsqu'aucune exception n'a été levée par la clause try. Par " +"exemple : ::" #: ../Doc/tutorial/errors.rst:183 msgid "" @@ -269,8 +271,8 @@ msgid "" "exception that wasn't raised by the code being protected by the :keyword:" "`try` ... :keyword:`except` statement." msgstr "" -"Il vaut mieux utiliser la clause :keyword:`else`, plutôt que d'ajouter du " -"code à la clause :keyword:`try`, car cela évite de capturer accidentellement " +"Il vaut mieux utiliser la clause :keyword:`else` plutôt que d'ajouter du " +"code à la clause :keyword:`try` car cela évite de capturer accidentellement " "une exception qui n'a pas été levée par le code initialement protégé par " "l'instruction :keyword:`try` ... :keyword:`except`." @@ -281,8 +283,8 @@ msgid "" "exception type." msgstr "" "Quand une exception intervient, une valeur peut lui être associée, que l'on " -"appelle également *l'argument* de l'exception. La présence de cet argument " -"et son type dépendent du type de l'exception." +"appelle *l'argument* de l'exception. La présence de cet argument et son type " +"dépendent du type de l'exception." #: ../Doc/tutorial/errors.rst:192 msgid "" @@ -293,13 +295,13 @@ msgid "" "reference ``.args``. One may also instantiate an exception first before " "raising it and add any attributes to it as desired. ::" msgstr "" -"La clause except peut spécifier un nom de variable après le nom de " +"La clause ``except`` peut spécifier un nom de variable après le nom de " "l'exception. Cette variable est liée à une instance d'exception avec les " "arguments stockés dans ``instance.args``. Pour plus de commodité, l'instance " "de l'exception définit la méthode :meth:`__str__` afin que les arguments " "puissent être affichés directement sans avoir à référencer ``.args``. Il est " -"possible de construire une exception, y ajouter ses attributs, puis la " -"lancer plus tard. ::" +"possible de construire une exception, y ajouter ses attributs, puis la lever " +"plus tard. ::" #: ../Doc/tutorial/errors.rst:216 msgid "" @@ -342,8 +344,9 @@ msgid "" msgstr "" "Le seul argument à :keyword:`raise` indique l'exception à déclencher. Cela " "peut être soit une instance d'exception, soit une classe d'exception (une " -"classe dérivée de :class:`Exception`). Si une classe est donnée, elle sera " -"implicitement instanciée via l'appel de son constructeur, sans arguments : ::" +"classe dérivée de :class:`Exception`). Si une classe est donnée, elle est " +"implicitement instanciée *via* l'appel de son constructeur, sans " +"argument : ::" #: ../Doc/tutorial/errors.rst:254 msgid "" @@ -351,9 +354,9 @@ msgid "" "handle it, a simpler form of the :keyword:`raise` statement allows you to re-" "raise the exception::" msgstr "" -"Si vous devez savoir qu'une exception a été levée mais sans intention de la " -"prendre en charge, une forme plus simple de l'instruction :keyword:`raise` " -"permet de re-déclencher l'exception : ::" +"Si vous avez besoin de savoir si une exception a été levée mais que vous " +"n'avez pas intention de la gérer, une forme plus simple de l'instruction :" +"keyword:`raise` permet de propager l'exception : ::" #: ../Doc/tutorial/errors.rst:273 msgid "User-defined Exceptions" @@ -382,12 +385,12 @@ msgid "" "error conditions::" msgstr "" "Les classes d'exceptions peuvent être définies pour faire tout ce qu'une " -"autre classe peut faire. Mais elles sont le plus souvent assez simples, " +"autre classe peut faire. Elles sont le plus souvent gardées assez simples, " "n'offrant que les attributs permettant aux gestionnaires de ces exceptions " "d'extraire les informations relatives à l'erreur qui s'est produite. Lorsque " "l'on crée un module qui peut déclencher plusieurs types d'erreurs distincts, " "une pratique courante est de créer une classe de base pour l'ensemble des " -"exceptions définies dans ce module, et de créer des sous-classes spécifiques " +"exceptions définies dans ce module et de créer des sous-classes spécifiques " "d'exceptions pour les différentes conditions d'erreurs : ::" #: ../Doc/tutorial/errors.rst:317 @@ -396,7 +399,7 @@ msgid "" "naming of the standard exceptions." msgstr "" "La plupart des exceptions sont définies avec des noms qui se terminent par " -"\"Error\", comme pour les exceptions standards." +"\"Error\", comme les exceptions standards." #: ../Doc/tutorial/errors.rst:320 msgid "" @@ -404,10 +407,10 @@ msgid "" "occur in functions they define. More information on classes is presented in " "chapter :ref:`tut-classes`." msgstr "" -"La plupart des modules standards définissent leurs propres exceptions pour " -"décrire les erreurs que l'on peut rencontrer dans les fonctions qu'ils " -"définissent. Plus d'informations sur les classes sont présentées dans le " -"chapitre :ref:`tut-classes`." +"Beaucoup de modules standards définissent leurs propres exceptions pour " +"signaler les erreurs possibles dans les fonctions qu'ils définissent. Plus " +"d'informations sur les classes sont présentées dans le chapitre :ref:`tut-" +"classes`." #: ../Doc/tutorial/errors.rst:328 msgid "Defining Clean-up Actions" @@ -436,15 +439,15 @@ msgid "" "more complicated example::" msgstr "" "Une *clause finally* est toujours exécutée avant de quitter l'instruction :" -"keyword:`try`, qu'une exception ait été déclenchée ou non. Quand " -"uneexception a été déclenchée dans la clause :keyword:`try` et n'a pas été " -"prise en charge par une clause :keyword:`except` (ou si elle a été " -"déclenchée dans une clause :keyword:`except` ou :keyword:`else`), elle est " -"re-déclenchée après l'exécution de la clause :keyword:`finally`. La clause :" -"keyword:`finally` est également exécutée \"à la sortie\" quand " -"n'importequelle autre clause de l'instruction :keyword:`try` est abandonnée " -"par une instruction :keyword:`break`, :keyword:`continue` ou :keyword:" -"`return`. Voici un exemple plus compliqué : ::" +"keyword:`try`, qu'une exception ait été levée ou non. Quand une exception a " +"été levée dans la clause :keyword:`try` et n'a pas été prise en charge par " +"une clause :keyword:`except` (ou si elle a été levée dans une clause :" +"keyword:`except` ou :keyword:`else`), elle est propagée après l'exécution de " +"la clause :keyword:`finally`. La clause :keyword:`finally` est également " +"exécutée \"à la sortie\" quand n'importe quelle autre clause de " +"l'instruction :keyword:`try` est abandonnée par une instruction :keyword:" +"`break`, :keyword:`continue` ou :keyword:`return`. Voici un exemple plus " +"compliqué : ::" #: ../Doc/tutorial/errors.rst:377 msgid "" @@ -454,10 +457,10 @@ msgid "" "clause has been executed." msgstr "" "Comme vous pouvez le voir, la clause :keyword:`finally` est exécutée dans " -"tous les cas. L'exception de type :exc:`TypeError` déclenchée en divisant " -"deux chaînes de caractères n'est pas prise en charge par la clause :keyword:" -"`except` et est donc re-déclenchée après que la clause :keyword:`finally` " -"ait été exécutée." +"tous les cas. L'exception de type :exc:`TypeError`, déclenchée en divisant " +"deux chaînes de caractères, n'est pas prise en charge par la clause :keyword:" +"`except` et est donc propagée après que la clause :keyword:`finally` a été " +"exécutée." #: ../Doc/tutorial/errors.rst:382 msgid "" @@ -465,9 +468,9 @@ msgid "" "releasing external resources (such as files or network connections), " "regardless of whether the use of the resource was successful." msgstr "" -"Dans les vraies applicatons, la clause :keyword:`finally` est notamment " +"Dans les vraies applications, la clause :keyword:`finally` est notamment " "utile pour libérer des ressources externes (telles que des fichiers ou des " -"connections réseau), que l'utilisation de ces ressources ait réussi ou non." +"connexions réseau), quelle qu'ait été l'utilisation de ces ressources." #: ../Doc/tutorial/errors.rst:390 msgid "Predefined Clean-up Actions" @@ -496,7 +499,7 @@ msgid "" "correctly. ::" msgstr "" "Le problème avec ce code est qu'il laisse le fichier ouvert pendant une " -"durée indéterminée après que le code ait fini de s'exécuter. Ce n'est pas un " +"durée indéterminée après que le code a fini de s'exécuter. Ce n'est pas un " "problème avec des scripts simples, mais peut l'être au sein d'applications " "plus conséquentes. L'instruction :keyword:`with` permet d'utiliser certains " "objets comme des fichiers d'une façon qui assure qu'ils seront toujours " @@ -509,7 +512,7 @@ msgid "" "files, provide predefined clean-up actions will indicate this in their " "documentation." msgstr "" -"Dès que l'instruction est exécutée, le fichier *f* est toujours fermé, même " -"si un problème est survenu pendant l'exécution de ces lignes. D'autres " +"Après l'exécution du bloc, le fichier *f* est toujours fermé, " +"même si un problème est survenu pendant l'exécution de ces lignes. D'autres " "objets qui, comme pour les fichiers, fournissent des actions de nettoyage " "prédéfinies l'indiquent dans leur documentation."