From 49b049ea1ac1740d22862ca17953da556f052453 Mon Sep 17 00:00:00 2001 From: Christophe Nanteuil <35002064+christopheNan@users.noreply.github.com> Date: Wed, 14 Apr 2021 13:11:40 +0200 Subject: [PATCH] Traduction des fuzzies de Reference et Tutorial (#1590) Automerge of PR #1590 by @christopheNan #1589 closes #1589 Co-authored-by: Julien Palard --- reference/compound_stmts.po | 47 +++---- reference/datamodel.po | 222 +++++++++++++++++++--------------- reference/executionmodel.po | 17 +-- reference/expressions.po | 77 ++++++------ reference/grammar.po | 14 ++- reference/import.po | 21 ++-- reference/lexical_analysis.po | 37 +++--- reference/simple_stmts.po | 15 ++- tutorial/controlflow.po | 8 +- 9 files changed, 254 insertions(+), 204 deletions(-) diff --git a/reference/compound_stmts.po b/reference/compound_stmts.po index 55ebc46c..6e03889e 100644 --- a/reference/compound_stmts.po +++ b/reference/compound_stmts.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \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 " "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 " -"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 " "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, " @@ -278,7 +278,7 @@ msgstr "" "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 " "é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 msgid "The :keyword:`!try` statement" @@ -293,7 +293,6 @@ msgstr "" "code de nettoyage pour un groupe d'instructions :" #: reference/compound_stmts.rst:248 -#, fuzzy msgid "" "The :keyword:`except` clause(s) specify one or more exception handlers. When " "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 " "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 " -"l'objet exception ou si c'est un *n*-uplet contenant un élément qui est " -"compatible avec l'exception." +"l'objet exception ou si c'est un *n*-uplet dont un élément est la classe ou " +"une classe parente de l'exception." #: reference/compound_stmts.rst:260 msgid "" @@ -372,11 +371,11 @@ msgid "" "the end of the except clause. This is as if ::" msgstr "" "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 msgid "was translated to ::" -msgstr "avait été traduit en ::" +msgstr "avait été traduit en ::" #: reference/compound_stmts.rst:292 msgid "" @@ -571,7 +570,7 @@ msgid "" msgstr "" "L'instruction :keyword:`with` garantit que si la méthode :meth:`__enter__` " "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 " "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 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 " -"suivant ::" +"suivant ::" #: reference/compound_stmts.rst:548 reference/compound_stmts.rst:719 msgid "is roughly equivalent to ::" -msgstr "est à peu près équivalent à ::" +msgstr "est à peu près équivalent à ::" #: reference/compound_stmts.rst:553 msgid "" @@ -713,12 +712,17 @@ msgid "" msgstr "" "sauf que la fonction originale n'est pas temporairement liée au nom ``func``." +# Pas de majuscule : ok. #: reference/compound_stmts.rst:555 msgid "" "Functions may be decorated with any valid :token:`assignment_expression`. " "Previously, the grammar was much more restrictive; see :pep:`614` for " "details." msgstr "" +"les fonctions peuvent être décorées par toute :token:`expression " +"d'affectation ` valide. Auparavant, la grammaire " +"était beaucoup plus restrictive ; voir la :pep:`614` pour obtenir les " +"détails." #: reference/compound_stmts.rst:565 msgid "" @@ -923,11 +927,11 @@ msgstr "" "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 " "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 msgid "is equivalent to ::" -msgstr "est équivalente à ::" +msgstr "est équivalente à ::" #: reference/compound_stmts.rst:694 msgid "" @@ -974,7 +978,7 @@ msgstr "" msgid "Classes can also be decorated: just like when decorating functions, ::" msgstr "" "Les classes peuvent aussi être décorées : comme pour les décorateurs de " -"fonctions, ::" +"fonctions,::" #: reference/compound_stmts.rst:724 msgid "" @@ -991,6 +995,9 @@ msgid "" "Previously, the grammar was much more restrictive; see :pep:`614` for " "details." msgstr "" +"les classes peuvent être décorées par toute :token:`expression d'affectation " +"` valide. Auparavant, la grammaire était beaucoup " +"plus restrictive ; voir la :pep:`614` pour obtenir les détails." #: reference/compound_stmts.rst:732 msgid "" @@ -1089,24 +1096,22 @@ msgid "The :keyword:`!async for` statement" msgstr "L'instruction :keyword:`!async for`" #: reference/compound_stmts.rst:803 -#, fuzzy msgid "" "An :term:`asynchronous iterable` provides an ``__aiter__`` method that " "directly returns an :term:`asynchronous iterator`, which can call " "asynchronous code in its ``__anext__`` method." msgstr "" -"Un :term:`itérable asynchrone ` est capable d'appeler " -"du code asynchrone dans l'implémentation de sa méthode *iter* ; un :term:" -"`itérateur asynchrone ` peut appeler du code " -"asynchrone dans sa méthode *next*." +"Un :term:`itérable asynchrone ` fournit une méthode " +"``__aiter__`` qui renvoie directement un :term:`itérateur asynchrone " +"`, celui-ci pouvant appeler du code asynchrone dans " +"sa méthode ``__anext__``." #: reference/compound_stmts.rst:807 -#, fuzzy msgid "" "The ``async for`` statement allows convenient iteration over asynchronous " "iterables." 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." #: reference/compound_stmts.rst:817 diff --git a/reference/datamodel.po b/reference/datamodel.po index ddf286d5..33f57792 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -140,7 +140,7 @@ msgstr "" "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 " "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." #: reference/datamodel.rst:87 @@ -160,7 +160,7 @@ msgstr "" "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 " "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." #: reference/datamodel.rst:97 @@ -262,7 +262,6 @@ msgid "NotImplemented" msgstr "NotImplemented" #: reference/datamodel.rst:155 -#, fuzzy msgid "" "This type has a single value. There is a single object with this value. " "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 " "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 " -"autre stratégie de contournement, en fonction de l'opérateur). Sa valeur " -"booléenne est vraie." +"autre stratégie de contournement, en fonction de l'opérateur). Il ne doit " +"pas être évalué dans un contexte booléen." #: reference/datamodel.rst:162 msgid "See :ref:`implementing-the-arithmetic-operations` for more details." @@ -285,12 +284,16 @@ msgstr "" "Consultez :ref:`implementing-the-arithmetic-operations` pour davantage de " "détails." +# Pas de majuscule car suit un ':' dans le rendu. #: reference/datamodel.rst:166 msgid "" "Evaluating ``NotImplemented`` in a boolean context is deprecated. While it " "currently evaluates as true, it will emit a :exc:`DeprecationWarning`. It " "will raise a :exc:`TypeError` in a future version of Python." 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 msgid "Ellipsis" @@ -330,32 +333,43 @@ msgid "" "The string representations of the numeric classes, computed by :meth:" "`__repr__` and :meth:`__str__`, have the following properties:" 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 msgid "" "They are valid numeric literals which, when passed to their class " "constructor, produce an object having the value of the original numeric." 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 msgid "The representation is in base 10, when possible." -msgstr "" +msgstr "La représentation est en base 10, si possible." #: reference/datamodel.rst:200 msgid "" "Leading zeros, possibly excepting a single zero before a decimal point, are " "not shown." 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 msgid "" "Trailing zeros, possibly excepting a single zero after a decimal point, are " "not shown." 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 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 msgid "" @@ -486,7 +500,7 @@ msgstr "" "Ils représentent des ensembles de taille finie indicés par des entiers " "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*, " -"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]``." #: reference/datamodel.rst:283 @@ -802,8 +816,8 @@ msgid "" "Dictionaries are mutable; they can be created by the ``{...}`` notation (see " "section :ref:`dict`)." msgstr "" -"Les dictionnaires sont muables : ils peuvent être créés par la notation " -"``{...}`` (reportez-vous à la section :ref:`dict`)." +"Les dictionnaires sont muables : ils peuvent être créés par la notation ``{…}" +"`` (reportez-vous à la section :ref:`dict`)." #: reference/datamodel.rst:457 msgid "" @@ -1813,9 +1827,10 @@ msgid "" "object is implicitly created when an exception occurs, and may also be " "explicitly created by calling :class:`types.TracebackType`." msgstr "" -"Les objets traces représentent la pile de traces d'une exception. Un objet " -"trace est implicitement créé quand une exception apparaît et peut être " -"explicitement créé en appelant :class:`types.TracebackType`." +"Les objets *traces d'appels* représentent le contenu de la pile des appels " +"au moment de l'exception. Un objet *trace d'appels* est implicitement créé " +"quand une exception apparaît et peut être explicitement créé en appelant :" +"class:`types.TracebackType`." #: reference/datamodel.rst:1060 msgid "" @@ -2068,7 +2083,7 @@ msgid "" msgstr "" "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()." -"__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." #: reference/datamodel.rst:1201 @@ -2081,9 +2096,9 @@ msgid "" msgstr "" "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:" -"`__init__` de la nouvelle instance est invoquée avec " -"``__init__(self[, ...])`` où *self* est la nouvelle instance et les autres " -"arguments sont les mêmes que ceux passés au constructeur de l'objet." +"`__init__` de la nouvelle instance est invoquée avec ``__init__(self[, …])`` " +"où *self* est la nouvelle instance et les autres arguments sont les mêmes " +"que ceux passés au constructeur de l'objet." #: reference/datamodel.rst:1206 msgid "" @@ -2103,7 +2118,7 @@ msgstr "" "L'objectif de :meth:`__new__` est principalement, pour les sous-classes de " "types immuables (comme ``int``, ``str`` ou ``tuple``), d'autoriser la " "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 msgid "" @@ -2120,7 +2135,7 @@ msgstr "" "`__init__`, la méthode :meth:`__init__` de la classe dérivée, si elle " "existe, doit explicitement appeler cette méthode pour assurer une " "initialisation correcte de la partie classe de base de l'instance ; par " -"exemple : ``super().__init__([args...])``." +"exemple : ``super().__init__([args…])``." #: reference/datamodel.rst:1225 msgid "" @@ -2246,9 +2261,9 @@ msgstr "" "« 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 " "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...>`` " -"est renvoyée. La valeur renvoyée doit être un objet chaîne de caractères. Si " -"une classe définit :meth:`__repr__` mais pas :meth:`__str__`, alors :meth:" +"n'est pas possible, une chaîne de la forme ``<…une description utile…>`` est " +"renvoyée. La valeur renvoyée doit être un objet chaîne de caractères. Si une " +"classe définit :meth:`__repr__` mais pas :meth:`__str__`, alors :meth:" "`__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." @@ -2340,13 +2355,12 @@ msgstr "" "si vous lui passez une chaîne non vide." #: reference/datamodel.rst:1368 -#, fuzzy msgid "" "``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than " "``format(str(x), '')``." msgstr "" "``object.__format__(x, '')`` est maintenant équivalent à ``str(x)`` plutôt " -"qu'à ``format(str(self), '')``." +"qu'à ``format(str(x), '')``." #: reference/datamodel.rst:1384 msgid "" @@ -2382,7 +2396,6 @@ msgstr "" "résultat est faux ou vrai." #: reference/datamodel.rst:1397 -#, fuzzy msgid "" "By default, ``object`` implements :meth:`__eq__` by using ``is``, returning " "``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 " "operation, see :func:`functools.total_ordering`." msgstr "" -"Par défaut, :meth:`__ne__` délègue à :meth:`__eq__` et renvoie le résultat " -"inverse, sauf si c'est ``NotImplemented``. Il n'y a pas d'autres relations " -"implicites pour les opérateurs de comparaison. Par exemple, ``(x` ``object.__getattr__`` with " "arguments ``obj``, ``name``." msgstr "" +"Lève un :ref:`événement d'audit ` ``object.__getattr__`` avec les " +"arguments ``obj`` et ``name``." #: reference/datamodel.rst:1564 msgid "" "For certain sensitive attribute accesses, raises an :ref:`auditing event " "` ``object.__getattr__`` with arguments ``obj`` and ``name``." msgstr "" +"Pour les accès à certains attributs sensibles, lève un :ref:`événement " +"d'audit ` ``object.__getattr__`` avec les arguments ``obj`` et " +"``name``." #: reference/datamodel.rst:1571 msgid "" @@ -2728,6 +2748,8 @@ msgid "" "Raises an :ref:`auditing event ` ``object.__setattr__`` with " "arguments ``obj``, ``name``, ``value``." msgstr "" +"Lève un :ref:`événement d'audit ` ``object.__setattr__`` avec les " +"arguments ``obj``, ``name`` et ``value``." #: reference/datamodel.rst:1581 msgid "" @@ -2735,6 +2757,9 @@ msgid "" "` ``object.__setattr__`` with arguments ``obj``, ``name``, " "``value``." msgstr "" +"Pour les assignations de certains attributs sensibles, lève un :ref:" +"`événement d'audit ` ``object.__setattr__`` avec les arguments " +"``obj``, ``name`` et ``value``." #: reference/datamodel.rst:1588 msgid "" @@ -2751,12 +2776,17 @@ msgid "" "Raises an :ref:`auditing event ` ``object.__delattr__`` with " "arguments ``obj``, ``name``." msgstr "" +"Lève un :ref:`événement d'audit ` ``object.__deltattr__`` avec les " +"arguments ``obj`` et ``name``." #: reference/datamodel.rst:1593 msgid "" "For certain sensitive attribute deletions, raises an :ref:`auditing event " "` ``object.__delattr__`` with arguments ``obj`` and ``name``." msgstr "" +"Pour les suppressions de certains attributs sensibles, lève un :ref:" +"`événement d'audit ` ``object.__deltattr__`` avec les arguments " +"``obj`` et ``name``." #: reference/datamodel.rst:1600 msgid "" @@ -2994,7 +3024,7 @@ msgstr "" "obtenir et supprimer cet attribut du dictionnaire de l'objet. Par exemple, " "pour ``a.x`` Python commence d'abord par rechercher ``a.__dict__['x']``, " "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 msgid "" @@ -3070,7 +3100,6 @@ msgstr "" "``A.__dict__['m'].__get__(obj, obj.__class__)``." #: reference/datamodel.rst:1776 -#, fuzzy msgid "" "For instance bindings, the precedence of descriptor invocation depends on " "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 peut définir n'importe quelle combinaison de :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 " "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 " @@ -3098,9 +3127,9 @@ msgstr "" "définissent à la fois :meth:`__get__` et :meth:`__set__`, alors que les " "descripteurs hors-données définissent seulement la méthode :meth:`__get__`. " "Les descripteurs de données qui définissent :meth:`__set__` et :meth:" -"`__get__` sont toujours prioritaires face à une redéfinition du dictionnaire " -"de l'instance. En revanche, les descripteurs hors-données peuvent être " -"shuntés par les instances." +"`__get__` (ou :meth:`__delete__`) sont toujours prioritaires face à une " +"redéfinition du dictionnaire de l'instance. En revanche, les descripteurs " +"hors-données peuvent être shuntés par les instances." #: reference/datamodel.rst:1789 msgid "" @@ -3348,14 +3377,14 @@ msgid "" "actual metaclass (rather than the explicit hint) can be accessed as " "``type(cls)``." 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 " -"``__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)``." #: reference/datamodel.rst:1918 msgid "Metaclasses" -msgstr "Méta-classes" +msgstr "Métaclasses" #: reference/datamodel.rst:1925 msgid "" @@ -3386,7 +3415,7 @@ msgid "" "passed through to all metaclass operations described below." msgstr "" "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 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 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 msgid "the class namespace is prepared;" @@ -3440,13 +3469,13 @@ msgstr "" #: reference/datamodel.rst:1970 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 msgid "" "The appropriate metaclass for a class definition is determined as follows:" 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 :" #: reference/datamodel.rst:1976 @@ -3461,17 +3490,16 @@ msgid "" "if an explicit metaclass is given and it is *not* an instance of :func:" "`type`, then it is used directly as the metaclass;" msgstr "" -"si une méta-classe 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-" -"classe ;" +"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étaclasse ;" #: reference/datamodel.rst:1979 msgid "" "if an instance of :func:`type` is given as the explicit metaclass, or bases " "are defined, then the most derived metaclass is used." msgstr "" -"Si une instance de :func:`type` est donnée comme méta-classe explicite ou si " -"*bases* est définie, alors la méta-classe la plus dérivée est utilisée." +"si une instance de :func:`type` est donnée comme métaclasse explicite ou si " +"*bases* est définie, alors la métaclasse la plus dérivée est utilisée." #: reference/datamodel.rst:1982 msgid "" @@ -3481,11 +3509,11 @@ msgid "" "of these candidate metaclasses. If none of the candidate metaclasses meets " "that criterion, then the class definition will fail with ``TypeError``." msgstr "" -"La méta-classe la plus dérivée est choisie à partir des méta-classes " -"explicitement spécifiées (s'il y en a) et les méta-classes (c'est-à-dire les " -"``type(cls)``) de toutes les classes de base spécifiées. La méta-classe la " -"plus dérivée est celle qui est un sous-type de *toutes* ces méta-classes " -"candidates. Si aucune des méta-classes candidates ne remplit ce critère, " +"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étaclasses (c'est-à-dire les " +"``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étaclasses " +"candidates. Si aucune des métaclasses candidates ne remplit ce critère, " "alors la définition de la classe échoue en levant ``TypeError``." #: reference/datamodel.rst:1992 @@ -3503,28 +3531,28 @@ msgid "" "the final class object is created the namespace is copied into a new " "``dict``." msgstr "" -"Une fois que la méta-classe appropriée est identifiée, l'espace de nommage " -"de la classe est préparé. Si la méta-classe possède un attribut " -"``__prepare__``, il est appelé avec ``namespace = metaclass." -"__prepare__(name, bases, **kwds)`` (où les arguments nommés supplémentaires, " -"s'il y en a, sont les arguments de la définition de la classe). La méthode " -"``__prepare__`` doit être implémentée comme une méthode de classe (:func:" -"`classmethod`). L’espace de nommage renvoyé par ``__prepare__`` est passé à " -"``__new__``, mais quand l’instance finale est créée, l’espace de nommage est " -"copié vers un nouveau ``dict``." +"Une fois que la métaclasse appropriée est identifiée, l'espace de nommage de " +"la classe est préparé. Si la métaclasse possède un attribut ``__prepare__``, " +"il est appelé avec ``namespace = metaclass.__prepare__(name, bases, " +"**kwds)`` (où les arguments nommés supplémentaires, s'il y en a, sont les " +"arguments de la définition de la classe). La méthode ``__prepare__`` doit " +"être implémentée comme une méthode de classe (:func:`classmethod`). L’espace " +"de nommage renvoyé par ``__prepare__`` est passé à ``__new__``, mais quand " +"l’instance finale est créée, l’espace de nommage est copié vers un nouveau " +"``dict``." #: reference/datamodel.rst:2005 msgid "" "If the metaclass has no ``__prepare__`` attribute, then the class namespace " "is initialised as an empty ordered mapping." 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 " "correspondances ordonné." #: reference/datamodel.rst:2010 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 msgid "Introduced the ``__prepare__`` namespace hook" @@ -3609,11 +3637,11 @@ msgid "" "initialised correctly. Failing to do so will result in a :exc:`RuntimeError` " "in Python 3.8." msgstr "" -"Dans CPython 3.6 et suivants, la cellule ``__class__`` est passée à la méta-" -"classe en tant qu'entrée ``__classcell__`` dans l'espace de nommage de 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 " -"traduit par un :exc:`RuntimeError` dans Python 3.8." +"Dans CPython 3.6 et suivants, la cellule ``__class__`` est passée à la " +"métaclasse en tant qu'entrée ``__classcell__`` dans l'espace de nommage de " +"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 traduit par un :exc:`RuntimeError` dans Python 3.8." #: reference/datamodel.rst:2063 msgid "" @@ -3621,8 +3649,8 @@ msgid "" "ultimately calls ``type.__new__``, the following additional customisation " "steps are invoked after creating the class object:" msgstr "" -"Quand vous utilisez la méta-classe par défaut :class:`type` ou toute autre " -"méta-classe qui finit par appeler ``type.__new__``, les étapes de " +"Quand vous utilisez la métaclasse par défaut :class:`type` ou toute autre " +"métaclasse qui finit par appeler ``type.__new__``, les étapes de " "personnalisation supplémentaires suivantes sont suivies après la création de " "l'objet classe :" @@ -3697,7 +3725,7 @@ msgid "" "automatic property creation, proxies, frameworks, and automatic resource " "locking/synchronization." 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 " "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 " @@ -3722,7 +3750,7 @@ msgid "" "base classes\" to any class or type (including built-in types), including " "other ABCs." 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 " "Base Classes* en anglais) en tant que « classes de base virtuelles » pour " "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, " "only in this case the instance is itself a class." 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 " "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 " @@ -3817,15 +3845,14 @@ msgid "Emulating callable objects" msgstr "Émulation d'objets appelables" #: reference/datamodel.rst:2169 -#, fuzzy msgid "" "Called when the instance is \"called\" as a function; if this method is " "defined, ``x(arg1, arg2, ...)`` roughly translates to ``type(x).__call__(x, " "arg1, ...)``." msgstr "" "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." -"__call__(arg1, arg2, ...)``." +"méthode est définie, ``x(arg1, arg2, …)`` est un raccourci pour ``type(x)." +"__call__(x, arg1, …)``." #: reference/datamodel.rst:2176 msgid "Emulating container types" @@ -4186,7 +4213,6 @@ msgstr "" "`__rpow__` (les règles de coercition seraient trop compliquées)." #: reference/datamodel.rst:2416 -#, fuzzy msgid "" "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 " @@ -4195,10 +4221,10 @@ msgid "" "ancestors' operations." msgstr "" "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 " -"l'opération, cette méthode sera appelée avant la méthode originelle de " -"l'opérande gauche. Ce comportement permet à des sous-classes de surcharger " -"les opérations de leurs ancêtres." +"de gauche et que cette sous-classe fournit une implémentation différente de " +"la méthode symétrique pour l'opération, cette méthode est appelée avant la " +"méthode originelle de l'opérande gauche. Ce comportement permet à des sous-" +"classes de surcharger les opérations de leurs ancêtres." #: reference/datamodel.rst:2437 msgid "" @@ -4223,18 +4249,23 @@ msgstr "" "*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 " "*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``. " "Dans certaines situations, les assignations augmentées peuvent causer des " "erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais " "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 msgid "" "Due to a bug in the dispatching mechanism for ``**=``, a class that defines :" "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." 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 msgid "" @@ -4425,7 +4456,7 @@ msgid "" "the instance when looking up special methods::" msgstr "" "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 ::" #: reference/datamodel.rst:2605 @@ -4436,7 +4467,7 @@ msgid "" msgstr "" "En plus de shunter les attributs des instances pour fonctionner " "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 msgid "" @@ -4461,14 +4492,13 @@ msgid "Awaitable Objects" msgstr "Objets *attendables* (*awaitable*)" #: reference/datamodel.rst:2648 -#, fuzzy msgid "" "An :term:`awaitable` object generally implements an :meth:`__await__` " "method. :term:`Coroutine objects ` returned from :keyword:`async " "def` functions are awaitable." msgstr "" "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*)." #: reference/datamodel.rst:2654 @@ -4503,7 +4533,6 @@ msgid "Coroutine Objects" msgstr "Objets coroutines" #: reference/datamodel.rst:2674 -#, fuzzy msgid "" ":term:`Coroutine objects ` are :term:`awaitable` objects. A " "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 " "not directly raise unhandled :exc:`StopIteration` exceptions." 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 " "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." @@ -4732,12 +4761,11 @@ msgstr "" "l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli." #: reference/datamodel.rst:2819 -#, fuzzy msgid "" "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 " "supported, which is why the reflected method is not called." msgstr "" "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 " -"la méthode symétrique n'est pas appelée." +"(telle que :meth:`__add__`) échoue, alors l'opération en tant que telle " +"n'est pas autorisée et donc la méthode symétrique n'est pas appelée." diff --git a/reference/executionmodel.po b/reference/executionmodel.po index f2b4de7c..7cb828f1 100644 --- a/reference/executionmodel.po +++ b/reference/executionmodel.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -24,7 +24,6 @@ msgid "Structure of a program" msgstr "Structure d'un programme" #: reference/executionmodel.rst:19 -#, fuzzy msgid "" "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: " @@ -37,17 +36,19 @@ msgid "" "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." msgstr "" -"Un programme Python est construit à partir de blocs de code. Un :dfn:`block` " -"est un morceau de texte de programme Python qui est exécuté en tant " +"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 " "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 " "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 " "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 " -"l'interpréteur avec l'option :option:`-c`) est un bloc de code. La chaîne " -"passée en argument aux fonctions natives :func:`eval` et :func:`exec` est un " -"bloc de code." +"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. Un module " +"exécuté en tant que script principal (module ``__main__``) depuis la ligne " +"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 msgid "" diff --git a/reference/expressions.po b/reference/expressions.po index 5f24ecd6..13ed99f8 100644 --- a/reference/expressions.po +++ b/reference/expressions.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -733,7 +733,6 @@ msgstr "" "toutes les clauses :keyword:`finally` en attente." #: reference/expressions.rst:479 -#, fuzzy msgid "" "When ``yield from `` is used, the supplied expression must be an " "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` " "will just raise the passed in exception immediately." msgstr "" -"L'utilisation de ``yield from `` traite l'expression passée en " -"paramètre comme un sous-itérateur. Toutes les valeurs produites par ce sous-" -"itérateur sont directement passées à l'appelant des méthodes du générateur " -"courant. Toute valeur passée par :meth:`~generator.send` ou toute exception " -"passée par :meth:`~generator.throw` est transmise à l'itérateur sous-jacent " -"s'il possède les méthodes appropriées. Si ce n'est pas le cas, alors :meth:" -"`~generator.send` lève une :exc:`AttributeError` ou une :exc:`TypeError`, " -"alors que :meth:`~generator.throw` ne fait que propager l'exception " -"immédiatement." +"L'expression passée à ``yield from `` doit être un itérateur. Toutes " +"les valeurs produites par cet itérateur sont directement passées à " +"l'appelant des méthodes du générateur courant. Toute valeur passée par :meth:" +"`~generator.send` ou toute exception passée par :meth:`~generator.throw` est " +"transmise à l'itérateur sous-jacent s'il possède les méthodes appropriées. " +"Si ce n'est pas le cas, alors :meth:`~generator.send` lève une :exc:" +"`AttributeError` ou une :exc:`TypeError`, alors que :meth:`~generator.throw` " +"ne fait que propager l'exception immédiatement." #: reference/expressions.rst:488 msgid "" @@ -784,7 +782,7 @@ msgstr "" #: reference/expressions.rst:503 msgid ":pep:`255` - Simple Generators" -msgstr ":pep:`255` : Générateurs simples" +msgstr ":pep:`255` : générateurs simples" #: reference/expressions.rst:503 msgid "" @@ -1234,14 +1232,13 @@ msgid "Subscriptions" msgstr "Sélections" #: reference/expressions.rst:803 -#, fuzzy msgid "" "Subscription of a sequence (string, tuple or list) or mapping (dictionary) " "object usually selects an item from the collection:" msgstr "" -"Une sélection (*subscription* dans la grammaire formelle ci-dessous) désigne " -"un élément dans un objet séquence (chaîne, *n*-uplet ou liste) ou tableau de " -"correspondances (dictionnaire) :" +"Une sélection (*subscription* dans la grammaire formelle ci-dessous) dans un " +"objet séquence (chaîne, *n*-uplet ou liste) ou tableau associatif " +"(dictionnaire) désigne un élément dans cette séquence :" #: reference/expressions.rst:809 msgid "" @@ -1321,6 +1318,10 @@ msgid "" "defined classes can support subscription by providing a :meth:" "`__class_getitem__` classmethod." msgstr "" +"La sélection dans certains :term:`classes ` ou :term:`types ` " +"crée un :ref:`alias générique `. 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 msgid "Slicings" @@ -1406,7 +1407,7 @@ msgid "" "arguments but does not affect the semantics." msgstr "" "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 msgid "" @@ -1492,7 +1493,7 @@ msgstr "" "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 " "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 msgid "" @@ -1524,8 +1525,8 @@ msgstr "" "``expression`` doit pouvoir s'évaluer à un :term:`itérable `. Les " "é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* " -"s'évalue comme une séquence *y1*, ..., *yM*, c'est équivalent à un appel " -"avec M+4 arguments positionnels *x1*, *x2*, *y1*, ..., *yM*, *x3*, *x4*." +"s'évalue comme une séquence *y1* … *yM*, c'est équivalent à un appel avec M" +"+4 arguments positionnels *x1*, *x2*, *y1* … *yM*, *x3*, *x4*." #: reference/expressions.rst:995 msgid "" @@ -1534,9 +1535,9 @@ msgid "" "arguments (and any ``**expression`` arguments -- see below). So::" msgstr "" "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 " -"*avant* les arguments par mots-clés (et avant tout argument ``**expression`` " -"-- voir ci-dessous). Ainsi ::" +"apparaître *après* les arguments par nommés explicites, ils sont traités " +"*avant* les arguments nommés (et avant tout argument ``**expression`` -- " +"voir ci-dessous). Ainsi ::" #: reference/expressions.rst:1011 msgid "" @@ -2012,10 +2013,10 @@ msgid "" "z`` is equivalent to ``a op1 b and b op2 c and ... y opN z``, except that " "each expression is evaluated at most once." msgstr "" -"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 " -"c ... y opN z`` est équivalent à ``a op1 b and b op2 c and ... y opN z``, " -"sauf que chaque expression est évaluée au maximum une fois." +"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 c … y " +"opN z`` est équivalent à ``a op1 b and b op2 c and … y opN z``, sauf que " +"chaque expression est évaluée au maximum une fois." #: reference/expressions.rst:1379 msgid "" @@ -2591,14 +2592,19 @@ msgid "" "\"walrus\") assigns an :token:`expression` to an :token:`identifier`, while " "also returning the value of the :token:`expression`." 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 msgid "One common use case is when handling matched regular expressions:" msgstr "" +"Une utilisation classique concerne les correspondances d'expressions " +"rationnelles :" #: reference/expressions.rst:1673 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 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 " "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, " -"les opérateurs sont binaires. Les opérateurs dans la même cases regroupent " -"de la gauche vers la droite (sauf pour la puissance qui regroupe de la " -"droite vers la gauche)." +"les opérateurs sont binaires. Les opérateurs dans la même case regroupent de " +"la gauche vers la droite (sauf pour la puissance qui regroupe de la droite " +"vers la gauche)." #: reference/expressions.rst:1818 msgid "" @@ -2786,7 +2792,7 @@ msgstr ":keyword:`if ` -- :keyword:`!else`" #: reference/expressions.rst:1830 msgid "Conditional expression" -msgstr "Expressions conditionnelle" +msgstr "Expressions conditionnelles" #: reference/expressions.rst:1832 msgid ":keyword:`or`" @@ -2899,8 +2905,7 @@ msgstr ":keyword:`await` ``x``" #: reference/expressions.rst:1862 msgid "``x[index]``, ``x[index:index]``, ``x(arguments...)``, ``x.attribute``" -msgstr "" -"``x[indice]``, ``x[indice:indice]``, ``x(arguments...)``, ``x.attribut``" +msgstr "``x[indice]``, ``x[indice:indice]``, ``x(arguments…)``, ``x.attribut``" #: reference/expressions.rst:1862 msgid "Subscription, slicing, call, attribute reference" @@ -2908,11 +2913,11 @@ msgstr "indiçage, tranches, appel, référence à un attribut" #: reference/expressions.rst:1865 msgid "``(expressions...)``," -msgstr "``(expressions...)``," +msgstr "``(expressions…)``," #: reference/expressions.rst:1867 msgid "``[expressions...]``, ``{key: value...}``, ``{expressions...}``" -msgstr "``[expressions...]``, ``{key: value...}``, ``{expressions...}``" +msgstr "``[expressions…]``, ``{key: value…}``, ``{expressions…}``" #: reference/expressions.rst:1865 msgid "" diff --git a/reference/grammar.po b/reference/grammar.po index 638b6704..3567bd2d 100644 --- a/reference/grammar.po +++ b/reference/grammar.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -24,6 +24,10 @@ msgid "" "generate the CPython parser (see :source:`Grammar/python.gram`). The version " "here omits details related to code generation and error recovery." 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 msgid "" @@ -35,6 +39,14 @@ msgid "" "lookahead (i.e., is required _not_ to match). We use the ``|`` separator to " "mean PEG's \"ordered choice\" (written as ``/`` in traditional PEG grammars)." msgstr "" +"La notation est un mélange d'\\ `EBNF `_ et `PEG `_. 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 "" #~ "This is the full Python grammar, as it is read by the parser generator " diff --git a/reference/import.po b/reference/import.po index d16d2a15..53759be6 100644 --- a/reference/import.po +++ b/reference/import.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -179,7 +179,6 @@ msgstr "" "qui contient un attribut ``__path__`` est réputé être un paquet." #: reference/import.rst:85 -#, fuzzy msgid "" "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. " @@ -188,7 +187,7 @@ msgid "" "module within that subpackage called :mod:`email.mime.text`." msgstr "" "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é :" "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:" @@ -1299,7 +1298,6 @@ msgid "Cached bytecode invalidation" msgstr "Invalidation de *bytecode* mis en cache" #: reference/import.rst:683 -#, fuzzy msgid "" "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 " @@ -1692,7 +1690,6 @@ msgstr "" "(attribut `loader`) défini, à une exception près." #: reference/import.rst:859 -#, fuzzy msgid "" "To indicate to the import machinery that the spec represents a namespace :" "term:`portion`, the path entry finder sets \"submodule_search_locations\" to " @@ -1700,8 +1697,8 @@ msgid "" msgstr "" "Pour indiquer au mécanisme d'importation que le spécificateur représente " "une :term:`portion ` d'un espace de nommage, le chercheur d'entrée " -"dans *path* définit le chargeur du spécificateur à ``None`` et l'attribut " -"*submodule_search_locations* à une liste contenant la portion." +"dans *path* définit l'attribut *submodule_search_locations* à une liste " +"contenant la portion." #: reference/import.rst:863 msgid "" @@ -1729,18 +1726,16 @@ msgstr "" "les méthodes historiques sont ignorées." #: reference/import.rst:874 -#, fuzzy msgid "" ":meth:`~importlib.abc.PathEntryFinder.find_loader` takes one argument, the " "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 " "a namespace :term:`portion`." msgstr "" -"La méthode :meth:`~importlib.abc.PathEntryFinder.find_spec` prend deux " -"arguments : le nom complètement qualifié du module en cours d'importation et " -"(optionnellement) le module cible. ``find_spec()`` renvoie un spécificateur " -"de module pleinement peuplé. Ce spécificateur doit avoir son chargeur " -"(attribut `loader`) défini, à une exception près." +"La méthode :meth:`~importlib.abc.PathEntryFinder.find_spec` prend un " +"argument : le nom complètement qualifié du module en cours d'importation. " +"\"``find_loader()`` renvoie un couple dont le premier élément est le " +"chargeur et le second est une :term:`portion ` d'espace de nommage." #: reference/import.rst:879 msgid "" diff --git a/reference/lexical_analysis.po b/reference/lexical_analysis.po index 5ebfb027..081c2e0b 100644 --- a/reference/lexical_analysis.po +++ b/reference/lexical_analysis.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -141,11 +141,11 @@ msgstr "" "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 " "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 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 msgid "which is recognized by Bram Moolenaar's VIM." @@ -527,13 +527,12 @@ msgid "*Pc* - connector punctuations" msgstr "*Pc* — connecteurs (tirets et autres lignes)" #: reference/lexical_analysis.rst:318 -#, fuzzy msgid "" "*Other_ID_Start* - explicit list of characters in `PropList.txt `_ to support backwards " "compatibility" msgstr "" -"*Other_ID_Start* — liste explicite des caractères de `PropList.txt `_ pour la compatibilité " "descendante" @@ -752,9 +751,9 @@ msgid "" "simplify the maintenance of dual Python 2.x and 3.x codebases. See :pep:" "`414` for more information." msgstr "" -"le support du préfixe historique pour les chaînes Unicode a été réintroduit " -"afin de simplifier la maintenance de code compatible Python 2.x et 3.x. Voir " -"la :pep:`414` pour davantage d'informations." +"la gestion du préfixe historique pour les chaînes Unicode (``u'chaine'``) a " +"été réintroduite afin de simplifier la maintenance de code compatible Python " +"2.x et 3.x. Voir la :pep:`414` pour davantage d'informations." #: reference/lexical_analysis.rst:488 msgid "" @@ -1124,7 +1123,6 @@ msgstr "" "au contenu de la chaîne de caractères est :" #: reference/lexical_analysis.rst:672 -#, fuzzy msgid "" "The parts of the string outside curly braces are treated literally, except " "that any doubled curly braces ``'{{'`` or ``'}}'`` are replaced with the " @@ -1140,9 +1138,11 @@ msgstr "" "littéraux, sauf les doubles accolades ``'{{'`` ou ``'}}'`` qui sont " "remplacées par la simple accolade correspondante. Une simple accolade " "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 " -"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 ``'}'``." #: reference/lexical_analysis.rst:682 @@ -1186,10 +1186,17 @@ msgid "" "it defaults to the :func:`str` of the expression unless a conversion ``'!" "r'`` is declared." 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 msgid "The equal sign ``'='``." -msgstr "" +msgstr "le signe égal ``'='``." #: reference/lexical_analysis.rst:707 msgid "" @@ -1217,7 +1224,6 @@ msgstr "" "inclus dans la valeur finale de la chaîne complète." #: reference/lexical_analysis.rst:717 -#, fuzzy msgid "" "Top-level format specifiers may include nested replacement fields. These " "nested fields may include their own conversion fields and :ref:`format " @@ -1230,7 +1236,7 @@ msgstr "" "conversion et :ref:`spécifications de format ` mais " "l'imbrication ne doit pas aller plus profond. Le :ref:`mini-langage de " "spécification de format ` 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 msgid "" @@ -1465,6 +1471,5 @@ msgid "Footnotes" msgstr "Notes" #: reference/lexical_analysis.rst:964 -#, fuzzy 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" diff --git a/reference/simple_stmts.po b/reference/simple_stmts.po index 9f9eedeb..7cf94cd7 100644 --- a/reference/simple_stmts.po +++ b/reference/simple_stmts.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -574,13 +574,13 @@ msgstr "" #: reference/simple_stmts.rst:391 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 msgid "" "The extended form, ``assert expression1, expression2``, is equivalent to ::" msgstr "" -"La forme étendue, ``assert expression1, expression2``, est équivalente à ::" +"La forme étendue, ``assert expression1, expression2``, est équivalente à ::" #: reference/simple_stmts.rst:405 msgid "" @@ -758,11 +758,11 @@ msgstr "" "`expression yield `. L'instruction *yield* peut être utilisée " "pour omettre les parenthèses qui seraient autrement requises dans " "l'instruction équivalente d'expression *yield*. Par exemple, les " -"instructions *yield* ::" +"instructions *yield* ::" #: reference/simple_stmts.rst:539 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 msgid "" @@ -1244,13 +1244,12 @@ msgid "other future statements." msgstr "d'autres instructions *future*." #: reference/simple_stmts.rst:877 -#, fuzzy msgid "" "The only feature that requires using the future statement is ``annotations`` " "(see :pep:`563`)." msgstr "" -"La seule fonctionnalité dans Python 3.7 qui nécessite l'utilisation de " -"l'instruction `future` est ``annotations``." +"La seule fonctionnalité qui nécessite l'utilisation de l'instruction " +"`future` est ``annotations`` (voir la :pep:`563`)." #: reference/simple_stmts.rst:880 msgid "" diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index f4348b44..8ffecfd6 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -343,7 +343,6 @@ msgstr "" "englobantes, désignées dans une instruction :keyword:`nonlocal`)." #: tutorial/controlflow.rst:294 -#, fuzzy msgid "" "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 " @@ -356,8 +355,9 @@ msgstr "" "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*, " "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 " -"nouvelle table de symboles locaux est créée pour cet appel." +"l'objet lui-même [#]_. Lorsqu'une fonction appelle une autre fonction, ou " +"s'appelle elle-même par récursion, une nouvelle table de symboles locaux est " +"créée pour cet appel." #: tutorial/controlflow.rst:301 msgid ""