From 4b66d2299a27c2fdd95e6721c266eb76c9770b4e Mon Sep 17 00:00:00 2001 From: Christophe Nanteuil Date: Sun, 20 Nov 2022 22:04:35 +0100 Subject: [PATCH] =?UTF-8?q?Fin=20des=20fuzzys=20relecture=20remplace=20cer?= =?UTF-8?q?tains=20'd=C3=A9fini=20par=20l'utilisateur'=20par=20'allog?= =?UTF-8?q?=C3=A8ne'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- library/typing.po | 21 +- reference/datamodel.po | 437 ++++++++++++++++++++++----------------- reference/expressions.po | 8 +- whatsnew/3.9.po | 14 +- 4 files changed, 271 insertions(+), 209 deletions(-) diff --git a/library/typing.po b/library/typing.po index a8e35f21..ce042bd6 100644 --- a/library/typing.po +++ b/library/typing.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-05-22 23:13+0200\n" -"PO-Revision-Date: 2021-12-16 17:27+0100\n" +"PO-Revision-Date: 2022-11-20 15:32+0100\n" "Last-Translator: Jean-Michel Laprise \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -34,17 +34,14 @@ msgstr "" "tiers tels que les contrôleurs de type, les IDE, les analyseurs de code, etc." #: library/typing.rst:20 -#, fuzzy msgid "" "This module provides runtime support for type hints. The most fundamental " "support consists of the types :data:`Any`, :data:`Union`, :data:`Callable`, :" "class:`TypeVar`, and :class:`Generic`. For a full specification, please see :" "pep:`484`. For a simplified introduction to type hints, see :pep:`483`." msgstr "" -"Ce module fournit la gestion des annotations de type à l'exécution " -"conformément à ce qui est spécifié dans les :pep:`484`, :pep:`526`, :pep:" -"`544`, :pep:`586`, :pep:`589` et :pep:`591`. Le support le plus fondamental " -"se compose des types :data:`Any`, :data:`Union`, :data:`Tuple`, :data:" +"Ce module fournit la gestion des annotations de type à l'exécution. La prise " +"en compte de base comprend les types :data:`Any`, :data:`Union`, :data:" "`Callable`, :class:`TypeVar` et :class:`Generic`. Pour les spécifications " "complètes, voir la :pep:`484`. Pour une introduction simplifiée aux " "annotations de type, voir la :pep:`483`." @@ -433,13 +430,13 @@ msgstr "" #: library/typing.rst:280 msgid "User-defined generic types" -msgstr "Types génériques définis par l'utilisateur" +msgstr "Types génériques allogènes" #: library/typing.rst:282 msgid "A user-defined class can be defined as a generic class." msgstr "" -"Une classe définie par l'utilisateur peut être définie comme une classe " -"générique." +"Une classe allogène (ou « définie par l'utilisateur ») peut être définie " +"comme une classe générique." #: library/typing.rst:308 msgid "" @@ -1716,9 +1713,9 @@ msgstr "Marquez une classe de protocole comme protocole d'exécution." msgid "" "Such a protocol can be used with :func:`isinstance` and :func:`issubclass`. " "This raises :exc:`TypeError` when applied to a non-protocol class. This " -"allows a simple-minded structural check, very similar to \"one trick " -"ponies\" in :mod:`collections.abc` such as :class:`~collections.abc." -"Iterable`. For example::" +"allows a simple-minded structural check, very similar to \"one trick ponies" +"\" in :mod:`collections.abc` such as :class:`~collections.abc.Iterable`. " +"For example::" msgstr "" "Un tel protocole peut être utilisé avec :func:`isinstance` et :func:" "`issubclass`. Cela lève :exc:`TypeError` lorsqu'il est appliqué à une classe " diff --git a/reference/datamodel.po b/reference/datamodel.po index 766ed84c..293ebfbe 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: 2022-05-22 23:13+0200\n" -"PO-Revision-Date: 2022-11-19 23:02+0100\n" +"PO-Revision-Date: 2022-11-20 21:56+0100\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -1795,8 +1795,8 @@ msgid "" "is 0-indexed utf-8 byte offsets on the given source line." msgstr "" "L'itérateur renvoie un *n*-uplet contenant ``(ligne_début, ligne_fin, " -"colonne_début, colonne_fin)``. Le i-:sup`ème` *n*-uplet correspond à la " -"position dans le code source qui compile la i-:sup`ème` instruction. " +"colonne_début, colonne_fin)``. Le i\\ :sup:`ème` *n*-uplet correspond à la " +"position dans le code source qui compile la i\\ :sup:`ème` instruction. " "L'information de colonne est l'indice (en partant de zéro) de l'octet utf-8 " "dans la ligne source donnée." @@ -1822,14 +1822,14 @@ msgstr "" #: reference/datamodel.rst:1035 msgid "Position tuples corresponding to artificial instructions." -msgstr "*N*-uplet de position correspond à des instructions artificielles ;" +msgstr "le *n*-uplet de position correspond à des instructions artificielles ;" #: reference/datamodel.rst:1036 msgid "" "Line and column numbers that can't be represented due to implementation " "specific limitations." msgstr "" -"Les lignes et colonnes ne peuvent pas être représentées en tant que nombre, " +"les lignes et colonnes ne peuvent pas être représentées en tant que nombre, " "en raison de limitations dues à l'implémentation ;" #: reference/datamodel.rst:1039 @@ -1839,6 +1839,7 @@ msgstr "" "Dans ce cas, certains ou tous les éléments du *n*-uplet peuvent valoir :" "const:`None`." +# suite un : #: reference/datamodel.rst:1045 msgid "" "This feature requires storing column positions in code objects which may " @@ -1848,7 +1849,7 @@ msgid "" "``no_debug_ranges`` command line flag or the :envvar:`PYTHONNODEBUGRANGES` " "environment variable can be used." msgstr "" -"Cette fonctionalité nécessite de stocker les positions de colonne dans les " +"cette fonctionnalité nécessite de stocker les positions de colonne dans les " "objets code, ce qui peut conduire à une légère augmentation de l'utilisation " "du disque par les fichiers Python compilés ou de l'utilisation de la " "mémoire. Pour éviter de stocker cette information supplémentaire ou pour " @@ -1885,8 +1886,8 @@ msgstr "" "`f_locals` est le dictionnaire dans lequel sont cherchées les variables " "locales ; :attr:`f_globals` est utilisé pour les variables globales ; :attr:" "`f_builtins` est utilisé pour les noms natifs ; :attr:`f_lasti` donne " -"l'instruction précise (c'est un indice dans la chaîne de *bytecode* de " -"l'objet code)." +"l'instruction précise (c'est un indice dans la chaîne de code intermédiaire " +"de l'objet code)." #: reference/datamodel.rst:1076 msgid "" @@ -1904,7 +1905,7 @@ msgid "" "can be disabled by setting :attr:`f_trace_lines` to :const:`False`." msgstr "" "Attributs spéciaux en lecture-écriture : :attr:`f_trace`, s'il n'est pas " -"``None``, c'est une fonction appelée à différentes occasions durant " +"``None``, est une fonction appelée à différentes occasions durant " "l'exécution du code (elle est utilisée par le débogueur). Normalement, un " "événement est déclenché pour chaque ligne de code source — ce comportement " "peut être désactivé en définissant :attr:`f_trace_lines` à :const:`False`." @@ -1919,8 +1920,8 @@ msgstr "" "Une implémentation *peut* autoriser le déclenchement des événements *opcode* " "par *opcode* en définissant :attr:`f_trace_opcodes` à :const:`True`. Notez " "que cela peut conduire à un comportement erratique de l'interpréteur si des " -"exceptions levées la fonction de traçage s'échappent vers la fonction en " -"train d'être tracée." +"exceptions levées par la fonction de traçage sont interceptées par la " +"fonction en train d'être tracée." #: reference/datamodel.rst:1095 msgid "" @@ -1958,7 +1959,7 @@ msgstr ":exc:`RuntimeError` est levée si le cadre est en cours d'exécution." #: reference/datamodel.rst:1175 msgid "Traceback objects" -msgstr "Objets traces" +msgstr "Objets traces d'appels" #: reference/datamodel.rst:1127 msgid "" @@ -2024,7 +2025,7 @@ msgstr "" "Le numéro de ligne et la dernière instruction dans la trace peuvent différer " "du numéro de ligne de l'objet cadre si l'exception a eu lieu dans une " "instruction :keyword:`try` sans qu'il n'y ait de clause :keyword:`!except` " -"adéquate ou sans clause *finally*." +"adéquate ou sans clause :keyword:`!finally`." #: reference/datamodel.rst:1163 msgid "" @@ -2040,16 +2041,17 @@ msgid "" "trace (towards the frame where the exception occurred), or ``None`` if there " "is no next level." msgstr "" -"Attributs spéciaux en lecture-écriture :attr:`tb_next` est le niveau suivant " -"dans la pile d'exécution (en direction du cadre où l'exception a eu lieu) ou " -"``None`` s'il n'y a pas de niveau suivant." +"Attributs spéciaux en lecture-écriture : :attr:`tb_next` est le niveau " +"suivant dans la pile d'exécution (en direction du cadre où l'exception a eu " +"lieu) ou ``None`` s'il n'y a pas de niveau suivant." +# suit un : #: reference/datamodel.rst:1173 msgid "" "Traceback objects can now be explicitly instantiated from Python code, and " "the ``tb_next`` attribute of existing instances can be updated." msgstr "" -"Les objets de traces d'appels peuvent maintenant être explicitement " +"les objets de traces d'appels peuvent maintenant être explicitement " "instanciés depuis le code Python et l'attribut ``tb_next`` des instances " "existantes peut être mis à jour." @@ -2091,7 +2093,7 @@ msgid "" "a manner consistent with regular slices." msgstr "" "Cette méthode prend un argument entier *length* et calcule les informations " -"de la tranche que l'objet découpe décrit s'il est appliqué à une séquence de " +"de la tranche que l'objet *slice* décrit s'il est appliqué à une séquence de " "*length* éléments. Elle renvoie un triplet d'entiers ; respectivement, ce " "sont les indices de *début* et *fin* ainsi que le *pas* de découpe. Les " "indices manquants ou en dehors sont gérés de manière cohérente avec les " @@ -2113,12 +2115,12 @@ msgid "" msgstr "" "Les objets méthodes statiques permettent la transformation des objets " "fonctions en objets méthodes décrits au-dessus. Un objet méthode statique " -"encapsule tout autre objet, souvent un objet méthode définie par " -"l'utilisateur. Quand un objet méthode statique est récupéré depuis une " -"classe ou une instance de classe, l'objet réellement renvoyé est un objet " -"encapsulé, qui n'a pas vocation à être transformé encore une fois. Les " -"objets méthodes statiques sont également appelables. Les objets méthodes " -"statiques sont créés par le constructeur natif :func:`staticmethod`." +"encapsule tout autre objet, souvent un objet méthode allogène. Quand un " +"objet méthode statique est récupéré depuis une classe ou une instance de " +"classe, l'objet réellement renvoyé est un objet encapsulé, qui n'a pas " +"vocation à être transformé encore une fois. Les objets méthodes statiques " +"sont aussi appelables. Les objets méthodes statiques sont créés par le " +"constructeur natif :func:`staticmethod`." #: reference/datamodel.rst:1219 msgid "Class method objects" @@ -2346,13 +2348,14 @@ msgstr "" msgid "Documentation for the :mod:`gc` module." msgstr "Documentation du module :mod:`gc`." +# suit un : #: reference/datamodel.rst:1350 msgid "" "Due to the precarious circumstances under which :meth:`__del__` methods are " "invoked, exceptions that occur during their execution are ignored, and a " "warning is printed to ``sys.stderr`` instead. In particular:" msgstr "" -"En raison des conditions particulières qui règnent quand :meth:`__del__` est " +"en raison des conditions particulières qui règnent quand :meth:`__del__` est " "appelée, les exceptions levées pendant son exécution sont ignorées et, à la " "place, un avertissement est affiché sur ``sys.stderr``. En particulier :" @@ -2448,8 +2451,8 @@ msgid "" "The default implementation defined by the built-in type :class:`object` " "calls :meth:`object.__repr__`." msgstr "" -"C'est l'implémentation par défaut des appels à :meth:`object.__repr__` du " -"type natif :class:`object`." +"L'implémentation par défaut du type natif :class:`object` appelle :meth:" +"`object.__repr__` ." #: reference/datamodel.rst:1414 msgid "" @@ -2471,14 +2474,14 @@ msgid "" "formatting option syntax." msgstr "" "Appelée par la fonction native :func:`format` et, par extension, lors de " -"l'évaluation de :ref:`formatted string literals ` et la méthode :" -"meth:`str.format`. Elle produit une chaîne de caractères « formatée » " -"représentant un objet. L'argument ``format_spec`` est une chaîne de " -"caractères contenant la description des options de formatage voulues. " -"L'interprétation de l'argument ``format_spec`` est laissée au type " -"implémentant :meth:`__format__`. Cependant, la plupart des classes délèguent " -"le formatage aux types natifs ou utilisent une syntaxe similaire d'options " -"de formatage." +"l'évaluation de :ref:`chaînes de caractères littérales formatées ` et la méthode :meth:`str.format`. Elle produit une chaîne de " +"caractères « formatée » représentant un objet. L'argument ``format_spec`` " +"est une chaîne de caractères contenant la description des options de " +"formatage voulues. L'interprétation de l'argument ``format_spec`` est " +"laissée au type implémentant :meth:`__format__`. Cependant, la plupart des " +"classes délèguent le formatage aux types natifs ou utilisent une syntaxe " +"similaire pour les options de formatage." #: reference/datamodel.rst:1435 msgid "" @@ -2491,12 +2494,13 @@ msgstr "" msgid "The return value must be a string object." msgstr "La valeur renvoyée doit être un objet chaîne de caractères." +# suit un : #: reference/datamodel.rst:1439 msgid "" "The __format__ method of ``object`` itself raises a :exc:`TypeError` if " "passed any non-empty string." msgstr "" -"La méthode ``__format__`` de ``object`` lui-même lève une :exc:`TypeError` " +"la méthode ``__format__`` de ``object`` lui-même lève une :exc:`TypeError` " "si vous lui passez une chaîne non vide." #: reference/datamodel.rst:1443 @@ -2567,9 +2571,9 @@ msgid "" "usable as dictionary keys." msgstr "" "Lisez le paragraphe :meth:`__hash__` pour connaître certaines notions " -"importantes relatives à la création d'objets :term:`hashable` qui acceptent " -"les opérations de comparaison personnalisées et qui sont utilisables en tant " -"que clés de dictionnaires." +"importantes relatives à la création d'objets :term:`hachables ` " +"qui acceptent les opérations de comparaison personnalisées et qui sont " +"utilisables en tant que clés de dictionnaires." #: reference/datamodel.rst:1485 msgid "" @@ -2611,7 +2615,7 @@ msgstr "" "entier. La seule propriété requise est que les objets qui sont égaux pour la " "comparaison doivent avoir la même valeur de hachage ; il est conseillé de " "mélanger les valeurs de hachage des composants d'un objet qui jouent un rôle " -"de la comparaison des objets, en les plaçant dans un *n*-uplet dont on " +"dans la comparaison des objets, en les emballant dans un *n*-uplet dont on " "calcule l'empreinte. Par exemple ::" #: reference/datamodel.rst:1515 @@ -2650,8 +2654,8 @@ msgstr "" "définit des objets mutables et implémente la méthode :meth:`__eq__`, elle ne " "doit pas implémenter :meth:`__hash__` puisque l'implémentation des " "collections hachables requiert que les clés soient des empreintes immuables " -"(si l'empreinte d'un objet change, il ne sera plus trouvé correctement dans " -"le stockage du dictionnaire)." +"(si l'empreinte d'un objet change, il ne sera plus stocké à l'emplacement " +"prévu)." #: reference/datamodel.rst:1532 msgid "" @@ -2706,6 +2710,7 @@ msgstr "" "lève explicitement :exc:`TypeError` serait incorrectement identifiée comme " "hachable par un appel à ``isinstance(obj, collections.abc.Hashable)``." +# suit un : #: reference/datamodel.rst:1557 msgid "" "By default, the :meth:`__hash__` values of str and bytes objects are \"salted" @@ -2713,7 +2718,7 @@ msgid "" "an individual Python process, they are not predictable between repeated " "invocations of Python." msgstr "" -"Par défaut, les valeurs renvoyées par :meth:`__hash__` pour les chaînes et " +"par défaut, les valeurs renvoyées par :meth:`__hash__` pour les chaînes et " "les *bytes* sont « salées » avec une valeur aléatoire non prévisible. Bien " "qu'une empreinte reste constante tout au long d'un processus Python, sa " "valeur n'est pas prévisible entre deux invocations de Python." @@ -2791,7 +2796,7 @@ msgstr "" "`AttributeError` (soit :meth:`__getattribute__` lève :exc:`AttributeError` " "car *name* n'est pas un attribut de l'instance ou un attribut dans " "l'arborescence de la classe de ``self`` ; ou :meth:`__get__` de la propriété " -"*name* lève :exc:`AttributeError`). Cette méthode doit retourner soit la " +"*name* lève :exc:`AttributeError`). Cette méthode doit renvoyer soit la " "valeur (calculée) de l'attribut, soit lever une exception :exc:" "`AttributeError`." @@ -2840,13 +2845,14 @@ msgstr "" "accéder à n'importe quel attribut dont elle a besoin. Par exemple, ``object." "__getattribute__(self, name)``." +# suit un : #: reference/datamodel.rst:1633 msgid "" "This method may still be bypassed when looking up special methods as the " "result of implicit invocation via language syntax or built-in functions. " "See :ref:`special-lookup`." msgstr "" -"Cette méthode peut être shuntée lorsque la recherche porte sur les méthodes " +"cette méthode peut être shuntée lorsque la recherche porte sur les méthodes " "spéciales en tant que résultat d'une invocation implicite *via* la syntaxe " "du langage ou les fonctions natives. Lisez :ref:`special-lookup`." @@ -2988,6 +2994,7 @@ msgstr "" "``__class__`` d'un objet module à une sous-classe de :class:`types." "ModuleType`. Par exemple ::" +# suit un : #: reference/datamodel.rst:1718 msgid "" "Defining module ``__getattr__`` and setting module ``__class__`` only affect " @@ -2995,7 +3002,7 @@ msgid "" "module globals (whether by code within the module, or via a reference to the " "module's globals dictionary) is unaffected." msgstr "" -"Définir ``__getattr__`` du module et ``__class__`` pour le module affecte " +"définir ``__getattr__`` du module et ``__class__`` pour le module impacte " "uniquement les recherches qui utilisent la syntaxe d'accès aux attributs — " "accéder directement aux globales d'un module (soit par le code dans le " "module, soit *via* une référence au dictionnaire des variables globales du " @@ -3219,7 +3226,7 @@ msgid "" msgstr "" "Une recherche avec un point telle que ``super(A, a).x`` cherche ``a." "__class__.__mro__`` pour une classe de base ``B`` qui suit (dans l'ordre " -"MRO) ``A`` puis renvoie ``B.__dict__['x'].__get__(a, A)``. Si ce n'est pas " +"MRO) ``A``, puis renvoie ``B.__dict__['x'].__get__(a, A)``. Si ce n'est pas " "un descripteur, ``x`` est renvoyé inchangé." #: reference/datamodel.rst:1862 @@ -3264,7 +3271,7 @@ msgid "" msgstr "" "Les méthodes Python (y compris celles décorées par :func:`@staticmethod " "` et :func:`@classmethod `) sont implémentées " -"comme des descripteurs hors-donnée. De la même manière, les instances " +"comme des descripteurs hors-données. De la même manière, les instances " "peuvent redéfinir et surcharger les méthodes. Ceci permet à chaque instance " "d'avoir un comportement qui diffère des autres instances de la même classe." @@ -3279,7 +3286,7 @@ msgstr "" #: reference/datamodel.rst:1889 msgid "__slots__" -msgstr "``__slots__``" +msgstr "créneaux prédéfinis (``__slots__``)" #: reference/datamodel.rst:1891 msgid "" @@ -3287,10 +3294,10 @@ msgid "" "and deny the creation of :attr:`~object.__dict__` and *__weakref__* (unless " "explicitly declared in *__slots__* or available in a parent.)" msgstr "" -"Les ``__slots__`` vous permettent de déclarer des membres d'une donnée " -"(comme une propriété) et d'interdire la création de :attr:`~object.__dict__` " -"ou de *__weakref__* (à moins qu'ils ne soient explicitement déclarés dans le " -"``__slots__`` ou présent dans le parent)." +"Les créneaux prédéfinis (``__slots__``) vous permettent de déclarer des " +"membres d'une donnée (comme une propriété) et d'interdire la création de :" +"attr:`~object.__dict__` ou de *__weakref__* (à moins qu'ils ne soient " +"explicitement déclarés dans le ``__slots__`` ou présent dans le parent)." #: reference/datamodel.rst:1895 msgid "" @@ -3316,7 +3323,7 @@ msgstr "" #: reference/datamodel.rst:1908 msgid "Notes on using *__slots__*" -msgstr "Note sur l'utilisation de *__slots__*" +msgstr "Note sur l'utilisation des créneaux prédéfinis *__slots__*" #: reference/datamodel.rst:1910 msgid "" @@ -3380,8 +3387,8 @@ msgstr "" "est défini. Les *__slots__* déclarés par les parents sont disponibles dans " "les classes enfants. Cependant, les sous-classes enfants ont un :attr:" "`~object.__dict__` et un *__weakref__* à moins qu'elles ne définissent aussi " -"un *__slots__* (qui ne doit contenir alors que les noms *supplémentaires* du " -"*slot*)." +"un *__slots__* (qui ne doit contenir alors que les noms *supplémentaires* " +"aux créneaux déjà prédéfinis)." #: reference/datamodel.rst:1939 msgid "" @@ -3440,7 +3447,7 @@ msgid "" "created by slots (the other bases must have empty slot layouts) - violations " "raise :exc:`TypeError`." msgstr "" -"L\\' :ref:`héritage multiple ` avec plusieurs classes parentes " +"L\\':ref:`héritage multiple ` avec plusieurs classes parentes " "qui ont des *__slots__* est possible, mais seul un parent peut avoir des " "attributs créés par *__slots__* (les autres classes parentes doivent avoir " "des *__slots__* vides). La violation de cette règle lève :exc:`TypeError`." @@ -3453,7 +3460,7 @@ msgid "" msgstr "" "Si un :term:`itérateur ` est utilisé pour *__slots__*, alors un :" "term:`descripteur ` est créé pour chacune des valeurs de " -"l'itérateur. Cependant, l'attribut de *__slots__* est un itérateur vide." +"l'itérateur. Cependant, l'attribut *__slots__* est un itérateur vide." #: reference/datamodel.rst:1971 msgid "Customizing class creation" @@ -3508,6 +3515,7 @@ msgstr "" "sans argument, mais lève une erreur si elle est appelée avec un argument ou " "plus." +# suit un : #: reference/datamodel.rst:2005 msgid "" "The metaclass hint ``metaclass`` is consumed by the rest of the type " @@ -3515,7 +3523,7 @@ msgid "" "actual metaclass (rather than the explicit hint) can be accessed as " "``type(cls)``." msgstr "" -"L'indication de métaclasse ``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étaclasse réelle (plutôt que l'indication " "explicite) peut être récupérée par ``type(cls)``." @@ -3534,8 +3542,8 @@ msgid "" "Automatically called at the time the owning class *owner* is created. The " "object has been assigned to *name* in that class::" msgstr "" -"Appelé au moment où la classe propriétaire *owner* est créée. L'objet *self* " -"a été assigné à *name* dans *owner* ::" +"Appelée automatiquement au moment où la classe propriétaire *owner* est " +"créée. L'objet *self* a été assigné à *name* dans *owner* ::" #: reference/datamodel.rst:2024 msgid "" @@ -3592,9 +3600,10 @@ msgstr "" "Quand la définition d'une classe est exécutée, les différentes étapes " "suivies sont :" +# suit un : #: reference/datamodel.rst:2073 msgid "MRO entries are resolved;" -msgstr "Les entrées MRO sont résolues ;" +msgstr "les entrées MRO sont résolues ;" #: reference/datamodel.rst:2074 msgid "the appropriate metaclass is determined;" @@ -3610,7 +3619,7 @@ msgstr "le corps de la classe est exécuté ;" #: reference/datamodel.rst:2077 msgid "the class object is created." -msgstr "l'objet classe est crée." +msgstr "l'objet classe est créé." #: reference/datamodel.rst:2081 msgid "Resolving MRO entries" @@ -3690,7 +3699,6 @@ msgid "Preparing the class namespace" msgstr "Préparation de l'espace de nommage de la classe" #: reference/datamodel.rst:2122 -#, fuzzy msgid "" "Once the appropriate metaclass has been identified, then the class namespace " "is prepared. If the metaclass has a ``__prepare__`` attribute, it is called " @@ -3706,10 +3714,10 @@ msgstr "" "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``." +"être implémentée comme une :func:`méthode de classe `). " +"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:2131 msgid "" @@ -3799,6 +3807,7 @@ msgstr "" "l'appel en cours est identifiée en fonction du premier argument transmis à " "la méthode." +# suit un : #: reference/datamodel.rst:2183 msgid "" "In CPython 3.6 and later, the ``__class__`` cell is passed to the metaclass " @@ -3807,7 +3816,7 @@ 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 " +"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 " @@ -3972,7 +3981,7 @@ msgstr "" "Inclut la spécification pour la personnalisation du comportement de :func:" "`isinstance` et :func:`issubclass` à travers :meth:`~class." "__instancecheck__` et :meth:`~class.__subclasscheck__`, avec comme " -"motivation pour cette fonctionnalité l'ajout les classes de base abstraites " +"motivation pour cette fonctionnalité l'ajout des classes de base abstraites " "(voir le module :mod:`abc`) au langage." #: reference/datamodel.rst:2265 @@ -3986,41 +3995,55 @@ msgid "" "notation. For example, the annotation ``list[int]`` might be used to signify " "a :class:`list` in which all the elements are of type :class:`int`." msgstr "" +"Lors de l'utilisation d\\':term:`annotations de types`, il est " +"souvent utile de *paramètrer* un :term:`type générique ` en se " +"servant de la notation crochets de Python. Par exemple, l'annotation " +"``list[int]`` peut être utilisée pour signifier une :class:`liste ` " +"dans laquelle tous les éléments sont de type :class:`entiers `." #: reference/datamodel.rst:2275 -#, fuzzy msgid ":pep:`484` - Type Hints" -msgstr ":pep:`343` — L'instruction ``with``" +msgstr ":pep:`343` — Indications de types" #: reference/datamodel.rst:2275 msgid "Introducing Python's framework for type annotations" -msgstr "" +msgstr "Introduction à l'annotation de types en Python (document en anglais)" #: reference/datamodel.rst:2278 msgid ":ref:`Generic Alias Types`" -msgstr "" +msgstr ":ref:`Types alias génériques `" #: reference/datamodel.rst:2278 msgid "Documentation for objects representing parameterized generic classes" msgstr "" +"Documentation pour les objets qui représentent des classes génériques " +"paramétrées" #: reference/datamodel.rst:2281 msgid "" ":ref:`Generics`, :ref:`user-defined generics` and :" "class:`typing.Generic`" msgstr "" +":ref:`Generics`, :ref:`Types génériques allogènes ` " +"et classe :class:`typing.Generic (classe de base abstraite pour les types " +"génériques) `" #: reference/datamodel.rst:2281 msgid "" "Documentation on how to implement generic classes that can be parameterized " "at runtime and understood by static type-checkers." msgstr "" +"Documentation sur la manière d'implémenter des classes génériques qui " +"peuvent être paramétrées à l'exécution et comprises par les vérificateurs " +"statiques de types." #: reference/datamodel.rst:2284 msgid "" "A class can *generally* only be parameterized if it defines the special " "class method ``__class_getitem__()``." msgstr "" +"*Généralement*, une classe ne peut être paramétrée que si elle définit une " +"méthode spéciale de classe ``__class_getitem__()``." #: reference/datamodel.rst:2289 msgid "" @@ -4036,10 +4059,13 @@ msgid "" "method. As such, there is no need for it to be decorated with :func:" "`@classmethod` when it is defined." msgstr "" +"Lorsqu'elle est définie dans une classe, ``__class_getitem__()`` est " +"automatiquement une méthode de classe. Ainsi, il est superflu de la décorer " +"avec :func:`@classmethod` lors de sa définition." #: reference/datamodel.rst:2298 msgid "The purpose of *__class_getitem__*" -msgstr "" +msgstr "Intention de *__class_getitem__*" #: reference/datamodel.rst:2300 msgid "" @@ -4047,6 +4073,10 @@ msgid "" "parameterization of standard-library generic classes in order to more easily " "apply :term:`type hints` to these classes." msgstr "" +"Le but de :meth:`~object.__class_getitem__` est de permettre la " +"paramétrisation à l'exécution des classes génériques de la bibliothèque " +"standard de façon à pouvoir appliquer plus facilement des :term:`annotations " +"de type ` à ces classes." #: reference/datamodel.rst:2304 msgid "" @@ -4056,6 +4086,11 @@ msgid "" "__class_getitem__`, or inherit from :class:`typing.Generic`, which has its " "own implementation of ``__class_getitem__()``." msgstr "" +"Pour implémenter des classes génériques particularisées pouvant être " +"paramétrées à l'exécution, et comprises par les vérificateurs statiques de " +"type, vous pouvez soit hériter d'une classe de la bibliothèque standard qui " +"implémente déjà :meth:`~object.__class_getitem__`, ou hériter de :class:" +"`typing.Generic`, qui a sa propre implémentation de ``__class_getitem__()``." #: reference/datamodel.rst:2310 msgid "" @@ -4064,10 +4099,15 @@ msgid "" "type-checkers such as mypy. Using ``__class_getitem__()`` on any class for " "purposes other than type hinting is discouraged." msgstr "" +"Les implémentations particularisées de :meth:`~object.__class_getitem__` sur " +"des classes définies ailleurs que la bibliothèque standard peuvent ne pas " +"être comprises par des vérificateurs de types tiers tels que *mypy*. " +"L'utilisation de ``__class_getitem__()`` pour tout autre objectif que " +"l'annotation de type n'est pas conseillée." #: reference/datamodel.rst:2320 msgid "*__class_getitem__* versus *__getitem__*" -msgstr "" +msgstr "*__class_getitem__* contre *__getitem__*" #: reference/datamodel.rst:2322 msgid "" @@ -4078,6 +4118,13 @@ msgid "" "instead. ``__class_getitem__()`` should return a :ref:`GenericAlias` object if it is properly defined." msgstr "" +"D'habitude, l\\':ref:`indiçage ` d'un objet en utilisant des " +"crochets appelle la méthode :meth:`~object.__getitem__` de l'instance, " +"définie dans la classe de l'objet. Cependant, si l'objet dont on cherche un " +"indice est lui-même une classe, la méthode de classe :meth:`~object." +"__class_getitem__` peut être appelée à la place. ``__class_getitem__()`` " +"doit renvoyer un objet :ref:`GenericAlias` si elle est " +"correctement définie." #: reference/datamodel.rst:2329 msgid "" @@ -4085,6 +4132,9 @@ msgid "" "follows something like the following process to decide whether :meth:" "`~object.__getitem__` or :meth:`~object.__class_getitem__` should be called::" msgstr "" +"Lorsqu'on lui présente l\\':term:`expression` ``obj[x]``, l'interpréteur " +"Python suit une sorte de processus suivant pour décider s'il faut appeler :" +"meth:`~object.__getitem__` ou :meth:`~object.__class_getitem__` ::" #: reference/datamodel.rst:2357 msgid "" @@ -4095,6 +4145,12 @@ msgid "" "``dict[str, float]`` and ``tuple[str, bytes]`` all result in :meth:`~object." "__class_getitem__` being called::" msgstr "" +"En Python, toutes les classes sont des instances d'autres classes. La classe " +"d'une classe est appelée la :term:`métaclasse ` de la classe et " +"la plupart des classes ont la classe :class:`type` comme métaclasse. :class:" +"`type` ne définit pas :meth:`~object.__getitem__`, ce qui veut dire que des " +"expressions telles que ``list[int]``, ``dict[str, float]`` et ``tuple[str, " +"bytes]`` aboutissent toutes à l'appel de :meth:`~object.__class_getitem__` ::" #: reference/datamodel.rst:2376 msgid "" @@ -4102,9 +4158,12 @@ msgid "" "__getitem__`, subscribing the class may result in different behaviour. An " "example of this can be found in the :mod:`enum` module::" msgstr "" +"Cependant, si une classe a une métaclasse particularisée qui définit :meth:" +"`~object.__getitem__`, l'indiçage de la classe peut conduire à un " +"comportement différent. Un exemple peut être trouvé dans le module :mod:" +"`enum` ::" #: reference/datamodel.rst:2401 -#, fuzzy msgid ":pep:`560` - Core Support for typing module and generic types" msgstr "" ":pep:`560` — Gestion de base pour les types modules et les types génériques" @@ -4115,6 +4174,9 @@ msgid "" "`subscription` results in ``__class_getitem__()`` being " "called instead of :meth:`~object.__getitem__`" msgstr "" +"Introduction de :meth:`~object.__class_getitem__`, et présentation des cas " +"où un :ref:`indiçage` conduit à l'appel de " +"``__class_getitem__()`` au lieu de :meth:`~object.__getitem__`" #: reference/datamodel.rst:2408 msgid "Emulating callable objects" @@ -4135,7 +4197,6 @@ msgid "Emulating container types" msgstr "Émulation de types conteneurs" #: reference/datamodel.rst:2424 -#, fuzzy msgid "" "The following methods can be defined to implement container objects. " "Containers usually are :term:`sequences ` (such as :class:`lists " @@ -4171,39 +4232,42 @@ msgid "" "the values." msgstr "" "Les fonctions suivantes peuvent être définies pour implémenter des objets " -"conteneurs. Les conteneurs sont habituellement des séquences (telles que les " -"*n*-uplets ou les listes) ou des tableaux de correspondances (comme les " -"dictionnaires), mais ils peuvent aussi représenter d'autres conteneurs. Le " -"premier ensemble de méthodes est utilisé soit pour émuler une séquence, soit " -"pour émuler un tableau de correspondances ; la différence est que, pour une " -"séquence, les clés doivent être soit des entiers *k* tels que ``0 <= k < N`` " -"où *N* est la longueur de la séquence, soit des objets tranches qui " -"définissent un intervalle d'éléments. Il est aussi recommandé que les " -"tableaux de correspondances fournissent les méthodes :meth:`keys`, :meth:" -"`values`, :meth:`items`, :meth:`get`, :meth:`clear`, :meth:`setdefault`, :" -"meth:`pop`, :meth:`popitem`, :meth:`!copy` et :meth:`update` avec un " -"comportement similaire aux objets dictionnaires standards de Python. Le " -"module :mod:`collections.abc` fournit une classe de base abstraite :class:" -"`~collections.abc.MutableMapping` pour aider à la création de ces méthodes à " -"partir d'un ensemble de base composé de :meth:`__getitem__`, :meth:" -"`__setitem__`, :meth:`__delitem__` et :meth:`keys`. Les séquences muables " -"doivent fournir les méthodes :meth:`append`, :meth:`count`, :meth:`index`, :" -"meth:`extend`, :meth:`insert`, :meth:`pop`, :meth:`remove`, :meth:`reverse` " -"et :meth:`sort`, comme les objets listes standards de Python. Enfin, les " -"types séquences doivent implémenter l'addition (dans le sens de la " -"concaténation) et la multiplication (dans le sens de la répétition) en " -"définissant les méthodes :meth:`__add__`, :meth:`__radd__`, :meth:" -"`__iadd__`, :meth:`__mul__`, :meth:`__rmul__` et :meth:`__imul__` décrites " -"ci-dessous ; ils ne doivent pas définir d'autres opérateurs numériques. Il " -"est recommandé que les tableaux de correspondances et les séquences " -"implémentent la méthode :meth:`__contains__` pour permettre l'utilisation " -"efficace de l'opérateur ``in`` ; concernant les tableaux de correspondances, " -"``in`` doit rechercher dans les clés du tableau ; pour les séquences, il " -"doit chercher dans les valeurs. Il est de plus recommandé que les tableaux " -"de correspondances et les séquences implémentent la méthode :meth:`__iter__` " -"pour permettre une itération efficace dans le conteneur ; pour les tableaux " -"de correspondances, :meth:`__iter__` doit itérer sur les clés de l'objet ; " -"pour les séquences, elle doit itérer sur les valeurs." +"conteneurs. Les conteneurs sont habituellement des :term:`séquences " +"` (telles que les :class:`listes ` ou les :class:`n-uplets " +"`) ou des :term:`tableaux de correspondances ` (comme les :" +"class:`dictionnaires `), mais ils peuvent aussi représenter d'autres " +"conteneurs. Le premier ensemble de méthodes est utilisé soit pour émuler une " +"séquence, soit pour émuler un tableau de correspondances ; la différence est " +"que, pour une séquence, les clés doivent être soit des entiers *k* tels que " +"``0 <= k < N`` où *N* est la longueur de la séquence, soit des objets :class:" +"`tranches ` qui définissent un intervalle d'éléments. Il est aussi " +"recommandé que les tableaux de correspondances fournissent les méthodes :" +"meth:`keys`, :meth:`values`, :meth:`items`, :meth:`get`, :meth:`clear`, :" +"meth:`setdefault`, :meth:`pop`, :meth:`popitem`, :meth:`!copy` et :meth:" +"`update` avec un comportement similaire aux objets :class:`dictionnaires " +"` standards de Python. Le module :mod:`collections.abc` fournit une :" +"term:`classe de base abstraite ` :class:`~collections." +"abc.MutableMapping` pour aider à la création de ces méthodes à partir d'un " +"ensemble de base composé de :meth:`~object.__getitem__`, :meth:`~object." +"__setitem__`, :meth:`~object.__delitem__` et :meth:`keys`. Les séquences " +"muables doivent fournir les méthodes :meth:`append`, :meth:`count`, :meth:" +"`index`, :meth:`extend`, :meth:`insert`, :meth:`pop`, :meth:`remove`, :meth:" +"`reverse` et :meth:`sort`, comme les objets :class:`listes ` standards " +"de Python. Enfin, les types séquences doivent implémenter l'addition (dans " +"le sens de la concaténation) et la multiplication (dans le sens de la " +"répétition) en définissant les méthodes :meth:`~object.__add__`, :meth:" +"`~object.__radd__`, :meth:`~object.__iadd__`, :meth:`~object.__mul__`, :meth:" +"`~object.__rmul__` et :meth:`~object.__imul__` décrites ci-dessous ; ils ne " +"doivent pas définir d'autres opérateurs numériques. Il est recommandé que " +"les tableaux de correspondances et les séquences implémentent la méthode :" +"meth:`~object.__contains__` pour permettre l'utilisation efficace de " +"l'opérateur ``in`` ; concernant les tableaux de correspondances, ``in`` doit " +"rechercher dans les clés du tableau ; pour les séquences, il doit chercher " +"dans les valeurs. Il est de plus recommandé que les tableaux de " +"correspondances et les séquences implémentent la méthode :meth:`~object." +"__iter__` pour permettre une itération efficace dans le conteneur ; pour les " +"tableaux de correspondances, :meth:`__iter__` doit itérer sur les clés de " +"l'objet ; pour les séquences, elle doit itérer sur les valeurs." #: reference/datamodel.rst:2464 msgid "" @@ -4217,6 +4281,7 @@ msgstr "" "définit pas de méthode :meth:`__bool__` et dont la méthode :meth:`__len__` " "renvoie zéro est considéré comme valant ``False`` dans un contexte booléen." +# suit un : #: reference/datamodel.rst:2471 msgid "" "In CPython, the length is required to be at most :attr:`sys.maxsize`. If the " @@ -4225,7 +4290,7 @@ msgid "" "OverflowError` by truth value testing, an object must define a :meth:" "`__bool__` method." msgstr "" -"En CPython, la longueur doit valoir au maximum :attr:`sys.maxsize`. Si la " +"en CPython, la longueur doit valoir au maximum :attr:`sys.maxsize`. Si la " "longueur est plus grande que :attr:`!sys.maxsize`, des propriétés (telles " "que :func:`len`) peuvent lever :exc:`OverflowError`. Afin d'éviter de lever :" "exc:`!OverflowError` lors de tests booléens, un objet doit définir la " @@ -4248,11 +4313,12 @@ msgstr "" "méthode est utilisée uniquement pour optimiser les traitements et n'est " "jamais tenue de renvoyer un résultat exact." +# suit un : #: reference/datamodel.rst:2494 msgid "" "Slicing is done exclusively with the following three methods. A call like ::" msgstr "" -"Le découpage est effectué uniquement à l'aide des trois méthodes suivantes. " +"le découpage est effectué uniquement à l'aide des trois méthodes suivantes. " "Un appel comme ::" #: reference/datamodel.rst:2498 @@ -4264,7 +4330,6 @@ msgid "and so forth. Missing slice items are always filled in with ``None``." msgstr "et ainsi de suite. Les éléments manquants sont remplacés par ``None``." #: reference/datamodel.rst:2507 -#, fuzzy msgid "" "Called to implement evaluation of ``self[key]``. For :term:`sequence` types, " "the accepted keys should be integers and slice objects. Note that the " @@ -4276,15 +4341,16 @@ msgid "" "term:`mapping` types, if *key* is missing (not in the container), :exc:" "`KeyError` should be raised." msgstr "" -"Appelée pour implémenter l'évaluation de ``self[key]``. Pour les types " -"séquences, les clés autorisées sont les entiers et les objets tranches " -"(*slice*). Notez que l'interprétation spéciale des indices négatifs (si la " -"classe souhaite émuler un type séquence) est du ressort de la méthode :meth:" -"`__getitem__`. Si *key* n'est pas du bon type, une :exc:`TypeError` peut " -"être levée ; si la valeur est en dehors de l'ensemble des indices de la " -"séquence (après interprétation éventuelle des valeurs négatives), une :exc:" -"`IndexError` doit être levée. Pour les tableaux de correspondances, si *key* " -"n'existe pas dans le conteneur, une :exc:`KeyError` doit être levée." +"Appelée pour implémenter l'évaluation de ``self[key]``. Pour les types :term:" +"`séquences `, les clés autorisées sont les entiers et les objets " +"tranches (*slice*). Notez que l'interprétation spéciale des indices négatifs " +"(si la classe souhaite émuler un type :term:`séquence `) est du " +"ressort de la méthode :meth:`__getitem__`. Si *key* n'est pas du bon type, " +"une :exc:`TypeError` peut être levée ; si la valeur est en dehors de " +"l'ensemble des indices de la séquence (après interprétation éventuelle des " +"valeurs négatives), une :exc:`IndexError` doit être levée. Pour les :term:" +"`tableaux de correspondances `, si *key* n'existe pas dans le " +"conteneur, une :exc:`KeyError` doit être levée." #: reference/datamodel.rst:2519 msgid "" @@ -4294,12 +4360,17 @@ msgstr "" ":keyword:`for` s'attend à ce qu'une :exc:`IndexError` soit levée en cas " "d'indice illégal afin de détecter correctement la fin de la séquence." +# suit un : #: reference/datamodel.rst:2524 msgid "" "When :ref:`subscripting` a *class*, the special class method :" "meth:`~object.__class_getitem__` may be called instead of ``__getitem__()``. " "See :ref:`classgetitem-versus-getitem` for more details." msgstr "" +"quand on vous :ref:`spécifiez un indice ` pour une *classe*, " +"la méthode de classe spéciale :meth:`~object.__class_getitem__` peut être " +"appelée au lieu de ``__getitem__()``. Reportez-vous à :ref:`classgetitem-" +"versus-getitem` pour plus de détails." #: reference/datamodel.rst:2532 msgid "" @@ -4342,17 +4413,16 @@ msgstr "" "pas dans le dictionnaire." #: reference/datamodel.rst:2556 -#, fuzzy msgid "" "This method is called when an :term:`iterator` is required for a container. " "This method should return a new iterator object that can iterate over all " "the objects in the container. For mappings, it should iterate over the keys " "of the container." msgstr "" -"Cette méthode est appelée quand un itérateur est requis pour un conteneur. " -"Cette méthode doit renvoyer un nouvel objet itérateur qui peut itérer sur " -"tous les objets du conteneur. Pour les tableaux de correspondances, elle " -"doit itérer sur les clés du conteneur." +"Cette méthode est appelée quand un :term:`itérateur ` est requis " +"pour un conteneur. Cette méthode doit renvoyer un nouvel objet itérateur qui " +"peut itérer sur tous les objets du conteneur. Pour les tableaux de " +"correspondances, elle doit itérer sur les clés du conteneur." #: reference/datamodel.rst:2564 msgid "" @@ -4433,7 +4503,6 @@ msgstr "" "laissées indéfinies." #: reference/datamodel.rst:2623 -#, fuzzy msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4450,8 +4519,8 @@ msgstr "" "binaires (``+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :" "func:`pow`, ``**``, ``<<``, ``>>``, ``&``, ``^``, ``|``). Par exemple, pour " "évaluer l'expression ``x + y``, où *x* est une instance d'une classe qui " -"possède une méthode :meth:`__add__`, ``x.__add__(y)`` est appelée. La " -"méthode :meth:`__divmod__` doit être l'équivalent d'appeler :meth:" +"possède une méthode :meth:`__add__`, ``type(x).__add__(x, y)`` est appelée. " +"La méthode :meth:`__divmod__` doit être l'équivalent d'appeler :meth:" "`__floordiv__` et :meth:`__mod__` ; elle ne doit pas être reliée à :meth:" "`__truediv__`. Notez que :meth:`__pow__` doit être définie de manière à " "accepter un troisième argument optionnel si la version ternaire de la " @@ -4466,7 +4535,6 @@ msgstr "" "donnés, elle doit renvoyer ``NotImplemented``." #: reference/datamodel.rst:2657 -#, fuzzy msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4485,8 +4553,8 @@ msgstr "" "gauche n'autorise pas l'opération correspondante [#]_ et si les opérandes " "sont de types différents [#]_. Par exemple, pour évaluer l'expression ``x - " "y``, où *y* est une instance d'une classe qui possède une méthode :meth:" -"`__rsub__`, ``y.__rsub__(x)`` est appelée si ``x.__sub__(y)`` renvoie " -"*NotImplemented*." +"`__rsub__`, ``type(y).__rsub__(y, x)`` est appelée si ``type(x)__sub__(x, " +"y)`` renvoie *NotImplemented*." #: reference/datamodel.rst:2669 msgid "" @@ -4496,6 +4564,7 @@ msgstr "" "Notez que la fonction ternaire :func:`pow` n'essaie pas d'appeler :meth:" "`__rpow__` (les règles de coercition seraient trop compliquées)." +# suit un : #: reference/datamodel.rst:2674 msgid "" "If the right operand's type is a subclass of the left operand's type and " @@ -4504,7 +4573,7 @@ msgid "" "reflected method. This behavior allows subclasses to override their " "ancestors' operations." 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 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-" @@ -4544,7 +4613,7 @@ msgid "" "Called to implement the unary arithmetic operations (``-``, ``+``, :func:" "`abs` and ``~``)." msgstr "" -"Appelée pour implémenter les opérations arithmétiques unaires (``-``, ``" +"Appelées pour implémenter les opérations arithmétiques unaires (``-``, ``" "+``, :func:`abs` et ``~``)." #: reference/datamodel.rst:2729 @@ -4587,7 +4656,7 @@ msgid "" "return the value of the object truncated to an :class:`~numbers.Integral` " "(typically an :class:`int`)." msgstr "" -"Appelée pour implémenter la fonction native :func:`round` et les fonctions " +"Appelées pour implémenter la fonction native :func:`round` et les fonctions " "du module :mod:`math` :func:`~math.trunc`, :func:`~math.floor` et :func:" "`~math.ceil`. À moins que *ndigits* ne soit passé à :meth:`!__round__`, " "toutes ces méthodes doivent renvoyer la valeur de l'objet tronquée pour " @@ -4598,10 +4667,12 @@ msgid "" "The built-in function :func:`int` falls back to :meth:`__trunc__` if " "neither :meth:`__int__` nor :meth:`__index__` is defined." msgstr "" +"La fonction native :func:`int` se replie sur :meth:`__trunc__` dans le cas " +"où ni :meth:`__int__` ni :meth:`__index__` ne sont définies." #: reference/datamodel.rst:2763 msgid "The delegation of :func:`int` to :meth:`__trunc__` is deprecated." -msgstr "" +msgstr "la délégation de :func:`int` vers :func:`__trunc__` est obsolète." #: reference/datamodel.rst:2770 msgid "With Statement Context Managers" @@ -4757,10 +4828,10 @@ msgid "" "object's instance dictionary. That behaviour is the reason why the " "following code raises an exception::" msgstr "" -"Pour les classes définies par le développeur, l'invocation implicite de " -"méthodes spéciales n'est garantie que si ces méthodes sont définies par le " -"type d'objet, pas dans le dictionnaire de l'objet instance. Ce comportement " -"explique pourquoi le code suivant lève une exception ::" +"Pour les classes allogènes, l'invocation implicite de méthodes spéciales " +"n'est garantie que si ces méthodes sont définies par le type d'objet, pas " +"dans le dictionnaire de l'objet instance. Ce comportement explique pourquoi " +"le code suivant lève une exception ::" #: reference/datamodel.rst:2869 msgid "" @@ -4788,7 +4859,6 @@ msgstr "" "l'instance lors de la recherche des méthodes spéciales ::" #: reference/datamodel.rst:2892 -#, fuzzy msgid "" "In addition to bypassing any instance attributes in the interest of " "correctness, implicit special method lookup generally also bypasses the :" @@ -4796,10 +4866,10 @@ 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étaclasse de l'objet ::" +"méthode :meth:`~object.__getattribute__` même dans la métaclasse de " +"l'objet ::" #: reference/datamodel.rst:2918 -#, fuzzy msgid "" "Bypassing the :meth:`~object.__getattribute__` machinery in this fashion " "provides significant scope for speed optimisations within the interpreter, " @@ -4807,8 +4877,8 @@ msgid "" "special method *must* be set on the class object itself in order to be " "consistently invoked by the interpreter)." msgstr "" -"En shuntant le mécanisme de :meth:`__getattribute__` de cette façon, cela " -"permet d'optimiser la vitesse de l'interpréteur moyennant une certaine " +"En shuntant le mécanisme de :meth:`~object.__getattribute__` de cette façon, " +"cela permet d'optimiser la vitesse de l'interpréteur moyennant une certaine " "manœuvre dans la gestion des méthodes spéciales (la méthode spéciale *doit* " "être définie sur l'objet classe lui-même afin d'être invoquée de manière " "cohérente par l'interpréteur)." @@ -4822,27 +4892,26 @@ msgid "Awaitable Objects" msgstr "Objets *attendables* (*awaitable*)" #: reference/datamodel.rst:2935 -#, fuzzy msgid "" "An :term:`awaitable` object generally implements an :meth:`~object." "__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 :" -"keyword:`async def` sont des *attendables* (*awaitable*)." +"`~object.__await__`. Les objets :term:`coroutine` renvoyés par les " +"fonctions :keyword:`async def` sont des *attendables* (*awaitable*)." +# suit un : #: reference/datamodel.rst:2941 -#, fuzzy msgid "" "The :term:`generator iterator` objects returned from generators decorated " "with :func:`types.coroutine` are also awaitable, but they do not implement :" "meth:`~object.__await__`." msgstr "" -"Les objets :term:`itérateur de générateur` renvoyés par les générateurs " -"décorés par :func:`types.coroutine` ou :func:`asyncio.coroutine` sont aussi " -"des *attendables* (*awaitable*), mais ils n'implémentent pas :meth:" -"`__await__`." +"les objets :term:`itérateur de générateur ` renvoyés par " +"les générateurs décorés par :func:`types.coroutine` sont aussi des " +"*attendables* (*awaitable*), mais ils n'implémentent pas :meth:`~object." +"__await__`." #: reference/datamodel.rst:2947 msgid "" @@ -4865,7 +4934,6 @@ msgid "Coroutine Objects" msgstr "Objets coroutines" #: reference/datamodel.rst:2961 -#, fuzzy msgid "" ":term:`Coroutine objects ` are :term:`awaitable` objects. A " "coroutine's execution can be controlled by calling :meth:`~object.__await__` " @@ -4876,12 +4944,13 @@ msgid "" "should not directly raise unhandled :exc:`StopIteration` exceptions." msgstr "" "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." -"value` de l'exception contient la valeur de retour. Si la coroutine lève une " -"exception, elle est propagée par l'itérateur. Les coroutines ne doivent pas " -"lever directement des exceptions :exc:`StopIteration` non gérées." +"d'une coroutine peut être contrôlée en appelant :meth:`~object.__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.value` de l'exception contient la valeur de retour. Si la " +"coroutine lève une exception, elle est propagée par l'itérateur. Les " +"coroutines ne doivent pas lever directement des exceptions :exc:" +"`StopIteration` non gérées." #: reference/datamodel.rst:2969 msgid "" @@ -4894,14 +4963,14 @@ msgstr "" "contraire des générateurs, vous ne pouvez pas itérer directement sur des " "coroutines." +# suit un : #: reference/datamodel.rst:2973 msgid "It is a :exc:`RuntimeError` to await on a coroutine more than once." msgstr "" -"Utiliser *await* plus d'une fois sur une coroutine lève une :exc:" +"utiliser *await* plus d'une fois sur une coroutine lève une :exc:" "`RuntimeError`." #: reference/datamodel.rst:2979 -#, fuzzy msgid "" "Starts or resumes execution of the coroutine. If *value* is ``None``, this " "is equivalent to advancing the iterator returned by :meth:`~object." @@ -4912,15 +4981,14 @@ msgid "" "value, described above." msgstr "" "Démarre ou reprend l'exécution d'une coroutine. Si *value* est ``None``, " -"c'est équivalent à avancer l'itérateur renvoyé par :meth:`__await__`. Si " -"*value* ne vaut pas ``None``, cette méthode appelle la méthode :meth:" -"`~generator.send` de l'itérateur qui a causé la suspension de la coroutine. " -"Le résultat (valeur de retour, :exc:`StopIteration` ou une autre exception) " -"est le même que lorsque vous itérez sur la valeur de retour de :meth:" -"`__await__`, décrite ci-dessus." +"c'est équivalent à avancer l'itérateur renvoyé par :meth:`~object." +"__await__`. Si *value* ne vaut pas ``None``, cette méthode appelle la " +"méthode :meth:`~generator.send` de l'itérateur qui a causé la suspension de " +"la coroutine. Le résultat (valeur de retour, :exc:`StopIteration` ou une " +"autre exception) est le même que lorsque vous itérez sur la valeur de retour " +"de :meth:`__await__`, décrite ci-dessus." #: reference/datamodel.rst:2990 -#, fuzzy msgid "" "Raises the specified exception in the coroutine. This method delegates to " "the :meth:`~generator.throw` method of the iterator that caused the " @@ -4935,8 +5003,8 @@ msgstr "" "la coroutine, s'il possède une telle méthode. Sinon, l'exception est levée " "au point de suspension. Le résultat (valeur de retour, :exc:`StopIteration` " "ou une autre exception) est le même que lorsque vous itérez sur la valeur de " -"retour de :meth:`__await__`, décrite ci-dessus. Si l'exception n'est pas " -"gérée par la coroutine, elle est propagée à l'appelant." +"retour de :meth:`~object.__await__`, décrite ci-dessus. Si l'exception n'est " +"pas gérée par la coroutine, elle est propagée à l'appelant." #: reference/datamodel.rst:3001 msgid "" @@ -5000,25 +5068,24 @@ msgid "An example of an asynchronous iterable object::" msgstr "Un exemple d'objet itérateur asynchrone ::" #: reference/datamodel.rst:3048 -#, fuzzy msgid "" "Prior to Python 3.7, :meth:`~object.__aiter__` could return an *awaitable* " "that would resolve to an :term:`asynchronous iterator `." msgstr "" -"Avant Python 3.7, ``__aiter__`` pouvait renvoyer un *attendable* " +"avant Python 3.7, :meth:`~object.__aiter__` pouvait renvoyer un *attendable* " "(*awaitable*) qui se résolvait potentiellement en un :term:`itérateur " "asynchrone `." #: reference/datamodel.rst:3053 -#, fuzzy msgid "" "Starting with Python 3.7, :meth:`~object.__aiter__` must return an " "asynchronous iterator object. Returning anything else will result in a :exc:" "`TypeError` error." msgstr "" -"À partir de Python 3.7, ``__aiter__`` doit renvoyer un objet itérateur " -"asynchrone. Renvoyer autre chose entraine une erreur :exc:`TypeError`." +"À partir de Python 3.7, :meth:`~object.__aiter__` doit renvoyer un objet " +"itérateur asynchrone. Renvoyer autre chose entraine une erreur :exc:" +"`TypeError`." #: reference/datamodel.rst:3061 msgid "Asynchronous Context Managers" @@ -5077,17 +5144,16 @@ msgstr "" "correctement." #: reference/datamodel.rst:3096 -#, fuzzy msgid "" "The :meth:`~object.__hash__`, :meth:`~object.__iter__`, :meth:`~object." "__reversed__`, and :meth:`~object.__contains__` methods have special " "handling for this; others will still raise a :exc:`TypeError`, but may do so " "by relying on the behavior that ``None`` is not callable." msgstr "" -"Les méthodes :meth:`__hash__`, :meth:`__iter__`, :meth:`__reversed__` et :" -"meth:`__contains__` ont une gestion particulière pour cela ; les autres " -"lèvent toujours :exc:`TypeError`, mais le font en considérant que ``None`` " -"n'est pas un appelable." +"Les méthodes :meth:`~object.__hash__`, :meth:`~object.__iter__`, :meth:" +"`~object.__reversed__` et :meth:`~object.__contains__` ont une gestion " +"particulière pour cela ; les autres lèvent toujours :exc:`TypeError`, mais " +"le font en considérant que ``None`` n'est pas un appelable." #: reference/datamodel.rst:3102 msgid "" @@ -5102,15 +5168,14 @@ msgstr "" "l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli." #: reference/datamodel.rst:3108 -#, fuzzy msgid "" "For operands of the same type, it is assumed that if the non-reflected " "method -- such as :meth:`~object.__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, 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." +"(telle que :meth:`~object.__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." #, fuzzy #~ msgid "" diff --git a/reference/expressions.po b/reference/expressions.po index 95bd7500..922e3e7a 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: 2022-10-18 15:46+0200\n" -"PO-Revision-Date: 2022-11-18 14:40+0100\n" +"PO-Revision-Date: 2022-11-20 18:06+0100\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -1289,7 +1289,7 @@ msgstr "" #: reference/expressions.rst:816 msgid "Subscriptions" -msgstr "Sélections" +msgstr "Indiçage (ou sélections)" #: reference/expressions.rst:831 msgid "" @@ -1298,8 +1298,8 @@ msgid "" "term:`generic class ` will generally return a :ref:" "`GenericAlias ` object." msgstr "" -"L'inscription d'une instance de :ref:`classe containeur ` " -"sélectionne généralement un élément du conteneur. L'inscription d'une :term:" +"L'indiçage d'une instance de :ref:`classe containeur ` " +"sélectionne généralement un élément du conteneur. L'indiçage d'une :term:" "`classe générique ` renvoie généralement un objet :ref:" "`GenericAlias `." diff --git a/whatsnew/3.9.po b/whatsnew/3.9.po index 829f670c..87fd2b2a 100644 --- a/whatsnew/3.9.po +++ b/whatsnew/3.9.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-05-22 23:13+0200\n" -"PO-Revision-Date: 2022-10-18 12:27+0200\n" +"PO-Revision-Date: 2022-11-20 22:02+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.0.1\n" +"X-Generator: Poedit 2.4.2\n" #: whatsnew/3.9.rst:3 msgid "What's New In Python 3.9" @@ -2209,11 +2209,11 @@ msgid "" "return a ``value`` itself, ``ExtSlice(slices)`` will return ``Tuple(slices, " "Load())``. (Contributed by Serhiy Storchaka in :issue:`34822`.)" msgstr "" -"Simplification de l'*AST* pour les souscriptions. Les indexations simples " -"seront représentées par leur valeur, les tranches étendues seront " -"représentées par des n-uplets. ``Index(value)`` va renvoyer ``value`` elle-" -"même, ``ExtSlice(slices)`` va renvoyer ``Tuple(slices, Load())`` " -"(contribution de *Serhiy Storchaka* dans :issue:`34822`)." +"Simplification de l'*AST* pour l'indiçage. Les indices simples sont " +"représentés par leur valeur, les tranches étendues sont représentées par des " +"*n*-uplets. ``Index(value)`` va renvoyer ``value`` elle-même, " +"``ExtSlice(slices)`` va renvoyer ``Tuple(slices, Load())`` (contribution de " +"*Serhiy Storchaka* dans :issue:`34822`)." #: whatsnew/3.9.rst:1102 msgid ""