8000 Traduction de tutorial/controlflow.po by jeanas · Pull Request #1715 · python/python-docs-fr · GitHub
[go: up one dir, main page]

Skip to content

Traduction de tutorial/controlflow.po #1715

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Oct 19, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 89 additions & 8 deletions tutorial/controlflow.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"PO-Revision-Date: 2021-09-04 02:09+0200\n"
"PO-Revision-Date: 2021-10-16 23:16+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\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.4.1\n"
"X-Generator: Poedit 3.0\n"

#: tutorial/controlflow.rst:5
msgid "More Control Flow Tools"
Expand Down Expand Up @@ -60,6 +60,9 @@ msgid ""
"specific types or attributes, you may also find the :keyword:`!match` "
"statement useful. For more details see :ref:`tut-match`."
msgstr ""
"Pour les comparaisons avec beaucoup de constantes, ainsi que les tests "
"d'appartenance à un type ou de forme d'un attribut, l'instruction :keyword:`!"
"match` décrite plus bas peut se révéler utile (voir :ref:`tut-match`)."

#: tutorial/controlflow.rst:46
msgid ":keyword:`!for` Statements"
Expand Down Expand Up @@ -167,15 +170,14 @@ msgstr ""
"paramètre est :func:`sum` ::"

#: tutorial/controlflow.rst:157
#, fuzzy
msgid ""
"Later we will see more functions that return iterables and take iterables as "
"arguments. In chapter :ref:`tut-structures`, we will discuss in more detail "
"about :func:`list`."
msgstr ""
"Plus loin nous voyons d'autres fonctions qui donnent des itérables ou en "
"prennent en paramètre. Si vous vous demandez comment obtenir une liste à "
"partir d'un *range*, voici la solution ::"
"prennent en paramètre. De plus amples détails sur :func:`list` sont donnés "
"dans :ref:`tut-structures`."

#: tutorial/controlflow.rst:164
msgid ""
Expand Down Expand Up @@ -274,9 +276,8 @@ msgstr ""
"L'instruction :keyword:`!pass` est alors ignorée silencieusement ::"

#: tutorial/controlflow.rst:251
#, fuzzy
msgid ":keyword:`!match` Statements"
msgstr "L'instruction :keyword:`!pass`"
msgstr "L'instruction :keyword:`!match`"

#: tutorial/controlflow.rst:253
msgid ""
Expand All @@ -286,28 +287,47 @@ msgid ""
"it can also extract components (sequence elements or object attributes) from "
"the value into variables."
msgstr ""
"L'instruction ``match`` réalise un filtrage par motif. Elle confronte la "
"valeur d'une expression à plusieurs filtres successifs donnés par les "
"instructions ``case``. L'instruction ``match`` peut faire penser au "
"``switch`` que l'on trouve dans les langages C, Java, JavaScript et autres. "
"Elle est cependant bien plus générale : les filtres définissent des formes "
"possibles en imposant des conditions, et permettent d'extraire dans des "
"variables des composantes de la valeur, comme les éléments d'une séquence ou "
"les attributs d'un objet."

#: tutorial/controlflow.rst:259
msgid ""
"The simplest form compares a subject value against one or more literals::"
msgstr ""
"Dans sa plus simple expression, une instruction ``match`` compare une valeur "
"à des littéraux :"

#: tutorial/controlflow.rst:272
msgid ""
"Note the last block: the \"variable name\" ``_`` acts as a *wildcard* and "
"never fails to match. If no case matches, none of the branches is executed."
msgstr ""
"Remarquez l'emploi du signe souligné ``_`` dans le dernier bloc, qui est "
"normalement un nom de variable spécial. Ici, c'est un filtre *attrape-tout*, "
"c'est-à-dire qu'il accepte toutes les valeurs. Si aucun des filtres dans les "
"``case`` ne fonctionne, aucune des branches indentées sous les ``case`` "
"n'est exécutée."

#: tutorial/controlflow.rst:275
msgid ""
"You can combine several literals in a single pattern using ``|`` (\"or\")::"
msgstr ""
"On peut combiner plusieurs littéraux en un seul filtre avec le signe ``|``, "
"qui se lit OU."

#: tutorial/controlflow.rst:280
msgid ""
"Patterns can look like unpacking assignments, and can be used to bind "
"variables::"
msgstr ""
"Les filtres peuvent prendre une forme similaire aux affectations multiples, "
"et provoquer la liaison de variables :"

#: tutorial/controlflow.rst:296
msgid ""
Expand All @@ -318,13 +338,23 @@ msgid ""
"which makes it conceptually similar to the unpacking assignment ``(x, y) = "
"point``."
msgstr ""
"Observez bien cet exemple ! Le premier filtre contient simplement deux "
"littéraux. C'est une sorte d'extension des filtres littéraux. Mais les deux "
"filtres suivants mélangent un littéral et un nom de variable. Si un tel "
"filtre réussit, il provoque l'affectation à la variable. Le quatrième filtre "
"est constitué de deux variables, ce qui le fait beaucoup ressembler à "
"l'affectation multiple ``(x, y) = point``."

#: tutorial/controlflow.rst:303
msgid ""
"If you are using classes to structure your data you can use the class name "
"followed by an argument list resembling a constructor, but with the ability "
"to capture attributes into variables::"
msgstr ""
"Si vous structurez vos données par l'utilisation de classes, vous pouvez "
"former des filtres avec le nom de la classe suivi d'une liste d'arguments. "
"Ces filtres sont semblables à l'appel d'un constructeur, et permettent de "
"capturer des attributs."

#: tutorial/controlflow.rst:324
msgid ""
Expand All @@ -335,6 +365,13 @@ msgid ""
"\"y\"), the following patterns are all equivalent (and all bind the ``y`` "
"attribute to the ``var`` variable)::"
msgstr ""
"Un certain nombre de classes natives, notamment les classes de données, "
"prennent en charge le filtrage par arguments positionnels en définissant un "
"ordre des attributs. Vous pouvez ajouter cette possibilité à vos propres "
"classes en y définissant l'attribut spécial ``__match_args__``. Par exemple, "
"le mettre à ``(\"x\", \"y\")`` rend tous les filtres ci-dessous équivalents "
"(en particulier, tous provoquent la liaison de l'attribut ``y`` à la "
"variable ``var``)."

#: tutorial/controlflow.rst:335
msgid ""
Expand All @@ -346,30 +383,49 @@ msgid ""
"(recognized by the \"(...)\" next to them like ``Point`` above) are never "
"assigned to."
msgstr ""
"Une méthode préconisée pour lire les filtres est de les voir comme une "
"extension de ce que l'on peut placer à gauche du signe ``=`` dans une "
"affectation. Cela permet de visualiser quelles variables sont liées à quoi. "
"Seuls les noms simples, comme ``var`` ci-dessus, sont des variables "
"susceptibles d'être liées à une valeur. Il n'y a jamais de liaison pour les "
"noms qualifiés (avec un point, comme dans ``truc.machin``), les noms "
"d'attributs (tels que ``x=`` et ``y=`` dans l'exemple précédent) et les noms "
"de classes (identifiés par les parenthèses à leur droite, comme ``Point``)."

#: tutorial/controlflow.rst:342
msgid ""
"Patterns can be arbitrarily nested. For example, if we have a short list of "
"points, we could match it like this::"
msgstr ""
"On peut imbriquer les filtres autant que de besoin. Ainsi, on peut lire une "
"courte liste de points comme ceci :"

#: tutorial/controlflow.rst:357
msgid ""
"We can add an ``if`` clause to a pattern, known as a \"guard\". If the "
"guard is false, ``match`` goes on to try the next case block. Note that "
"value capture happens before the guard is evaluated::"
msgstr ""
"Un filtre peut comporter un ``if``, qui introduit ce que l'on appelle une "
"garde. Si le filtre réussit, la garde est alors testée et, si elle s'évalue "
"à une valeur fausse, l'exécution continue au bloc ``case`` suivant. Les "
"variables sont liées avant l'évaluation de la garde, et peuvent être "
"utilisées à l'intérieur."

#: tutorial/controlflow.rst:367
msgid "Several other key features of this statement:"
msgstr ""
msgstr "Voici quelques autres éléments sur cette instruction :"

#: tutorial/controlflow.rst:369
msgid ""
"Like unpacking assignments, tuple and list patterns have exactly the same "
"meaning and actually match arbitrary sequences. An important exception is "
"that they don't match iterators or strings."
msgstr ""
"Comme dans les affectations multiples, les filtres de *n*-uplet et de liste "
"sont totalement équivalents et autorisent tous les types de séquences. "
"Exception importante, ils n'autorisent pas les itérateurs ni les chaînes de "
"caractères."

#: tutorial/controlflow.rst:373
msgid ""
Expand All @@ -378,6 +434,12 @@ msgid ""
"also be ``_``, so ``(x, y, *_)`` matches a sequence of at least two items "
"without binding the remaining items."
msgstr ""
"Les filtres de séquence peuvent faire intervenir l'affectation étoilée : "
"``[x, y, *reste]`` ou ``(x, y, *reste)`` ont le même sens que dans une "
"affectation avec ``=``. Le nom de variable après l'étoile peut aussi être "
"l'attrape-tout ``_``. Ainsi, ``(x, y, *_)`` est un filtre qui reconnaît les "
"séquences à deux éléments ou plus, en capturant les deux premiers et en "
"ignorant le reste."

#: tutorial/controlflow.rst:378
msgid ""
Expand All @@ -386,34 +448,53 @@ msgid ""
"sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is "
"also supported. (But ``**_`` would be redundant, so it not allowed.)"
msgstr ""
"Il existe les filtres d'association, qui ressemblent syntaxiquement aux "
"dictionnaires. Par exemple, le filtre ``{\"bande_passante\": b, \"latence\": "
"l}`` extrait les valeurs des clés ``\"bande_passante\"`` et ``\"latence\"`` "
"dans un dictionnaire ou une autre table de correspondances. Contrairement "
"aux filtres de séquence, les clés absentes du filtre sont ignorées et le "
"filtre réussit tout de même. L'affectation double-étoilée (``**reste``) "
"fonctionne aussi (cependant, ``**_`` serait redondant et n'est donc pas "
"permis)."

#: tutorial/controlflow.rst:383
msgid "Subpatterns may be captured using the ``as`` keyword::"
msgstr ""
"On peut capturer la valeur d'une partie d'un filtre avec le mot-clé ``as``, "
"par exemple :"

#: tutorial/controlflow.rst:387
msgid ""
"will capture the second element of the input as ``p2`` (as long as the input "
"is a sequence of two points)"
msgstr ""
"Ce filtre, lorsqu'il est comparé à une séquence de deux points, réussit et "
"capture le second dans la variable ``p2``."

#: tutorial/controlflow.rst:390
msgid ""
"Most literals are compared by equality, however the singletons ``True``, "
"``False`` and ``None`` are compared by identity."
msgstr ""
"La plupart des littéraux sont comparés par égalité. Néanmoins, les "
"singletons ``True``, ``False`` et ``None`` sont comparés par identité."

#: tutorial/controlflow.rst:393
msgid ""
"Patterns may use named constants. These must be dotted names to prevent "
"them from being interpreted as capture variable::"
msgstr ""
"Les filtres peuvent contenir des noms qui se réfèrent à des constantes. Ces "
"noms doivent impérativement être qualifiés (contenir un point) pour ne pas "
"être interprétés comme des variables de capture."

#: tutorial/controlflow.rst:410
msgid ""
"For a more detailed explanation and additional examples, you can look into :"
"pep:`636` which is written in a tutorial format."
msgstr ""
"Pour plus d'explications et d'exemples, lire la :pep:`636` (en anglais), qui "
"est écrite sous forme de tutoriel."

#: tutorial/controlflow.rst:416
msgid "Defining Functions"
Expand Down
0