Traduction des fuzzies de Reference et Tutorial (#1590)

Automerge of PR #1590 by @christopheNan
#1589

closes #1589 

Co-authored-by: Julien Palard <julien@palard.fr>
This commit is contained in:
Christophe Nanteuil 2021-04-14 13:11:40 +02:00 committed by GitHub
parent 0b436b5fa9
commit 49b049ea1a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 254 additions and 204 deletions

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-27 19:26+0100\n" "POT-Creation-Date: 2021-01-27 19:26+0100\n"
"PO-Revision-Date: 2020-05-30 20:30+0900\n" "PO-Revision-Date: 2021-04-10 16:40+0200\n"
"Last-Translator: Samuel Giffard <samuel@giffard.co>\n" "Last-Translator: Samuel Giffard <samuel@giffard.co>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -208,7 +208,7 @@ msgstr ""
"exécutée une fois pour chaque élément fourni par l'itérateur, dans l'ordre " "exécutée une fois pour chaque élément fourni par l'itérateur, dans l'ordre "
"renvoyé par l'itérateur. Chaque élément est assigné, à tour de rôle, à la " "renvoyé par l'itérateur. Chaque élément est assigné, à tour de rôle, à la "
"liste cible (*target_list* dans la grammaire ci-dessus) en utilisant les " "liste cible (*target_list* dans la grammaire ci-dessus) en utilisant les "
"règles des assignations (voir :ref:`assignment`), et ensuite la suite est " "règles des affectations (voir :ref:`assignment`), et ensuite la suite est "
"exécutée. Lorsque les éléments sont épuisés (ce qui est immédiat lorsque la " "exécutée. Lorsque les éléments sont épuisés (ce qui est immédiat lorsque la "
"séquence est vide ou si un itérateur lève une exception :exc:" "séquence est vide ou si un itérateur lève une exception :exc:"
"`StopIteration`), la suite de la clause :keyword:`!else`, si elle existe, " "`StopIteration`), la suite de la clause :keyword:`!else`, si elle existe, "
@ -278,7 +278,7 @@ msgstr ""
"l'élément courant, l'élément courant est traité une deuxième fois à la " "l'élément courant, l'élément courant est traité une deuxième fois à la "
"prochaine itération. Ceci peut conduire à de méchants bugs, que vous pouvez " "prochaine itération. Ceci peut conduire à de méchants bugs, que vous pouvez "
"éviter en effectuant une copie temporaire d'une tranche ou de la séquence " "éviter en effectuant une copie temporaire d'une tranche ou de la séquence "
"complète, par exemple ::" "complète, par exemple ::"
#: reference/compound_stmts.rst:225 #: reference/compound_stmts.rst:225
msgid "The :keyword:`!try` statement" msgid "The :keyword:`!try` statement"
@ -293,7 +293,6 @@ msgstr ""
"code de nettoyage pour un groupe d'instructions :" "code de nettoyage pour un groupe d'instructions :"
#: reference/compound_stmts.rst:248 #: reference/compound_stmts.rst:248
#, fuzzy
msgid "" msgid ""
"The :keyword:`except` clause(s) specify one or more exception handlers. When " "The :keyword:`except` clause(s) specify one or more exception handlers. When "
"no exception occurs in the :keyword:`try` clause, no exception handler is " "no exception occurs in the :keyword:`try` clause, no exception handler is "
@ -319,8 +318,8 @@ msgstr ""
"avec une expression, cette expression est évaluée et la clause correspond si " "avec une expression, cette expression est évaluée et la clause correspond si "
"l'objet résultant est « compatible » avec l'exception. Un objet est réputé " "l'objet résultant est « compatible » avec l'exception. Un objet est réputé "
"compatible avec une exception s'il est la classe ou une classe de base de " "compatible avec une exception s'il est la classe ou une classe de base de "
"l'objet exception ou si c'est un *n*-uplet contenant un élément qui est " "l'objet exception ou si c'est un *n*-uplet dont un élément est la classe ou "
"compatible avec l'exception." "une classe parente de l'exception."
#: reference/compound_stmts.rst:260 #: reference/compound_stmts.rst:260
msgid "" msgid ""
@ -372,11 +371,11 @@ msgid ""
"the end of the except clause. This is as if ::" "the end of the except clause. This is as if ::"
msgstr "" msgstr ""
"Lorsqu'une exception a été assignée en utilisant ``as cible``, elle est " "Lorsqu'une exception a été assignée en utilisant ``as cible``, elle est "
"effacée à la fin de la clause ``except``. C'est comme si ::" "effacée à la fin de la clause ``except``. C'est comme si ::"
#: reference/compound_stmts.rst:284 #: reference/compound_stmts.rst:284
msgid "was translated to ::" msgid "was translated to ::"
msgstr "avait été traduit en ::" msgstr "avait été traduit en ::"
#: reference/compound_stmts.rst:292 #: reference/compound_stmts.rst:292
msgid "" msgid ""
@ -571,7 +570,7 @@ msgid ""
msgstr "" msgstr ""
"L'instruction :keyword:`with` garantit que si la méthode :meth:`__enter__` " "L'instruction :keyword:`with` garantit que si la méthode :meth:`__enter__` "
"se termine sans erreur, alors la méthode :meth:`__exit__` est toujours " "se termine sans erreur, alors la méthode :meth:`__exit__` est toujours "
"appelée. Ainsi, si une erreur se produit pendant l'assignation à la liste " "appelée. Ainsi, si une erreur se produit pendant l'affectation à la liste "
"cible, elle est traitée de la même façon qu'une erreur se produisant dans la " "cible, elle est traitée de la même façon qu'une erreur se produisant dans la "
"suite. Voir l'étape 6 ci-dessous." "suite. Voir l'étape 6 ci-dessous."
@ -700,11 +699,11 @@ msgstr ""
"fonction comme seul argument ; la valeur renvoyée est liée au nom de la " "fonction comme seul argument ; la valeur renvoyée est liée au nom de la "
"fonction en lieu et place de l'objet fonction. Lorsqu'il y a plusieurs " "fonction en lieu et place de l'objet fonction. Lorsqu'il y a plusieurs "
"décorateurs, ils sont appliqués par imbrication ; par exemple, le code " "décorateurs, ils sont appliqués par imbrication ; par exemple, le code "
"suivant ::" "suivant ::"
#: reference/compound_stmts.rst:548 reference/compound_stmts.rst:719 #: reference/compound_stmts.rst:548 reference/compound_stmts.rst:719
msgid "is roughly equivalent to ::" msgid "is roughly equivalent to ::"
msgstr "est à peu près équivalent à ::" msgstr "est à peu près équivalent à ::"
#: reference/compound_stmts.rst:553 #: reference/compound_stmts.rst:553
msgid "" msgid ""
@ -713,12 +712,17 @@ msgid ""
msgstr "" msgstr ""
"sauf que la fonction originale n'est pas temporairement liée au nom ``func``." "sauf que la fonction originale n'est pas temporairement liée au nom ``func``."
# Pas de majuscule : ok.
#: reference/compound_stmts.rst:555 #: reference/compound_stmts.rst:555
msgid "" msgid ""
"Functions may be decorated with any valid :token:`assignment_expression`. " "Functions may be decorated with any valid :token:`assignment_expression`. "
"Previously, the grammar was much more restrictive; see :pep:`614` for " "Previously, the grammar was much more restrictive; see :pep:`614` for "
"details." "details."
msgstr "" msgstr ""
"les fonctions peuvent être décorées par toute :token:`expression "
"d'affectation <assignment_expression>` valide. Auparavant, la grammaire "
"était beaucoup plus restrictive ; voir la :pep:`614` pour obtenir les "
"détails."
#: reference/compound_stmts.rst:565 #: reference/compound_stmts.rst:565
msgid "" msgid ""
@ -923,11 +927,11 @@ msgstr ""
"des utilisations plus avancées). Donc chaque élément de la liste doit " "des utilisations plus avancées). Donc chaque élément de la liste doit "
"pouvoir être évalué comme un objet classe qui autorise les sous-classes. Les " "pouvoir être évalué comme un objet classe qui autorise les sous-classes. Les "
"classes sans liste d'héritage héritent, par défaut, de la classe de base :" "classes sans liste d'héritage héritent, par défaut, de la classe de base :"
"class:`object` ; d'où ::" "class:`object` ; d'où ::"
#: reference/compound_stmts.rst:689 #: reference/compound_stmts.rst:689
msgid "is equivalent to ::" msgid "is equivalent to ::"
msgstr "est équivalente à ::" msgstr "est équivalente à ::"
#: reference/compound_stmts.rst:694 #: reference/compound_stmts.rst:694
msgid "" msgid ""
@ -974,7 +978,7 @@ msgstr ""
msgid "Classes can also be decorated: just like when decorating functions, ::" msgid "Classes can also be decorated: just like when decorating functions, ::"
msgstr "" msgstr ""
"Les classes peuvent aussi être décorées : comme pour les décorateurs de " "Les classes peuvent aussi être décorées : comme pour les décorateurs de "
"fonctions, ::" "fonctions,::"
#: reference/compound_stmts.rst:724 #: reference/compound_stmts.rst:724
msgid "" msgid ""
@ -991,6 +995,9 @@ msgid ""
"Previously, the grammar was much more restrictive; see :pep:`614` for " "Previously, the grammar was much more restrictive; see :pep:`614` for "
"details." "details."
msgstr "" msgstr ""
"les classes peuvent être décorées par toute :token:`expression d'affectation "
"<assignment_expression>` valide. Auparavant, la grammaire était beaucoup "
"plus restrictive ; voir la :pep:`614` pour obtenir les détails."
#: reference/compound_stmts.rst:732 #: reference/compound_stmts.rst:732
msgid "" msgid ""
@ -1089,24 +1096,22 @@ msgid "The :keyword:`!async for` statement"
msgstr "L'instruction :keyword:`!async for`" msgstr "L'instruction :keyword:`!async for`"
#: reference/compound_stmts.rst:803 #: reference/compound_stmts.rst:803
#, fuzzy
msgid "" msgid ""
"An :term:`asynchronous iterable` provides an ``__aiter__`` method that " "An :term:`asynchronous iterable` provides an ``__aiter__`` method that "
"directly returns an :term:`asynchronous iterator`, which can call " "directly returns an :term:`asynchronous iterator`, which can call "
"asynchronous code in its ``__anext__`` method." "asynchronous code in its ``__anext__`` method."
msgstr "" msgstr ""
"Un :term:`itérable asynchrone <asynchronous iterable>` est capable d'appeler " "Un :term:`itérable asynchrone <asynchronous iterable>` fournit une méthode "
"du code asynchrone dans l'implémentation de sa méthode *iter* ; un :term:" "``__aiter__`` qui renvoie directement un :term:`itérateur asynchrone "
"`itérateur asynchrone <asynchronous iterator>` peut appeler du code " "<asynchronous iterator>`, celui-ci pouvant appeler du code asynchrone dans "
"asynchrone dans sa méthode *next*." "sa méthode ``__anext__``."
#: reference/compound_stmts.rst:807 #: reference/compound_stmts.rst:807
#, fuzzy
msgid "" msgid ""
"The ``async for`` statement allows convenient iteration over asynchronous " "The ``async for`` statement allows convenient iteration over asynchronous "
"iterables." "iterables."
msgstr "" msgstr ""
"L'instruction ``async for`` permet d'itérer facilement sur des itérateurs " "L'instruction ``async for`` permet d'itérer facilement sur des itérables "
"asynchrones." "asynchrones."
#: reference/compound_stmts.rst:817 #: reference/compound_stmts.rst:817

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-19 16:59+0100\n" "POT-Creation-Date: 2021-03-19 16:59+0100\n"
"PO-Revision-Date: 2020-06-01 16:54+0900\n" "PO-Revision-Date: 2021-04-13 17:29+0200\n"
"Last-Translator: Samuel Giffard <samuel@giffard.co>\n" "Last-Translator: Samuel Giffard <samuel@giffard.co>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -140,7 +140,7 @@ msgstr ""
"Notez que si vous utilisez les fonctionnalités de débogage ou de trace de " "Notez que si vous utilisez les fonctionnalités de débogage ou de trace de "
"l'implémentation, il est possible que des références qui seraient " "l'implémentation, il est possible que des références qui seraient "
"normalement supprimées soient toujours présentes. Notez aussi que capturer " "normalement supprimées soient toujours présentes. Notez aussi que capturer "
"une exception avec l'instruction :keyword:`try`...\\ :keyword:`except` peut " "une exception avec l'instruction :keyword:`try`\\ :keyword:`except` peut "
"conserver des objets en vie." "conserver des objets en vie."
#: reference/datamodel.rst:87 #: reference/datamodel.rst:87
@ -160,7 +160,7 @@ msgstr ""
"qu'il supprime tous les objets, ces objets fournissent également un moyen " "qu'il supprime tous les objets, ces objets fournissent également un moyen "
"explicite de libérer la ressource externe, généralement sous la forme d'une " "explicite de libérer la ressource externe, généralement sous la forme d'une "
"méthode :meth:`close`. Nous incitons fortement les programmeurs à fermer " "méthode :meth:`close`. Nous incitons fortement les programmeurs à fermer "
"explicitement de tels objets. Les instructions :keyword:`try`...\\ :keyword:" "explicitement de tels objets. Les instructions :keyword:`try`\\ :keyword:"
"`finally` et :keyword:`with` sont très pratiques pour cela." "`finally` et :keyword:`with` sont très pratiques pour cela."
#: reference/datamodel.rst:97 #: reference/datamodel.rst:97
@ -262,7 +262,6 @@ msgid "NotImplemented"
msgstr "NotImplemented" msgstr "NotImplemented"
#: reference/datamodel.rst:155 #: reference/datamodel.rst:155
#, fuzzy
msgid "" msgid ""
"This type has a single value. There is a single object with this value. " "This type has a single value. There is a single object with this value. "
"This object is accessed through the built-in name ``NotImplemented``. " "This object is accessed through the built-in name ``NotImplemented``. "
@ -276,8 +275,8 @@ msgstr ""
"Les méthodes numériques et les comparaisons riches doivent renvoyer cette " "Les méthodes numériques et les comparaisons riches doivent renvoyer cette "
"valeur si elles n'implémentent pas l'opération pour les opérandes fournis " "valeur si elles n'implémentent pas l'opération pour les opérandes fournis "
"(l'interpréteur essaie alors l'opération en permutant les opérandes ou tout " "(l'interpréteur essaie alors l'opération en permutant les opérandes ou tout "
"autre stratégie de contournement, en fonction de l'opérateur). Sa valeur " "autre stratégie de contournement, en fonction de l'opérateur). Il ne doit "
"booléenne est vraie." "pas être évalué dans un contexte booléen."
#: reference/datamodel.rst:162 #: reference/datamodel.rst:162
msgid "See :ref:`implementing-the-arithmetic-operations` for more details." msgid "See :ref:`implementing-the-arithmetic-operations` for more details."
@ -285,12 +284,16 @@ msgstr ""
"Consultez :ref:`implementing-the-arithmetic-operations` pour davantage de " "Consultez :ref:`implementing-the-arithmetic-operations` pour davantage de "
"détails." "détails."
# Pas de majuscule car suit un ':' dans le rendu.
#: reference/datamodel.rst:166 #: reference/datamodel.rst:166
msgid "" msgid ""
"Evaluating ``NotImplemented`` in a boolean context is deprecated. While it " "Evaluating ``NotImplemented`` in a boolean context is deprecated. While it "
"currently evaluates as true, it will emit a :exc:`DeprecationWarning`. It " "currently evaluates as true, it will emit a :exc:`DeprecationWarning`. It "
"will raise a :exc:`TypeError` in a future version of Python." "will raise a :exc:`TypeError` in a future version of Python."
msgstr "" msgstr ""
"évaluer ``NotImplemented`` dans un contexte booléen est obsolète. Python "
"l'évalue aujourd'hui à ``True`` mais émet un :exc:`DeprecationWarning`. Il "
"lèvera une :exc:`TypeError` dans une version ultérieure de Python."
#: reference/datamodel.rst:179 #: reference/datamodel.rst:179
msgid "Ellipsis" msgid "Ellipsis"
@ -330,32 +333,43 @@ msgid ""
"The string representations of the numeric classes, computed by :meth:" "The string representations of the numeric classes, computed by :meth:"
"`__repr__` and :meth:`__str__`, have the following properties:" "`__repr__` and :meth:`__str__`, have the following properties:"
msgstr "" msgstr ""
"Les représentations sous forme de chaînes de caractères des objets "
"numériques, produites par :meth:`__repr__` et :meth:`__str__`, ont les "
"propriétés suivantes :"
#: reference/datamodel.rst:194 #: reference/datamodel.rst:194
msgid "" msgid ""
"They are valid numeric literals which, when passed to their class " "They are valid numeric literals which, when passed to their class "
"constructor, produce an object having the value of the original numeric." "constructor, produce an object having the value of the original numeric."
msgstr "" msgstr ""
"Ce sont des littéraux numériques valides qui, s'ils sont passés au "
"constructeur de leur classe, produisent un objet qui a la valeur numérique "
"de l'objet d'origine."
#: reference/datamodel.rst:198 #: reference/datamodel.rst:198
msgid "The representation is in base 10, when possible." msgid "The representation is in base 10, when possible."
msgstr "" msgstr "La représentation est en base 10, si possible."
#: reference/datamodel.rst:200 #: reference/datamodel.rst:200
msgid "" msgid ""
"Leading zeros, possibly excepting a single zero before a decimal point, are " "Leading zeros, possibly excepting a single zero before a decimal point, are "
"not shown." "not shown."
msgstr "" msgstr ""
"Les zéros en tête, sauf en ce qui concerne un zéro seul avant la virgule "
"(représentée par un point en Python conformément à la convention anglo-"
"saxonne), ne sont pas affichés."
#: reference/datamodel.rst:203 #: reference/datamodel.rst:203
msgid "" msgid ""
"Trailing zeros, possibly excepting a single zero after a decimal point, are " "Trailing zeros, possibly excepting a single zero after a decimal point, are "
"not shown." "not shown."
msgstr "" msgstr ""
"Les zéros en fin, sauf en ce qui concerne un zéro seul après la virgule, ne "
"sont pas affichés."
#: reference/datamodel.rst:206 #: reference/datamodel.rst:206
msgid "A sign is shown only when the number is negative." msgid "A sign is shown only when the number is negative."
msgstr "" msgstr "Le signe n'est affiché que lorsque le nombre est négatif."
#: reference/datamodel.rst:208 #: reference/datamodel.rst:208
msgid "" msgid ""
@ -486,7 +500,7 @@ msgstr ""
"Ils représentent des ensembles de taille finie indicés par des entiers " "Ils représentent des ensembles de taille finie indicés par des entiers "
"positifs ou nuls. La fonction native :func:`len` renvoie le nombre " "positifs ou nuls. La fonction native :func:`len` renvoie le nombre "
"d'éléments de la séquence. Quand la longueur d'une séquence est *n*, " "d'éléments de la séquence. Quand la longueur d'une séquence est *n*, "
"l'ensemble des indices contient les entiers 0, 1 ..., *n-1*. On accède à " "l'ensemble des indices contient les entiers 0, 1 , *n-1*. On accède à "
"l'élément d'indice *i* de la séquence *a* par ``a[i]``." "l'élément d'indice *i* de la séquence *a* par ``a[i]``."
#: reference/datamodel.rst:283 #: reference/datamodel.rst:283
@ -802,8 +816,8 @@ msgid ""
"Dictionaries are mutable; they can be created by the ``{...}`` notation (see " "Dictionaries are mutable; they can be created by the ``{...}`` notation (see "
"section :ref:`dict`)." "section :ref:`dict`)."
msgstr "" msgstr ""
"Les dictionnaires sont muables : ils peuvent être créés par la notation " "Les dictionnaires sont muables : ils peuvent être créés par la notation ``{…}"
"``{...}`` (reportez-vous à la section :ref:`dict`)." "`` (reportez-vous à la section :ref:`dict`)."
#: reference/datamodel.rst:457 #: reference/datamodel.rst:457
msgid "" msgid ""
@ -1813,9 +1827,10 @@ msgid ""
"object is implicitly created when an exception occurs, and may also be " "object is implicitly created when an exception occurs, and may also be "
"explicitly created by calling :class:`types.TracebackType`." "explicitly created by calling :class:`types.TracebackType`."
msgstr "" msgstr ""
"Les objets traces représentent la pile de traces d'une exception. Un objet " "Les objets *traces d'appels* représentent le contenu de la pile des appels "
"trace est implicitement créé quand une exception apparaît et peut être " "au moment de l'exception. Un objet *trace d'appels* est implicitement créé "
"explicitement créé en appelant :class:`types.TracebackType`." "quand une exception apparaît et peut être explicitement créé en appelant :"
"class:`types.TracebackType`."
#: reference/datamodel.rst:1060 #: reference/datamodel.rst:1060
msgid "" msgid ""
@ -2068,7 +2083,7 @@ msgid ""
msgstr "" msgstr ""
"Une implémentation typique crée une nouvelle instance de la classe en " "Une implémentation typique crée une nouvelle instance de la classe en "
"invoquant la méthode :meth:`__new__` de la superclasse à l'aide de ``super()." "invoquant la méthode :meth:`__new__` de la superclasse à l'aide de ``super()."
"__new__(cls[, ...])`` avec les arguments adéquats, puis modifie l'instance " "__new__(cls[, ])`` avec les arguments adéquats, puis modifie l'instance "
"nouvellement créée en tant que de besoin avant de la renvoyer." "nouvellement créée en tant que de besoin avant de la renvoyer."
#: reference/datamodel.rst:1201 #: reference/datamodel.rst:1201
@ -2081,9 +2096,9 @@ msgid ""
msgstr "" msgstr ""
"Si :meth:`__new__` est appelée pendant la construction de l'objet et renvoie " "Si :meth:`__new__` est appelée pendant la construction de l'objet et renvoie "
"une instance de *cls* ou d'une de ses sous-classes, alors la méthode :meth:" "une instance de *cls* ou d'une de ses sous-classes, alors la méthode :meth:"
"`__init__` de la nouvelle instance est invoquée avec " "`__init__` de la nouvelle instance est invoquée avec ``__init__(self[, …])`` "
"``__init__(self[, ...])`` où *self* est la nouvelle instance et les autres " "où *self* est la nouvelle instance et les autres arguments sont les mêmes "
"arguments sont les mêmes que ceux passés au constructeur de l'objet." "que ceux passés au constructeur de l'objet."
#: reference/datamodel.rst:1206 #: reference/datamodel.rst:1206
msgid "" msgid ""
@ -2103,7 +2118,7 @@ msgstr ""
"L'objectif de :meth:`__new__` est principalement, pour les sous-classes de " "L'objectif de :meth:`__new__` est principalement, pour les sous-classes de "
"types immuables (comme ``int``, ``str`` ou ``tuple``), d'autoriser la " "types immuables (comme ``int``, ``str`` ou ``tuple``), d'autoriser la "
"création sur mesure des instances. Elle est aussi souvent surchargée dans " "création sur mesure des instances. Elle est aussi souvent surchargée dans "
"les méta-classes pour particulariser la création des classes." "les métaclasses pour particulariser la création des classes."
#: reference/datamodel.rst:1218 #: reference/datamodel.rst:1218
msgid "" msgid ""
@ -2120,7 +2135,7 @@ msgstr ""
"`__init__`, la méthode :meth:`__init__` de la classe dérivée, si elle " "`__init__`, la méthode :meth:`__init__` de la classe dérivée, si elle "
"existe, doit explicitement appeler cette méthode pour assurer une " "existe, doit explicitement appeler cette méthode pour assurer une "
"initialisation correcte de la partie classe de base de l'instance ; par " "initialisation correcte de la partie classe de base de l'instance ; par "
"exemple : ``super().__init__([args...])``." "exemple : ``super().__init__([args])``."
#: reference/datamodel.rst:1225 #: reference/datamodel.rst:1225
msgid "" msgid ""
@ -2246,9 +2261,9 @@ msgstr ""
 officielle » en chaîne de caractères d'un objet. Tout est fait pour que "  officielle » en chaîne de caractères d'un objet. Tout est fait pour que "
"celle-ci ressemble à une expression Python valide pouvant être utilisée pour " "celle-ci ressemble à une expression Python valide pouvant être utilisée pour "
"recréer un objet avec la même valeur (dans un environnement donné). Si ce " "recréer un objet avec la même valeur (dans un environnement donné). Si ce "
"n'est pas possible, une chaîne de la forme ``<...une description utile...>`` " "n'est pas possible, une chaîne de la forme ``<…une description utile…>`` est "
"est renvoyée. La valeur renvoyée doit être un objet chaîne de caractères. Si " "renvoyée. La valeur renvoyée doit être un objet chaîne de caractères. Si une "
"une classe définit :meth:`__repr__` mais pas :meth:`__str__`, alors :meth:" "classe définit :meth:`__repr__` mais pas :meth:`__str__`, alors :meth:"
"`__repr__` est aussi utilisée quand une représentation « informelle » en " "`__repr__` est aussi utilisée quand une représentation « informelle » en "
"chaîne de caractères est demandée pour une instance de cette classe." "chaîne de caractères est demandée pour une instance de cette classe."
@ -2340,13 +2355,12 @@ msgstr ""
"si vous lui passez une chaîne non vide." "si vous lui passez une chaîne non vide."
#: reference/datamodel.rst:1368 #: reference/datamodel.rst:1368
#, fuzzy
msgid "" msgid ""
"``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than " "``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than "
"``format(str(x), '')``." "``format(str(x), '')``."
msgstr "" msgstr ""
"``object.__format__(x, '')`` est maintenant équivalent à ``str(x)`` plutôt " "``object.__format__(x, '')`` est maintenant équivalent à ``str(x)`` plutôt "
"qu'à ``format(str(self), '')``." "qu'à ``format(str(x), '')``."
#: reference/datamodel.rst:1384 #: reference/datamodel.rst:1384
msgid "" msgid ""
@ -2382,7 +2396,6 @@ msgstr ""
"résultat est faux ou vrai." "résultat est faux ou vrai."
#: reference/datamodel.rst:1397 #: reference/datamodel.rst:1397
#, fuzzy
msgid "" msgid ""
"By default, ``object`` implements :meth:`__eq__` by using ``is``, returning " "By default, ``object`` implements :meth:`__eq__` by using ``is``, returning "
"``NotImplemented`` in the case of a false comparison: ``True if x is y else " "``NotImplemented`` in the case of a false comparison: ``True if x is y else "
@ -2393,12 +2406,14 @@ msgid ""
"``x<=y``. To automatically generate ordering operations from a single root " "``x<=y``. To automatically generate ordering operations from a single root "
"operation, see :func:`functools.total_ordering`." "operation, see :func:`functools.total_ordering`."
msgstr "" msgstr ""
"Par défaut, :meth:`__ne__` délègue à :meth:`__eq__` et renvoie le résultat " "Par défaut, ``object`` implémente :meth:`__eq__` en utilisant ``is`` et "
"inverse, sauf si c'est ``NotImplemented``. Il n'y a pas d'autres relations " "renvoie ``NotImplemented`` si la comparaison renvoie ``False`` : ``True if x "
"implicites pour les opérateurs de comparaison. Par exemple, ``(x<y or " "is y else NotImplemented``. Pour :meth:`__ne__`, il délègue à :meth:`__eq__` "
"x==y)`` n'implique pas ``x<=y``. Pour obtenir une relation d'ordre total " "et renvoie le résultat inverse, sauf si c'est ``NotImplemented``. Il n'y a "
"automatique à partir d'une seule opération, reportez-vous à :func:`functools." "pas d'autres relations implicites pour les opérateurs de comparaison ou "
"total_ordering`." "d'implémentations par défaut ; par exemple, ``(x<y or x==y)`` n'implique pas "
"``x<=y``. Pour obtenir une relation d'ordre total automatique à partir d'une "
"seule opération, reportez-vous à :func:`functools.total_ordering`."
#: reference/datamodel.rst:1406 #: reference/datamodel.rst:1406
msgid "" msgid ""
@ -2567,9 +2582,9 @@ msgid ""
msgstr "" msgstr ""
"C'est un comportement voulu pour se protéger contre un déni de service qui " "C'est un comportement voulu pour se protéger contre un déni de service qui "
"utiliserait des entrées malicieusement choisies pour effectuer des " "utiliserait des entrées malicieusement choisies pour effectuer des "
"insertions dans le dictionnaire dans le pire cas, avec une complexité en " "insertions dans le dictionnaire dans le pire cas, avec une complexité en O(n"
"O(n^2). Lisez http://www.ocert.org/advisories/ocert-2011-003.html pour en " "\\ :sup:`2`). Lisez http://www.ocert.org/advisories/ocert-2011-003.html pour "
"obtenir les détails (article en anglais)." "en obtenir les détails (article en anglais)."
#: reference/datamodel.rst:1492 #: reference/datamodel.rst:1492
msgid "" msgid ""
@ -2695,12 +2710,17 @@ msgid ""
"Raises an :ref:`auditing event <auditing>` ``object.__getattr__`` with " "Raises an :ref:`auditing event <auditing>` ``object.__getattr__`` with "
"arguments ``obj``, ``name``." "arguments ``obj``, ``name``."
msgstr "" msgstr ""
"Lève un :ref:`événement d'audit <auditing>` ``object.__getattr__`` avec les "
"arguments ``obj`` et ``name``."
#: reference/datamodel.rst:1564 #: reference/datamodel.rst:1564
msgid "" msgid ""
"For certain sensitive attribute accesses, raises an :ref:`auditing event " "For certain sensitive attribute accesses, raises an :ref:`auditing event "
"<auditing>` ``object.__getattr__`` with arguments ``obj`` and ``name``." "<auditing>` ``object.__getattr__`` with arguments ``obj`` and ``name``."
msgstr "" msgstr ""
"Pour les accès à certains attributs sensibles, lève un :ref:`événement "
"d'audit <auditing>` ``object.__getattr__`` avec les arguments ``obj`` et "
"``name``."
#: reference/datamodel.rst:1571 #: reference/datamodel.rst:1571
msgid "" msgid ""
@ -2728,6 +2748,8 @@ msgid ""
"Raises an :ref:`auditing event <auditing>` ``object.__setattr__`` with " "Raises an :ref:`auditing event <auditing>` ``object.__setattr__`` with "
"arguments ``obj``, ``name``, ``value``." "arguments ``obj``, ``name``, ``value``."
msgstr "" msgstr ""
"Lève un :ref:`événement d'audit <auditing>` ``object.__setattr__`` avec les "
"arguments ``obj``, ``name`` et ``value``."
#: reference/datamodel.rst:1581 #: reference/datamodel.rst:1581
msgid "" msgid ""
@ -2735,6 +2757,9 @@ msgid ""
"<auditing>` ``object.__setattr__`` with arguments ``obj``, ``name``, " "<auditing>` ``object.__setattr__`` with arguments ``obj``, ``name``, "
"``value``." "``value``."
msgstr "" msgstr ""
"Pour les assignations de certains attributs sensibles, lève un :ref:"
"`événement d'audit <auditing>` ``object.__setattr__`` avec les arguments "
"``obj``, ``name`` et ``value``."
#: reference/datamodel.rst:1588 #: reference/datamodel.rst:1588
msgid "" msgid ""
@ -2751,12 +2776,17 @@ msgid ""
"Raises an :ref:`auditing event <auditing>` ``object.__delattr__`` with " "Raises an :ref:`auditing event <auditing>` ``object.__delattr__`` with "
"arguments ``obj``, ``name``." "arguments ``obj``, ``name``."
msgstr "" msgstr ""
"Lève un :ref:`événement d'audit <auditing>` ``object.__deltattr__`` avec les "
"arguments ``obj`` et ``name``."
#: reference/datamodel.rst:1593 #: reference/datamodel.rst:1593
msgid "" msgid ""
"For certain sensitive attribute deletions, raises an :ref:`auditing event " "For certain sensitive attribute deletions, raises an :ref:`auditing event "
"<auditing>` ``object.__delattr__`` with arguments ``obj`` and ``name``." "<auditing>` ``object.__delattr__`` with arguments ``obj`` and ``name``."
msgstr "" msgstr ""
"Pour les suppressions de certains attributs sensibles, lève un :ref:"
"`événement d'audit <auditing>` ``object.__deltattr__`` avec les arguments "
"``obj`` et ``name``."
#: reference/datamodel.rst:1600 #: reference/datamodel.rst:1600
msgid "" msgid ""
@ -2994,7 +3024,7 @@ msgstr ""
"obtenir et supprimer cet attribut du dictionnaire de l'objet. Par exemple, " "obtenir et supprimer cet attribut du dictionnaire de l'objet. Par exemple, "
"pour ``a.x`` Python commence d'abord par rechercher ``a.__dict__['x']``, " "pour ``a.x`` Python commence d'abord par rechercher ``a.__dict__['x']``, "
"puis ``type(a).__dict__['x']`` ; ensuite Python continue en remontant les " "puis ``type(a).__dict__['x']`` ; ensuite Python continue en remontant les "
"classes de base de ``type(a)``, en excluant les méta-classes." "classes de base de ``type(a)``, en excluant les métaclasses."
#: reference/datamodel.rst:1750 #: reference/datamodel.rst:1750
msgid "" msgid ""
@ -3070,7 +3100,6 @@ msgstr ""
"``A.__dict__['m'].__get__(obj, obj.__class__)``." "``A.__dict__['m'].__get__(obj, obj.__class__)``."
#: reference/datamodel.rst:1776 #: reference/datamodel.rst:1776
#, fuzzy
msgid "" msgid ""
"For instance bindings, the precedence of descriptor invocation depends on " "For instance bindings, the precedence of descriptor invocation depends on "
"the which descriptor methods are defined. A descriptor can define any " "the which descriptor methods are defined. A descriptor can define any "
@ -3090,7 +3119,7 @@ msgstr ""
"descripteur dépend des méthodes que le descripteur a définies. Un " "descripteur dépend des méthodes que le descripteur a définies. Un "
"descripteur peut définir n'importe quelle combinaison de :meth:`__get__`, :" "descripteur peut définir n'importe quelle combinaison de :meth:`__get__`, :"
"meth:`__set__` et :meth:`__delete__`. S'il ne définit pas :meth:`__get__`, " "meth:`__set__` et :meth:`__delete__`. S'il ne définit pas :meth:`__get__`, "
"alors accéder à l'attribut retourne l'objet descripteur lui-même sauf s'il " "alors accéder à l'attribut renvoie l'objet descripteur lui-même sauf s'il "
"existe une valeur dans le dictionnaire de l'objet instance. Si le " "existe une valeur dans le dictionnaire de l'objet instance. Si le "
"descripteur définit :meth:`__set__` ou :meth:`__delete__`, c'est un " "descripteur définit :meth:`__set__` ou :meth:`__delete__`, c'est un "
"descripteur de données ; s'il ne définit aucune méthode, c'est un " "descripteur de données ; s'il ne définit aucune méthode, c'est un "
@ -3098,9 +3127,9 @@ msgstr ""
"définissent à la fois :meth:`__get__` et :meth:`__set__`, alors que les " "définissent à la fois :meth:`__get__` et :meth:`__set__`, alors que les "
"descripteurs hors-données définissent seulement la méthode :meth:`__get__`. " "descripteurs hors-données définissent seulement la méthode :meth:`__get__`. "
"Les descripteurs de données qui définissent :meth:`__set__` et :meth:" "Les descripteurs de données qui définissent :meth:`__set__` et :meth:"
"`__get__` sont toujours prioritaires face à une redéfinition du dictionnaire " "`__get__` (ou :meth:`__delete__`) sont toujours prioritaires face à une "
"de l'instance. En revanche, les descripteurs hors-données peuvent être " "redéfinition du dictionnaire de l'instance. En revanche, les descripteurs "
"shuntés par les instances." "hors-données peuvent être shuntés par les instances."
#: reference/datamodel.rst:1789 #: reference/datamodel.rst:1789
msgid "" msgid ""
@ -3348,14 +3377,14 @@ msgid ""
"actual metaclass (rather than the explicit hint) can be accessed as " "actual metaclass (rather than the explicit hint) can be accessed as "
"``type(cls)``." "``type(cls)``."
msgstr "" msgstr ""
"L'indication de méta-classe ``metaclass`` est absorbée par le reste du " "L'indication de métaclasse ``metaclass`` est absorbée par le reste du "
"mécanisme de types et n'est jamais passée à l'implémentation de " "mécanisme de types et n'est jamais passée à l'implémentation de "
"``__init_subclass__``. La méta-classe réelle (plutôt que l'indication " "``__init_subclass__``. La métaclasse réelle (plutôt que l'indication "
"explicite) peut être récupérée par ``type(cls)``." "explicite) peut être récupérée par ``type(cls)``."
#: reference/datamodel.rst:1918 #: reference/datamodel.rst:1918
msgid "Metaclasses" msgid "Metaclasses"
msgstr "Méta-classes" msgstr "Métaclasses"
#: reference/datamodel.rst:1925 #: reference/datamodel.rst:1925
msgid "" msgid ""
@ -3386,7 +3415,7 @@ msgid ""
"passed through to all metaclass operations described below." "passed through to all metaclass operations described below."
msgstr "" msgstr ""
"Tout autre argument nommé spécifié dans la définition de la classe est passé " "Tout autre argument nommé spécifié dans la définition de la classe est passé "
"aux opérations de méta-classes décrites auparavant." "aux opérations de métaclasses décrites auparavant."
#: reference/datamodel.rst:1946 #: reference/datamodel.rst:1946
msgid "When a class definition is executed, the following steps occur:" msgid "When a class definition is executed, the following steps occur:"
@ -3400,7 +3429,7 @@ msgstr "Les entrées MRO sont résolues ;"
#: reference/datamodel.rst:1949 #: reference/datamodel.rst:1949
msgid "the appropriate metaclass is determined;" msgid "the appropriate metaclass is determined;"
msgstr "la méta-classe appropriée est déterminée ;" msgstr "la métaclasse appropriée est déterminée ;"
#: reference/datamodel.rst:1950 #: reference/datamodel.rst:1950
msgid "the class namespace is prepared;" msgid "the class namespace is prepared;"
@ -3440,13 +3469,13 @@ msgstr ""
#: reference/datamodel.rst:1970 #: reference/datamodel.rst:1970
msgid "Determining the appropriate metaclass" msgid "Determining the appropriate metaclass"
msgstr "Détermination de la méta-classe appropriée" msgstr "Détermination de la métaclasse appropriée"
#: reference/datamodel.rst:1974 #: reference/datamodel.rst:1974
msgid "" msgid ""
"The appropriate metaclass for a class definition is determined as follows:" "The appropriate metaclass for a class definition is determined as follows:"
msgstr "" msgstr ""
"La méta-classe appropriée pour une définition de classe est déterminée de la " "La métaclasse appropriée pour une définition de classe est déterminée de la "
"manière suivante :" "manière suivante :"
#: reference/datamodel.rst:1976 #: reference/datamodel.rst:1976
@ -3461,17 +3490,16 @@ msgid ""
"if an explicit metaclass is given and it is *not* an instance of :func:" "if an explicit metaclass is given and it is *not* an instance of :func:"
"`type`, then it is used directly as the metaclass;" "`type`, then it is used directly as the metaclass;"
msgstr "" msgstr ""
"si une méta-classe explicite est donnée et que *ce n'est pas* une instance " "si une métaclasse explicite est donnée et que *ce n'est pas* une instance "
"de :func:`type`, alors elle est utilisée directement en tant que méta-" "de :func:`type`, alors elle est utilisée directement en tant que métaclasse ;"
"classe ;"
#: reference/datamodel.rst:1979 #: reference/datamodel.rst:1979
msgid "" msgid ""
"if an instance of :func:`type` is given as the explicit metaclass, or bases " "if an instance of :func:`type` is given as the explicit metaclass, or bases "
"are defined, then the most derived metaclass is used." "are defined, then the most derived metaclass is used."
msgstr "" msgstr ""
"Si une instance de :func:`type` est donnée comme méta-classe explicite ou si " "si une instance de :func:`type` est donnée comme métaclasse explicite ou si "
"*bases* est définie, alors la méta-classe la plus dérivée est utilisée." "*bases* est définie, alors la métaclasse la plus dérivée est utilisée."
#: reference/datamodel.rst:1982 #: reference/datamodel.rst:1982
msgid "" msgid ""
@ -3481,11 +3509,11 @@ msgid ""
"of these candidate metaclasses. If none of the candidate metaclasses meets " "of these candidate metaclasses. If none of the candidate metaclasses meets "
"that criterion, then the class definition will fail with ``TypeError``." "that criterion, then the class definition will fail with ``TypeError``."
msgstr "" msgstr ""
"La méta-classe la plus dérivée est choisie à partir des méta-classes " "La métaclasse la plus dérivée est choisie à partir des métaclasses "
"explicitement spécifiées (s'il y en a) et les méta-classes (c'est-à-dire les " "explicitement spécifiées (s'il y en a) et les métaclasses (c'est-à-dire les "
"``type(cls)``) de toutes les classes de base spécifiées. La méta-classe la " "``type(cls)``) de toutes les classes de base spécifiées. La métaclasse la "
"plus dérivée est celle qui est un sous-type de *toutes* ces méta-classes " "plus dérivée est celle qui est un sous-type de *toutes* ces métaclasses "
"candidates. Si aucune des méta-classes candidates ne remplit ce critère, " "candidates. Si aucune des métaclasses candidates ne remplit ce critère, "
"alors la définition de la classe échoue en levant ``TypeError``." "alors la définition de la classe échoue en levant ``TypeError``."
#: reference/datamodel.rst:1992 #: reference/datamodel.rst:1992
@ -3503,28 +3531,28 @@ msgid ""
"the final class object is created the namespace is copied into a new " "the final class object is created the namespace is copied into a new "
"``dict``." "``dict``."
msgstr "" msgstr ""
"Une fois que la méta-classe appropriée est identifiée, l'espace de nommage " "Une fois que la métaclasse appropriée est identifiée, l'espace de nommage de "
"de la classe est préparé. Si la méta-classe possède un attribut " "la classe est préparé. Si la métaclasse possède un attribut ``__prepare__``, "
"``__prepare__``, il est appelé avec ``namespace = metaclass." "il est appelé avec ``namespace = metaclass.__prepare__(name, bases, "
"__prepare__(name, bases, **kwds)`` (où les arguments nommés supplémentaires, " "**kwds)`` (où les arguments nommés supplémentaires, s'il y en a, sont les "
"s'il y en a, sont les arguments de la définition de la classe). La méthode " "arguments de la définition de la classe). La méthode ``__prepare__`` doit "
"``__prepare__`` doit être implémentée comme une méthode de classe (:func:" "être implémentée comme une méthode de classe (:func:`classmethod`). Lespace "
"`classmethod`). Lespace de nommage renvoyé par ``__prepare__`` est passé à " "de nommage renvoyé par ``__prepare__`` est passé à ``__new__``, mais quand "
"``__new__``, mais quand linstance finale est créée, lespace de nommage est " "linstance finale est créée, lespace de nommage est copié vers un nouveau "
"copié vers un nouveau ``dict``." "``dict``."
#: reference/datamodel.rst:2005 #: reference/datamodel.rst:2005
msgid "" msgid ""
"If the metaclass has no ``__prepare__`` attribute, then the class namespace " "If the metaclass has no ``__prepare__`` attribute, then the class namespace "
"is initialised as an empty ordered mapping." "is initialised as an empty ordered mapping."
msgstr "" msgstr ""
"Si la méta-classe ne possède pas d'attribut ``__prepare__``, alors l'espace " "Si la métaclasse ne possède pas d'attribut ``__prepare__``, alors l'espace "
"de nommage de la classe est initialisé en tant que tableau de " "de nommage de la classe est initialisé en tant que tableau de "
"correspondances ordonné." "correspondances ordonné."
#: reference/datamodel.rst:2010 #: reference/datamodel.rst:2010
msgid ":pep:`3115` - Metaclasses in Python 3000" msgid ":pep:`3115` - Metaclasses in Python 3000"
msgstr ":pep:`3115` — Méta-classes dans Python 3000" msgstr ":pep:`3115` — Métaclasses dans Python 3000"
#: reference/datamodel.rst:2011 #: reference/datamodel.rst:2011
msgid "Introduced the ``__prepare__`` namespace hook" msgid "Introduced the ``__prepare__`` namespace hook"
@ -3609,11 +3637,11 @@ msgid ""
"initialised correctly. Failing to do so will result in a :exc:`RuntimeError` " "initialised correctly. Failing to do so will result in a :exc:`RuntimeError` "
"in Python 3.8." "in Python 3.8."
msgstr "" msgstr ""
"Dans CPython 3.6 et suivants, la cellule ``__class__`` est passée à la méta-" "Dans CPython 3.6 et suivants, la cellule ``__class__`` est passée à la "
"classe en tant qu'entrée ``__classcell__`` dans l'espace de nommage de la " "métaclasse en tant qu'entrée ``__classcell__`` dans l'espace de nommage de "
"classe. Si elle est présente, elle doit être propagée à l'appel ``type .__ " "la classe. Si elle est présente, elle doit être propagée à l'appel ``type."
"new__`` pour que la classe soit correctement initialisée. Ne pas le faire se " "__new__`` pour que la classe soit correctement initialisée. Ne pas le faire "
"traduit par un :exc:`RuntimeError` dans Python 3.8." "se traduit par un :exc:`RuntimeError` dans Python 3.8."
#: reference/datamodel.rst:2063 #: reference/datamodel.rst:2063
msgid "" msgid ""
@ -3621,8 +3649,8 @@ msgid ""
"ultimately calls ``type.__new__``, the following additional customisation " "ultimately calls ``type.__new__``, the following additional customisation "
"steps are invoked after creating the class object:" "steps are invoked after creating the class object:"
msgstr "" msgstr ""
"Quand vous utilisez la méta-classe par défaut :class:`type` ou toute autre " "Quand vous utilisez la métaclasse par défaut :class:`type` ou toute autre "
"méta-classe qui finit par appeler ``type.__new__``, les étapes de " "métaclasse qui finit par appeler ``type.__new__``, les étapes de "
"personnalisation supplémentaires suivantes sont suivies après la création de " "personnalisation supplémentaires suivantes sont suivies après la création de "
"l'objet classe :" "l'objet classe :"
@ -3697,7 +3725,7 @@ msgid ""
"automatic property creation, proxies, frameworks, and automatic resource " "automatic property creation, proxies, frameworks, and automatic resource "
"locking/synchronization." "locking/synchronization."
msgstr "" msgstr ""
"Les utilisations possibles des méta-classes sont immenses. Quelques pistes " "Les utilisations possibles des métaclasses sont immenses. Quelques pistes "
"ont déjà été explorées comme l'énumération, la gestion des traces, le " "ont déjà été explorées comme l'énumération, la gestion des traces, le "
"contrôle des interfaces, la délégation automatique, la création automatique " "contrôle des interfaces, la délégation automatique, la création automatique "
"de propriétés, les mandataires, les *frameworks* ainsi que le verrouillage " "de propriétés, les mandataires, les *frameworks* ainsi que le verrouillage "
@ -3722,7 +3750,7 @@ msgid ""
"base classes\" to any class or type (including built-in types), including " "base classes\" to any class or type (including built-in types), including "
"other ABCs." "other ABCs."
msgstr "" msgstr ""
"En particulier, la méta-classe :class:`abc.ABCMeta` implémente ces méthodes " "En particulier, la métaclasse :class:`abc.ABCMeta` implémente ces méthodes "
"pour autoriser l'ajout de classes de base abstraites (ABC pour *Abstract " "pour autoriser l'ajout de classes de base abstraites (ABC pour *Abstract "
"Base Classes* en anglais) en tant que « classes de base virtuelles » pour " "Base Classes* en anglais) en tant que « classes de base virtuelles » pour "
"toute classe ou type (y compris les types natifs)." "toute classe ou type (y compris les types natifs)."
@ -3754,7 +3782,7 @@ msgid ""
"consistent with the lookup of special methods that are called on instances, " "consistent with the lookup of special methods that are called on instances, "
"only in this case the instance is itself a class." "only in this case the instance is itself a class."
msgstr "" msgstr ""
"Notez que ces méthodes sont recherchées dans le type (la méta-classe) d'une " "Notez que ces méthodes sont recherchées dans le type (la métaclasse) d'une "
"classe. Elles ne peuvent pas être définies en tant que méthodes de classe " "classe. Elles ne peuvent pas être définies en tant que méthodes de classe "
"dans la classe réelle. C'est cohérent avec la recherche des méthodes " "dans la classe réelle. C'est cohérent avec la recherche des méthodes "
"spéciales qui sont appelées pour les instances, sauf qu'ici l'instance est " "spéciales qui sont appelées pour les instances, sauf qu'ici l'instance est "
@ -3817,15 +3845,14 @@ msgid "Emulating callable objects"
msgstr "Émulation d'objets appelables" msgstr "Émulation d'objets appelables"
#: reference/datamodel.rst:2169 #: reference/datamodel.rst:2169
#, fuzzy
msgid "" msgid ""
"Called when the instance is \"called\" as a function; if this method is " "Called when the instance is \"called\" as a function; if this method is "
"defined, ``x(arg1, arg2, ...)`` roughly translates to ``type(x).__call__(x, " "defined, ``x(arg1, arg2, ...)`` roughly translates to ``type(x).__call__(x, "
"arg1, ...)``." "arg1, ...)``."
msgstr "" msgstr ""
"Appelée quand l'instance est « appelée » en tant que fonction ; si la " "Appelée quand l'instance est « appelée » en tant que fonction ; si la "
"méthode est définie, ``x(arg1, arg2, ...)`` est un raccourci pour ``x." "méthode est définie, ``x(arg1, arg2, …)`` est un raccourci pour ``type(x)."
"__call__(arg1, arg2, ...)``." "__call__(x, arg1, …)``."
#: reference/datamodel.rst:2176 #: reference/datamodel.rst:2176
msgid "Emulating container types" msgid "Emulating container types"
@ -4186,7 +4213,6 @@ msgstr ""
"`__rpow__` (les règles de coercition seraient trop compliquées)." "`__rpow__` (les règles de coercition seraient trop compliquées)."
#: reference/datamodel.rst:2416 #: reference/datamodel.rst:2416
#, fuzzy
msgid "" msgid ""
"If the right operand's type is a subclass of the left operand's type and " "If the right operand's type is a subclass of the left operand's type and "
"that subclass provides a different implementation of the reflected method " "that subclass provides a different implementation of the reflected method "
@ -4195,10 +4221,10 @@ msgid ""
"ancestors' operations." "ancestors' operations."
msgstr "" msgstr ""
"Si le type de l'opérande de droite est une sous-classe du type de l'opérande " "Si le type de l'opérande de droite est une sous-classe du type de l'opérande "
"de gauche et que cette sous-classe fournit la méthode symétrique pour " "de gauche et que cette sous-classe fournit une implémentation différente de "
"l'opération, cette méthode sera appelée avant la méthode originelle de " "la méthode symétrique pour l'opération, cette méthode est appelée avant la "
"l'opérande gauche. Ce comportement permet à des sous-classes de surcharger " "méthode originelle de l'opérande gauche. Ce comportement permet à des sous-"
"les opérations de leurs ancêtres." "classes de surcharger les opérations de leurs ancêtres."
#: reference/datamodel.rst:2437 #: reference/datamodel.rst:2437
msgid "" msgid ""
@ -4223,18 +4249,23 @@ msgstr ""
"*self*). Si une méthode spécifique n'est pas définie, l'assignation " "*self*). Si une méthode spécifique n'est pas définie, l'assignation "
"augmentée se replie vers la méthode normale correspondante. Par exemple, si " "augmentée se replie vers la méthode normale correspondante. Par exemple, si "
"*x* est une instance d'une classe qui possède une méthode :meth:`__iadd__`, " "*x* est une instance d'une classe qui possède une méthode :meth:`__iadd__`, "
"``x += y`` est équivalent à ``x = x.__iadd__(y)`` . Sinon, ``x.__add__(y)`` " "``x += y`` est équivalent à ``x = x.__iadd__(y)``. Sinon, ``x.__add__(y)`` "
"et ``y.__radd__(x)`` sont essayées, comme pour l'évaluation de ``x + y``. " "et ``y.__radd__(x)`` sont essayées, comme pour l'évaluation de ``x + y``. "
"Dans certaines situations, les assignations augmentées peuvent causer des " "Dans certaines situations, les assignations augmentées peuvent causer des "
"erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais " "erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais "
"ce comportement est en fait partie intégrante du modèle de données." "ce comportement est en fait partie intégrante du modèle de données."
# Pas de majuscule car suit un ':' dans le rendu.
#: reference/datamodel.rst:2452 #: reference/datamodel.rst:2452
msgid "" msgid ""
"Due to a bug in the dispatching mechanism for ``**=``, a class that defines :" "Due to a bug in the dispatching mechanism for ``**=``, a class that defines :"
"meth:`__ipow__` but returns ``NotImplemented`` would fail to fall back to " "meth:`__ipow__` but returns ``NotImplemented`` would fail to fall back to "
"``x.__pow__(y)`` and ``y.__rpow__(x)``. This bug is fixed in Python 3.10." "``x.__pow__(y)`` and ``y.__rpow__(x)``. This bug is fixed in Python 3.10."
msgstr "" msgstr ""
"en raison d'un bogue dans le mécanisme de distribution de ``**=``, une "
"classe qui définit :meth:`__ipow__` mais qui renvoie ``NotImplemented`` "
"n'arriverait pas à se replier sur ``x.__pow__(y)`` et ``y.__rpow__(x)``. Ce "
"bogue est corrigé dans Python 3.10."
#: reference/datamodel.rst:2465 #: reference/datamodel.rst:2465
msgid "" msgid ""
@ -4425,7 +4456,7 @@ msgid ""
"the instance when looking up special methods::" "the instance when looking up special methods::"
msgstr "" msgstr ""
"Essayer d'invoquer une méthode non liée d'une classe de cette manière est " "Essayer d'invoquer une méthode non liée d'une classe de cette manière est "
"parfois appelé « confusion de méta-classe » et se contourne en shuntant " "parfois appelé « confusion de métaclasse » et se contourne en shuntant "
"l'instance lors de la recherche des méthodes spéciales ::" "l'instance lors de la recherche des méthodes spéciales ::"
#: reference/datamodel.rst:2605 #: reference/datamodel.rst:2605
@ -4436,7 +4467,7 @@ msgid ""
msgstr "" msgstr ""
"En plus de shunter les attributs des instances pour fonctionner " "En plus de shunter les attributs des instances pour fonctionner "
"correctement, la recherche des méthodes spéciales implicites shunte aussi la " "correctement, la recherche des méthodes spéciales implicites shunte aussi la "
"méthode :meth:`__getattribute__` même dans la méta-classe de l'objet ::" "méthode :meth:`__getattribute__` même dans la métaclasse de l'objet ::"
#: reference/datamodel.rst:2631 #: reference/datamodel.rst:2631
msgid "" msgid ""
@ -4461,14 +4492,13 @@ msgid "Awaitable Objects"
msgstr "Objets *attendables* (*awaitable*)" msgstr "Objets *attendables* (*awaitable*)"
#: reference/datamodel.rst:2648 #: reference/datamodel.rst:2648
#, fuzzy
msgid "" msgid ""
"An :term:`awaitable` object generally implements an :meth:`__await__` " "An :term:`awaitable` object generally implements an :meth:`__await__` "
"method. :term:`Coroutine objects <coroutine>` returned from :keyword:`async " "method. :term:`Coroutine objects <coroutine>` returned from :keyword:`async "
"def` functions are awaitable." "def` functions are awaitable."
msgstr "" msgstr ""
"Un objet :term:`awaitable` implémente généralement une méthode :meth:" "Un objet :term:`awaitable` implémente généralement une méthode :meth:"
"`__await__`. Les objets :term:`Coroutine` renvoyés par les fonctions :" "`__await__`. Les objets :term:`coroutine` renvoyés par les fonctions :"
"keyword:`async def` sont des *attendables* (*awaitable*)." "keyword:`async def` sont des *attendables* (*awaitable*)."
#: reference/datamodel.rst:2654 #: reference/datamodel.rst:2654
@ -4503,7 +4533,6 @@ msgid "Coroutine Objects"
msgstr "Objets coroutines" msgstr "Objets coroutines"
#: reference/datamodel.rst:2674 #: reference/datamodel.rst:2674
#, fuzzy
msgid "" msgid ""
":term:`Coroutine objects <coroutine>` are :term:`awaitable` objects. A " ":term:`Coroutine objects <coroutine>` are :term:`awaitable` objects. A "
"coroutine's execution can be controlled by calling :meth:`__await__` and " "coroutine's execution can be controlled by calling :meth:`__await__` and "
@ -4513,7 +4542,7 @@ msgid ""
"raises an exception, it is propagated by the iterator. Coroutines should " "raises an exception, it is propagated by the iterator. Coroutines should "
"not directly raise unhandled :exc:`StopIteration` exceptions." "not directly raise unhandled :exc:`StopIteration` exceptions."
msgstr "" msgstr ""
"Les objets :term:`Coroutine` sont des objets :term:`awaitable`. L'exécution " "Les objets :term:`coroutine` sont des objets :term:`awaitable`. L'exécution "
"d'une coroutine peut être contrôlée en appelant :meth:`__await__` et en " "d'une coroutine peut être contrôlée en appelant :meth:`__await__` et en "
"itérant sur le résultat. Quand la coroutine a fini de s'exécuter et termine, " "itérant sur le résultat. Quand la coroutine a fini de s'exécuter et termine, "
"l'itérateur lève :exc:`StopIteration` et l'attribut :attr:`~StopIteration." "l'itérateur lève :exc:`StopIteration` et l'attribut :attr:`~StopIteration."
@ -4732,12 +4761,11 @@ msgstr ""
"l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli." "l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli."
#: reference/datamodel.rst:2819 #: reference/datamodel.rst:2819
#, fuzzy
msgid "" msgid ""
"For operands of the same type, it is assumed that if the non-reflected " "For operands of the same type, it is assumed that if the non-reflected "
"method -- such as :meth:`__add__` -- fails then the overall operation is not " "method -- such as :meth:`__add__` -- fails then the overall operation is not "
"supported, which is why the reflected method is not called." "supported, which is why the reflected method is not called."
msgstr "" msgstr ""
"Pour des opérandes de même type, on considère que si la méthode originelle " "Pour des opérandes de même type, on considère que si la méthode originelle "
"(telle que :meth:`__add__`) échoue, l'opération n'est pas autorisée et donc " "(telle que :meth:`__add__`) échoue, alors l'opération en tant que telle "
"la méthode symétrique n'est pas appelée." "n'est pas autorisée et donc la méthode symétrique n'est pas appelée."

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2020-08-24 09:01+0200\n"
"PO-Revision-Date: 2019-05-23 21:53+0200\n" "PO-Revision-Date: 2021-04-09 23:45+0200\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n" "Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -24,7 +24,6 @@ msgid "Structure of a program"
msgstr "Structure d'un programme" msgstr "Structure d'un programme"
#: reference/executionmodel.rst:19 #: reference/executionmodel.rst:19
#, fuzzy
msgid "" msgid ""
"A Python program is constructed from code blocks. A :dfn:`block` is a piece " "A Python program is constructed from code blocks. A :dfn:`block` is a piece "
"of Python program text that is executed as a unit. The following are blocks: " "of Python program text that is executed as a unit. The following are blocks: "
@ -37,17 +36,19 @@ msgid ""
"option:`-m` argument is also a code block. The string argument passed to the " "option:`-m` argument is also a code block. The string argument passed to the "
"built-in functions :func:`eval` and :func:`exec` is a code block." "built-in functions :func:`eval` and :func:`exec` is a code block."
msgstr "" msgstr ""
"Un programme Python est construit à partir de blocs de code. Un :dfn:`block` " "Un programme Python est construit à partir de blocs de code. Un :dfn:`bloc "
"est un morceau de texte de programme Python qui est exécuté en tant " "<block>` est un morceau de texte de programme Python qui est exécuté en tant "
"qu'unité. Les éléments suivants sont des blocs : un module, un corps de " "qu'unité. Les éléments suivants sont des blocs : un module, un corps de "
"fonction et une définition de classe. Chaque commande écrite dans " "fonction et une définition de classe. Chaque commande écrite dans "
"l'interpréteur interactif de Python est un bloc. Un fichier de script (un " "l'interpréteur interactif de Python est un bloc. Un fichier de script (un "
"fichier donné en entrée standard à l'interpréteur ou spécifié en tant " "fichier donné en entrée standard à l'interpréteur ou spécifié en tant "
"qu'argument de ligne de commande à l'interpréteur) est un bloc de code. Une " "qu'argument de ligne de commande à l'interpréteur) est un bloc de code. Une "
"commande de script (une commande spécifiée sur la ligne de commande de " "commande de script (une commande spécifiée en ligne de commande à "
"l'interpréteur avec l'option :option:`-c`) est un bloc de code. La chaîne " "l'interpréteur avec l'option :option:`-c`) est un bloc de code. Un module "
"passée en argument aux fonctions natives :func:`eval` et :func:`exec` est un " "exécuté en tant que script principal (module ``__main__``) depuis la ligne "
"bloc de code." "de commande en utilisant l'option :option:`-m` est aussi un bloc de code. La "
"chaîne passée en argument aux fonctions natives :func:`eval` et :func:`exec` "
"est un bloc de code."
#: reference/executionmodel.rst:33 #: reference/executionmodel.rst:33
msgid "" msgid ""

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-02-24 17:33+0100\n" "POT-Creation-Date: 2021-02-24 17:33+0100\n"
"PO-Revision-Date: 2020-05-30 21:58+0900\n" "PO-Revision-Date: 2021-04-10 16:57+0200\n"
"Last-Translator: Samuel Giffard <samuel@giffard.co>\n" "Last-Translator: Samuel Giffard <samuel@giffard.co>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -733,7 +733,6 @@ msgstr ""
"toutes les clauses :keyword:`finally` en attente." "toutes les clauses :keyword:`finally` en attente."
#: reference/expressions.rst:479 #: reference/expressions.rst:479
#, fuzzy
msgid "" msgid ""
"When ``yield from <expr>`` is used, the supplied expression must be an " "When ``yield from <expr>`` is used, the supplied expression must be an "
"iterable. The values produced by iterating that iterable are passed directly " "iterable. The values produced by iterating that iterable are passed directly "
@ -744,15 +743,14 @@ msgid ""
"exc:`AttributeError` or :exc:`TypeError`, while :meth:`~generator.throw` " "exc:`AttributeError` or :exc:`TypeError`, while :meth:`~generator.throw` "
"will just raise the passed in exception immediately." "will just raise the passed in exception immediately."
msgstr "" msgstr ""
"L'utilisation de ``yield from <expr>`` traite l'expression passée en " "L'expression passée à ``yield from <expr>`` doit être un itérateur. Toutes "
"paramètre comme un sous-itérateur. Toutes les valeurs produites par ce sous-" "les valeurs produites par cet itérateur sont directement passées à "
"itérateur sont directement passées à l'appelant des méthodes du générateur " "l'appelant des méthodes du générateur courant. Toute valeur passée par :meth:"
"courant. Toute valeur passée par :meth:`~generator.send` ou toute exception " "`~generator.send` ou toute exception passée par :meth:`~generator.throw` est "
"passée par :meth:`~generator.throw` est transmise à l'itérateur sous-jacent " "transmise à l'itérateur sous-jacent s'il possède les méthodes appropriées. "
"s'il possède les méthodes appropriées. Si ce n'est pas le cas, alors :meth:" "Si ce n'est pas le cas, alors :meth:`~generator.send` lève une :exc:"
"`~generator.send` lève une :exc:`AttributeError` ou une :exc:`TypeError`, " "`AttributeError` ou une :exc:`TypeError`, alors que :meth:`~generator.throw` "
"alors que :meth:`~generator.throw` ne fait que propager l'exception " "ne fait que propager l'exception immédiatement."
"immédiatement."
#: reference/expressions.rst:488 #: reference/expressions.rst:488
msgid "" msgid ""
@ -784,7 +782,7 @@ msgstr ""
#: reference/expressions.rst:503 #: reference/expressions.rst:503
msgid ":pep:`255` - Simple Generators" msgid ":pep:`255` - Simple Generators"
msgstr ":pep:`255` : Générateurs simples" msgstr ":pep:`255` : générateurs simples"
#: reference/expressions.rst:503 #: reference/expressions.rst:503
msgid "" msgid ""
@ -1234,14 +1232,13 @@ msgid "Subscriptions"
msgstr "Sélections" msgstr "Sélections"
#: reference/expressions.rst:803 #: reference/expressions.rst:803
#, fuzzy
msgid "" msgid ""
"Subscription of a sequence (string, tuple or list) or mapping (dictionary) " "Subscription of a sequence (string, tuple or list) or mapping (dictionary) "
"object usually selects an item from the collection:" "object usually selects an item from the collection:"
msgstr "" msgstr ""
"Une sélection (*subscription* dans la grammaire formelle ci-dessous) désigne " "Une sélection (*subscription* dans la grammaire formelle ci-dessous) dans un "
"un élément dans un objet séquence (chaîne, *n*-uplet ou liste) ou tableau de " "objet séquence (chaîne, *n*-uplet ou liste) ou tableau associatif "
"correspondances (dictionnaire) :" "(dictionnaire) désigne un élément dans cette séquence :"
#: reference/expressions.rst:809 #: reference/expressions.rst:809
msgid "" msgid ""
@ -1321,6 +1318,10 @@ msgid ""
"defined classes can support subscription by providing a :meth:" "defined classes can support subscription by providing a :meth:"
"`__class_getitem__` classmethod." "`__class_getitem__` classmethod."
msgstr "" msgstr ""
"La sélection dans certains :term:`classes <class>` ou :term:`types <type>` "
"crée un :ref:`alias générique <types-genericalias>`. Dans ce cas, les "
"classes définies par l'utilisateur peuvent gérer la sélection en fournissant "
"une méthode de classe :meth:`__class_getitem__`."
#: reference/expressions.rst:849 #: reference/expressions.rst:849
msgid "Slicings" msgid "Slicings"
@ -1406,7 +1407,7 @@ msgid ""
"arguments but does not affect the semantics." "arguments but does not affect the semantics."
msgstr "" msgstr ""
"Une virgule finale (optionnelle) peut être présente, après les arguments " "Une virgule finale (optionnelle) peut être présente, après les arguments "
"positionnels et par mots-clés, mais elle n'affecte pas la sémantique." "positionnels et nommés, mais elle n'affecte pas la sémantique."
#: reference/expressions.rst:937 #: reference/expressions.rst:937
msgid "" msgid ""
@ -1492,7 +1493,7 @@ msgstr ""
"une exception :exc:`TypeError` est levée, à moins qu'un paramètre formel " "une exception :exc:`TypeError` est levée, à moins qu'un paramètre formel "
"n'utilise la syntaxe ``*identifier`` ; dans ce cas, le paramètre formel " "n'utilise la syntaxe ``*identifier`` ; dans ce cas, le paramètre formel "
"reçoit un *n*-uplet contenant les arguments positionnels en supplément (ou " "reçoit un *n*-uplet contenant les arguments positionnels en supplément (ou "
"un *n*-uplet vide s'il n'y avait pas d'arguments positionnel en trop)." "un *n*-uplet vide s'il n'y avait pas d'argument positionnel en trop)."
#: reference/expressions.rst:977 #: reference/expressions.rst:977
msgid "" msgid ""
@ -1524,8 +1525,8 @@ msgstr ""
"``expression`` doit pouvoir s'évaluer à un :term:`itérable <iterable>`. Les " "``expression`` doit pouvoir s'évaluer à un :term:`itérable <iterable>`. Les "
"éléments de ces itérables sont traités comme s'ils étaient des arguments " "éléments de ces itérables sont traités comme s'ils étaient des arguments "
"positionnels supplémentaires. Pour l'appel ``f(x1, x2, *y, x3, x4)``, si *y* " "positionnels supplémentaires. Pour l'appel ``f(x1, x2, *y, x3, x4)``, si *y* "
"s'évalue comme une séquence *y1*, ..., *yM*, c'est équivalent à un appel " "s'évalue comme une séquence *y1* … *yM*, c'est équivalent à un appel avec M"
"avec M+4 arguments positionnels *x1*, *x2*, *y1*, ..., *yM*, *x3*, *x4*." "+4 arguments positionnels *x1*, *x2*, *y1* … *yM*, *x3*, *x4*."
#: reference/expressions.rst:995 #: reference/expressions.rst:995
msgid "" msgid ""
@ -1534,9 +1535,9 @@ msgid ""
"arguments (and any ``**expression`` arguments -- see below). So::" "arguments (and any ``**expression`` arguments -- see below). So::"
msgstr "" msgstr ""
"Une conséquence est que bien que la syntaxe ``*expression`` puisse " "Une conséquence est que bien que la syntaxe ``*expression`` puisse "
"apparaître *après* les arguments par mots-clés explicites, ils sont traités " "apparaître *après* les arguments par nommés explicites, ils sont traités "
"*avant* les arguments par mots-clés (et avant tout argument ``**expression`` " "*avant* les arguments nommés (et avant tout argument ``**expression`` -- "
"-- voir ci-dessous). Ainsi ::" "voir ci-dessous). Ainsi ::"
#: reference/expressions.rst:1011 #: reference/expressions.rst:1011
msgid "" msgid ""
@ -2012,10 +2013,10 @@ msgid ""
"z`` is equivalent to ``a op1 b and b op2 c and ... y opN z``, except that " "z`` is equivalent to ``a op1 b and b op2 c and ... y opN z``, except that "
"each expression is evaluated at most once." "each expression is evaluated at most once."
msgstr "" msgstr ""
"Formellement, si *a*, *b*, *c*, ..., *y*, *z* sont des expressions et *op1*, " "Formellement, si *a*, *b*, *c* *y*, *z* sont des expressions et *op1*, "
"*op2*, ..., *opN* sont des opérateurs de comparaison, alors ``a op1 b op2 " "*op2* *opN* sont des opérateurs de comparaison, alors ``a op1 b op2 c … y "
"c ... y opN z`` est équivalent à ``a op1 b and b op2 c and ... y opN z``, " "opN z`` est équivalent à ``a op1 b and b op2 c and … y opN z``, sauf que "
"sauf que chaque expression est évaluée au maximum une fois." "chaque expression est évaluée au maximum une fois."
#: reference/expressions.rst:1379 #: reference/expressions.rst:1379
msgid "" msgid ""
@ -2591,14 +2592,19 @@ msgid ""
"\"walrus\") assigns an :token:`expression` to an :token:`identifier`, while " "\"walrus\") assigns an :token:`expression` to an :token:`identifier`, while "
"also returning the value of the :token:`expression`." "also returning the value of the :token:`expression`."
msgstr "" msgstr ""
"Une expression d'affectation (parfois aussi appelée « expression nommée » ou "
 expression morse ») affecte l':token:`expression` à un :token:"
"`identifiant` et renvoie la valeur de l':token:`expression`."
#: reference/expressions.rst:1666 #: reference/expressions.rst:1666
msgid "One common use case is when handling matched regular expressions:" msgid "One common use case is when handling matched regular expressions:"
msgstr "" msgstr ""
"Une utilisation classique concerne les correspondances d'expressions "
"rationnelles :"
#: reference/expressions.rst:1673 #: reference/expressions.rst:1673
msgid "Or, when processing a file stream in chunks:" msgid "Or, when processing a file stream in chunks:"
msgstr "" msgstr "Ou lorsqu'on traite le contenu d'un fichier par morceaux :"
#: reference/expressions.rst:1680 #: reference/expressions.rst:1680
msgid "See :pep:`572` for more details about assignment expressions." msgid "See :pep:`572` for more details about assignment expressions."
@ -2742,9 +2748,9 @@ msgstr ""
"Le tableau suivant résume les priorités des opérateurs en Python, du moins " "Le tableau suivant résume les priorités des opérateurs en Python, du moins "
"prioritaire au plus prioritaire. Les opérateurs qui sont dans la même case " "prioritaire au plus prioritaire. Les opérateurs qui sont dans la même case "
"ont la même priorité. À moins que la syntaxe ne soit explicitement indiquée, " "ont la même priorité. À moins que la syntaxe ne soit explicitement indiquée, "
"les opérateurs sont binaires. Les opérateurs dans la même cases regroupent " "les opérateurs sont binaires. Les opérateurs dans la même case regroupent de "
"de la gauche vers la droite (sauf pour la puissance qui regroupe de la " "la gauche vers la droite (sauf pour la puissance qui regroupe de la droite "
"droite vers la gauche)." "vers la gauche)."
#: reference/expressions.rst:1818 #: reference/expressions.rst:1818
msgid "" msgid ""
@ -2786,7 +2792,7 @@ msgstr ":keyword:`if <if_expr>` -- :keyword:`!else`"
#: reference/expressions.rst:1830 #: reference/expressions.rst:1830
msgid "Conditional expression" msgid "Conditional expression"
msgstr "Expressions conditionnelle" msgstr "Expressions conditionnelles"
#: reference/expressions.rst:1832 #: reference/expressions.rst:1832
msgid ":keyword:`or`" msgid ":keyword:`or`"
@ -2899,8 +2905,7 @@ msgstr ":keyword:`await` ``x``"
#: reference/expressions.rst:1862 #: reference/expressions.rst:1862
msgid "``x[index]``, ``x[index:index]``, ``x(arguments...)``, ``x.attribute``" msgid "``x[index]``, ``x[index:index]``, ``x(arguments...)``, ``x.attribute``"
msgstr "" msgstr "``x[indice]``, ``x[indice:indice]``, ``x(arguments…)``, ``x.attribut``"
"``x[indice]``, ``x[indice:indice]``, ``x(arguments...)``, ``x.attribut``"
#: reference/expressions.rst:1862 #: reference/expressions.rst:1862
msgid "Subscription, slicing, call, attribute reference" msgid "Subscription, slicing, call, attribute reference"
@ -2908,11 +2913,11 @@ msgstr "indiçage, tranches, appel, référence à un attribut"
#: reference/expressions.rst:1865 #: reference/expressions.rst:1865
msgid "``(expressions...)``," msgid "``(expressions...)``,"
msgstr "``(expressions...)``," msgstr "``(expressions)``,"
#: reference/expressions.rst:1867 #: reference/expressions.rst:1867
msgid "``[expressions...]``, ``{key: value...}``, ``{expressions...}``" msgid "``[expressions...]``, ``{key: value...}``, ``{expressions...}``"
msgstr "``[expressions...]``, ``{key: value...}``, ``{expressions...}``" msgstr "``[expressions…]``, ``{key: value…}``, ``{expressions…}``"
#: reference/expressions.rst:1865 #: reference/expressions.rst:1865
msgid "" msgid ""

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2020-08-24 09:01+0200\n"
"PO-Revision-Date: 2018-10-05 08:42+0200\n" "PO-Revision-Date: 2021-04-10 16:30+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n" "Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -24,6 +24,10 @@ msgid ""
"generate the CPython parser (see :source:`Grammar/python.gram`). The version " "generate the CPython parser (see :source:`Grammar/python.gram`). The version "
"here omits details related to code generation and error recovery." "here omits details related to code generation and error recovery."
msgstr "" msgstr ""
"Ceci est la grammaire complète de Python, issue directement de la grammaire "
"utilisée pour générer l'analyseur syntaxique CPython (voir :source:`Grammar/"
"python.gram`). La version ci-dessous ne comprend pas les détails relatifs à "
"la génération de code et la reprise sur erreur."
#: reference/grammar.rst:9 #: reference/grammar.rst:9
msgid "" msgid ""
@ -35,6 +39,14 @@ msgid ""
"lookahead (i.e., is required _not_ to match). We use the ``|`` separator to " "lookahead (i.e., is required _not_ to match). We use the ``|`` separator to "
"mean PEG's \"ordered choice\" (written as ``/`` in traditional PEG grammars)." "mean PEG's \"ordered choice\" (written as ``/`` in traditional PEG grammars)."
msgstr "" msgstr ""
"La notation est un mélange d'\\ `EBNF <https://fr.wikipedia.org/wiki/"
"Extended_Backus-Naur_Form>`_ et `PEG <https://fr.wikipedia.org/wiki/"
"Parser_packrat>`_. En particulier, ``&`` suivi par un symbole, jeton ou un "
"groupe entre parenthèses indique que l'avant recherche est positive (c.-à-d. "
"que cela doit correspondre mais que ce n'est pas consommé), alors que ``!`` "
"indique une avant-recherche négative (c.-à-d. que cela doit ne pas "
"correspondre). Nous utilisons le ``|`` pour séparer les « choix ordonnés » "
"des grammaires PEG (c'est ``/`` qui est utilisé classiquement)."
#~ msgid "" #~ msgid ""
#~ "This is the full Python grammar, as it is read by the parser generator " #~ "This is the full Python grammar, as it is read by the parser generator "

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-12-17 16:05+0100\n" "POT-Creation-Date: 2020-12-17 16:05+0100\n"
"PO-Revision-Date: 2020-05-30 22:05+0900\n" "PO-Revision-Date: 2021-04-10 15:09+0200\n"
"Last-Translator: Samuel Giffard <samuel@giffard.co>\n" "Last-Translator: Samuel Giffard <samuel@giffard.co>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -179,7 +179,6 @@ msgstr ""
"qui contient un attribut ``__path__`` est réputé être un paquet." "qui contient un attribut ``__path__`` est réputé être un paquet."
#: reference/import.rst:85 #: reference/import.rst:85
#, fuzzy
msgid "" msgid ""
"All modules have a name. Subpackage names are separated from their parent " "All modules have a name. Subpackage names are separated from their parent "
"package name by a dot, akin to Python's standard attribute access syntax. " "package name by a dot, akin to Python's standard attribute access syntax. "
@ -188,7 +187,7 @@ msgid ""
"module within that subpackage called :mod:`email.mime.text`." "module within that subpackage called :mod:`email.mime.text`."
msgstr "" msgstr ""
"Tous les modules ont un nom. Les noms des sous-paquets sont séparés du nom " "Tous les modules ont un nom. Les noms des sous-paquets sont séparés du nom "
"du paquet parent par des points (`.`), à l'instar de la syntaxe standard " "du paquet parent par un point (`.`), à l'instar de la syntaxe standard "
"d'accès aux attributs en Python. Ainsi, vous pouvez avoir un module nommé :" "d'accès aux attributs en Python. Ainsi, vous pouvez avoir un module nommé :"
"mod:`sys` et un paquet nommé :mod:`email`, qui à son tour possède un sous-" "mod:`sys` et un paquet nommé :mod:`email`, qui à son tour possède un sous-"
"paquet nommé :mod:`email.mime` avec un module dans ce sous-paquet nommé :mod:" "paquet nommé :mod:`email.mime` avec un module dans ce sous-paquet nommé :mod:"
@ -1299,7 +1298,6 @@ msgid "Cached bytecode invalidation"
msgstr "Invalidation de *bytecode* mis en cache" msgstr "Invalidation de *bytecode* mis en cache"
#: reference/import.rst:683 #: reference/import.rst:683
#, fuzzy
msgid "" msgid ""
"Before Python loads cached bytecode from a ``.pyc`` file, it checks whether " "Before Python loads cached bytecode from a ``.pyc`` file, it checks whether "
"the cache is up-to-date with the source ``.py`` file. By default, Python " "the cache is up-to-date with the source ``.py`` file. By default, Python "
@ -1692,7 +1690,6 @@ msgstr ""
"(attribut `loader`) défini, à une exception près." "(attribut `loader`) défini, à une exception près."
#: reference/import.rst:859 #: reference/import.rst:859
#, fuzzy
msgid "" msgid ""
"To indicate to the import machinery that the spec represents a namespace :" "To indicate to the import machinery that the spec represents a namespace :"
"term:`portion`, the path entry finder sets \"submodule_search_locations\" to " "term:`portion`, the path entry finder sets \"submodule_search_locations\" to "
@ -1700,8 +1697,8 @@ msgid ""
msgstr "" msgstr ""
"Pour indiquer au mécanisme d'importation que le spécificateur représente " "Pour indiquer au mécanisme d'importation que le spécificateur représente "
"une :term:`portion <portion>` d'un espace de nommage, le chercheur d'entrée " "une :term:`portion <portion>` d'un espace de nommage, le chercheur d'entrée "
"dans *path* définit le chargeur du spécificateur à ``None`` et l'attribut " "dans *path* définit l'attribut *submodule_search_locations* à une liste "
"*submodule_search_locations* à une liste contenant la portion." "contenant la portion."
#: reference/import.rst:863 #: reference/import.rst:863
msgid "" msgid ""
@ -1729,18 +1726,16 @@ msgstr ""
"les méthodes historiques sont ignorées." "les méthodes historiques sont ignorées."
#: reference/import.rst:874 #: reference/import.rst:874
#, fuzzy
msgid "" msgid ""
":meth:`~importlib.abc.PathEntryFinder.find_loader` takes one argument, the " ":meth:`~importlib.abc.PathEntryFinder.find_loader` takes one argument, the "
"fully qualified name of the module being imported. ``find_loader()`` " "fully qualified name of the module being imported. ``find_loader()`` "
"returns a 2-tuple where the first item is the loader and the second item is " "returns a 2-tuple where the first item is the loader and the second item is "
"a namespace :term:`portion`." "a namespace :term:`portion`."
msgstr "" msgstr ""
"La méthode :meth:`~importlib.abc.PathEntryFinder.find_spec` prend deux " "La méthode :meth:`~importlib.abc.PathEntryFinder.find_spec` prend un "
"arguments : le nom complètement qualifié du module en cours d'importation et " "argument : le nom complètement qualifié du module en cours d'importation. "
"(optionnellement) le module cible. ``find_spec()`` renvoie un spécificateur " "\"``find_loader()`` renvoie un couple dont le premier élément est le "
"de module pleinement peuplé. Ce spécificateur doit avoir son chargeur " "chargeur et le second est une :term:`portion <portion>` d'espace de nommage."
"(attribut `loader`) défini, à une exception près."
#: reference/import.rst:879 #: reference/import.rst:879
msgid "" msgid ""

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-01 16:00+0200\n" "POT-Creation-Date: 2020-10-01 16:00+0200\n"
"PO-Revision-Date: 2020-06-05 17:39+0900\n" "PO-Revision-Date: 2021-04-10 17:40+0200\n"
"Last-Translator: Samuel Giffard <samuel@giffard.co>\n" "Last-Translator: Samuel Giffard <samuel@giffard.co>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -141,11 +141,11 @@ msgstr ""
"de cette expression désigne l'encodage du fichier source. Cette déclaration " "de cette expression désigne l'encodage du fichier source. Cette déclaration "
"d'encodage doit être seule sur sa ligne et, si elle est sur la deuxième " "d'encodage doit être seule sur sa ligne et, si elle est sur la deuxième "
"ligne, la première ligne doit aussi être une ligne composée uniquement d'un " "ligne, la première ligne doit aussi être une ligne composée uniquement d'un "
"commentaire. Les formes recommandées pour l'expression de l'encodage sont ::" "commentaire. Les formes recommandées pour l'expression de l'encodage sont ::"
#: reference/lexical_analysis.rst:93 #: reference/lexical_analysis.rst:93
msgid "which is recognized also by GNU Emacs, and ::" msgid "which is recognized also by GNU Emacs, and ::"
msgstr "qui est reconnue aussi par GNU Emacs et ::" msgstr "qui est reconnue aussi par GNU Emacs et ::"
#: reference/lexical_analysis.rst:97 #: reference/lexical_analysis.rst:97
msgid "which is recognized by Bram Moolenaar's VIM." msgid "which is recognized by Bram Moolenaar's VIM."
@ -527,13 +527,12 @@ msgid "*Pc* - connector punctuations"
msgstr "*Pc* — connecteurs (tirets et autres lignes)" msgstr "*Pc* — connecteurs (tirets et autres lignes)"
#: reference/lexical_analysis.rst:318 #: reference/lexical_analysis.rst:318
#, fuzzy
msgid "" msgid ""
"*Other_ID_Start* - explicit list of characters in `PropList.txt <https://www." "*Other_ID_Start* - explicit list of characters in `PropList.txt <https://www."
"unicode.org/Public/13.0.0/ucd/PropList.txt>`_ to support backwards " "unicode.org/Public/13.0.0/ucd/PropList.txt>`_ to support backwards "
"compatibility" "compatibility"
msgstr "" msgstr ""
"*Other_ID_Start* — liste explicite des caractères de `PropList.txt <http://" "*Other_ID_Start* — liste explicite des caractères de `PropList.txt <https://"
"www.unicode.org/Public/12.1.0/ucd/PropList.txt>`_ pour la compatibilité " "www.unicode.org/Public/12.1.0/ucd/PropList.txt>`_ pour la compatibilité "
"descendante" "descendante"
@ -752,9 +751,9 @@ msgid ""
"simplify the maintenance of dual Python 2.x and 3.x codebases. See :pep:" "simplify the maintenance of dual Python 2.x and 3.x codebases. See :pep:"
"`414` for more information." "`414` for more information."
msgstr "" msgstr ""
"le support du préfixe historique pour les chaînes Unicode a été réintroduit " "la gestion du préfixe historique pour les chaînes Unicode (``u'chaine'``) a "
"afin de simplifier la maintenance de code compatible Python 2.x et 3.x. Voir " "été réintroduite afin de simplifier la maintenance de code compatible Python "
"la :pep:`414` pour davantage d'informations." "2.x et 3.x. Voir la :pep:`414` pour davantage d'informations."
#: reference/lexical_analysis.rst:488 #: reference/lexical_analysis.rst:488
msgid "" msgid ""
@ -1124,7 +1123,6 @@ msgstr ""
"au contenu de la chaîne de caractères est :" "au contenu de la chaîne de caractères est :"
#: reference/lexical_analysis.rst:672 #: reference/lexical_analysis.rst:672
#, fuzzy
msgid "" msgid ""
"The parts of the string outside curly braces are treated literally, except " "The parts of the string outside curly braces are treated literally, except "
"that any doubled curly braces ``'{{'`` or ``'}}'`` are replaced with the " "that any doubled curly braces ``'{{'`` or ``'}}'`` are replaced with the "
@ -1140,9 +1138,11 @@ msgstr ""
"littéraux, sauf les doubles accolades ``'{{'`` ou ``'}}'`` qui sont " "littéraux, sauf les doubles accolades ``'{{'`` ou ``'}}'`` qui sont "
"remplacées par la simple accolade correspondante. Une simple accolade " "remplacées par la simple accolade correspondante. Une simple accolade "
"ouvrante ``'{'`` marque le début du champ à remplacer, qui commence par une " "ouvrante ``'{'`` marque le début du champ à remplacer, qui commence par une "
"expression Python. Après l'expression, il peut y avoir un champ de " "expression Python. Pour afficher à la fois le texte de l'expression et sa "
"valeur une fois évaluée (utile lors du débogage), un signe égal ``'='`` peut "
"être ajouté après l'expression. Ensuite, il peut y avoir un champ de "
"conversion, introduit par un point d'exclamation ``'!'``. Une spécification " "conversion, introduit par un point d'exclamation ``'!'``. Une spécification "
"de format peut aussi être ajoutée, introduite par le caractère deux-points " "de format peut aussi être rajoutée, introduite par le caractère deux-points "
"``':'``. Le champ à remplacer se termine par une accolade fermante ``'}'``." "``':'``. Le champ à remplacer se termine par une accolade fermante ``'}'``."
#: reference/lexical_analysis.rst:682 #: reference/lexical_analysis.rst:682
@ -1186,10 +1186,17 @@ msgid ""
"it defaults to the :func:`str` of the expression unless a conversion ``'!" "it defaults to the :func:`str` of the expression unless a conversion ``'!"
"r'`` is declared." "r'`` is declared."
msgstr "" msgstr ""
"Lorsqu'un signe égal ``'='`` est présent, la sortie comprend le texte de "
"l'expression, le signe ``'='`` et la valeur calculée. Les espaces après "
"l'accolade ouvrante ``'{'``, dans l'expression et après le signe ``'='`` "
"sont conservées à l'affichage. Par défaut, le signe ``'='`` utilise la :func:"
"`repr` de l'expression, sauf si un format est indiqué. Quand le format est "
"indiqué, c'est :func:`str` de l'expression qui est utilisée à moins qu'une "
"conversion ``!r`` ne soit déclarée."
#: reference/lexical_analysis.rst:704 #: reference/lexical_analysis.rst:704
msgid "The equal sign ``'='``." msgid "The equal sign ``'='``."
msgstr "" msgstr "le signe égal ``'='``."
#: reference/lexical_analysis.rst:707 #: reference/lexical_analysis.rst:707
msgid "" msgid ""
@ -1217,7 +1224,6 @@ msgstr ""
"inclus dans la valeur finale de la chaîne complète." "inclus dans la valeur finale de la chaîne complète."
#: reference/lexical_analysis.rst:717 #: reference/lexical_analysis.rst:717
#, fuzzy
msgid "" msgid ""
"Top-level format specifiers may include nested replacement fields. These " "Top-level format specifiers may include nested replacement fields. These "
"nested fields may include their own conversion fields and :ref:`format " "nested fields may include their own conversion fields and :ref:`format "
@ -1230,7 +1236,7 @@ msgstr ""
"conversion et :ref:`spécifications de format <formatspec>` mais " "conversion et :ref:`spécifications de format <formatspec>` mais "
"l'imbrication ne doit pas aller plus profond. Le :ref:`mini-langage de " "l'imbrication ne doit pas aller plus profond. Le :ref:`mini-langage de "
"spécification de format <formatspec>` est le même que celui utilisé par la " "spécification de format <formatspec>` est le même que celui utilisé par la "
"méthode ``.format()`` du type ``str``." "méthode :meth:`str.format`."
#: reference/lexical_analysis.rst:723 #: reference/lexical_analysis.rst:723
msgid "" msgid ""
@ -1465,6 +1471,5 @@ msgid "Footnotes"
msgstr "Notes" msgstr "Notes"
#: reference/lexical_analysis.rst:964 #: reference/lexical_analysis.rst:964
#, fuzzy
msgid "https://www.unicode.org/Public/11.0.0/ucd/NameAliases.txt" msgid "https://www.unicode.org/Public/11.0.0/ucd/NameAliases.txt"
msgstr "http://www.unicode.org/Public/11.0.0/ucd/NameAliases.txt" msgstr "https://www.unicode.org/Public/11.0.0/ucd/NameAliases.txt"

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-19 16:59+0100\n" "POT-Creation-Date: 2021-03-19 16:59+0100\n"
"PO-Revision-Date: 2019-12-13 16:57+0100\n" "PO-Revision-Date: 2021-04-10 17:08+0200\n"
"Last-Translator: Antoine <antoine.venier@hotmail.fr>\n" "Last-Translator: Antoine <antoine.venier@hotmail.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -574,13 +574,13 @@ msgstr ""
#: reference/simple_stmts.rst:391 #: reference/simple_stmts.rst:391
msgid "The simple form, ``assert expression``, is equivalent to ::" msgid "The simple form, ``assert expression``, is equivalent to ::"
msgstr "La forme la plus simple, ``assert expression``, est équivalente à ::" msgstr "La forme la plus simple, ``assert expression``, est équivalente à ::"
#: reference/simple_stmts.rst:396 #: reference/simple_stmts.rst:396
msgid "" msgid ""
"The extended form, ``assert expression1, expression2``, is equivalent to ::" "The extended form, ``assert expression1, expression2``, is equivalent to ::"
msgstr "" msgstr ""
"La forme étendue, ``assert expression1, expression2``, est équivalente à ::" "La forme étendue, ``assert expression1, expression2``, est équivalente à ::"
#: reference/simple_stmts.rst:405 #: reference/simple_stmts.rst:405
msgid "" msgid ""
@ -758,11 +758,11 @@ msgstr ""
"`expression yield <yieldexpr>`. L'instruction *yield* peut être utilisée " "`expression yield <yieldexpr>`. L'instruction *yield* peut être utilisée "
"pour omettre les parenthèses qui seraient autrement requises dans " "pour omettre les parenthèses qui seraient autrement requises dans "
"l'instruction équivalente d'expression *yield*. Par exemple, les " "l'instruction équivalente d'expression *yield*. Par exemple, les "
"instructions *yield* ::" "instructions *yield* ::"
#: reference/simple_stmts.rst:539 #: reference/simple_stmts.rst:539
msgid "are equivalent to the yield expression statements ::" msgid "are equivalent to the yield expression statements ::"
msgstr "sont équivalentes aux instructions expressions *yield* ::" msgstr "sont équivalentes aux instructions expressions *yield* ::"
#: reference/simple_stmts.rst:544 #: reference/simple_stmts.rst:544
msgid "" msgid ""
@ -1244,13 +1244,12 @@ msgid "other future statements."
msgstr "d'autres instructions *future*." msgstr "d'autres instructions *future*."
#: reference/simple_stmts.rst:877 #: reference/simple_stmts.rst:877
#, fuzzy
msgid "" msgid ""
"The only feature that requires using the future statement is ``annotations`` " "The only feature that requires using the future statement is ``annotations`` "
"(see :pep:`563`)." "(see :pep:`563`)."
msgstr "" msgstr ""
"La seule fonctionnalité dans Python 3.7 qui nécessite l'utilisation de " "La seule fonctionnalité qui nécessite l'utilisation de l'instruction "
"l'instruction `future` est ``annotations``." "`future` est ``annotations`` (voir la :pep:`563`)."
#: reference/simple_stmts.rst:880 #: reference/simple_stmts.rst:880
msgid "" msgid ""

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-02-24 17:33+0100\n" "POT-Creation-Date: 2021-02-24 17:33+0100\n"
"PO-Revision-Date: 2021-02-23 16:47+0100\n" "PO-Revision-Date: 2021-04-09 22:48+0200\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n" "Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -343,7 +343,6 @@ msgstr ""
"englobantes, désignées dans une instruction :keyword:`nonlocal`)." "englobantes, désignées dans une instruction :keyword:`nonlocal`)."
#: tutorial/controlflow.rst:294 #: tutorial/controlflow.rst:294
#, fuzzy
msgid "" msgid ""
"The actual parameters (arguments) to a function call are introduced in the " "The actual parameters (arguments) to a function call are introduced in the "
"local symbol table of the called function when it is called; thus, arguments " "local symbol table of the called function when it is called; thus, arguments "
@ -356,8 +355,9 @@ msgstr ""
"table des symboles locaux de la fonction appelée, au moment où elle est " "table des symboles locaux de la fonction appelée, au moment où elle est "
"appelée ; par conséquent, les passages de paramètres se font *par valeur*, " "appelée ; par conséquent, les passages de paramètres se font *par valeur*, "
"la *valeur* étant toujours une *référence* à un objet et non la valeur de " "la *valeur* étant toujours une *référence* à un objet et non la valeur de "
"l'objet lui-même [#]_. Lorsqu'une fonction appelle une autre fonction, une " "l'objet lui-même [#]_. Lorsqu'une fonction appelle une autre fonction, ou "
"nouvelle table de symboles locaux est créée pour cet appel." "s'appelle elle-même par récursion, une nouvelle table de symboles locaux est "
"créée pour cet appel."
#: tutorial/controlflow.rst:301 #: tutorial/controlflow.rst:301
msgid "" msgid ""