diff --git a/library/dataclasses.po b/library/dataclasses.po index 8cdf04b6..73bd4318 100644 --- a/library/dataclasses.po +++ b/library/dataclasses.po @@ -6,21 +6,22 @@ msgstr "" "Project-Id-Version: Python 3.7\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-09-15 21:52+0200\n" -"PO-Revision-Date: 2018-08-03 23:47+0200\n" -"Last-Translator: Julien Palard \n" +"PO-Revision-Date: 2018-10-04 10:47+0200\n" +"Last-Translator: Romain Dorgueil \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 2.1.1\n" #: ../Doc/library/dataclasses.rst:2 msgid ":mod:`dataclasses` --- Data Classes" -msgstr "" +msgstr ":mod:`dataclasses` --- Classes de Données" #: ../Doc/library/dataclasses.rst:10 msgid "**Source code:** :source:`Lib/dataclasses.py`" -msgstr "" +msgstr "**Code source :** :source:`Lib/dataclasses.py`" #: ../Doc/library/dataclasses.rst:14 msgid "" @@ -29,32 +30,44 @@ msgid "" "`__repr__` to user-defined classes. It was originally described in :pep:" "`557`." msgstr "" +"Ce module fournit un décorateur et des fonctions pour générer " +"automatiquement les :term:`méthodes spéciales ` comme :meth:" +"`__init__` et :meth:`__repr__` dans les *Classes de Données* définies par " +"l’utilisateur. Ces classes ont été décrites dans la :pep:`557`." #: ../Doc/library/dataclasses.rst:19 msgid "" "The member variables to use in these generated methods are defined using :" "pep:`526` type annotations. For example this code::" msgstr "" +"Les variables membres à utiliser dans ces méthodes générées sont définies en " +"utilisant les annotations de type :pep:`526`. Par exemple, ce code ::" #: ../Doc/library/dataclasses.rst:32 msgid "Will add, among other things, a :meth:`__init__` that looks like::" msgstr "" +"Ajoute, entre autres choses, une méthode :meth:`__init__` qui ressemble à ::" #: ../Doc/library/dataclasses.rst:39 msgid "" "Note that this method is automatically added to the class: it is not " "directly specified in the ``InventoryItem`` definition shown above." msgstr "" +"Il est important de noter que cette méthode est ajoutée automatiquement dans " +"la classe : elle n’est pas à écrire dans la définition de ``InventoryItem`` " +"ci-dessus." #: ../Doc/library/dataclasses.rst:45 msgid "Module-level decorators, classes, and functions" -msgstr "" +msgstr "Décorateurs, classes et fonctions au niveau du module" #: ../Doc/library/dataclasses.rst:49 msgid "" "This function is a :term:`decorator` that is used to add generated :term:" "`special method`\\s to classes, as described below." msgstr "" +"Cette fonction est un :term:`décorateur` qui est utilisé pour ajouter les :" +"term:`méthodes spéciales ` générées aux classes, comme décrit ci-dessous." #: ../Doc/library/dataclasses.rst:52 msgid "" @@ -63,12 +76,19 @@ msgid "" "exceptions described below, nothing in :func:`dataclass` examines the type " "specified in the variable annotation." msgstr "" +"Le décorateur :func:`dataclass` examine la classe pour trouver des ``champs``" +"\\s. Un ``champ`` est défini comme une variable de classe qui possède une " +"annotation de type. À deux exceptions près décrites plus bas, il n’y a rien " +"dans :func:`dataclass` qui examine le type spécifié dans l’annotation de " +"variable." #: ../Doc/library/dataclasses.rst:58 msgid "" "The order of the fields in all of the generated methods is the order in " "which they appear in the class definition." msgstr "" +"L’ordre des paramètres des méthodes générées est celui d’apparition des " +"champs dans la définition de la classe." #: ../Doc/library/dataclasses.rst:61 msgid "" @@ -77,6 +97,11 @@ msgid "" "class, the behavior depends on the parameter, as documented below. The " "decorator returns the same class that is called on; no new class is created." msgstr "" +"Le décorateur :func:`dataclass` ajoute diverses méthodes « spéciales » à la " +"classe, décrites ci-après. Si l’une des méthodes ajoutées existe déjà dans " +"la classe, le comportement dépend des paramètres, comme documenté ci-" +"dessous. Le décorateur renvoie la classe sur laquelle il est appelé ; il n’y " +"a pas de nouvelle classe créée." #: ../Doc/library/dataclasses.rst:67 msgid "" @@ -84,20 +109,27 @@ msgid "" "it acts as if it has the default values documented in this signature. That " "is, these three uses of :func:`dataclass` are equivalent::" msgstr "" +"Si :func:`dataclass` est utilisé comme simple décorateur sans paramètres, il " +"se comporte comme si on l’avait appelé avec les valeurs par défaut présentes " +"en signature. Ainsi, les trois usages suivants de :func:`dataclass` sont " +"équivalents ::" #: ../Doc/library/dataclasses.rst:84 msgid "The parameters to :func:`dataclass` are:" -msgstr "" +msgstr "Les paramètres de :func:`dataclass` sont :" #: ../Doc/library/dataclasses.rst:86 msgid "" "``init``: If true (the default), a :meth:`__init__` method will be generated." msgstr "" +"``init``: Si vrai (par défaut), une méthode :meth:`__init__` est générée." #: ../Doc/library/dataclasses.rst:89 msgid "" "If the class already defines :meth:`__init__`, this parameter is ignored." msgstr "" +"Si la classe définit déjà une méthode :meth:`__init__`, ce paramètre est " +"ignoré." #: ../Doc/library/dataclasses.rst:92 msgid "" @@ -108,11 +140,19 @@ msgid "" "example: ``InventoryItem(name='widget', unit_price=3.0, " "quantity_on_hand=10)``." msgstr "" +"``repr``: Si vrai (par défaut), une méthode :meth:`__repr__` sera générée. " +"La chaîne de représentation comportera le nom de la classe et le nom ainsi " +"que la représentation de chaque champ, suivant leur ordre de définition. " +"Les champs marqués comme exclus (voir ``Field`` ci-dessous) de la " +"représentation ne sont pas inclus. Par exemple : " +"``InventoryItem(name='widget', unit_price=3.0, quantity_on_hand=10)``." #: ../Doc/library/dataclasses.rst:99 msgid "" "If the class already defines :meth:`__repr__`, this parameter is ignored." msgstr "" +"Si la classe définit déjà une méthode :meth:`__repr__`, ce paramètre est " +"ignoré." #: ../Doc/library/dataclasses.rst:102 msgid "" @@ -120,10 +160,16 @@ msgid "" "This method compares the class as if it were a tuple of its fields, in " "order. Both instances in the comparison must be of the identical type." msgstr "" +"``eq``: Si vrai (par défaut), une méthode :meth:`__eq__` est générée. Cette " +"méthode permet de comparer les instances de la classe comme s’il s’agissait " +"d’un tuple de ses champs, dans l’ordre. Les deux instances dans la " +"comparaison doivent être de même type." #: ../Doc/library/dataclasses.rst:107 msgid "If the class already defines :meth:`__eq__`, this parameter is ignored." msgstr "" +"Si la classe définit déjà une méthode :meth:`__eq__`, ce paramètre est " +"ignoré." #: ../Doc/library/dataclasses.rst:110 msgid "" @@ -133,18 +179,29 @@ msgid "" "instances in the comparison must be of the identical type. If ``order`` is " "true and ``eq`` is false, a :exc:`ValueError` is raised." msgstr "" +"``order``: Si vrai (``False`` par défaut), les méthodes :meth:`__lt__`, :" +"meth:`__le__`, :meth:`__gt__`, et :meth:`__ge__` sont générées. Elles " +"permettent de comparer les instances de la classe en les considérant comme " +"des tuples, dans l’ordre de définition des champs. Chaque instance dans la " +"comparaison doit être de même type. Si ``order`` est vrai mais que ``eq`` " +"est faux, une :exc:`ValueError` est levée." #: ../Doc/library/dataclasses.rst:117 msgid "" "If the class already defines any of :meth:`__lt__`, :meth:`__le__`, :meth:" "`__gt__`, or :meth:`__ge__`, then :exc:`TypeError` is raised." msgstr "" +"Si la classe définit déjà l’une des méthodes :meth:`__lt__`, :meth:" +"`__le__`, :meth:`__gt__`, ou :meth:`__ge__`, alors une :exc:`TypeError` est " +"levée." #: ../Doc/library/dataclasses.rst:121 msgid "" "``unsafe_hash``: If ``False`` (the default), a :meth:`__hash__` method is " "generated according to how ``eq`` and ``frozen`` are set." msgstr "" +"``unsafe_hash``: Si ``False`` (par défaut), une méthode :meth:`__hash__` est " +"générée et son comportement dépend des valeurs de ``eq`` et ``frozen``." #: ../Doc/library/dataclasses.rst:124 msgid "" @@ -155,6 +212,13 @@ msgid "" "existence and behavior of :meth:`__eq__`, and the values of the ``eq`` and " "``frozen`` flags in the :func:`dataclass` decorator." msgstr "" +":meth:`__hash__` est utilisée par la fonction native :meth:`hash()`, ainsi " +"que lorsqu’un objet est inséré dans une collection utilisant du hachage, tel " +"qu’un dictionnaire ou un ensemble. Avoir une méthode :meth:`__hash__` " +"implique que les instances de la classe sont immuables. La muabilité est une " +"propriété complexe qui dépends des intentions du programmeur, de l’existence " +"et du comportement de la méthode :meth:`__eq__`, et des valeurs des options " +"``eq`` et ``frozen`` dans l’appel au décorateur :func:`dataclass`." #: ../Doc/library/dataclasses.rst:131 msgid "" @@ -164,6 +228,12 @@ msgid "" "attribute ``__hash__ = None`` has a specific meaning to Python, as described " "in the :meth:`__hash__` documentation." msgstr "" +"Par défaut, :func:`dataclass` n’ajoute pas de méthode implicite :meth:" +"`__hash__`, sauf s’il n’existe aucun risque sous-jacent. Il n’ajoute ou ne " +"modifie pas non plus la méthode :meth:`__hash__` si elle a est définie " +"explicitement. Définir l’attribut de classe ``__hash__ = None`` a une " +"signification particulière en Python, comme précisé dans la documentation " +"de :meth:`__hash__`." #: ../Doc/library/dataclasses.rst:137 msgid "" @@ -174,6 +244,13 @@ msgid "" "class is logically immutable but can nonetheless be mutated. This is a " "specialized use case and should be considered carefully." msgstr "" +"Si :meth:`__hash__` n’est pas défini explicitement, ou s’il a pour valeur " +"``None``, alors :func:`dataclass` *peut* ajouter une méthode :meth:" +"`__hash__` implicite. Bien que ce ne soit pas recommandé,, vous pouvez " +"forcer :func:`dataclass` à créer une méthode :meth:`__hash__` en utilisant " +"``unsafe_hash=True``. Cela pourrait être nécessaire si votre classe est " +"logiquement immuable mais qu’une mutation est tout de même possible. C’est " +"un cas très particulier qui doit être considéré avec la plus grande prudence." #: ../Doc/library/dataclasses.rst:144 msgid "" @@ -182,6 +259,10 @@ msgid "" "in your dataclass and set ``unsafe_hash=True``; this will result in a :exc:" "`TypeError`." msgstr "" +"Ce sont les règles autour de la création implicite de la méthode :meth:" +"`__hash__`. Il faut noter que vous ne pouvez pas avoir à la fois une " +"méthode :meth:`__hash__` explicite dans votre *dataclass* et définir " +"``unsafe_hash=True``; cela lèvera une :exc:`TypeError`." #: ../Doc/library/dataclasses.rst:149 msgid "" @@ -193,6 +274,14 @@ msgid "" "superclass will be used (if the superclass is :class:`object`, this means it " "will fall back to id-based hashing)." msgstr "" +"Si ``eq`` et ``frozen`` sont tous deux vrais, :func:`dataclass` génère par " +"défaut une méthode :meth:`__hash__` pour vous. Si ``eq`` est vrai mais que " +"``frozen`` est faux, :meth:`__hash__` est prends la valeur ``None``, " +"marquant la classe comme non-hachable (et c’est le cas, puisqu’elle est " +"modifiable). Si ``eq`` est faux, la méthode :meth:`__hash__` est laissée " +"intacte, ce qui veut dire que la méthode :meth:`__hash__` de la classe " +"parente sera utilisée (si la classe parente est :class:`object`, le " +"comportement est un hachage basé sur les id)." #: ../Doc/library/dataclasses.rst:157 msgid "" @@ -201,18 +290,27 @@ msgid "" "`__setattr__` or :meth:`__delattr__` is defined in the class, then :exc:" "`TypeError` is raised. See the discussion below." msgstr "" +"``frozen``: Si vrai (faux par défaut), assigner une valeur à un champ lèvera " +"une exception. Cela simule le comportement des instances figées en lecture " +"seule. Si la méthode :meth:`__setattr__` ou :meth:`__delattr__` est définie " +"sur la classe, alors une :exc:`TypeError` est levée. Voir la discussion ci-" +"dessous." #: ../Doc/library/dataclasses.rst:162 msgid "" "``field``\\s may optionally specify a default value, using normal Python " "syntax::" msgstr "" +"Les ``field``\\s peuvent éventuellement spécifier une valeur par défaut, en " +"utilisant la syntaxe Python normale ::" #: ../Doc/library/dataclasses.rst:170 msgid "" "In this example, both ``a`` and ``b`` will be included in the added :meth:" "`__init__` method, which will be defined as::" msgstr "" +"Dans cet exemple, ``a`` et ``b`` sont tous deux inclus dans la signature de " +"la méthode générée :meth:`__init__`, qui est définie comme suit ::" #: ../Doc/library/dataclasses.rst:175 msgid "" @@ -220,6 +318,10 @@ msgid "" "field with a default value. This is true either when this occurs in a " "single class, or as a result of class inheritance." msgstr "" +"Une :exc:`TypeError` est levée si un champ sans valeur par défaut est défini " +"après un champ avec une valeur par défaut. C’est le cas que ce soit dans " +"une seule classe, mais également si c’est le résultat d’un héritage de " +"classes." #: ../Doc/library/dataclasses.rst:181 msgid ""