Make merge (#1782)

Co-authored-by: Christophe Nanteuil <35002064+christopheNan@users.noreply.github.com>
This commit is contained in:
Julien Palard 2021-11-29 14:13:01 +01:00 committed by GitHub
parent 99ffbb6746
commit 76b5c8ea62
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
35 changed files with 4068 additions and 3785 deletions

View File

@ -20,7 +20,7 @@
# from which we generated our po files. We use it here so when we # from which we generated our po files. We use it here so when we
# test build, we're building with the .rst files that generated our # test build, we're building with the .rst files that generated our
# .po files. # .po files.
CPYTHON_CURRENT_COMMIT := 75ed2ce9e86a7f213fa54e6f8cbbb3ab6f25b5a2 CPYTHON_CURRENT_COMMIT := 57100c86baa8451a568348646834380cd425b858
LANGUAGE := fr LANGUAGE := fr
BRANCH := 3.10 BRANCH := 3.10

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2018-02-15 00:33+0100\n" "PO-Revision-Date: 2018-02-15 00:33+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n" "Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -25,8 +25,8 @@ msgstr "Il existe deux fonctions dédiées à l'interaction avec les itérateurs
#: c-api/iter.rst:12 #: c-api/iter.rst:12
#, fuzzy #, fuzzy
msgid "" msgid ""
"Return non-zero if the object *o* supports the iterator protocol, and ``0`` " "Return non-zero if the object *o* can be safely passed to :c:func:"
"otherwise. This function always succeeds." "`PyIter_Next`, and ``0`` otherwise. This function always succeeds."
msgstr "Renvoie vrai si l'objet *o* supporte le protocole d'itération." msgstr "Renvoie vrai si l'objet *o* supporte le protocole d'itération."
#: c-api/iter.rst:17 #: c-api/iter.rst:17
@ -39,10 +39,11 @@ msgstr "Renvoie vrai si l'objet *o* supporte le protocole d'itération."
#: c-api/iter.rst:24 #: c-api/iter.rst:24
#, fuzzy #, fuzzy
msgid "" msgid ""
"Return the next value from the iteration *o*. The object must be an " "Return the next value from the iterator *o*. The object must be an iterator "
"iterator (it is up to the caller to check this). If there are no remaining " "according to :c:func:`PyIter_Check` (it is up to the caller to check this). "
"values, returns ``NULL`` with no exception set. If an error occurs while " "If there are no remaining values, returns ``NULL`` with no exception set. If "
"retrieving the item, returns ``NULL`` and passes along the exception." "an error occurs while retrieving the item, returns ``NULL`` and passes along "
"the exception."
msgstr "" msgstr ""
"Renvoie la valeur suivante d'une itération de *o*. L'objet doit être un " "Renvoie la valeur suivante d'une itération de *o*. L'objet doit être un "
"itérateur (c'est à l'appelant de faire cette vérification). Renvoie *NULL* " "itérateur (c'est à l'appelant de faire cette vérification). Renvoie *NULL* "
@ -50,7 +51,7 @@ msgstr ""
"déclarant une exception si une erreur survient lors de la récupération d'un " "déclarant une exception si une erreur survient lors de la récupération d'un "
"élément." "élément."
#: c-api/iter.rst:29 #: c-api/iter.rst:30
msgid "" msgid ""
"To write a loop which iterates over an iterator, the C code should look " "To write a loop which iterates over an iterator, the C code should look "
"something like this::" "something like this::"
@ -58,27 +59,27 @@ msgstr ""
"Pour écrire une boucle itérant un itérateur, le code C devrait ressembler " "Pour écrire une boucle itérant un itérateur, le code C devrait ressembler "
"à ::" "à ::"
#: c-api/iter.rst:58 #: c-api/iter.rst:59
msgid "" msgid ""
"The enum value used to represent different results of :c:func:`PyIter_Send`." "The enum value used to represent different results of :c:func:`PyIter_Send`."
msgstr "" msgstr ""
#: c-api/iter.rst:65 #: c-api/iter.rst:66
msgid "Sends the *arg* value into the iterator *iter*. Returns:" msgid "Sends the *arg* value into the iterator *iter*. Returns:"
msgstr "" msgstr ""
#: c-api/iter.rst:67
msgid ""
"``PYGEN_RETURN`` if iterator returns. Return value is returned via *presult*."
msgstr ""
#: c-api/iter.rst:68 #: c-api/iter.rst:68
msgid "" msgid ""
"``PYGEN_NEXT`` if iterator yields. Yielded value is returned via *presult*." "``PYGEN_RETURN`` if iterator returns. Return value is returned via *presult*."
msgstr "" msgstr ""
#: c-api/iter.rst:69 #: c-api/iter.rst:69
msgid "" msgid ""
"``PYGEN_NEXT`` if iterator yields. Yielded value is returned via *presult*."
msgstr ""
#: c-api/iter.rst:70
msgid ""
"``PYGEN_ERROR`` if iterator has raised and exception. *presult* is set to " "``PYGEN_ERROR`` if iterator has raised and exception. *presult* is set to "
"``NULL``." "``NULL``."
msgstr "" msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-11-04 18:14+0100\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -2282,9 +2282,9 @@ msgstr ""
#: c-api/typeobj.rst:1523 #: c-api/typeobj.rst:1523
msgid "" msgid ""
"An optional pointer to a function that returns an iterator for the object. " "An optional pointer to a function that returns an :term:`iterator` for the "
"Its presence normally signals that the instances of this type are iterable " "object. Its presence normally signals that the instances of this type are :"
"(although sequences may be iterable without this function)." "term:`iterable` (although sequences may be iterable without this function)."
msgstr "" msgstr ""
#: c-api/typeobj.rst:1527 #: c-api/typeobj.rst:1527
@ -2293,8 +2293,8 @@ msgstr ""
#: c-api/typeobj.rst:1538 #: c-api/typeobj.rst:1538
msgid "" msgid ""
"An optional pointer to a function that returns the next item in an iterator. " "An optional pointer to a function that returns the next item in an :term:"
"The signature is::" "`iterator`. The signature is::"
msgstr "" msgstr ""
#: c-api/typeobj.rst:1543 #: c-api/typeobj.rst:1543
@ -3174,8 +3174,8 @@ msgstr ""
#: c-api/typeobj.rst:2431 #: c-api/typeobj.rst:2431
msgid "" msgid ""
"The returned object must be an iterator, i.e. :c:func:`PyIter_Check` must " "The returned object must be an :term:`iterator`, i.e. :c:func:`PyIter_Check` "
"return ``1`` for it." "must return ``1`` for it."
msgstr "" msgstr ""
#: c-api/typeobj.rst:2434 #: c-api/typeobj.rst:2434

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-10-17 18:53+0200\n" "PO-Revision-Date: 2021-10-17 18:53+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n" "Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -388,19 +388,11 @@ msgstr ""
"`_thread`. Le module :mod:`threading` fournit une abstraction plus facile à " "`_thread`. Le module :mod:`threading` fournit une abstraction plus facile à "
"manipuler que les primitives de bas-niveau du module :mod:`_thread`." "manipuler que les primitives de bas-niveau du module :mod:`_thread`."
#: faq/library.rst:246 #: faq/library.rst:248
msgid ""
"Aahz has a set of slides from his threading tutorial that are helpful; see "
"http://www.pythoncraft.com/OSCON2001/."
msgstr ""
"Un ensemble de diapositives issues du didacticiel de Aahz sur les fils "
"d'exécution est disponible à http://www.pythoncraft.com/OSCON2001/."
#: faq/library.rst:251
msgid "None of my threads seem to run: why?" msgid "None of my threads seem to run: why?"
msgstr "Aucun de mes fils ne semble s'exécuter : pourquoi ?" msgstr "Aucun de mes fils ne semble s'exécuter : pourquoi ?"
#: faq/library.rst:253 #: faq/library.rst:250
msgid "" msgid ""
"As soon as the main thread exits, all threads are killed. Your main thread " "As soon as the main thread exits, all threads are killed. Your main thread "
"is running too quickly, giving the threads no time to do any work." "is running too quickly, giving the threads no time to do any work."
@ -409,7 +401,7 @@ msgstr ""
"fil principal s'exécute trop rapidement, sans laisser le temps aux autres " "fil principal s'exécute trop rapidement, sans laisser le temps aux autres "
"fils de faire quoi que ce soit." "fils de faire quoi que ce soit."
#: faq/library.rst:256 #: faq/library.rst:253
msgid "" msgid ""
"A simple fix is to add a sleep to the end of the program that's long enough " "A simple fix is to add a sleep to the end of the program that's long enough "
"for all the threads to finish::" "for all the threads to finish::"
@ -417,7 +409,7 @@ msgstr ""
"Une correction simple consiste à ajouter un temps d'attente suffisamment " "Une correction simple consiste à ajouter un temps d'attente suffisamment "
"long à la fin du programme pour que tous les fils puissent se terminer ::" "long à la fin du programme pour que tous les fils puissent se terminer ::"
#: faq/library.rst:271 #: faq/library.rst:268
msgid "" msgid ""
"But now (on many platforms) the threads don't run in parallel, but appear to " "But now (on many platforms) the threads don't run in parallel, but appear to "
"run sequentially, one at a time! The reason is that the OS thread scheduler " "run sequentially, one at a time! The reason is that the OS thread scheduler "
@ -428,13 +420,13 @@ msgstr ""
"l'autre ! En réalité, l'ordonnanceur de fils du système d'exploitation ne " "l'autre ! En réalité, l'ordonnanceur de fils du système d'exploitation ne "
"démarre pas de nouveau fil avant que le précédent ne soit bloqué." "démarre pas de nouveau fil avant que le précédent ne soit bloqué."
#: faq/library.rst:275 #: faq/library.rst:272
msgid "A simple fix is to add a tiny sleep to the start of the run function::" msgid "A simple fix is to add a tiny sleep to the start of the run function::"
msgstr "" msgstr ""
"Une correction simple consiste à ajouter un petit temps d'attente au début " "Une correction simple consiste à ajouter un petit temps d'attente au début "
"de la fonction ::" "de la fonction ::"
#: faq/library.rst:288 #: faq/library.rst:285
msgid "" msgid ""
"Instead of trying to guess a good delay value for :func:`time.sleep`, it's " "Instead of trying to guess a good delay value for :func:`time.sleep`, it's "
"better to use some kind of semaphore mechanism. One idea is to use the :mod:" "better to use some kind of semaphore mechanism. One idea is to use the :mod:"
@ -449,13 +441,13 @@ msgstr ""
"quand il se termine, et que le fil principal retire autant de jetons de la " "quand il se termine, et que le fil principal retire autant de jetons de la "
"file qu'il y a de fils." "file qu'il y a de fils."
#: faq/library.rst:296 #: faq/library.rst:293
msgid "How do I parcel out work among a bunch of worker threads?" msgid "How do I parcel out work among a bunch of worker threads?"
msgstr "" msgstr ""
"Comment découper et répartir une tâche au sein d'un ensemble de fils " "Comment découper et répartir une tâche au sein d'un ensemble de fils "
"d'exécutions ?" "d'exécutions ?"
#: faq/library.rst:298 #: faq/library.rst:295
msgid "" msgid ""
"The easiest way is to use the :mod:`concurrent.futures` module, especially " "The easiest way is to use the :mod:`concurrent.futures` module, especially "
"the :mod:`~concurrent.futures.ThreadPoolExecutor` class." "the :mod:`~concurrent.futures.ThreadPoolExecutor` class."
@ -464,7 +456,7 @@ msgstr ""
"futures`, en particulier la classe :mod:`~concurrent.futures." "futures`, en particulier la classe :mod:`~concurrent.futures."
"ThreadPoolExecutor`." "ThreadPoolExecutor`."
#: faq/library.rst:301 #: faq/library.rst:298
msgid "" msgid ""
"Or, if you want fine control over the dispatching algorithm, you can write " "Or, if you want fine control over the dispatching algorithm, you can write "
"your own logic manually. Use the :mod:`queue` module to create a queue " "your own logic manually. Use the :mod:`queue` module to create a queue "
@ -481,15 +473,15 @@ msgstr ""
"pour les récupérer. La classe s'occupe de gérer les verrous pour que chaque " "pour les récupérer. La classe s'occupe de gérer les verrous pour que chaque "
"tâche soit exécutée une et une seule fois." "tâche soit exécutée une et une seule fois."
#: faq/library.rst:308 #: faq/library.rst:305
msgid "Here's a trivial example::" msgid "Here's a trivial example::"
msgstr "Voici un exemple trivial ::" msgstr "Voici un exemple trivial ::"
#: faq/library.rst:346 #: faq/library.rst:343
msgid "When run, this will produce the following output:" msgid "When run, this will produce the following output:"
msgstr "Quand celui-ci est exécuté, il produit la sortie suivante :" msgstr "Quand celui-ci est exécuté, il produit la sortie suivante :"
#: faq/library.rst:364 #: faq/library.rst:361
msgid "" msgid ""
"Consult the module's documentation for more details; the :class:`~queue." "Consult the module's documentation for more details; the :class:`~queue."
"Queue` class provides a featureful interface." "Queue` class provides a featureful interface."
@ -497,13 +489,13 @@ msgstr ""
"Consultez la documentation du module pour plus de détails ; la classe :class:" "Consultez la documentation du module pour plus de détails ; la classe :class:"
"`~queue.Queue` fournit une interface pleine de fonctionnalités." "`~queue.Queue` fournit une interface pleine de fonctionnalités."
#: faq/library.rst:369 #: faq/library.rst:366
msgid "What kinds of global value mutation are thread-safe?" msgid "What kinds of global value mutation are thread-safe?"
msgstr "" msgstr ""
"Quels types de mutations sur des variables globales sont compatibles avec " "Quels types de mutations sur des variables globales sont compatibles avec "
"les programmes à fils d'exécution multiples ? sécurisé ?" "les programmes à fils d'exécution multiples ? sécurisé ?"
#: faq/library.rst:371 #: faq/library.rst:368
msgid "" msgid ""
"A :term:`global interpreter lock` (GIL) is used internally to ensure that " "A :term:`global interpreter lock` (GIL) is used internally to ensure that "
"only one thread runs in the Python VM at a time. In general, Python offers " "only one thread runs in the Python VM at a time. In general, Python offers "
@ -521,7 +513,7 @@ msgstr ""
"intermédiaire, et, par conséquent, tout le code C appelé par cette " "intermédiaire, et, par conséquent, tout le code C appelé par cette "
"instruction est donc atomique du point de vue d'un programme Python." "instruction est donc atomique du point de vue d'un programme Python."
#: faq/library.rst:378 #: faq/library.rst:375
msgid "" msgid ""
"In theory, this means an exact accounting requires an exact understanding of " "In theory, this means an exact accounting requires an exact understanding of "
"the PVM bytecode implementation. In practice, it means that operations on " "the PVM bytecode implementation. In practice, it means that operations on "
@ -534,7 +526,7 @@ msgstr ""
"listes, les dictionnaires etc.) qui « semblent atomiques » le sont " "listes, les dictionnaires etc.) qui « semblent atomiques » le sont "
"réellement." "réellement."
#: faq/library.rst:383 #: faq/library.rst:380
msgid "" msgid ""
"For example, the following operations are all atomic (L, L1, L2 are lists, " "For example, the following operations are all atomic (L, L1, L2 are lists, "
"D, D1, D2 are dicts, x, y are objects, i, j are ints)::" "D, D1, D2 are dicts, x, y are objects, i, j are ints)::"
@ -543,11 +535,11 @@ msgstr ""
"*L2* sont des listes, *D*, *D1* et *D2* sont des dictionnaires, *x* et *y* " "*L2* sont des listes, *D*, *D1* et *D2* sont des dictionnaires, *x* et *y* "
"sont des objets, *i* et *j* des entiers) ::" "sont des objets, *i* et *j* des entiers) ::"
#: faq/library.rst:398 #: faq/library.rst:395
msgid "These aren't::" msgid "These aren't::"
msgstr "Les suivantes ne le sont pas ::" msgstr "Les suivantes ne le sont pas ::"
#: faq/library.rst:405 #: faq/library.rst:402
msgid "" msgid ""
"Operations that replace other objects may invoke those other objects' :meth:" "Operations that replace other objects may invoke those other objects' :meth:"
"`__del__` method when their reference count reaches zero, and that can " "`__del__` method when their reference count reaches zero, and that can "
@ -560,11 +552,11 @@ msgstr ""
"des changements massifs sur des dictionnaires ou des listes. En cas de " "des changements massifs sur des dictionnaires ou des listes. En cas de "
"doute, il vaut mieux utiliser un mutex." "doute, il vaut mieux utiliser un mutex."
#: faq/library.rst:412 #: faq/library.rst:409
msgid "Can't we get rid of the Global Interpreter Lock?" msgid "Can't we get rid of the Global Interpreter Lock?"
msgstr "Pourquoi ne pas se débarrasser du verrou global de l'interpréteur ?" msgstr "Pourquoi ne pas se débarrasser du verrou global de l'interpréteur ?"
#: faq/library.rst:416 #: faq/library.rst:413
msgid "" msgid ""
"The :term:`global interpreter lock` (GIL) is often seen as a hindrance to " "The :term:`global interpreter lock` (GIL) is often seen as a hindrance to "
"Python's deployment on high-end multiprocessor server machines, because a " "Python's deployment on high-end multiprocessor server machines, because a "
@ -578,7 +570,7 @@ msgstr ""
"Presque tout le code Python ne peut en effet être exécuté qu'avec le GIL " "Presque tout le code Python ne peut en effet être exécuté qu'avec le GIL "
"acquis." "acquis."
#: faq/library.rst:421 #: faq/library.rst:418
msgid "" msgid ""
"Back in the days of Python 1.5, Greg Stein actually implemented a " "Back in the days of Python 1.5, Greg Stein actually implemented a "
"comprehensive patch set (the \"free threading\" patches) that removed the " "comprehensive patch set (the \"free threading\" patches) that removed the "
@ -598,7 +590,7 @@ msgstr ""
"un seul fil d'exécution, à cause de la quantité de verrouillage plus " "un seul fil d'exécution, à cause de la quantité de verrouillage plus "
"granulaire nécessaire pour contrebalancer la suppression du GIL." "granulaire nécessaire pour contrebalancer la suppression du GIL."
#: faq/library.rst:429 #: faq/library.rst:426
msgid "" msgid ""
"This doesn't mean that you can't make good use of Python on multi-CPU " "This doesn't mean that you can't make good use of Python on multi-CPU "
"machines! You just have to be creative with dividing the work up between " "machines! You just have to be creative with dividing the work up between "
@ -616,7 +608,7 @@ msgstr ""
"le module :mod:`multiprocessing` fournit une API de plus bas-niveau pour un " "le module :mod:`multiprocessing` fournit une API de plus bas-niveau pour un "
"meilleur contrôle sur la distribution des tâches." "meilleur contrôle sur la distribution des tâches."
#: faq/library.rst:437 #: faq/library.rst:434
msgid "" msgid ""
"Judicious use of C extensions will also help; if you use a C extension to " "Judicious use of C extensions will also help; if you use a C extension to "
"perform a time-consuming task, the extension can release the GIL while the " "perform a time-consuming task, the extension can release the GIL while the "
@ -630,7 +622,7 @@ msgstr ""
"fils travailler. Des modules de la bibliothèque standard comme :mod:`zlib` " "fils travailler. Des modules de la bibliothèque standard comme :mod:`zlib` "
"ou :mod:`hashlib` utilisent cette technique." "ou :mod:`hashlib` utilisent cette technique."
#: faq/library.rst:443 #: faq/library.rst:440
msgid "" msgid ""
"It has been suggested that the GIL should be a per-interpreter-state lock " "It has been suggested that the GIL should be a per-interpreter-state lock "
"rather than truly global; interpreters then wouldn't be able to share " "rather than truly global; interpreters then wouldn't be able to share "
@ -651,7 +643,7 @@ msgstr ""
"ont leur propre liste de suppression, ces listes devraient être déplacées au " "ont leur propre liste de suppression, ces listes devraient être déplacées au "
"niveau de l'interpréteur et ainsi de suite." "niveau de l'interpréteur et ainsi de suite."
#: faq/library.rst:452 #: faq/library.rst:449
msgid "" msgid ""
"And I doubt that it can even be done in finite time, because the same " "And I doubt that it can even be done in finite time, because the same "
"problem exists for 3rd party extensions. It is likely that 3rd party " "problem exists for 3rd party extensions. It is likely that 3rd party "
@ -663,7 +655,7 @@ msgstr ""
"qu'il ne soit possible de les corriger pour les faire stocker leur état au " "qu'il ne soit possible de les corriger pour les faire stocker leur état au "
"niveau de l'interpréteur et non plus au niveau global." "niveau de l'interpréteur et non plus au niveau global."
#: faq/library.rst:457 #: faq/library.rst:454
msgid "" msgid ""
"And finally, once you have multiple interpreters not sharing any state, what " "And finally, once you have multiple interpreters not sharing any state, what "
"have you gained over running each interpreter in a separate process?" "have you gained over running each interpreter in a separate process?"
@ -672,15 +664,15 @@ msgstr ""
"partagent pas d'état, par rapport à faire tourner chaque interpréteur dans " "partagent pas d'état, par rapport à faire tourner chaque interpréteur dans "
"un processus différent ?" "un processus différent ?"
#: faq/library.rst:462 #: faq/library.rst:459
msgid "Input and Output" msgid "Input and Output"
msgstr "Les entrées/sorties" msgstr "Les entrées/sorties"
#: faq/library.rst:465 #: faq/library.rst:462
msgid "How do I delete a file? (And other file questions...)" msgid "How do I delete a file? (And other file questions...)"
msgstr "Comment supprimer un fichier ? (et autres questions sur les fichiers…)" msgstr "Comment supprimer un fichier ? (et autres questions sur les fichiers…)"
#: faq/library.rst:467 #: faq/library.rst:464
msgid "" msgid ""
"Use ``os.remove(filename)`` or ``os.unlink(filename)``; for documentation, " "Use ``os.remove(filename)`` or ``os.unlink(filename)``; for documentation, "
"see the :mod:`os` module. The two functions are identical; :func:`~os." "see the :mod:`os` module. The two functions are identical; :func:`~os."
@ -691,7 +683,7 @@ msgstr ""
"identiques, :func:`~os.unlink` n'est tout simplement que le nom de l'appel " "identiques, :func:`~os.unlink` n'est tout simplement que le nom de l'appel "
"système à cette fonction sous Unix." "système à cette fonction sous Unix."
#: faq/library.rst:471 #: faq/library.rst:468
msgid "" msgid ""
"To remove a directory, use :func:`os.rmdir`; use :func:`os.mkdir` to create " "To remove a directory, use :func:`os.rmdir`; use :func:`os.mkdir` to create "
"one. ``os.makedirs(path)`` will create any intermediate directories in " "one. ``os.makedirs(path)`` will create any intermediate directories in "
@ -705,12 +697,12 @@ msgstr ""
"supprime les dossiers intermédiaires si ceux-ci sont vides. Pour supprimer " "supprime les dossiers intermédiaires si ceux-ci sont vides. Pour supprimer "
"une arborescence et tout son contenu, utilisez :func:`shutil.rmtree`." "une arborescence et tout son contenu, utilisez :func:`shutil.rmtree`."
#: faq/library.rst:477 #: faq/library.rst:474
msgid "To rename a file, use ``os.rename(old_path, new_path)``." msgid "To rename a file, use ``os.rename(old_path, new_path)``."
msgstr "" msgstr ""
"``os.rename(ancien_chemin, nouveau_chemin)`` permet de renommer un fichier." "``os.rename(ancien_chemin, nouveau_chemin)`` permet de renommer un fichier."
#: faq/library.rst:479 #: faq/library.rst:476
msgid "" msgid ""
"To truncate a file, open it using ``f = open(filename, \"rb+\")``, and use " "To truncate a file, open it using ``f = open(filename, \"rb+\")``, and use "
"``f.truncate(offset)``; offset defaults to the current seek position. " "``f.truncate(offset)``; offset defaults to the current seek position. "
@ -723,7 +715,7 @@ msgstr ""
"existe aussi ``os.ftruncate(df, décalage)`` pour les fichiers ouverts avec :" "existe aussi ``os.ftruncate(df, décalage)`` pour les fichiers ouverts avec :"
"func:`os.open`, où *df* est le descripteur de fichier (un entier court)." "func:`os.open`, où *df* est le descripteur de fichier (un entier court)."
#: faq/library.rst:484 #: faq/library.rst:481
msgid "" msgid ""
"The :mod:`shutil` module also contains a number of functions to work on " "The :mod:`shutil` module also contains a number of functions to work on "
"files including :func:`~shutil.copyfile`, :func:`~shutil.copytree`, and :" "files including :func:`~shutil.copyfile`, :func:`~shutil.copytree`, and :"
@ -733,11 +725,11 @@ msgstr ""
"effectuer des opérations sur des fichiers comme :func:`~shutil.copyfile`, :" "effectuer des opérations sur des fichiers comme :func:`~shutil.copyfile`, :"
"func:`~shutil.copytree` et :func:`~shutil.rmtree`." "func:`~shutil.copytree` et :func:`~shutil.rmtree`."
#: faq/library.rst:490 #: faq/library.rst:487
msgid "How do I copy a file?" msgid "How do I copy a file?"
msgstr "Comment copier un fichier ?" msgstr "Comment copier un fichier ?"
#: faq/library.rst:492 #: faq/library.rst:489
msgid "" msgid ""
"The :mod:`shutil` module contains a :func:`~shutil.copyfile` function. Note " "The :mod:`shutil` module contains a :func:`~shutil.copyfile` function. Note "
"that on MacOS 9 it doesn't copy the resource fork and Finder info." "that on MacOS 9 it doesn't copy the resource fork and Finder info."
@ -746,11 +738,11 @@ msgstr ""
"MacOS 9, celle-ci ne copie pas le clonage de ressources ni les informations " "MacOS 9, celle-ci ne copie pas le clonage de ressources ni les informations "
"du chercheur." "du chercheur."
#: faq/library.rst:497 #: faq/library.rst:494
msgid "How do I read (or write) binary data?" msgid "How do I read (or write) binary data?"
msgstr "Comment lire (ou écrire) des données binaires ?" msgstr "Comment lire (ou écrire) des données binaires ?"
#: faq/library.rst:499 #: faq/library.rst:496
msgid "" msgid ""
"To read or write complex binary data formats, it's best to use the :mod:" "To read or write complex binary data formats, it's best to use the :mod:"
"`struct` module. It allows you to take a string containing binary data " "`struct` module. It allows you to take a string containing binary data "
@ -761,7 +753,7 @@ msgstr ""
"une chaîne de caractères qui contient des données binaires, souvent des " "une chaîne de caractères qui contient des données binaires, souvent des "
"nombres, en objets Python, et vice-versa." "nombres, en objets Python, et vice-versa."
#: faq/library.rst:503 #: faq/library.rst:500
msgid "" msgid ""
"For example, the following code reads two 2-byte integers and one 4-byte " "For example, the following code reads two 2-byte integers and one 4-byte "
"integer in big-endian format from a file::" "integer in big-endian format from a file::"
@ -769,7 +761,7 @@ msgstr ""
"Par exemple, le code suivant lit, depuis un fichier, deux entiers codés sur " "Par exemple, le code suivant lit, depuis un fichier, deux entiers codés sur "
"2 octets et un entier codé sur 4 octets, en format gros-boutiste ::" "2 octets et un entier codé sur 4 octets, en format gros-boutiste ::"
#: faq/library.rst:512 #: faq/library.rst:509
msgid "" msgid ""
"The '>' in the format string forces big-endian data; the letter 'h' reads " "The '>' in the format string forces big-endian data; the letter 'h' reads "
"one \"short integer\" (2 bytes), and 'l' reads one \"long integer\" (4 " "one \"short integer\" (2 bytes), and 'l' reads one \"long integer\" (4 "
@ -779,7 +771,7 @@ msgstr ""
"mode gros-boutiste, la lettre « h » indique un entier court (2 octets) et la " "mode gros-boutiste, la lettre « h » indique un entier court (2 octets) et la "
"lettre « l » indique un entier long (4 octets)." "lettre « l » indique un entier long (4 octets)."
#: faq/library.rst:516 #: faq/library.rst:513
msgid "" msgid ""
"For data that is more regular (e.g. a homogeneous list of ints or floats), " "For data that is more regular (e.g. a homogeneous list of ints or floats), "
"you can also use the :mod:`array` module." "you can also use the :mod:`array` module."
@ -788,7 +780,7 @@ msgstr ""
"nombres à virgule flottante), il est possible d'utiliser le module :mod:" "nombres à virgule flottante), il est possible d'utiliser le module :mod:"
"`array`." "`array`."
#: faq/library.rst:521 #: faq/library.rst:518
msgid "" msgid ""
"To read and write binary data, it is mandatory to open the file in binary " "To read and write binary data, it is mandatory to open the file in binary "
"mode (here, passing ``\"rb\"`` to :func:`open`). If you use ``\"r\"`` " "mode (here, passing ``\"rb\"`` to :func:`open`). If you use ``\"r\"`` "
@ -801,13 +793,13 @@ msgstr ""
"en mode textuel et ``f.read()`` renvoie des objets :class:`str` au lieu " "en mode textuel et ``f.read()`` renvoie des objets :class:`str` au lieu "
"d'objets :class:`bytes`." "d'objets :class:`bytes`."
#: faq/library.rst:529 #: faq/library.rst:526
msgid "I can't seem to use os.read() on a pipe created with os.popen(); why?" msgid "I can't seem to use os.read() on a pipe created with os.popen(); why?"
msgstr "" msgstr ""
"Il me semble impossible d'utiliser ``os.read()`` sur un tube créé avec ``os." "Il me semble impossible d'utiliser ``os.read()`` sur un tube créé avec ``os."
"popen()`` ; pourquoi ?" "popen()`` ; pourquoi ?"
#: faq/library.rst:531 #: faq/library.rst:528
msgid "" msgid ""
":func:`os.read` is a low-level function which takes a file descriptor, a " ":func:`os.read` is a low-level function which takes a file descriptor, a "
"small integer representing the opened file. :func:`os.popen` creates a high-" "small integer representing the opened file. :func:`os.popen` creates a high-"
@ -822,34 +814,35 @@ msgstr ""
"octets d'un tube *p* créé avec :func:`os.popen`, il faut utiliser ``p." "octets d'un tube *p* créé avec :func:`os.popen`, il faut utiliser ``p."
"read(n)``." "read(n)``."
#: faq/library.rst:618 #: faq/library.rst:615
msgid "How do I access the serial (RS232) port?" msgid "How do I access the serial (RS232) port?"
msgstr "Comment accéder au port de transmission en série (RS-232) ?" msgstr "Comment accéder au port de transmission en série (RS-232) ?"
#: faq/library.rst:620 #: faq/library.rst:617
msgid "For Win32, POSIX (Linux, BSD, etc.), Jython:" #, fuzzy
msgid "For Win32, OSX, Linux, BSD, Jython, IronPython:"
msgstr "Pour Win32, POSIX (Linux, BSD, etc.) et Jython :" msgstr "Pour Win32, POSIX (Linux, BSD, etc.) et Jython :"
#: faq/library.rst:622 #: faq/library.rst:619
msgid "http://pyserial.sourceforge.net" msgid "https://pypi.org/project/pyserial/"
msgstr "http://pyserial.sourceforge.net" msgstr ""
#: faq/library.rst:624 #: faq/library.rst:621
msgid "For Unix, see a Usenet post by Mitch Chapman:" msgid "For Unix, see a Usenet post by Mitch Chapman:"
msgstr "" msgstr ""
"Pour Unix, référez-vous à une publication sur Usenet de Mitch Chapman :" "Pour Unix, référez-vous à une publication sur Usenet de Mitch Chapman :"
#: faq/library.rst:626 #: faq/library.rst:623
msgid "https://groups.google.com/groups?selm=34A04430.CF9@ohioee.com" msgid "https://groups.google.com/groups?selm=34A04430.CF9@ohioee.com"
msgstr "https://groups.google.com/groups?selm=34A04430.CF9@ohioee.com" msgstr "https://groups.google.com/groups?selm=34A04430.CF9@ohioee.com"
#: faq/library.rst:630 #: faq/library.rst:627
msgid "Why doesn't closing sys.stdout (stdin, stderr) really close it?" msgid "Why doesn't closing sys.stdout (stdin, stderr) really close it?"
msgstr "" msgstr ""
"Pourquoi fermer *sys.stdout*, *sys.stdin*, *sys.stderr* ne les ferme pas " "Pourquoi fermer *sys.stdout*, *sys.stdin*, *sys.stderr* ne les ferme pas "
"réellement ?" "réellement ?"
#: faq/library.rst:632 #: faq/library.rst:629
msgid "" msgid ""
"Python :term:`file objects <file object>` are a high-level layer of " "Python :term:`file objects <file object>` are a high-level layer of "
"abstraction on low-level C file descriptors." "abstraction on low-level C file descriptors."
@ -857,7 +850,7 @@ msgstr ""
"Les :term:`objets fichiers <file object>` en Python sont des abstractions de " "Les :term:`objets fichiers <file object>` en Python sont des abstractions de "
"haut niveau sur les descripteurs de fichier C de bas niveau." "haut niveau sur les descripteurs de fichier C de bas niveau."
#: faq/library.rst:635 #: faq/library.rst:632
msgid "" msgid ""
"For most file objects you create in Python via the built-in :func:`open` " "For most file objects you create in Python via the built-in :func:`open` "
"function, ``f.close()`` marks the Python file object as being closed from " "function, ``f.close()`` marks the Python file object as being closed from "
@ -871,7 +864,7 @@ msgstr ""
"enclenché automatiquement dans le destructeur de ``f``, lorsque ``f`` est " "enclenché automatiquement dans le destructeur de ``f``, lorsque ``f`` est "
"recyclé." "recyclé."
#: faq/library.rst:641 #: faq/library.rst:638
msgid "" msgid ""
"But stdin, stdout and stderr are treated specially by Python, because of the " "But stdin, stdout and stderr are treated specially by Python, because of the "
"special status also given to them by C. Running ``sys.stdout.close()`` " "special status also given to them by C. Running ``sys.stdout.close()`` "
@ -883,7 +876,7 @@ msgstr ""
"close()`` marque l'objet fichier comme fermé du point de vue de Python, mais " "close()`` marque l'objet fichier comme fermé du point de vue de Python, mais "
"le descripteur de fichier C associé n'est *pas* fermé." "le descripteur de fichier C associé n'est *pas* fermé."
#: faq/library.rst:646 #: faq/library.rst:643
msgid "" msgid ""
"To close the underlying C file descriptor for one of these three, you should " "To close the underlying C file descriptor for one of these three, you should "
"first be sure that's what you really want to do (e.g., you may confuse " "first be sure that's what you really want to do (e.g., you may confuse "
@ -894,21 +887,21 @@ msgstr ""
"exemple, perturber le bon fonctionnement de modules qui font des opérations " "exemple, perturber le bon fonctionnement de modules qui font des opérations "
"d'entrée-sortie). Si c'est le cas, utilisez :func:`os.close` ::" "d'entrée-sortie). Si c'est le cas, utilisez :func:`os.close` ::"
#: faq/library.rst:654 #: faq/library.rst:651
msgid "Or you can use the numeric constants 0, 1 and 2, respectively." msgid "Or you can use the numeric constants 0, 1 and 2, respectively."
msgstr "" msgstr ""
"Il est aussi possible de fermer respectivement les constantes numériques 0, " "Il est aussi possible de fermer respectivement les constantes numériques 0, "
"1 ou 2." "1 ou 2."
#: faq/library.rst:658 #: faq/library.rst:655
msgid "Network/Internet Programming" msgid "Network/Internet Programming"
msgstr "Programmation réseau et Internet" msgstr "Programmation réseau et Internet"
#: faq/library.rst:661 #: faq/library.rst:658
msgid "What WWW tools are there for Python?" msgid "What WWW tools are there for Python?"
msgstr "Quels sont les outils Python dédiés à la Toile ?" msgstr "Quels sont les outils Python dédiés à la Toile ?"
#: faq/library.rst:663 #: faq/library.rst:660
msgid "" msgid ""
"See the chapters titled :ref:`internet` and :ref:`netdata` in the Library " "See the chapters titled :ref:`internet` and :ref:`netdata` in the Library "
"Reference Manual. Python has many modules that will help you build server-" "Reference Manual. Python has many modules that will help you build server-"
@ -918,7 +911,7 @@ msgstr ""
"le manuel de référence de la bibliothèque. Python a de nombreux modules pour " "le manuel de référence de la bibliothèque. Python a de nombreux modules pour "
"construire des applications de Toile côté client comme côté serveur." "construire des applications de Toile côté client comme côté serveur."
#: faq/library.rst:669 #: faq/library.rst:666
msgid "" msgid ""
"A summary of available frameworks is maintained by Paul Boddie at https://" "A summary of available frameworks is maintained by Paul Boddie at https://"
"wiki.python.org/moin/WebProgramming\\ ." "wiki.python.org/moin/WebProgramming\\ ."
@ -926,7 +919,7 @@ msgstr ""
"Un résumé des cadriciels disponibles est maintenu par Paul Boddie à " "Un résumé des cadriciels disponibles est maintenu par Paul Boddie à "
"l'adresse https://wiki.python.org/moin/WebProgramming\\ ." "l'adresse https://wiki.python.org/moin/WebProgramming\\ ."
#: faq/library.rst:672 #: faq/library.rst:669
msgid "" msgid ""
"Cameron Laird maintains a useful set of pages about Python web technologies " "Cameron Laird maintains a useful set of pages about Python web technologies "
"at http://phaseit.net/claird/comp.lang.python/web_python." "at http://phaseit.net/claird/comp.lang.python/web_python."
@ -935,11 +928,11 @@ msgstr ""
"technologies Python dédiées à la Toile à l'adresse http://phaseit.net/claird/" "technologies Python dédiées à la Toile à l'adresse http://phaseit.net/claird/"
"comp.lang.python/web_python." "comp.lang.python/web_python."
#: faq/library.rst:677 #: faq/library.rst:674
msgid "How can I mimic CGI form submission (METHOD=POST)?" msgid "How can I mimic CGI form submission (METHOD=POST)?"
msgstr "Comment reproduire un envoi de formulaire CGI (``METHOD=POST``) ?" msgstr "Comment reproduire un envoi de formulaire CGI (``METHOD=POST``) ?"
#: faq/library.rst:679 #: faq/library.rst:676
msgid "" msgid ""
"I would like to retrieve web pages that are the result of POSTing a form. Is " "I would like to retrieve web pages that are the result of POSTing a form. Is "
"there existing code that would let me do this easily?" "there existing code that would let me do this easily?"
@ -947,11 +940,11 @@ msgstr ""
"J'aimerais récupérer la page de retour d'un envoi de formulaire sur la " "J'aimerais récupérer la page de retour d'un envoi de formulaire sur la "
"Toile. Existe-t'il déjà du code qui pourrait m'aider à le faire facilement ?" "Toile. Existe-t'il déjà du code qui pourrait m'aider à le faire facilement ?"
#: faq/library.rst:682 #: faq/library.rst:679
msgid "Yes. Here's a simple example that uses :mod:`urllib.request`::" msgid "Yes. Here's a simple example that uses :mod:`urllib.request`::"
msgstr "Oui. Voici un exemple simple d'utilisation de :mod:`urllib.request` ::" msgstr "Oui. Voici un exemple simple d'utilisation de :mod:`urllib.request` ::"
#: faq/library.rst:697 #: faq/library.rst:694
msgid "" msgid ""
"Note that in general for percent-encoded POST operations, query strings must " "Note that in general for percent-encoded POST operations, query strings must "
"be quoted using :func:`urllib.parse.urlencode`. For example, to send " "be quoted using :func:`urllib.parse.urlencode`. For example, to send "
@ -962,15 +955,15 @@ msgstr ""
"`urllib.parse.urlencode`. Par exemple pour envoyer ``name=Guy Steele, Jr." "`urllib.parse.urlencode`. Par exemple pour envoyer ``name=Guy Steele, Jr."
"`` ::" "`` ::"
#: faq/library.rst:705 #: faq/library.rst:702
msgid ":ref:`urllib-howto` for extensive examples." msgid ":ref:`urllib-howto` for extensive examples."
msgstr ":ref:`urllib-howto` pour des exemples complets." msgstr ":ref:`urllib-howto` pour des exemples complets."
#: faq/library.rst:709 #: faq/library.rst:706
msgid "What module should I use to help with generating HTML?" msgid "What module should I use to help with generating HTML?"
msgstr "Quel module utiliser pour générer du HTML ?" msgstr "Quel module utiliser pour générer du HTML ?"
#: faq/library.rst:713 #: faq/library.rst:710
msgid "" msgid ""
"You can find a collection of useful links on the `Web Programming wiki page " "You can find a collection of useful links on the `Web Programming wiki page "
"<https://wiki.python.org/moin/WebProgramming>`_." "<https://wiki.python.org/moin/WebProgramming>`_."
@ -978,15 +971,15 @@ msgstr ""
"La `page wiki de la programmation Toile <https://wiki.python.org/moin/" "La `page wiki de la programmation Toile <https://wiki.python.org/moin/"
"WebProgramming>`_ (en anglais) répertorie un ensemble de liens pertinents." "WebProgramming>`_ (en anglais) répertorie un ensemble de liens pertinents."
#: faq/library.rst:718 #: faq/library.rst:715
msgid "How do I send mail from a Python script?" msgid "How do I send mail from a Python script?"
msgstr "Comment envoyer un courriel avec un script Python ?" msgstr "Comment envoyer un courriel avec un script Python ?"
#: faq/library.rst:720 #: faq/library.rst:717
msgid "Use the standard library module :mod:`smtplib`." msgid "Use the standard library module :mod:`smtplib`."
msgstr "Utilisez le module :mod:`smtplib` de la bibliothèque standard." msgstr "Utilisez le module :mod:`smtplib` de la bibliothèque standard."
#: faq/library.rst:722 #: faq/library.rst:719
msgid "" msgid ""
"Here's a very simple interactive mail sender that uses it. This method will " "Here's a very simple interactive mail sender that uses it. This method will "
"work on any host that supports an SMTP listener. ::" "work on any host that supports an SMTP listener. ::"
@ -994,7 +987,7 @@ msgstr ""
"Voici un exemple très simple d'un envoyeur de courriel qui l'utilise. Cette " "Voici un exemple très simple d'un envoyeur de courriel qui l'utilise. Cette "
"méthode fonctionne sur tous les serveurs qui implémentent SMTP. ::" "méthode fonctionne sur tous les serveurs qui implémentent SMTP. ::"
#: faq/library.rst:742 #: faq/library.rst:739
msgid "" msgid ""
"A Unix-only alternative uses sendmail. The location of the sendmail program " "A Unix-only alternative uses sendmail. The location of the sendmail program "
"varies between systems; sometimes it is ``/usr/lib/sendmail``, sometimes ``/" "varies between systems; sometimes it is ``/usr/lib/sendmail``, sometimes ``/"
@ -1006,13 +999,13 @@ msgstr ""
"sendmail`` ou ``/usr/sbin/sendmail``, la page de manuel de *sendmail* peut " "sendmail`` ou ``/usr/sbin/sendmail``, la page de manuel de *sendmail* peut "
"vous aider. Par exemple ::" "vous aider. Par exemple ::"
#: faq/library.rst:762 #: faq/library.rst:759
msgid "How do I avoid blocking in the connect() method of a socket?" msgid "How do I avoid blocking in the connect() method of a socket?"
msgstr "" msgstr ""
"Comment éviter de bloquer dans la méthode ``connect()`` d'un connecteur " "Comment éviter de bloquer dans la méthode ``connect()`` d'un connecteur "
"réseau ?" "réseau ?"
#: faq/library.rst:764 #: faq/library.rst:761
msgid "" msgid ""
"The :mod:`select` module is commonly used to help with asynchronous I/O on " "The :mod:`select` module is commonly used to help with asynchronous I/O on "
"sockets." "sockets."
@ -1020,7 +1013,7 @@ msgstr ""
"Le module :mod:`select` est fréquemment utilisé pour effectuer des entrées-" "Le module :mod:`select` est fréquemment utilisé pour effectuer des entrées-"
"sorties asynchrones sur des connecteurs réseaux." "sorties asynchrones sur des connecteurs réseaux."
#: faq/library.rst:767 #: faq/library.rst:764
msgid "" msgid ""
"To prevent the TCP connect from blocking, you can set the socket to non-" "To prevent the TCP connect from blocking, you can set the socket to non-"
"blocking mode. Then when you do the :meth:`socket.connect`, you will either " "blocking mode. Then when you do the :meth:`socket.connect`, you will either "
@ -1037,7 +1030,7 @@ msgstr ""
"n'a pas encore aboutie. La valeur dépend du système d'exploitation, donc " "n'a pas encore aboutie. La valeur dépend du système d'exploitation, donc "
"renseignez-vous sur la valeur utilisée par votre système." "renseignez-vous sur la valeur utilisée par votre système."
#: faq/library.rst:774 #: faq/library.rst:771
msgid "" msgid ""
"You can use the :meth:`socket.connect_ex` method to avoid creating an " "You can use the :meth:`socket.connect_ex` method to avoid creating an "
"exception. It will just return the errno value. To poll, you can call :" "exception. It will just return the errno value. To poll, you can call :"
@ -1052,7 +1045,7 @@ msgstr ""
"argument de :meth:`select.select` pour vérifier si le connecteur est prêt à " "argument de :meth:`select.select` pour vérifier si le connecteur est prêt à "
"recevoir des entrées." "recevoir des entrées."
#: faq/library.rst:780 #: faq/library.rst:777
msgid "" msgid ""
"The :mod:`asyncio` module provides a general purpose single-threaded and " "The :mod:`asyncio` module provides a general purpose single-threaded and "
"concurrent asynchronous library, which can be used for writing non-blocking " "concurrent asynchronous library, which can be used for writing non-blocking "
@ -1064,20 +1057,20 @@ msgstr ""
"`Twisted <https://twistedmatrix.com/trac/>`_ en est une alternative " "`Twisted <https://twistedmatrix.com/trac/>`_ en est une alternative "
"plébiscitée, avec un grand nombre de fonctionnalités." "plébiscitée, avec un grand nombre de fonctionnalités."
#: faq/library.rst:788 #: faq/library.rst:785
msgid "Databases" msgid "Databases"
msgstr "Bases de données" msgstr "Bases de données"
#: faq/library.rst:791 #: faq/library.rst:788
msgid "Are there any interfaces to database packages in Python?" msgid "Are there any interfaces to database packages in Python?"
msgstr "" msgstr ""
"Existe-t'il des modules Python pour s'interfacer avec des bases de données ?" "Existe-t'il des modules Python pour s'interfacer avec des bases de données ?"
#: faq/library.rst:793 #: faq/library.rst:790
msgid "Yes." msgid "Yes."
msgstr "Oui." msgstr "Oui."
#: faq/library.rst:795 #: faq/library.rst:792
msgid "" msgid ""
"Interfaces to disk-based hashes such as :mod:`DBM <dbm.ndbm>` and :mod:`GDBM " "Interfaces to disk-based hashes such as :mod:`DBM <dbm.ndbm>` and :mod:`GDBM "
"<dbm.gnu>` are also included with standard Python. There is also the :mod:" "<dbm.gnu>` are also included with standard Python. There is also the :mod:"
@ -1089,7 +1082,7 @@ msgstr ""
"aussi le module :mod:`sqlite3` qui implémente une base de données " "aussi le module :mod:`sqlite3` qui implémente une base de données "
"relationelle légère sur disque." "relationelle légère sur disque."
#: faq/library.rst:800 #: faq/library.rst:797
msgid "" msgid ""
"Support for most relational databases is available. See the " "Support for most relational databases is available. See the "
"`DatabaseProgramming wiki page <https://wiki.python.org/moin/" "`DatabaseProgramming wiki page <https://wiki.python.org/moin/"
@ -1099,11 +1092,11 @@ msgstr ""
"Voir la page wiki `DatabaseProgramming <https://wiki.python.org/moin/" "Voir la page wiki `DatabaseProgramming <https://wiki.python.org/moin/"
"DatabaseProgramming>`_ pour plus de détails." "DatabaseProgramming>`_ pour plus de détails."
#: faq/library.rst:806 #: faq/library.rst:803
msgid "How do you implement persistent objects in Python?" msgid "How do you implement persistent objects in Python?"
msgstr "Comment implémenter la persistance d'objets en Python ?" msgstr "Comment implémenter la persistance d'objets en Python ?"
#: faq/library.rst:808 #: faq/library.rst:805
msgid "" msgid ""
"The :mod:`pickle` library module solves this in a very general way (though " "The :mod:`pickle` library module solves this in a very general way (though "
"you still can't store things like open files, sockets or windows), and the :" "you still can't store things like open files, sockets or windows), and the :"
@ -1115,15 +1108,15 @@ msgstr ""
"fenêtres par exemple), et le module :mod:`shelve` de la bibliothèque utilise " "fenêtres par exemple), et le module :mod:`shelve` de la bibliothèque utilise "
"*pickle* et *(g)dbm* pour créer des liens persistants vers des objets Python." "*pickle* et *(g)dbm* pour créer des liens persistants vers des objets Python."
#: faq/library.rst:815 #: faq/library.rst:812
msgid "Mathematics and Numerics" msgid "Mathematics and Numerics"
msgstr "Mathématiques et calcul numérique" msgstr "Mathématiques et calcul numérique"
#: faq/library.rst:818 #: faq/library.rst:815
msgid "How do I generate random numbers in Python?" msgid "How do I generate random numbers in Python?"
msgstr "Comment générer des nombres aléatoires en Python ?" msgstr "Comment générer des nombres aléatoires en Python ?"
#: faq/library.rst:820 #: faq/library.rst:817
msgid "" msgid ""
"The standard module :mod:`random` implements a random number generator. " "The standard module :mod:`random` implements a random number generator. "
"Usage is simple::" "Usage is simple::"
@ -1131,51 +1124,61 @@ msgstr ""
"Le module :mod:`random` de la bibliothèque standard comprend un générateur " "Le module :mod:`random` de la bibliothèque standard comprend un générateur "
"de nombres aléatoires. Son utilisation est simple ::" "de nombres aléatoires. Son utilisation est simple ::"
#: faq/library.rst:826 #: faq/library.rst:823
msgid "This returns a random floating point number in the range [0, 1)." msgid "This returns a random floating point number in the range [0, 1)."
msgstr "" msgstr ""
"Le code précédent renvoie un nombre à virgule flottante aléatoire dans " "Le code précédent renvoie un nombre à virgule flottante aléatoire dans "
"l'intervalle [0, 1[." "l'intervalle [0, 1[."
#: faq/library.rst:828 #: faq/library.rst:825
msgid "" msgid ""
"There are also many other specialized generators in this module, such as:" "There are also many other specialized generators in this module, such as:"
msgstr "Ce module fournit beaucoup d'autres générateurs spécialisés comme :" msgstr "Ce module fournit beaucoup d'autres générateurs spécialisés comme :"
#: faq/library.rst:830 #: faq/library.rst:827
msgid "``randrange(a, b)`` chooses an integer in the range [a, b)." msgid "``randrange(a, b)`` chooses an integer in the range [a, b)."
msgstr "``randrange(a, b)`` génère un entier dans l'intervalle [a, b[." msgstr "``randrange(a, b)`` génère un entier dans l'intervalle [a, b[."
#: faq/library.rst:831 #: faq/library.rst:828
msgid "``uniform(a, b)`` chooses a floating point number in the range [a, b)." msgid "``uniform(a, b)`` chooses a floating point number in the range [a, b)."
msgstr "" msgstr ""
"``uniform(a, b)`` génère un nombre à virgule flottante aléatoire dans " "``uniform(a, b)`` génère un nombre à virgule flottante aléatoire dans "
"l'intervalle [a, b[." "l'intervalle [a, b[."
#: faq/library.rst:832 #: faq/library.rst:829
msgid "" msgid ""
"``normalvariate(mean, sdev)`` samples the normal (Gaussian) distribution." "``normalvariate(mean, sdev)`` samples the normal (Gaussian) distribution."
msgstr "``normalvariate(mean, sdev)`` simule la loi normale (Gaussienne)." msgstr "``normalvariate(mean, sdev)`` simule la loi normale (Gaussienne)."
#: faq/library.rst:834 #: faq/library.rst:831
msgid "Some higher-level functions operate on sequences directly, such as:" msgid "Some higher-level functions operate on sequences directly, such as:"
msgstr "" msgstr ""
"Des fonctions de haut niveau opèrent directement sur des séquences comme :" "Des fonctions de haut niveau opèrent directement sur des séquences comme :"
#: faq/library.rst:836 #: faq/library.rst:833
msgid "``choice(S)`` chooses a random element from a given sequence." msgid "``choice(S)`` chooses a random element from a given sequence."
msgstr "``choice(S)`` sélectionne au hasard un élément d'une séquence donnée." msgstr "``choice(S)`` sélectionne au hasard un élément d'une séquence donnée."
#: faq/library.rst:837 #: faq/library.rst:834
msgid "``shuffle(L)`` shuffles a list in-place, i.e. permutes it randomly." msgid "``shuffle(L)`` shuffles a list in-place, i.e. permutes it randomly."
msgstr "" msgstr ""
"``shuffle(L)`` mélange une liste en-place, c.-à-d. lui applique une " "``shuffle(L)`` mélange une liste en-place, c.-à-d. lui applique une "
"permutation aléatoire." "permutation aléatoire."
#: faq/library.rst:839 #: faq/library.rst:836
msgid "" msgid ""
"There's also a ``Random`` class you can instantiate to create independent " "There's also a ``Random`` class you can instantiate to create independent "
"multiple random number generators." "multiple random number generators."
msgstr "" msgstr ""
"Il existe aussi une classe ``Random`` qu'il est possible d'instancier pour " "Il existe aussi une classe ``Random`` qu'il est possible d'instancier pour "
"créer des générateurs aléatoires indépendants." "créer des générateurs aléatoires indépendants."
#~ msgid ""
#~ "Aahz has a set of slides from his threading tutorial that are helpful; "
#~ "see http://www.pythoncraft.com/OSCON2001/."
#~ msgstr ""
#~ "Un ensemble de diapositives issues du didacticiel de Aahz sur les fils "
#~ "d'exécution est disponible à http://www.pythoncraft.com/OSCON2001/."
#~ msgid "http://pyserial.sourceforge.net"
#~ msgstr "http://pyserial.sourceforge.net"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-11-04 18:14+0100\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-11-06 19:21+0100\n" "PO-Revision-Date: 2021-11-06 19:21+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n" "Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -3163,8 +3163,9 @@ msgstr ""
"valeurs importées)." "valeurs importées)."
#: faq/programming.rst:2095 #: faq/programming.rst:2095
#, fuzzy
msgid "" msgid ""
"van Rossum doesn't like this approach much because the imports appear in a " "Van Rossum doesn't like this approach much because the imports appear in a "
"strange place, but it does work." "strange place, but it does work."
msgstr "" msgstr ""
"van Rossum désapprouve cette approche car les importations se trouvent à un " "van Rossum désapprouve cette approche car les importations se trouvent à un "

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2020-12-17 21:41+0100\n" "PO-Revision-Date: 2020-12-17 21:41+0100\n"
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n" "Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1094,12 +1094,12 @@ msgstr ""
"En utilisant le protocole de descripteur *non-data*, une version Python pure " "En utilisant le protocole de descripteur *non-data*, une version Python pure "
"de :func:`staticmethod` ressemblerait à ceci ::" "de :func:`staticmethod` ressemblerait à ceci ::"
#: howto/descriptor.rst:1285 #: howto/descriptor.rst:1292
#, fuzzy #, fuzzy
msgid "Class methods" msgid "Class methods"
msgstr "méthode de classe" msgstr "méthode de classe"
#: howto/descriptor.rst:1287 #: howto/descriptor.rst:1294
#, fuzzy #, fuzzy
msgid "" msgid ""
"Unlike static methods, class methods prepend the class reference to the " "Unlike static methods, class methods prepend the class reference to the "
@ -1110,7 +1110,7 @@ msgstr ""
"référence de classe dans la liste d'arguments avant d'appeler la fonction. " "référence de classe dans la liste d'arguments avant d'appeler la fonction. "
"Ce format est le même que l'appelant soit un objet ou une classe ::" "Ce format est le même que l'appelant soit un objet ou une classe ::"
#: howto/descriptor.rst:1305 #: howto/descriptor.rst:1312
#, fuzzy #, fuzzy
msgid "" msgid ""
"This behavior is useful whenever the method only needs to have a class " "This behavior is useful whenever the method only needs to have a class "
@ -1126,14 +1126,14 @@ msgstr ""
"nouveau dictionnaire à partir d'une liste de clés. L'équivalent Python pur " "nouveau dictionnaire à partir d'une liste de clés. L'équivalent Python pur "
"est ::" "est ::"
#: howto/descriptor.rst:1322 #: howto/descriptor.rst:1329
#, fuzzy #, fuzzy
msgid "Now a new dictionary of unique keys can be constructed like this:" msgid "Now a new dictionary of unique keys can be constructed like this:"
msgstr "" msgstr ""
"Maintenant un nouveau dictionnaire de clés uniques peut être construit comme " "Maintenant un nouveau dictionnaire de clés uniques peut être construit comme "
"ceci ::" "ceci ::"
#: howto/descriptor.rst:1332 #: howto/descriptor.rst:1339
#, fuzzy #, fuzzy
msgid "" msgid ""
"Using the non-data descriptor protocol, a pure Python version of :func:" "Using the non-data descriptor protocol, a pure Python version of :func:"
@ -1142,7 +1142,7 @@ msgstr ""
"En utilisant le protocole de descripteur *non-data*, une version Python pure " "En utilisant le protocole de descripteur *non-data*, une version Python pure "
"de :func:`classmethod` ressemblerait à ceci ::" "de :func:`classmethod` ressemblerait à ceci ::"
#: howto/descriptor.rst:1381 #: howto/descriptor.rst:1388
msgid "" msgid ""
"The code path for ``hasattr(type(self.f), '__get__')`` was added in Python " "The code path for ``hasattr(type(self.f), '__get__')`` was added in Python "
"3.9 and makes it possible for :func:`classmethod` to support chained " "3.9 and makes it possible for :func:`classmethod` to support chained "
@ -1150,30 +1150,30 @@ msgid ""
"together:" "together:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1401 #: howto/descriptor.rst:1408
msgid "Member objects and __slots__" msgid "Member objects and __slots__"
msgstr "" msgstr ""
#: howto/descriptor.rst:1403 #: howto/descriptor.rst:1410
msgid "" msgid ""
"When a class defines ``__slots__``, it replaces instance dictionaries with a " "When a class defines ``__slots__``, it replaces instance dictionaries with a "
"fixed-length array of slot values. From a user point of view that has " "fixed-length array of slot values. From a user point of view that has "
"several effects:" "several effects:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1407 #: howto/descriptor.rst:1414
msgid "" msgid ""
"1. Provides immediate detection of bugs due to misspelled attribute " "1. Provides immediate detection of bugs due to misspelled attribute "
"assignments. Only attribute names specified in ``__slots__`` are allowed:" "assignments. Only attribute names specified in ``__slots__`` are allowed:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1423 #: howto/descriptor.rst:1430
msgid "" msgid ""
"2. Helps create immutable objects where descriptors manage access to private " "2. Helps create immutable objects where descriptors manage access to private "
"attributes stored in ``__slots__``:" "attributes stored in ``__slots__``:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1458 #: howto/descriptor.rst:1465
msgid "" msgid ""
"3. Saves memory. On a 64-bit Linux build, an instance with two attributes " "3. Saves memory. On a 64-bit Linux build, an instance with two attributes "
"takes 48 bytes with ``__slots__`` and 152 bytes without. This `flyweight " "takes 48 bytes with ``__slots__`` and 152 bytes without. This `flyweight "
@ -1181,19 +1181,19 @@ msgid ""
"only matters when a large number of instances are going to be created." "only matters when a large number of instances are going to be created."
msgstr "" msgstr ""
#: howto/descriptor.rst:1463 #: howto/descriptor.rst:1470
msgid "" msgid ""
"4. Improves speed. Reading instance variables is 35% faster with " "4. Improves speed. Reading instance variables is 35% faster with "
"``__slots__`` (as measured with Python 3.10 on an Apple M1 processor)." "``__slots__`` (as measured with Python 3.10 on an Apple M1 processor)."
msgstr "" msgstr ""
#: howto/descriptor.rst:1466 #: howto/descriptor.rst:1473
msgid "" msgid ""
"5. Blocks tools like :func:`functools.cached_property` which require an " "5. Blocks tools like :func:`functools.cached_property` which require an "
"instance dictionary to function correctly:" "instance dictionary to function correctly:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1488 #: howto/descriptor.rst:1495
msgid "" msgid ""
"It is not possible to create an exact drop-in pure Python version of " "It is not possible to create an exact drop-in pure Python version of "
"``__slots__`` because it requires direct access to C structures and control " "``__slots__`` because it requires direct access to C structures and control "
@ -1203,37 +1203,37 @@ msgid ""
"managed by member descriptors:" "managed by member descriptors:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1531 #: howto/descriptor.rst:1538
msgid "" msgid ""
"The :meth:`type.__new__` method takes care of adding member objects to class " "The :meth:`type.__new__` method takes care of adding member objects to class "
"variables:" "variables:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1547 #: howto/descriptor.rst:1554
msgid "" msgid ""
"The :meth:`object.__new__` method takes care of creating instances that have " "The :meth:`object.__new__` method takes care of creating instances that have "
"slots instead of an instance dictionary. Here is a rough simulation in pure " "slots instead of an instance dictionary. Here is a rough simulation in pure "
"Python:" "Python:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1582 #: howto/descriptor.rst:1589
msgid "" msgid ""
"To use the simulation in a real class, just inherit from :class:`Object` and " "To use the simulation in a real class, just inherit from :class:`Object` and "
"set the :term:`metaclass` to :class:`Type`:" "set the :term:`metaclass` to :class:`Type`:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1596 #: howto/descriptor.rst:1603
msgid "" msgid ""
"At this point, the metaclass has loaded member objects for *x* and *y*::" "At this point, the metaclass has loaded member objects for *x* and *y*::"
msgstr "" msgstr ""
#: howto/descriptor.rst:1617 #: howto/descriptor.rst:1624
msgid "" msgid ""
"When instances are created, they have a ``slot_values`` list where the " "When instances are created, they have a ``slot_values`` list where the "
"attributes are stored:" "attributes are stored:"
msgstr "" msgstr ""
#: howto/descriptor.rst:1629 #: howto/descriptor.rst:1636
msgid "Misspelled or unassigned attributes will raise an exception:" msgid "Misspelled or unassigned attributes will raise an exception:"
msgstr "" msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-10-28 17:30+0200\n" "PO-Revision-Date: 2021-10-28 17:30+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n" "Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -163,11 +163,12 @@ msgid "Idiomatic Usage"
msgstr "Utilisation idiomatique" msgstr "Utilisation idiomatique"
#: library/__main__.rst:118 #: library/__main__.rst:118
#, fuzzy
msgid "" msgid ""
"Some modules contain code that is intended for script use only, like parsing " "Some modules contain code that is intended for script use only, like parsing "
"command-line arguments or fetching data from standard input. When a module " "command-line arguments or fetching data from standard input. If a module "
"like this were to be imported from a different module, for example to unit " "like this was imported from a different module, for example to unit test it, "
"test it, the script code would unintentionally execute as well." "the script code would unintentionally execute as well."
msgstr "" msgstr ""
"Il arrive qu'un module contienne du code qui ne doit s'exécuter que lorsque " "Il arrive qu'un module contienne du code qui ne doit s'exécuter que lorsque "
"le module est utilisé comme script. On peut penser à l'analyse des arguments " "le module est utilisé comme script. On peut penser à l'analyse des arguments "
@ -329,9 +330,10 @@ msgstr ""
"données ::" "données ::"
#: library/__main__.rst:233 #: library/__main__.rst:233
#, fuzzy
msgid "" msgid ""
"Note that ``from .student import search_students`` is an example of a " "Note that ``from .student import search_students`` is an example of a "
"relative import. This import style must be used when referencing modules " "relative import. This import style can be used when referencing modules "
"within a package. For more details, see :ref:`intra-package-references` in " "within a package. For more details, see :ref:`intra-package-references` in "
"the :ref:`tut-modules` section of the tutorial." "the :ref:`tut-modules` section of the tutorial."
msgstr "" msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -84,52 +84,58 @@ msgid ""
msgstr "" msgstr ""
#: library/asyncio-future.rst:57 #: library/asyncio-future.rst:57
msgid ""
"Save a reference to the result of this function, to avoid a task "
"disappearing mid execution."
msgstr ""
#: library/asyncio-future.rst:60
msgid "The function accepts any :term:`awaitable` object." msgid "The function accepts any :term:`awaitable` object."
msgstr "La fonction accepte n'importe quel objet :term:`awaitable`." msgstr "La fonction accepte n'importe quel objet :term:`awaitable`."
#: library/asyncio-future.rst:60 #: library/asyncio-future.rst:63
msgid "" msgid ""
"Deprecation warning is emitted if *obj* is not a Future-like object and " "Deprecation warning is emitted if *obj* is not a Future-like object and "
"*loop* is not specified and there is no running event loop." "*loop* is not specified and there is no running event loop."
msgstr "" msgstr ""
#: library/asyncio-future.rst:67 #: library/asyncio-future.rst:70
msgid "" msgid ""
"Wrap a :class:`concurrent.futures.Future` object in a :class:`asyncio." "Wrap a :class:`concurrent.futures.Future` object in a :class:`asyncio."
"Future` object." "Future` object."
msgstr "" msgstr ""
#: library/asyncio-future.rst:70 #: library/asyncio-future.rst:73
msgid "" msgid ""
"Deprecation warning is emitted if *future* is not a Future-like object and " "Deprecation warning is emitted if *future* is not a Future-like object and "
"*loop* is not specified and there is no running event loop." "*loop* is not specified and there is no running event loop."
msgstr "" msgstr ""
#: library/asyncio-future.rst:76 #: library/asyncio-future.rst:79
msgid "Future Object" msgid "Future Object"
msgstr "" msgstr ""
#: library/asyncio-future.rst:80 #: library/asyncio-future.rst:83
msgid "" msgid ""
"A Future represents an eventual result of an asynchronous operation. Not " "A Future represents an eventual result of an asynchronous operation. Not "
"thread-safe." "thread-safe."
msgstr "" msgstr ""
#: library/asyncio-future.rst:83 #: library/asyncio-future.rst:86
msgid "" msgid ""
"Future is an :term:`awaitable` object. Coroutines can await on Future " "Future is an :term:`awaitable` object. Coroutines can await on Future "
"objects until they either have a result or an exception set, or until they " "objects until they either have a result or an exception set, or until they "
"are cancelled." "are cancelled."
msgstr "" msgstr ""
#: library/asyncio-future.rst:87 #: library/asyncio-future.rst:90
msgid "" msgid ""
"Typically Futures are used to enable low-level callback-based code (e.g. in " "Typically Futures are used to enable low-level callback-based code (e.g. in "
"protocols implemented using asyncio :ref:`transports <asyncio-transports-" "protocols implemented using asyncio :ref:`transports <asyncio-transports-"
"protocols>`) to interoperate with high-level async/await code." "protocols>`) to interoperate with high-level async/await code."
msgstr "" msgstr ""
#: library/asyncio-future.rst:92 #: library/asyncio-future.rst:95
msgid "" msgid ""
"The rule of thumb is to never expose Future objects in user-facing APIs, and " "The rule of thumb is to never expose Future objects in user-facing APIs, and "
"the recommended way to create a Future object is to call :meth:`loop." "the recommended way to create a Future object is to call :meth:`loop."
@ -137,33 +143,33 @@ msgid ""
"their own optimized implementations of a Future object." "their own optimized implementations of a Future object."
msgstr "" msgstr ""
#: library/asyncio-future.rst:98 #: library/asyncio-future.rst:101
msgid "Added support for the :mod:`contextvars` module." msgid "Added support for the :mod:`contextvars` module."
msgstr "Ajout du support du module :mod:`contextvars`." msgstr "Ajout du support du module :mod:`contextvars`."
#: library/asyncio-future.rst:101 #: library/asyncio-future.rst:104
msgid "" msgid ""
"Deprecation warning is emitted if *loop* is not specified and there is no " "Deprecation warning is emitted if *loop* is not specified and there is no "
"running event loop." "running event loop."
msgstr "" msgstr ""
#: library/asyncio-future.rst:107 #: library/asyncio-future.rst:110
msgid "Return the result of the Future." msgid "Return the result of the Future."
msgstr "" msgstr ""
#: library/asyncio-future.rst:109 #: library/asyncio-future.rst:112
msgid "" msgid ""
"If the Future is *done* and has a result set by the :meth:`set_result` " "If the Future is *done* and has a result set by the :meth:`set_result` "
"method, the result value is returned." "method, the result value is returned."
msgstr "" msgstr ""
#: library/asyncio-future.rst:112 #: library/asyncio-future.rst:115
msgid "" msgid ""
"If the Future is *done* and has an exception set by the :meth:" "If the Future is *done* and has an exception set by the :meth:"
"`set_exception` method, this method raises the exception." "`set_exception` method, this method raises the exception."
msgstr "" msgstr ""
#: library/asyncio-future.rst:203 #: library/asyncio-future.rst:206
#, fuzzy #, fuzzy
msgid "" msgid ""
"If the Future has been *cancelled*, this method raises a :exc:" "If the Future has been *cancelled*, this method raises a :exc:"
@ -172,7 +178,7 @@ msgstr ""
"Si la tâche a été *annulée*, cette méthode lève une exception :exc:" "Si la tâche a été *annulée*, cette méthode lève une exception :exc:"
"`CancelledError`." "`CancelledError`."
#: library/asyncio-future.rst:118 #: library/asyncio-future.rst:121
#, fuzzy #, fuzzy
msgid "" msgid ""
"If the Future's result isn't yet available, this method raises a :exc:" "If the Future's result isn't yet available, this method raises a :exc:"
@ -181,110 +187,110 @@ msgstr ""
"Si le résultat de la tâche n'est pas encore disponible, cette méthode lève " "Si le résultat de la tâche n'est pas encore disponible, cette méthode lève "
"une exception :exc:`InvalidStateError`." "une exception :exc:`InvalidStateError`."
#: library/asyncio-future.rst:123 #: library/asyncio-future.rst:126
#, fuzzy #, fuzzy
msgid "Mark the Future as *done* and set its result." msgid "Mark the Future as *done* and set its result."
msgstr "Marque le futur comme terminé et définit son résultat." msgstr "Marque le futur comme terminé et définit son résultat."
#: library/asyncio-future.rst:132 #: library/asyncio-future.rst:135
msgid "" msgid ""
"Raises a :exc:`InvalidStateError` error if the Future is already *done*." "Raises a :exc:`InvalidStateError` error if the Future is already *done*."
msgstr "" msgstr ""
#: library/asyncio-future.rst:130 #: library/asyncio-future.rst:133
#, fuzzy #, fuzzy
msgid "Mark the Future as *done* and set an exception." msgid "Mark the Future as *done* and set an exception."
msgstr "Marque le futur comme terminé et définit une exception." msgstr "Marque le futur comme terminé et définit une exception."
#: library/asyncio-future.rst:137 #: library/asyncio-future.rst:140
msgid "Return ``True`` if the Future is *done*." msgid "Return ``True`` if the Future is *done*."
msgstr "" msgstr ""
#: library/asyncio-future.rst:139 #: library/asyncio-future.rst:142
msgid "" msgid ""
"A Future is *done* if it was *cancelled* or if it has a result or an " "A Future is *done* if it was *cancelled* or if it has a result or an "
"exception set with :meth:`set_result` or :meth:`set_exception` calls." "exception set with :meth:`set_result` or :meth:`set_exception` calls."
msgstr "" msgstr ""
#: library/asyncio-future.rst:145 #: library/asyncio-future.rst:148
msgid "Return ``True`` if the Future was *cancelled*." msgid "Return ``True`` if the Future was *cancelled*."
msgstr "" msgstr ""
#: library/asyncio-future.rst:147 #: library/asyncio-future.rst:150
msgid "" msgid ""
"The method is usually used to check if a Future is not *cancelled* before " "The method is usually used to check if a Future is not *cancelled* before "
"setting a result or an exception for it::" "setting a result or an exception for it::"
msgstr "" msgstr ""
#: library/asyncio-future.rst:155 #: library/asyncio-future.rst:158
msgid "Add a callback to be run when the Future is *done*." msgid "Add a callback to be run when the Future is *done*."
msgstr "" msgstr ""
#: library/asyncio-future.rst:157 #: library/asyncio-future.rst:160
msgid "The *callback* is called with the Future object as its only argument." msgid "The *callback* is called with the Future object as its only argument."
msgstr "" msgstr ""
#: library/asyncio-future.rst:160 #: library/asyncio-future.rst:163
msgid "" msgid ""
"If the Future is already *done* when this method is called, the callback is " "If the Future is already *done* when this method is called, the callback is "
"scheduled with :meth:`loop.call_soon`." "scheduled with :meth:`loop.call_soon`."
msgstr "" msgstr ""
#: library/asyncio-future.rst:163 #: library/asyncio-future.rst:166
msgid "" msgid ""
"An optional keyword-only *context* argument allows specifying a custom :" "An optional keyword-only *context* argument allows specifying a custom :"
"class:`contextvars.Context` for the *callback* to run in. The current " "class:`contextvars.Context` for the *callback* to run in. The current "
"context is used when no *context* is provided." "context is used when no *context* is provided."
msgstr "" msgstr ""
#: library/asyncio-future.rst:167 #: library/asyncio-future.rst:170
msgid "" msgid ""
":func:`functools.partial` can be used to pass parameters to the callback, e." ":func:`functools.partial` can be used to pass parameters to the callback, e."
"g.::" "g.::"
msgstr "" msgstr ""
#: library/asyncio-future.rst:174 #: library/asyncio-future.rst:177
msgid "" msgid ""
"The *context* keyword-only parameter was added. See :pep:`567` for more " "The *context* keyword-only parameter was added. See :pep:`567` for more "
"details." "details."
msgstr "" msgstr ""
#: library/asyncio-future.rst:180 #: library/asyncio-future.rst:183
msgid "Remove *callback* from the callbacks list." msgid "Remove *callback* from the callbacks list."
msgstr "Retire *callback* de la liste de fonctions de rappel." msgstr "Retire *callback* de la liste de fonctions de rappel."
#: library/asyncio-future.rst:182 #: library/asyncio-future.rst:185
msgid "" msgid ""
"Returns the number of callbacks removed, which is typically 1, unless a " "Returns the number of callbacks removed, which is typically 1, unless a "
"callback was added more than once." "callback was added more than once."
msgstr "" msgstr ""
#: library/asyncio-future.rst:187 #: library/asyncio-future.rst:190
msgid "Cancel the Future and schedule callbacks." msgid "Cancel the Future and schedule callbacks."
msgstr "" msgstr ""
#: library/asyncio-future.rst:189 #: library/asyncio-future.rst:192
msgid "" msgid ""
"If the Future is already *done* or *cancelled*, return ``False``. Otherwise, " "If the Future is already *done* or *cancelled*, return ``False``. Otherwise, "
"change the Future's state to *cancelled*, schedule the callbacks, and return " "change the Future's state to *cancelled*, schedule the callbacks, and return "
"``True``." "``True``."
msgstr "" msgstr ""
#: library/asyncio-future.rst:193 #: library/asyncio-future.rst:196
msgid "Added the ``msg`` parameter." msgid "Added the ``msg`` parameter."
msgstr "" msgstr ""
#: library/asyncio-future.rst:198 #: library/asyncio-future.rst:201
msgid "Return the exception that was set on this Future." msgid "Return the exception that was set on this Future."
msgstr "" msgstr ""
#: library/asyncio-future.rst:200 #: library/asyncio-future.rst:203
msgid "" msgid ""
"The exception (or ``None`` if no exception was set) is returned only if the " "The exception (or ``None`` if no exception was set) is returned only if the "
"Future is *done*." "Future is *done*."
msgstr "" msgstr ""
#: library/asyncio-future.rst:206 #: library/asyncio-future.rst:209
#, fuzzy #, fuzzy
msgid "" msgid ""
"If the Future isn't *done* yet, this method raises an :exc:" "If the Future isn't *done* yet, this method raises an :exc:"
@ -293,53 +299,53 @@ msgstr ""
"Si la tâche n'est pas encore *achevée*, cette méthode lève une exception :" "Si la tâche n'est pas encore *achevée*, cette méthode lève une exception :"
"exc:`InvalidStateError`." "exc:`InvalidStateError`."
#: library/asyncio-future.rst:211 #: library/asyncio-future.rst:214
msgid "Return the event loop the Future object is bound to." msgid "Return the event loop the Future object is bound to."
msgstr "" msgstr ""
#: library/asyncio-future.rst:218 #: library/asyncio-future.rst:221
msgid "" msgid ""
"This example creates a Future object, creates and schedules an asynchronous " "This example creates a Future object, creates and schedules an asynchronous "
"Task to set result for the Future, and waits until the Future has a result::" "Task to set result for the Future, and waits until the Future has a result::"
msgstr "" msgstr ""
#: library/asyncio-future.rst:253 #: library/asyncio-future.rst:256
msgid "" msgid ""
"The Future object was designed to mimic :class:`concurrent.futures.Future`. " "The Future object was designed to mimic :class:`concurrent.futures.Future`. "
"Key differences include:" "Key differences include:"
msgstr "" msgstr ""
#: library/asyncio-future.rst:256 #: library/asyncio-future.rst:259
msgid "" msgid ""
"unlike asyncio Futures, :class:`concurrent.futures.Future` instances cannot " "unlike asyncio Futures, :class:`concurrent.futures.Future` instances cannot "
"be awaited." "be awaited."
msgstr "" msgstr ""
#: library/asyncio-future.rst:259 #: library/asyncio-future.rst:262
msgid "" msgid ""
":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` do not " ":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` do not "
"accept the *timeout* argument." "accept the *timeout* argument."
msgstr "" msgstr ""
#: library/asyncio-future.rst:262 #: library/asyncio-future.rst:265
msgid "" msgid ""
":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` raise an :" ":meth:`asyncio.Future.result` and :meth:`asyncio.Future.exception` raise an :"
"exc:`InvalidStateError` exception when the Future is not *done*." "exc:`InvalidStateError` exception when the Future is not *done*."
msgstr "" msgstr ""
#: library/asyncio-future.rst:266 #: library/asyncio-future.rst:269
msgid "" msgid ""
"Callbacks registered with :meth:`asyncio.Future.add_done_callback` are not " "Callbacks registered with :meth:`asyncio.Future.add_done_callback` are not "
"called immediately. They are scheduled with :meth:`loop.call_soon` instead." "called immediately. They are scheduled with :meth:`loop.call_soon` instead."
msgstr "" msgstr ""
#: library/asyncio-future.rst:270 #: library/asyncio-future.rst:273
msgid "" msgid ""
"asyncio Future is not compatible with the :func:`concurrent.futures.wait` " "asyncio Future is not compatible with the :func:`concurrent.futures.wait` "
"and :func:`concurrent.futures.as_completed` functions." "and :func:`concurrent.futures.as_completed` functions."
msgstr "" msgstr ""
#: library/asyncio-future.rst:274 #: library/asyncio-future.rst:277
msgid "" msgid ""
":meth:`asyncio.Future.cancel` accepts an optional ``msg`` argument, but :" ":meth:`asyncio.Future.cancel` accepts an optional ``msg`` argument, but :"
"func:`concurrent.futures.cancel` does not." "func:`concurrent.futures.cancel` does not."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2020-09-22 17:11+0200\n" "PO-Revision-Date: 2020-09-22 17:11+0200\n"
"Last-Translator: Philippe GALVAN <git.philippe.galvan@outlook.fr>\n" "Last-Translator: Philippe GALVAN <git.philippe.galvan@outlook.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -267,7 +267,7 @@ msgstr ""
"fin. Elle doit être utilisée comme point d'entrée principal des programmes " "fin. Elle doit être utilisée comme point d'entrée principal des programmes "
"*asyncio* et ne doit être idéalement appelée qu'une seule fois." "*asyncio* et ne doit être idéalement appelée qu'une seule fois."
#: library/asyncio-task.rst:374 library/asyncio-task.rst:665 #: library/asyncio-task.rst:379 library/asyncio-task.rst:670
msgid "Example::" msgid "Example::"
msgstr "Exemple ::" msgstr "Exemple ::"
@ -321,19 +321,25 @@ msgstr ""
"antérieures à la 3.7, la fonction de bas-niveau :func:`asyncio." "antérieures à la 3.7, la fonction de bas-niveau :func:`asyncio."
"ensure_future` peut-être utilisée ::" "ensure_future` peut-être utilisée ::"
#: library/asyncio-task.rst:857 #: library/asyncio-task.rst:279
msgid ""
"Save a reference to the result of this function, to avoid a task "
"disappearing mid execution."
msgstr ""
#: library/asyncio-task.rst:862
msgid "Added the ``name`` parameter." msgid "Added the ``name`` parameter."
msgstr "ajout du paramètre ``name``." msgstr "ajout du paramètre ``name``."
#: library/asyncio-task.rst:284 #: library/asyncio-task.rst:289
msgid "Sleeping" msgid "Sleeping"
msgstr "Attente" msgstr "Attente"
#: library/asyncio-task.rst:288 #: library/asyncio-task.rst:293
msgid "Block for *delay* seconds." msgid "Block for *delay* seconds."
msgstr "Attend pendant *delay* secondes." msgstr "Attend pendant *delay* secondes."
#: library/asyncio-task.rst:290 #: library/asyncio-task.rst:295
msgid "" msgid ""
"If *result* is provided, it is returned to the caller when the coroutine " "If *result* is provided, it is returned to the caller when the coroutine "
"completes." "completes."
@ -341,41 +347,41 @@ msgstr ""
"Si *result* est spécifié, il est renvoyé à l'appelant quand la coroutine se " "Si *result* est spécifié, il est renvoyé à l'appelant quand la coroutine se "
"termine." "termine."
#: library/asyncio-task.rst:293 #: library/asyncio-task.rst:298
msgid "" msgid ""
"``sleep()`` always suspends the current task, allowing other tasks to run." "``sleep()`` always suspends the current task, allowing other tasks to run."
msgstr "" msgstr ""
"``sleep()`` suspend systématiquement la tâche courante, ce qui permet aux " "``sleep()`` suspend systématiquement la tâche courante, ce qui permet aux "
"autres tâches de s'exécuter." "autres tâches de s'exécuter."
#: library/asyncio-task.rst:296 #: library/asyncio-task.rst:301
msgid "" msgid ""
"Setting the delay to 0 provides an optimized path to allow other tasks to " "Setting the delay to 0 provides an optimized path to allow other tasks to "
"run. This can be used by long-running functions to avoid blocking the event " "run. This can be used by long-running functions to avoid blocking the event "
"loop for the full duration of the function call." "loop for the full duration of the function call."
msgstr "" msgstr ""
#: library/asyncio-task.rst:328 library/asyncio-task.rst:428 #: library/asyncio-task.rst:333 library/asyncio-task.rst:433
#: library/asyncio-task.rst:513 library/asyncio-task.rst:608 #: library/asyncio-task.rst:518 library/asyncio-task.rst:613
#: library/asyncio-task.rst:664 library/asyncio-task.rst:676 #: library/asyncio-task.rst:669 library/asyncio-task.rst:681
msgid "" msgid ""
"The ``loop`` parameter. This function has been implicitly getting the " "The ``loop`` parameter. This function has been implicitly getting the "
"current running loop since 3.7. See :ref:`What's New in 3.10's Removed " "current running loop since 3.7. See :ref:`What's New in 3.10's Removed "
"section <whatsnew310-removed>` for more information." "section <whatsnew310-removed>` for more information."
msgstr "" msgstr ""
#: library/asyncio-task.rst:308 #: library/asyncio-task.rst:313
msgid "" msgid ""
"Example of coroutine displaying the current date every second for 5 seconds::" "Example of coroutine displaying the current date every second for 5 seconds::"
msgstr "" msgstr ""
"Exemple d'une coroutine affichant la date toutes les secondes pendant 5 " "Exemple d'une coroutine affichant la date toutes les secondes pendant 5 "
"secondes ::" "secondes ::"
#: library/asyncio-task.rst:335 #: library/asyncio-task.rst:340
msgid "Running Tasks Concurrently" msgid "Running Tasks Concurrently"
msgstr "Exécution de tâches de manière concurrente" msgstr "Exécution de tâches de manière concurrente"
#: library/asyncio-task.rst:339 #: library/asyncio-task.rst:344
msgid "" msgid ""
"Run :ref:`awaitable objects <asyncio-awaitables>` in the *aws* sequence " "Run :ref:`awaitable objects <asyncio-awaitables>` in the *aws* sequence "
"*concurrently*." "*concurrently*."
@ -383,7 +389,7 @@ msgstr ""
"Exécute les objets :ref:`awaitable <asyncio-awaitables>` de la séquence " "Exécute les objets :ref:`awaitable <asyncio-awaitables>` de la séquence "
"*aws*, *de manière concurrente*." "*aws*, *de manière concurrente*."
#: library/asyncio-task.rst:342 #: library/asyncio-task.rst:347
msgid "" msgid ""
"If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " "If any awaitable in *aws* is a coroutine, it is automatically scheduled as a "
"Task." "Task."
@ -391,7 +397,7 @@ msgstr ""
"Si un *attendable* de *aws* est une coroutine, celui-ci est automatiquement " "Si un *attendable* de *aws* est une coroutine, celui-ci est automatiquement "
"planifié comme une tâche *Task*." "planifié comme une tâche *Task*."
#: library/asyncio-task.rst:345 #: library/asyncio-task.rst:350
msgid "" msgid ""
"If all awaitables are completed successfully, the result is an aggregate " "If all awaitables are completed successfully, the result is an aggregate "
"list of returned values. The order of result values corresponds to the " "list of returned values. The order of result values corresponds to the "
@ -401,7 +407,7 @@ msgstr ""
"des valeurs renvoyées. L'ordre de cette liste correspond à l'ordre des " "des valeurs renvoyées. L'ordre de cette liste correspond à l'ordre des "
"*awaitables* dans *aws*." "*awaitables* dans *aws*."
#: library/asyncio-task.rst:349 #: library/asyncio-task.rst:354
msgid "" msgid ""
"If *return_exceptions* is ``False`` (default), the first raised exception is " "If *return_exceptions* is ``False`` (default), the first raised exception is "
"immediately propagated to the task that awaits on ``gather()``. Other " "immediately propagated to the task that awaits on ``gather()``. Other "
@ -413,7 +419,7 @@ msgstr ""
"``gather()``. Les autres *attendables* dans la séquence *aws* **ne sont pas " "``gather()``. Les autres *attendables* dans la séquence *aws* **ne sont pas "
"annulés** et poursuivent leur exécution." "annulés** et poursuivent leur exécution."
#: library/asyncio-task.rst:354 #: library/asyncio-task.rst:359
msgid "" msgid ""
"If *return_exceptions* is ``True``, exceptions are treated the same as " "If *return_exceptions* is ``True``, exceptions are treated the same as "
"successful results, and aggregated in the result list." "successful results, and aggregated in the result list."
@ -422,7 +428,7 @@ msgstr ""
"même manière que les exécutions normales, et incluses dans la liste des " "même manière que les exécutions normales, et incluses dans la liste des "
"résultats." "résultats."
#: library/asyncio-task.rst:357 #: library/asyncio-task.rst:362
msgid "" msgid ""
"If ``gather()`` is *cancelled*, all submitted awaitables (that have not " "If ``gather()`` is *cancelled*, all submitted awaitables (that have not "
"completed yet) are also *cancelled*." "completed yet) are also *cancelled*."
@ -430,7 +436,7 @@ msgstr ""
"Si ``gather()`` est *annulé*, tous les *awaitables* en cours (ceux qui n'ont " "Si ``gather()`` est *annulé*, tous les *awaitables* en cours (ceux qui n'ont "
"pas encore fini de s'exécuter) sont également *annulés*." "pas encore fini de s'exécuter) sont également *annulés*."
#: library/asyncio-task.rst:360 #: library/asyncio-task.rst:365
msgid "" msgid ""
"If any Task or Future from the *aws* sequence is *cancelled*, it is treated " "If any Task or Future from the *aws* sequence is *cancelled*, it is treated "
"as if it raised :exc:`CancelledError` -- the ``gather()`` call is **not** " "as if it raised :exc:`CancelledError` -- the ``gather()`` call is **not** "
@ -443,7 +449,7 @@ msgstr ""
"l'annulation d'une tâche ou d'un futur entraîne l'annulation des autres " "l'annulation d'une tâche ou d'un futur entraîne l'annulation des autres "
"tâches ou futurs." "tâches ou futurs."
#: library/asyncio-task.rst:412 #: library/asyncio-task.rst:417
msgid "" msgid ""
"If *return_exceptions* is False, cancelling gather() after it has been " "If *return_exceptions* is False, cancelling gather() after it has been "
"marked done won't cancel any submitted awaitables. For instance, gather can " "marked done won't cancel any submitted awaitables. For instance, gather can "
@ -452,7 +458,7 @@ msgid ""
"the awaitables) from gather won't cancel any other awaitables." "the awaitables) from gather won't cancel any other awaitables."
msgstr "" msgstr ""
#: library/asyncio-task.rst:419 #: library/asyncio-task.rst:424
msgid "" msgid ""
"If the *gather* itself is cancelled, the cancellation is propagated " "If the *gather* itself is cancelled, the cancellation is propagated "
"regardless of *return_exceptions*." "regardless of *return_exceptions*."
@ -460,18 +466,18 @@ msgstr ""
"Si *gather* est lui-même annulé, l'annulation est propagée indépendamment de " "Si *gather* est lui-même annulé, l'annulation est propagée indépendamment de "
"*return_exceptions*." "*return_exceptions*."
#: library/asyncio-task.rst:429 #: library/asyncio-task.rst:434
msgid "" msgid ""
"Deprecation warning is emitted if no positional arguments are provided or " "Deprecation warning is emitted if no positional arguments are provided or "
"not all positional arguments are Future-like objects and there is no running " "not all positional arguments are Future-like objects and there is no running "
"event loop." "event loop."
msgstr "" msgstr ""
#: library/asyncio-task.rst:436 #: library/asyncio-task.rst:441
msgid "Shielding From Cancellation" msgid "Shielding From Cancellation"
msgstr "Protection contre l'annulation" msgstr "Protection contre l'annulation"
#: library/asyncio-task.rst:440 #: library/asyncio-task.rst:445
msgid "" msgid ""
"Protect an :ref:`awaitable object <asyncio-awaitables>` from being :meth:" "Protect an :ref:`awaitable object <asyncio-awaitables>` from being :meth:"
"`cancelled <Task.cancel>`." "`cancelled <Task.cancel>`."
@ -479,21 +485,21 @@ msgstr ""
"Empêche qu'un objet :ref:`awaitable <asyncio-awaitables>` puisse être :meth:" "Empêche qu'un objet :ref:`awaitable <asyncio-awaitables>` puisse être :meth:"
"`annulé <Task.cancel>`." "`annulé <Task.cancel>`."
#: library/asyncio-task.rst:490 #: library/asyncio-task.rst:495
msgid "If *aw* is a coroutine it is automatically scheduled as a Task." msgid "If *aw* is a coroutine it is automatically scheduled as a Task."
msgstr "" msgstr ""
"Si *aw* est une coroutine, elle est planifiée automatiquement comme une " "Si *aw* est une coroutine, elle est planifiée automatiquement comme une "
"tâche." "tâche."
#: library/asyncio-task.rst:445 #: library/asyncio-task.rst:450
msgid "The statement::" msgid "The statement::"
msgstr "L'instruction ::" msgstr "L'instruction ::"
#: library/asyncio-task.rst:449 #: library/asyncio-task.rst:454
msgid "is equivalent to::" msgid "is equivalent to::"
msgstr "est équivalente à ::" msgstr "est équivalente à ::"
#: library/asyncio-task.rst:453 #: library/asyncio-task.rst:458
msgid "" msgid ""
"*except* that if the coroutine containing it is cancelled, the Task running " "*except* that if the coroutine containing it is cancelled, the Task running "
"in ``something()`` is not cancelled. From the point of view of " "in ``something()`` is not cancelled. From the point of view of "
@ -506,7 +512,7 @@ msgstr ""
"``something()``, il n'y a pas eu d'annulation. Cependant, son appelant est " "``something()``, il n'y a pas eu d'annulation. Cependant, son appelant est "
"bien annulé, donc l'expression *await* lève bien une :exc:`CancelledError`." "bien annulé, donc l'expression *await* lève bien une :exc:`CancelledError`."
#: library/asyncio-task.rst:459 #: library/asyncio-task.rst:464
msgid "" msgid ""
"If ``something()`` is cancelled by other means (i.e. from within itself) " "If ``something()`` is cancelled by other means (i.e. from within itself) "
"that would also cancel ``shield()``." "that would also cancel ``shield()``."
@ -514,7 +520,7 @@ msgstr ""
"Si ``something()`` est annulée d'une autre façon (c.-à-d. depuis elle-même) " "Si ``something()`` est annulée d'une autre façon (c.-à-d. depuis elle-même) "
"ceci annule également ``shield()``." "ceci annule également ``shield()``."
#: library/asyncio-task.rst:462 #: library/asyncio-task.rst:467
msgid "" msgid ""
"If it is desired to completely ignore cancellation (not recommended) the " "If it is desired to completely ignore cancellation (not recommended) the "
"``shield()`` function should be combined with a try/except clause, as " "``shield()`` function should be combined with a try/except clause, as "
@ -524,17 +530,17 @@ msgstr ""
"``shield()`` peut être combinée à une clause *try* / *except*, comme dans le " "``shield()`` peut être combinée à une clause *try* / *except*, comme dans le "
"code ci-dessous ::" "code ci-dessous ::"
#: library/asyncio-task.rst:477 #: library/asyncio-task.rst:482
msgid "" msgid ""
"Deprecation warning is emitted if *aw* is not Future-like object and there " "Deprecation warning is emitted if *aw* is not Future-like object and there "
"is no running event loop." "is no running event loop."
msgstr "" msgstr ""
#: library/asyncio-task.rst:483 #: library/asyncio-task.rst:488
msgid "Timeouts" msgid "Timeouts"
msgstr "Délais d'attente" msgstr "Délais d'attente"
#: library/asyncio-task.rst:487 #: library/asyncio-task.rst:492
msgid "" msgid ""
"Wait for the *aw* :ref:`awaitable <asyncio-awaitables>` to complete with a " "Wait for the *aw* :ref:`awaitable <asyncio-awaitables>` to complete with a "
"timeout." "timeout."
@ -542,7 +548,7 @@ msgstr ""
"Attend la fin de l':ref:`awaitable <asyncio-awaitables>` *aw* avec délai " "Attend la fin de l':ref:`awaitable <asyncio-awaitables>` *aw* avec délai "
"d'attente." "d'attente."
#: library/asyncio-task.rst:492 #: library/asyncio-task.rst:497
msgid "" msgid ""
"*timeout* can either be ``None`` or a float or int number of seconds to wait " "*timeout* can either be ``None`` or a float or int number of seconds to wait "
"for. If *timeout* is ``None``, block until the future completes." "for. If *timeout* is ``None``, block until the future completes."
@ -551,7 +557,7 @@ msgstr ""
"décimal) d'attente. Si *timeout* vaut ``None``, la fonction s'interrompt " "décimal) d'attente. Si *timeout* vaut ``None``, la fonction s'interrompt "
"jusqu'à ce que le futur s'achève." "jusqu'à ce que le futur s'achève."
#: library/asyncio-task.rst:496 #: library/asyncio-task.rst:501
msgid "" msgid ""
"If a timeout occurs, it cancels the task and raises :exc:`asyncio." "If a timeout occurs, it cancels the task and raises :exc:`asyncio."
"TimeoutError`." "TimeoutError`."
@ -559,7 +565,7 @@ msgstr ""
"Si le délai d'attente maximal est dépassé, la tâche est annulée et " "Si le délai d'attente maximal est dépassé, la tâche est annulée et "
"l'exception :exc:`asyncio.TimeoutError` est levée." "l'exception :exc:`asyncio.TimeoutError` est levée."
#: library/asyncio-task.rst:499 #: library/asyncio-task.rst:504
msgid "" msgid ""
"To avoid the task :meth:`cancellation <Task.cancel>`, wrap it in :func:" "To avoid the task :meth:`cancellation <Task.cancel>`, wrap it in :func:"
"`shield`." "`shield`."
@ -567,7 +573,7 @@ msgstr ""
"Pour empêcher :meth:`l'annulation <Task.cancel>` de la tâche, il est " "Pour empêcher :meth:`l'annulation <Task.cancel>` de la tâche, il est "
"nécessaire de l'encapsuler dans une fonction :func:`shield`." "nécessaire de l'encapsuler dans une fonction :func:`shield`."
#: library/asyncio-task.rst:502 #: library/asyncio-task.rst:507
#, fuzzy #, fuzzy
msgid "" msgid ""
"The function will wait until the future is actually cancelled, so the total " "The function will wait until the future is actually cancelled, so the total "
@ -577,11 +583,11 @@ msgstr ""
"Cette fonction attend que le futur soit réellement annulé, donc le temps " "Cette fonction attend que le futur soit réellement annulé, donc le temps "
"d'attente total peut être supérieur à *timeout*." "d'attente total peut être supérieur à *timeout*."
#: library/asyncio-task.rst:506 #: library/asyncio-task.rst:511
msgid "If the wait is cancelled, the future *aw* is also cancelled." msgid "If the wait is cancelled, the future *aw* is also cancelled."
msgstr "Si l'attente est annulée, le futur *aw* est également annulé." msgstr "Si l'attente est annulée, le futur *aw* est également annulé."
#: library/asyncio-task.rst:536 #: library/asyncio-task.rst:541
msgid "" msgid ""
"When *aw* is cancelled due to a timeout, ``wait_for`` waits for *aw* to be " "When *aw* is cancelled due to a timeout, ``wait_for`` waits for *aw* to be "
"cancelled. Previously, it raised :exc:`asyncio.TimeoutError` immediately." "cancelled. Previously, it raised :exc:`asyncio.TimeoutError` immediately."
@ -590,11 +596,11 @@ msgstr ""
"``wait_for`` attend que *aw* soit annulée. Auparavant, l'exception :exc:" "``wait_for`` attend que *aw* soit annulée. Auparavant, l'exception :exc:"
"`asyncio.TimeoutError` était immédiatement levée." "`asyncio.TimeoutError` était immédiatement levée."
#: library/asyncio-task.rst:549 #: library/asyncio-task.rst:554
msgid "Waiting Primitives" msgid "Waiting Primitives"
msgstr "Primitives d'attente" msgstr "Primitives d'attente"
#: library/asyncio-task.rst:553 #: library/asyncio-task.rst:558
#, fuzzy #, fuzzy
msgid "" msgid ""
"Run :ref:`awaitable objects <asyncio-awaitables>` in the *aws* iterable " "Run :ref:`awaitable objects <asyncio-awaitables>` in the *aws* iterable "
@ -604,19 +610,19 @@ msgstr ""
"*aws* de manière concurrente, et s'interrompt jusqu'à ce que la condition " "*aws* de manière concurrente, et s'interrompt jusqu'à ce que la condition "
"décrite dans *return_when* soit vraie." "décrite dans *return_when* soit vraie."
#: library/asyncio-task.rst:557 #: library/asyncio-task.rst:562
msgid "The *aws* iterable must not be empty." msgid "The *aws* iterable must not be empty."
msgstr "" msgstr ""
#: library/asyncio-task.rst:559 #: library/asyncio-task.rst:564
msgid "Returns two sets of Tasks/Futures: ``(done, pending)``." msgid "Returns two sets of Tasks/Futures: ``(done, pending)``."
msgstr "Renvoie deux ensembles de *Tasks* / *Futures* : ``(done, pending)``." msgstr "Renvoie deux ensembles de *Tasks* / *Futures* : ``(done, pending)``."
#: library/asyncio-task.rst:561 #: library/asyncio-task.rst:566
msgid "Usage::" msgid "Usage::"
msgstr "Utilisation ::" msgstr "Utilisation ::"
#: library/asyncio-task.rst:565 #: library/asyncio-task.rst:570
msgid "" msgid ""
"*timeout* (a float or int), if specified, can be used to control the maximum " "*timeout* (a float or int), if specified, can be used to control the maximum "
"number of seconds to wait before returning." "number of seconds to wait before returning."
@ -624,7 +630,7 @@ msgstr ""
"*timeout* (entier ou décimal), si précisé, peut-être utilisé pour contrôler " "*timeout* (entier ou décimal), si précisé, peut-être utilisé pour contrôler "
"le nombre maximal de secondes d'attente avant de se terminer." "le nombre maximal de secondes d'attente avant de se terminer."
#: library/asyncio-task.rst:568 #: library/asyncio-task.rst:573
msgid "" msgid ""
"Note that this function does not raise :exc:`asyncio.TimeoutError`. Futures " "Note that this function does not raise :exc:`asyncio.TimeoutError`. Futures "
"or Tasks that aren't done when the timeout occurs are simply returned in the " "or Tasks that aren't done when the timeout occurs are simply returned in the "
@ -634,7 +640,7 @@ msgstr ""
"tâches qui ne sont pas finis quand le délai d'attente maximal est dépassé " "tâches qui ne sont pas finis quand le délai d'attente maximal est dépassé "
"sont tout simplement renvoyés dans le second ensemble." "sont tout simplement renvoyés dans le second ensemble."
#: library/asyncio-task.rst:572 #: library/asyncio-task.rst:577
msgid "" msgid ""
"*return_when* indicates when this function should return. It must be one of " "*return_when* indicates when this function should return. It must be one of "
"the following constants:" "the following constants:"
@ -642,28 +648,28 @@ msgstr ""
"*return_when* indique quand la fonction doit se terminer. Il peut prendre " "*return_when* indique quand la fonction doit se terminer. Il peut prendre "
"les valeurs suivantes :" "les valeurs suivantes :"
#: library/asyncio-task.rst:578 #: library/asyncio-task.rst:583
msgid "Constant" msgid "Constant"
msgstr "Constante" msgstr "Constante"
#: library/asyncio-task.rst:578 #: library/asyncio-task.rst:583
msgid "Description" msgid "Description"
msgstr "Description" msgstr "Description"
#: library/asyncio-task.rst:580 #: library/asyncio-task.rst:585
msgid ":const:`FIRST_COMPLETED`" msgid ":const:`FIRST_COMPLETED`"
msgstr ":const:`FIRST_COMPLETED`" msgstr ":const:`FIRST_COMPLETED`"
#: library/asyncio-task.rst:580 #: library/asyncio-task.rst:585
msgid "The function will return when any future finishes or is cancelled." msgid "The function will return when any future finishes or is cancelled."
msgstr "" msgstr ""
"La fonction se termine lorsque n'importe quel futur se termine ou est annulé." "La fonction se termine lorsque n'importe quel futur se termine ou est annulé."
#: library/asyncio-task.rst:583 #: library/asyncio-task.rst:588
msgid ":const:`FIRST_EXCEPTION`" msgid ":const:`FIRST_EXCEPTION`"
msgstr ":const:`FIRST_EXCEPTION`" msgstr ":const:`FIRST_EXCEPTION`"
#: library/asyncio-task.rst:583 #: library/asyncio-task.rst:588
msgid "" msgid ""
"The function will return when any future finishes by raising an exception. " "The function will return when any future finishes by raising an exception. "
"If no future raises an exception then it is equivalent to :const:" "If no future raises an exception then it is equivalent to :const:"
@ -673,16 +679,16 @@ msgstr ""
"exception. Si aucun *futur* ne lève d'exception, équivaut à :const:" "exception. Si aucun *futur* ne lève d'exception, équivaut à :const:"
"`ALL_COMPLETED`." "`ALL_COMPLETED`."
#: library/asyncio-task.rst:589 #: library/asyncio-task.rst:594
msgid ":const:`ALL_COMPLETED`" msgid ":const:`ALL_COMPLETED`"
msgstr ":const:`ALL_COMPLETED`" msgstr ":const:`ALL_COMPLETED`"
#: library/asyncio-task.rst:589 #: library/asyncio-task.rst:594
msgid "The function will return when all futures finish or are cancelled." msgid "The function will return when all futures finish or are cancelled."
msgstr "" msgstr ""
"La fonction se termine lorsque les *futurs* sont tous finis ou annulés." "La fonction se termine lorsque les *futurs* sont tous finis ou annulés."
#: library/asyncio-task.rst:593 #: library/asyncio-task.rst:598
msgid "" msgid ""
"Unlike :func:`~asyncio.wait_for`, ``wait()`` does not cancel the futures " "Unlike :func:`~asyncio.wait_for`, ``wait()`` does not cancel the futures "
"when a timeout occurs." "when a timeout occurs."
@ -690,7 +696,7 @@ msgstr ""
"À la différence de :func:`~asyncio.wait_for`, ``wait()`` n'annule pas les " "À la différence de :func:`~asyncio.wait_for`, ``wait()`` n'annule pas les "
"futurs quand le délai d'attente est dépassé." "futurs quand le délai d'attente est dépassé."
#: library/asyncio-task.rst:598 #: library/asyncio-task.rst:603
msgid "" msgid ""
"If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " "If any awaitable in *aws* is a coroutine, it is automatically scheduled as a "
"Task. Passing coroutines objects to ``wait()`` directly is deprecated as it " "Task. Passing coroutines objects to ``wait()`` directly is deprecated as it "
@ -701,7 +707,7 @@ msgstr ""
"``wait()`` est obsolète, car ceci conduisait :ref:`à un comportement portant " "``wait()`` est obsolète, car ceci conduisait :ref:`à un comportement portant "
"à confusion <asyncio_example_wait_coroutine>`." "à confusion <asyncio_example_wait_coroutine>`."
#: library/asyncio-task.rst:612 #: library/asyncio-task.rst:617
msgid "" msgid ""
"``wait()`` schedules coroutines as Tasks automatically and later returns " "``wait()`` schedules coroutines as Tasks automatically and later returns "
"those implicitly created Task objects in ``(done, pending)`` sets. " "those implicitly created Task objects in ``(done, pending)`` sets. "
@ -711,15 +717,15 @@ msgstr ""
"renvoie les objets *Task* ainsi créés dans les ensembles ``(done, " "renvoie les objets *Task* ainsi créés dans les ensembles ``(done, "
"pending)``. Le code suivant ne fonctionne donc pas comme voulu ::" "pending)``. Le code suivant ne fonctionne donc pas comme voulu ::"
#: library/asyncio-task.rst:625 #: library/asyncio-task.rst:630
msgid "Here is how the above snippet can be fixed::" msgid "Here is how the above snippet can be fixed::"
msgstr "Voici comment corriger le morceau de code ci-dessus ::" msgstr "Voici comment corriger le morceau de code ci-dessus ::"
#: library/asyncio-task.rst:645 #: library/asyncio-task.rst:650
msgid "Passing coroutine objects to ``wait()`` directly is deprecated." msgid "Passing coroutine objects to ``wait()`` directly is deprecated."
msgstr "Passer directement des objets coroutines à ``wait()`` est obsolète." msgstr "Passer directement des objets coroutines à ``wait()`` est obsolète."
#: library/asyncio-task.rst:651 #: library/asyncio-task.rst:656
#, fuzzy #, fuzzy
msgid "" msgid ""
"Run :ref:`awaitable objects <asyncio-awaitables>` in the *aws* iterable " "Run :ref:`awaitable objects <asyncio-awaitables>` in the *aws* iterable "
@ -732,7 +738,7 @@ msgstr ""
"`Future`. Chaque objet *futur* renvoyé représente le résultat le plus récent " "`Future`. Chaque objet *futur* renvoyé représente le résultat le plus récent "
"de l'ensemble des *awaitables* restants." "de l'ensemble des *awaitables* restants."
#: library/asyncio-task.rst:656 #: library/asyncio-task.rst:661
msgid "" msgid ""
"Raises :exc:`asyncio.TimeoutError` if the timeout occurs before all Futures " "Raises :exc:`asyncio.TimeoutError` if the timeout occurs before all Futures "
"are done." "are done."
@ -740,21 +746,21 @@ msgstr ""
"Lève une exception :exc:`asyncio.TimeoutError` si le délai d'attente est " "Lève une exception :exc:`asyncio.TimeoutError` si le délai d'attente est "
"dépassé avant que tous les futurs ne soient achevés." "dépassé avant que tous les futurs ne soient achevés."
#: library/asyncio-task.rst:677 #: library/asyncio-task.rst:682
msgid "" msgid ""
"Deprecation warning is emitted if not all awaitable objects in the *aws* " "Deprecation warning is emitted if not all awaitable objects in the *aws* "
"iterable are Future-like objects and there is no running event loop." "iterable are Future-like objects and there is no running event loop."
msgstr "" msgstr ""
#: library/asyncio-task.rst:683 #: library/asyncio-task.rst:688
msgid "Running in Threads" msgid "Running in Threads"
msgstr "" msgstr ""
#: library/asyncio-task.rst:687 #: library/asyncio-task.rst:692
msgid "Asynchronously run function *func* in a separate thread." msgid "Asynchronously run function *func* in a separate thread."
msgstr "" msgstr ""
#: library/asyncio-task.rst:689 #: library/asyncio-task.rst:694
msgid "" msgid ""
"Any \\*args and \\*\\*kwargs supplied for this function are directly passed " "Any \\*args and \\*\\*kwargs supplied for this function are directly passed "
"to *func*. Also, the current :class:`contextvars.Context` is propagated, " "to *func*. Also, the current :class:`contextvars.Context` is propagated, "
@ -762,19 +768,19 @@ msgid ""
"separate thread." "separate thread."
msgstr "" msgstr ""
#: library/asyncio-task.rst:694 #: library/asyncio-task.rst:699
msgid "" msgid ""
"Return a coroutine that can be awaited to get the eventual result of *func*." "Return a coroutine that can be awaited to get the eventual result of *func*."
msgstr "" msgstr ""
#: library/asyncio-task.rst:696 #: library/asyncio-task.rst:701
msgid "" msgid ""
"This coroutine function is primarily intended to be used for executing IO-" "This coroutine function is primarily intended to be used for executing IO-"
"bound functions/methods that would otherwise block the event loop if they " "bound functions/methods that would otherwise block the event loop if they "
"were ran in the main thread. For example::" "were ran in the main thread. For example::"
msgstr "" msgstr ""
#: library/asyncio-task.rst:726 #: library/asyncio-task.rst:731
msgid "" msgid ""
"Directly calling `blocking_io()` in any coroutine would block the event loop " "Directly calling `blocking_io()` in any coroutine would block the event loop "
"for its duration, resulting in an additional 1 second of run time. Instead, " "for its duration, resulting in an additional 1 second of run time. Instead, "
@ -782,7 +788,7 @@ msgid ""
"blocking the event loop." "blocking the event loop."
msgstr "" msgstr ""
#: library/asyncio-task.rst:733 #: library/asyncio-task.rst:738
msgid "" msgid ""
"Due to the :term:`GIL`, `asyncio.to_thread()` can typically only be used to " "Due to the :term:`GIL`, `asyncio.to_thread()` can typically only be used to "
"make IO-bound functions non-blocking. However, for extension modules that " "make IO-bound functions non-blocking. However, for extension modules that "
@ -790,18 +796,18 @@ msgid ""
"`asyncio.to_thread()` can also be used for CPU-bound functions." "`asyncio.to_thread()` can also be used for CPU-bound functions."
msgstr "" msgstr ""
#: library/asyncio-task.rst:742 #: library/asyncio-task.rst:747
msgid "Scheduling From Other Threads" msgid "Scheduling From Other Threads"
msgstr "Planification depuis d'autres fils d'exécution" msgstr "Planification depuis d'autres fils d'exécution"
#: library/asyncio-task.rst:746 #: library/asyncio-task.rst:751
msgid "Submit a coroutine to the given event loop. Thread-safe." msgid "Submit a coroutine to the given event loop. Thread-safe."
msgstr "" msgstr ""
"Enregistre une coroutine dans la boucle d'exécution actuelle. Cette " "Enregistre une coroutine dans la boucle d'exécution actuelle. Cette "
"opération est compatible avec les programmes à multiples fils d'exécution " "opération est compatible avec les programmes à multiples fils d'exécution "
"(*thread-safe*)." "(*thread-safe*)."
#: library/asyncio-task.rst:748 #: library/asyncio-task.rst:753
msgid "" msgid ""
"Return a :class:`concurrent.futures.Future` to wait for the result from " "Return a :class:`concurrent.futures.Future` to wait for the result from "
"another OS thread." "another OS thread."
@ -809,7 +815,7 @@ msgstr ""
"Renvoie un :class:`concurrent.futures.Future` pour attendre le résultat d'un " "Renvoie un :class:`concurrent.futures.Future` pour attendre le résultat d'un "
"autre fil d'exécution du système d'exploitation." "autre fil d'exécution du système d'exploitation."
#: library/asyncio-task.rst:751 #: library/asyncio-task.rst:756
msgid "" msgid ""
"This function is meant to be called from a different OS thread than the one " "This function is meant to be called from a different OS thread than the one "
"where the event loop is running. Example::" "where the event loop is running. Example::"
@ -817,7 +823,7 @@ msgstr ""
"Cette fonction est faite pour être appelée par un fil d'exécution distinct " "Cette fonction est faite pour être appelée par un fil d'exécution distinct "
"de celui dans laquelle la boucle d'événement s'exécute. Exemple ::" "de celui dans laquelle la boucle d'événement s'exécute. Exemple ::"
#: library/asyncio-task.rst:763 #: library/asyncio-task.rst:768
msgid "" msgid ""
"If an exception is raised in the coroutine, the returned Future will be " "If an exception is raised in the coroutine, the returned Future will be "
"notified. It can also be used to cancel the task in the event loop::" "notified. It can also be used to cancel the task in the event loop::"
@ -826,7 +832,7 @@ msgstr ""
"averti. Elle peut également être utilisée pour annuler la tâche de la boucle " "averti. Elle peut également être utilisée pour annuler la tâche de la boucle "
"d'événement ::" "d'événement ::"
#: library/asyncio-task.rst:777 #: library/asyncio-task.rst:782
msgid "" msgid ""
"See the :ref:`concurrency and multithreading <asyncio-multithreading>` " "See the :ref:`concurrency and multithreading <asyncio-multithreading>` "
"section of the documentation." "section of the documentation."
@ -834,7 +840,7 @@ msgstr ""
"Voir la section :ref:`exécution concurrente et multi-fils d'exécution " "Voir la section :ref:`exécution concurrente et multi-fils d'exécution "
"<asyncio-multithreading>` de la documentation." "<asyncio-multithreading>` de la documentation."
#: library/asyncio-task.rst:780 #: library/asyncio-task.rst:785
msgid "" msgid ""
"Unlike other asyncio functions this function requires the *loop* argument to " "Unlike other asyncio functions this function requires the *loop* argument to "
"be passed explicitly." "be passed explicitly."
@ -842,11 +848,11 @@ msgstr ""
"À la différence des autres fonctions d'*asyncio*, cette fonction requiert " "À la différence des autres fonctions d'*asyncio*, cette fonction requiert "
"que *loop* soit passé de manière explicite." "que *loop* soit passé de manière explicite."
#: library/asyncio-task.rst:787 #: library/asyncio-task.rst:792
msgid "Introspection" msgid "Introspection"
msgstr "Introspection" msgstr "Introspection"
#: library/asyncio-task.rst:792 #: library/asyncio-task.rst:797
msgid "" msgid ""
"Return the currently running :class:`Task` instance, or ``None`` if no task " "Return the currently running :class:`Task` instance, or ``None`` if no task "
"is running." "is running."
@ -854,7 +860,7 @@ msgstr ""
"Renvoie l'instance de la :class:`Task` en cours d'exécution, ou ``None`` " "Renvoie l'instance de la :class:`Task` en cours d'exécution, ou ``None`` "
"s'il n'y a pas de tâche en cours." "s'il n'y a pas de tâche en cours."
#: library/asyncio-task.rst:795 #: library/asyncio-task.rst:800
msgid "" msgid ""
"If *loop* is ``None`` :func:`get_running_loop` is used to get the current " "If *loop* is ``None`` :func:`get_running_loop` is used to get the current "
"loop." "loop."
@ -862,13 +868,13 @@ msgstr ""
"Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer " "Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer "
"la boucle en cours d'exécution." "la boucle en cours d'exécution."
#: library/asyncio-task.rst:803 #: library/asyncio-task.rst:808
msgid "Return a set of not yet finished :class:`Task` objects run by the loop." msgid "Return a set of not yet finished :class:`Task` objects run by the loop."
msgstr "" msgstr ""
"Renvoie l'ensemble des :class:`Task` non terminés en cours d'exécution dans " "Renvoie l'ensemble des :class:`Task` non terminés en cours d'exécution dans "
"la boucle." "la boucle."
#: library/asyncio-task.rst:806 #: library/asyncio-task.rst:811
msgid "" msgid ""
"If *loop* is ``None``, :func:`get_running_loop` is used for getting current " "If *loop* is ``None``, :func:`get_running_loop` is used for getting current "
"loop." "loop."
@ -876,11 +882,11 @@ msgstr ""
"Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer " "Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer "
"la boucle en cours d'exécution." "la boucle en cours d'exécution."
#: library/asyncio-task.rst:813 #: library/asyncio-task.rst:818
msgid "Task Object" msgid "Task Object"
msgstr "Objets *Task*" msgstr "Objets *Task*"
#: library/asyncio-task.rst:817 #: library/asyncio-task.rst:822
msgid "" msgid ""
"A :class:`Future-like <Future>` object that runs a Python :ref:`coroutine " "A :class:`Future-like <Future>` object that runs a Python :ref:`coroutine "
"<coroutine>`. Not thread-safe." "<coroutine>`. Not thread-safe."
@ -889,7 +895,7 @@ msgstr ""
"`coroutine <coroutine>` Python. Cet objet n'est pas utilisable dans des " "`coroutine <coroutine>` Python. Cet objet n'est pas utilisable dans des "
"programmes à fils d'exécution multiples." "programmes à fils d'exécution multiples."
#: library/asyncio-task.rst:820 #: library/asyncio-task.rst:825
msgid "" msgid ""
"Tasks are used to run coroutines in event loops. If a coroutine awaits on a " "Tasks are used to run coroutines in event loops. If a coroutine awaits on a "
"Future, the Task suspends the execution of the coroutine and waits for the " "Future, the Task suspends the execution of the coroutine and waits for the "
@ -901,7 +907,7 @@ msgstr ""
"attend la fin de ce *futur*. Quand celui-ci est terminé, l'exécution de la " "attend la fin de ce *futur*. Quand celui-ci est terminé, l'exécution de la "
"coroutine encapsulée reprend." "coroutine encapsulée reprend."
#: library/asyncio-task.rst:826 #: library/asyncio-task.rst:831
msgid "" msgid ""
"Event loops use cooperative scheduling: an event loop runs one Task at a " "Event loops use cooperative scheduling: an event loop runs one Task at a "
"time. While a Task awaits for the completion of a Future, the event loop " "time. While a Task awaits for the completion of a Future, the event loop "
@ -912,7 +918,7 @@ msgstr ""
"futur, la boucle d'événement exécute d'autres tâches, des fonctions de " "futur, la boucle d'événement exécute d'autres tâches, des fonctions de "
"rappel, ou effectue des opérations d'entrées-sorties." "rappel, ou effectue des opérations d'entrées-sorties."
#: library/asyncio-task.rst:831 #: library/asyncio-task.rst:836
msgid "" msgid ""
"Use the high-level :func:`asyncio.create_task` function to create Tasks, or " "Use the high-level :func:`asyncio.create_task` function to create Tasks, or "
"the low-level :meth:`loop.create_task` or :func:`ensure_future` functions. " "the low-level :meth:`loop.create_task` or :func:`ensure_future` functions. "
@ -923,7 +929,7 @@ msgstr ""
"créer des tâches. Il est déconseillé d'instancier manuellement des objets " "créer des tâches. Il est déconseillé d'instancier manuellement des objets "
"*Task*." "*Task*."
#: library/asyncio-task.rst:836 #: library/asyncio-task.rst:841
msgid "" msgid ""
"To cancel a running Task use the :meth:`cancel` method. Calling it will " "To cancel a running Task use the :meth:`cancel` method. Calling it will "
"cause the Task to throw a :exc:`CancelledError` exception into the wrapped " "cause the Task to throw a :exc:`CancelledError` exception into the wrapped "
@ -935,7 +941,7 @@ msgstr ""
"`CancelledError` dans la coroutine encapsulée. Si la coroutine attendait un " "`CancelledError` dans la coroutine encapsulée. Si la coroutine attendait un "
"*futur* au moment de l'annulation, celui-ci est annulé." "*futur* au moment de l'annulation, celui-ci est annulé."
#: library/asyncio-task.rst:841 #: library/asyncio-task.rst:846
msgid "" msgid ""
":meth:`cancelled` can be used to check if the Task was cancelled. The method " ":meth:`cancelled` can be used to check if the Task was cancelled. The method "
"returns ``True`` if the wrapped coroutine did not suppress the :exc:" "returns ``True`` if the wrapped coroutine did not suppress the :exc:"
@ -945,7 +951,7 @@ msgstr ""
"Elle renvoie ``True`` si la coroutine encapsulée n'a pas ignoré l'exception :" "Elle renvoie ``True`` si la coroutine encapsulée n'a pas ignoré l'exception :"
"exc:`CancelledError` et a bien été annulée." "exc:`CancelledError` et a bien été annulée."
#: library/asyncio-task.rst:846 #: library/asyncio-task.rst:851
msgid "" msgid ""
":class:`asyncio.Task` inherits from :class:`Future` all of its APIs except :" ":class:`asyncio.Task` inherits from :class:`Future` all of its APIs except :"
"meth:`Future.set_result` and :meth:`Future.set_exception`." "meth:`Future.set_result` and :meth:`Future.set_exception`."
@ -953,7 +959,7 @@ msgstr ""
":class:`asyncio.Task` hérite de :class:`Future`, de toute son API, à " ":class:`asyncio.Task` hérite de :class:`Future`, de toute son API, à "
"l'exception de :meth:`Future.set_result` et de :meth:`Future.set_exception`." "l'exception de :meth:`Future.set_result` et de :meth:`Future.set_exception`."
#: library/asyncio-task.rst:850 #: library/asyncio-task.rst:855
msgid "" msgid ""
"Tasks support the :mod:`contextvars` module. When a Task is created it " "Tasks support the :mod:`contextvars` module. When a Task is created it "
"copies the current context and later runs its coroutine in the copied " "copies the current context and later runs its coroutine in the copied "
@ -963,25 +969,25 @@ msgstr ""
"tâche effectue une copie du contexte actuel et exécutera ses coroutines dans " "tâche effectue une copie du contexte actuel et exécutera ses coroutines dans "
"cette copie." "cette copie."
#: library/asyncio-task.rst:854 #: library/asyncio-task.rst:859
msgid "Added support for the :mod:`contextvars` module." msgid "Added support for the :mod:`contextvars` module."
msgstr "Ajout du support du module :mod:`contextvars`." msgstr "Ajout du support du module :mod:`contextvars`."
#: library/asyncio-task.rst:862 #: library/asyncio-task.rst:867
msgid "The *loop* parameter." msgid "The *loop* parameter."
msgstr "Le paramètre *loop*." msgstr "Le paramètre *loop*."
#: library/asyncio-task.rst:863 #: library/asyncio-task.rst:868
msgid "" msgid ""
"Deprecation warning is emitted if *loop* is not specified and there is no " "Deprecation warning is emitted if *loop* is not specified and there is no "
"running event loop." "running event loop."
msgstr "" msgstr ""
#: library/asyncio-task.rst:869 #: library/asyncio-task.rst:874
msgid "Request the Task to be cancelled." msgid "Request the Task to be cancelled."
msgstr "Demande l'annulation d'une tâche." msgstr "Demande l'annulation d'une tâche."
#: library/asyncio-task.rst:871 #: library/asyncio-task.rst:876
msgid "" msgid ""
"This arranges for a :exc:`CancelledError` exception to be thrown into the " "This arranges for a :exc:`CancelledError` exception to be thrown into the "
"wrapped coroutine on the next cycle of the event loop." "wrapped coroutine on the next cycle of the event loop."
@ -990,7 +996,7 @@ msgstr ""
"encapsulée. L'exception sera levée au prochain cycle de la boucle " "encapsulée. L'exception sera levée au prochain cycle de la boucle "
"d'exécution." "d'exécution."
#: library/asyncio-task.rst:874 #: library/asyncio-task.rst:879
msgid "" msgid ""
"The coroutine then has a chance to clean up or even deny the request by " "The coroutine then has a chance to clean up or even deny the request by "
"suppressing the exception with a :keyword:`try` ... ... ``except " "suppressing the exception with a :keyword:`try` ... ... ``except "
@ -1006,11 +1012,11 @@ msgstr ""
"annulée, bien qu'ignorer totalement une annulation ne soit ni une pratique " "annulée, bien qu'ignorer totalement une annulation ne soit ni une pratique "
"courante, ni encouragé." "courante, ni encouragé."
#: library/asyncio-task.rst:882 #: library/asyncio-task.rst:887
msgid "Added the ``msg`` parameter." msgid "Added the ``msg`` parameter."
msgstr "" msgstr ""
#: library/asyncio-task.rst:887 #: library/asyncio-task.rst:892
msgid "" msgid ""
"The following example illustrates how coroutines can intercept the " "The following example illustrates how coroutines can intercept the "
"cancellation request::" "cancellation request::"
@ -1018,11 +1024,11 @@ msgstr ""
"L'exemple ci-dessous illustre comment une coroutine peut intercepter une " "L'exemple ci-dessous illustre comment une coroutine peut intercepter une "
"requête d'annulation ::" "requête d'annulation ::"
#: library/asyncio-task.rst:926 #: library/asyncio-task.rst:931
msgid "Return ``True`` if the Task is *cancelled*." msgid "Return ``True`` if the Task is *cancelled*."
msgstr "Renvoie ``True`` si la tâche est *annulée*." msgstr "Renvoie ``True`` si la tâche est *annulée*."
#: library/asyncio-task.rst:928 #: library/asyncio-task.rst:933
msgid "" msgid ""
"The Task is *cancelled* when the cancellation was requested with :meth:" "The Task is *cancelled* when the cancellation was requested with :meth:"
"`cancel` and the wrapped coroutine propagated the :exc:`CancelledError` " "`cancel` and the wrapped coroutine propagated the :exc:`CancelledError` "
@ -1032,11 +1038,11 @@ msgstr ""
"et la coroutine encapsulée a propagé l'exception :exc:`CancelledError` qui a " "et la coroutine encapsulée a propagé l'exception :exc:`CancelledError` qui a "
"été levée en son sein." "été levée en son sein."
#: library/asyncio-task.rst:934 #: library/asyncio-task.rst:939
msgid "Return ``True`` if the Task is *done*." msgid "Return ``True`` if the Task is *done*."
msgstr "Renvoie ``True`` si la tâche est *achevée*." msgstr "Renvoie ``True`` si la tâche est *achevée*."
#: library/asyncio-task.rst:936 #: library/asyncio-task.rst:941
msgid "" msgid ""
"A Task is *done* when the wrapped coroutine either returned a value, raised " "A Task is *done* when the wrapped coroutine either returned a value, raised "
"an exception, or the Task was cancelled." "an exception, or the Task was cancelled."
@ -1044,11 +1050,11 @@ msgstr ""
"Une tâche est dite *achevée* quand la coroutine encapsulée a soit renvoyé " "Une tâche est dite *achevée* quand la coroutine encapsulée a soit renvoyé "
"une valeur, soit levé une exception, ou que la tâche a été annulée." "une valeur, soit levé une exception, ou que la tâche a été annulée."
#: library/asyncio-task.rst:941 #: library/asyncio-task.rst:946
msgid "Return the result of the Task." msgid "Return the result of the Task."
msgstr "Renvoie le résultat de la tâche." msgstr "Renvoie le résultat de la tâche."
#: library/asyncio-task.rst:943 #: library/asyncio-task.rst:948
msgid "" msgid ""
"If the Task is *done*, the result of the wrapped coroutine is returned (or " "If the Task is *done*, the result of the wrapped coroutine is returned (or "
"if the coroutine raised an exception, that exception is re-raised.)" "if the coroutine raised an exception, that exception is re-raised.)"
@ -1057,7 +1063,7 @@ msgstr ""
"renvoyé (sinon, dans le cas où la coroutine a levé une exception, cette " "renvoyé (sinon, dans le cas où la coroutine a levé une exception, cette "
"exception est de nouveau levée)." "exception est de nouveau levée)."
#: library/asyncio-task.rst:961 #: library/asyncio-task.rst:966
msgid "" msgid ""
"If the Task has been *cancelled*, this method raises a :exc:`CancelledError` " "If the Task has been *cancelled*, this method raises a :exc:`CancelledError` "
"exception." "exception."
@ -1065,7 +1071,7 @@ msgstr ""
"Si la tâche a été *annulée*, cette méthode lève une exception :exc:" "Si la tâche a été *annulée*, cette méthode lève une exception :exc:"
"`CancelledError`." "`CancelledError`."
#: library/asyncio-task.rst:950 #: library/asyncio-task.rst:955
msgid "" msgid ""
"If the Task's result isn't yet available, this method raises a :exc:" "If the Task's result isn't yet available, this method raises a :exc:"
"`InvalidStateError` exception." "`InvalidStateError` exception."
@ -1073,11 +1079,11 @@ msgstr ""
"Si le résultat de la tâche n'est pas encore disponible, cette méthode lève " "Si le résultat de la tâche n'est pas encore disponible, cette méthode lève "
"une exception :exc:`InvalidStateError`." "une exception :exc:`InvalidStateError`."
#: library/asyncio-task.rst:955 #: library/asyncio-task.rst:960
msgid "Return the exception of the Task." msgid "Return the exception of the Task."
msgstr "Renvoie l'exception de la tâche." msgstr "Renvoie l'exception de la tâche."
#: library/asyncio-task.rst:957 #: library/asyncio-task.rst:962
msgid "" msgid ""
"If the wrapped coroutine raised an exception that exception is returned. If " "If the wrapped coroutine raised an exception that exception is returned. If "
"the wrapped coroutine returned normally this method returns ``None``." "the wrapped coroutine returned normally this method returns ``None``."
@ -1085,7 +1091,7 @@ msgstr ""
"Si la coroutine encapsulée lève une exception, cette exception est renvoyée. " "Si la coroutine encapsulée lève une exception, cette exception est renvoyée. "
"Si la coroutine s'est exécutée normalement, cette méthode renvoie ``None``." "Si la coroutine s'est exécutée normalement, cette méthode renvoie ``None``."
#: library/asyncio-task.rst:964 #: library/asyncio-task.rst:969
msgid "" msgid ""
"If the Task isn't *done* yet, this method raises an :exc:`InvalidStateError` " "If the Task isn't *done* yet, this method raises an :exc:`InvalidStateError` "
"exception." "exception."
@ -1093,30 +1099,30 @@ msgstr ""
"Si la tâche n'est pas encore *achevée*, cette méthode lève une exception :" "Si la tâche n'est pas encore *achevée*, cette méthode lève une exception :"
"exc:`InvalidStateError`." "exc:`InvalidStateError`."
#: library/asyncio-task.rst:969 #: library/asyncio-task.rst:974
msgid "Add a callback to be run when the Task is *done*." msgid "Add a callback to be run when the Task is *done*."
msgstr "" msgstr ""
"Ajoute une fonction de rappel qui sera exécutée quand la tâche sera " "Ajoute une fonction de rappel qui sera exécutée quand la tâche sera "
"*achevée*." "*achevée*."
#: library/asyncio-task.rst:980 #: library/asyncio-task.rst:985
msgid "This method should only be used in low-level callback-based code." msgid "This method should only be used in low-level callback-based code."
msgstr "" msgstr ""
"Cette méthode ne doit être utilisée que dans du code basé sur les fonctions " "Cette méthode ne doit être utilisée que dans du code basé sur les fonctions "
"de rappel de bas-niveau." "de rappel de bas-niveau."
#: library/asyncio-task.rst:973 #: library/asyncio-task.rst:978
msgid "" msgid ""
"See the documentation of :meth:`Future.add_done_callback` for more details." "See the documentation of :meth:`Future.add_done_callback` for more details."
msgstr "" msgstr ""
"Se référer à la documentation de :meth:`Future.add_done_callback` pour plus " "Se référer à la documentation de :meth:`Future.add_done_callback` pour plus "
"de détails." "de détails."
#: library/asyncio-task.rst:978 #: library/asyncio-task.rst:983
msgid "Remove *callback* from the callbacks list." msgid "Remove *callback* from the callbacks list."
msgstr "Retire *callback* de la liste de fonctions de rappel." msgstr "Retire *callback* de la liste de fonctions de rappel."
#: library/asyncio-task.rst:982 #: library/asyncio-task.rst:987
msgid "" msgid ""
"See the documentation of :meth:`Future.remove_done_callback` for more " "See the documentation of :meth:`Future.remove_done_callback` for more "
"details." "details."
@ -1124,11 +1130,11 @@ msgstr ""
"Se référer à la documentation de :meth:`Future.remove_done_callback` pour " "Se référer à la documentation de :meth:`Future.remove_done_callback` pour "
"plus de détails." "plus de détails."
#: library/asyncio-task.rst:987 #: library/asyncio-task.rst:992
msgid "Return the list of stack frames for this Task." msgid "Return the list of stack frames for this Task."
msgstr "Renvoie une liste représentant la pile d'appels de la tâche." msgstr "Renvoie une liste représentant la pile d'appels de la tâche."
#: library/asyncio-task.rst:989 #: library/asyncio-task.rst:994
msgid "" msgid ""
"If the wrapped coroutine is not done, this returns the stack where it is " "If the wrapped coroutine is not done, this returns the stack where it is "
"suspended. If the coroutine has completed successfully or was cancelled, " "suspended. If the coroutine has completed successfully or was cancelled, "
@ -1141,15 +1147,15 @@ msgstr ""
"renvoie une liste vide. Si la coroutine a été terminée par une exception, " "renvoie une liste vide. Si la coroutine a été terminée par une exception, "
"ceci renvoie la pile d'erreurs." "ceci renvoie la pile d'erreurs."
#: library/asyncio-task.rst:995 #: library/asyncio-task.rst:1000
msgid "The frames are always ordered from oldest to newest." msgid "The frames are always ordered from oldest to newest."
msgstr "La pile est toujours affichée de l'appelant à l'appelé." msgstr "La pile est toujours affichée de l'appelant à l'appelé."
#: library/asyncio-task.rst:997 #: library/asyncio-task.rst:1002
msgid "Only one stack frame is returned for a suspended coroutine." msgid "Only one stack frame is returned for a suspended coroutine."
msgstr "Une seule ligne est renvoyée si la coroutine est suspendue." msgstr "Une seule ligne est renvoyée si la coroutine est suspendue."
#: library/asyncio-task.rst:999 #: library/asyncio-task.rst:1004
msgid "" msgid ""
"The optional *limit* argument sets the maximum number of frames to return; " "The optional *limit* argument sets the maximum number of frames to return; "
"by default all available frames are returned. The ordering of the returned " "by default all available frames are returned. The ordering of the returned "
@ -1163,11 +1169,11 @@ msgstr ""
"renvoyés, si la pile est une pile d'erreurs, ce sont les appels les plus " "renvoyés, si la pile est une pile d'erreurs, ce sont les appels les plus "
"anciens qui le sont (dans un souci de cohérence avec le module *traceback*)." "anciens qui le sont (dans un souci de cohérence avec le module *traceback*)."
#: library/asyncio-task.rst:1008 #: library/asyncio-task.rst:1013
msgid "Print the stack or traceback for this Task." msgid "Print the stack or traceback for this Task."
msgstr "Affiche la pile d'appels ou d'erreurs de la tâche." msgstr "Affiche la pile d'appels ou d'erreurs de la tâche."
#: library/asyncio-task.rst:1010 #: library/asyncio-task.rst:1015
msgid "" msgid ""
"This produces output similar to that of the traceback module for the frames " "This produces output similar to that of the traceback module for the frames "
"retrieved by :meth:`get_stack`." "retrieved by :meth:`get_stack`."
@ -1175,11 +1181,11 @@ msgstr ""
"Le format de sortie des appels produits par :meth:`get_stack` est similaire " "Le format de sortie des appels produits par :meth:`get_stack` est similaire "
"à celui du module *traceback*." "à celui du module *traceback*."
#: library/asyncio-task.rst:1013 #: library/asyncio-task.rst:1018
msgid "The *limit* argument is passed to :meth:`get_stack` directly." msgid "The *limit* argument is passed to :meth:`get_stack` directly."
msgstr "Le paramètre *limit* est directement passé à :meth:`get_stack`." msgstr "Le paramètre *limit* est directement passé à :meth:`get_stack`."
#: library/asyncio-task.rst:1015 #: library/asyncio-task.rst:1020
msgid "" msgid ""
"The *file* argument is an I/O stream to which the output is written; by " "The *file* argument is an I/O stream to which the output is written; by "
"default output is written to :data:`sys.stderr`." "default output is written to :data:`sys.stderr`."
@ -1187,15 +1193,15 @@ msgstr ""
"Le paramètre *file* est un flux d'entrées-sorties sur lequel le résultat est " "Le paramètre *file* est un flux d'entrées-sorties sur lequel le résultat est "
"écrit ; par défaut, :data:`sys.stderr`." "écrit ; par défaut, :data:`sys.stderr`."
#: library/asyncio-task.rst:1020 #: library/asyncio-task.rst:1025
msgid "Return the coroutine object wrapped by the :class:`Task`." msgid "Return the coroutine object wrapped by the :class:`Task`."
msgstr "Renvoie lobjet *coroutine* encapsulé par la :class:`Task`." msgstr "Renvoie lobjet *coroutine* encapsulé par la :class:`Task`."
#: library/asyncio-task.rst:1026 #: library/asyncio-task.rst:1031
msgid "Return the name of the Task." msgid "Return the name of the Task."
msgstr "Renvoie le nom de la tâche." msgstr "Renvoie le nom de la tâche."
#: library/asyncio-task.rst:1028 #: library/asyncio-task.rst:1033
msgid "" msgid ""
"If no name has been explicitly assigned to the Task, the default asyncio " "If no name has been explicitly assigned to the Task, the default asyncio "
"Task implementation generates a default name during instantiation." "Task implementation generates a default name during instantiation."
@ -1204,18 +1210,18 @@ msgstr ""
"défaut dune *Task* *asyncio* génère un nom par défaut durant " "défaut dune *Task* *asyncio* génère un nom par défaut durant "
"linstanciation." "linstanciation."
#: library/asyncio-task.rst:1036 #: library/asyncio-task.rst:1041
msgid "Set the name of the Task." msgid "Set the name of the Task."
msgstr "Définit le nom de la tâche." msgstr "Définit le nom de la tâche."
#: library/asyncio-task.rst:1038 #: library/asyncio-task.rst:1043
msgid "" msgid ""
"The *value* argument can be any object, which is then converted to a string." "The *value* argument can be any object, which is then converted to a string."
msgstr "" msgstr ""
"Largument *value* peut être nimporte quel objet qui sera ensuite converti " "Largument *value* peut être nimporte quel objet qui sera ensuite converti "
"en chaine de caractères." "en chaine de caractères."
#: library/asyncio-task.rst:1041 #: library/asyncio-task.rst:1046
msgid "" msgid ""
"In the default Task implementation, the name will be visible in the :func:" "In the default Task implementation, the name will be visible in the :func:"
"`repr` output of a task object." "`repr` output of a task object."
@ -1223,11 +1229,11 @@ msgstr ""
"Dans limplémentation par défaut de *Task*, le nom sera visible dans le " "Dans limplémentation par défaut de *Task*, le nom sera visible dans le "
"résultat de :func:`repr` dun objet *Task*." "résultat de :func:`repr` dun objet *Task*."
#: library/asyncio-task.rst:1050 #: library/asyncio-task.rst:1055
msgid "Generator-based Coroutines" msgid "Generator-based Coroutines"
msgstr "Coroutines basées sur des générateurs" msgstr "Coroutines basées sur des générateurs"
#: library/asyncio-task.rst:1054 #: library/asyncio-task.rst:1059
msgid "" msgid ""
"Support for generator-based coroutines is **deprecated** and is scheduled " "Support for generator-based coroutines is **deprecated** and is scheduled "
"for removal in Python 3.10." "for removal in Python 3.10."
@ -1235,7 +1241,7 @@ msgstr ""
"Les coroutines basées sur des générateurs sont **obsolètes** et il est prévu " "Les coroutines basées sur des générateurs sont **obsolètes** et il est prévu "
"de les supprimer en Python 3.10." "de les supprimer en Python 3.10."
#: library/asyncio-task.rst:1057 #: library/asyncio-task.rst:1062
msgid "" msgid ""
"Generator-based coroutines predate async/await syntax. They are Python " "Generator-based coroutines predate async/await syntax. They are Python "
"generators that use ``yield from`` expressions to await on Futures and other " "generators that use ``yield from`` expressions to await on Futures and other "
@ -1245,7 +1251,7 @@ msgstr ""
"*async* / *await*. Il existe des générateurs *Python* qui utilisent les " "*async* / *await*. Il existe des générateurs *Python* qui utilisent les "
"expressions ``yield from`` pour attendre des *futurs* et autres coroutines." "expressions ``yield from`` pour attendre des *futurs* et autres coroutines."
#: library/asyncio-task.rst:1061 #: library/asyncio-task.rst:1066
msgid "" msgid ""
"Generator-based coroutines should be decorated with :func:`@asyncio." "Generator-based coroutines should be decorated with :func:`@asyncio."
"coroutine <asyncio.coroutine>`, although this is not enforced." "coroutine <asyncio.coroutine>`, although this is not enforced."
@ -1254,11 +1260,11 @@ msgstr ""
"`@asyncio.coroutine <asyncio.coroutine>`, même si ce n'est pas vérifié par " "`@asyncio.coroutine <asyncio.coroutine>`, même si ce n'est pas vérifié par "
"l'interpréteur." "l'interpréteur."
#: library/asyncio-task.rst:1068 #: library/asyncio-task.rst:1073
msgid "Decorator to mark generator-based coroutines." msgid "Decorator to mark generator-based coroutines."
msgstr "Décorateur pour coroutines basées sur des générateurs." msgstr "Décorateur pour coroutines basées sur des générateurs."
#: library/asyncio-task.rst:1070 #: library/asyncio-task.rst:1075
msgid "" msgid ""
"This decorator enables legacy generator-based coroutines to be compatible " "This decorator enables legacy generator-based coroutines to be compatible "
"with async/await code::" "with async/await code::"
@ -1266,22 +1272,22 @@ msgstr ""
"Ce décorateur rend compatibles les coroutines basées sur des générateurs " "Ce décorateur rend compatibles les coroutines basées sur des générateurs "
"avec le code *async* / *await* ::" "avec le code *async* / *await* ::"
#: library/asyncio-task.rst:1080 #: library/asyncio-task.rst:1085
msgid "This decorator should not be used for :keyword:`async def` coroutines." msgid "This decorator should not be used for :keyword:`async def` coroutines."
msgstr "" msgstr ""
"Ce décorateur ne doit pas être utilisé avec des coroutines :keyword:`async " "Ce décorateur ne doit pas être utilisé avec des coroutines :keyword:`async "
"def`." "def`."
# pas de majuscule car suit un deux-points # pas de majuscule car suit un deux-points
#: library/asyncio-task.rst:1085 #: library/asyncio-task.rst:1090
msgid "Use :keyword:`async def` instead." msgid "Use :keyword:`async def` instead."
msgstr "utilisez :keyword:`async def` à la place." msgstr "utilisez :keyword:`async def` à la place."
#: library/asyncio-task.rst:1089 #: library/asyncio-task.rst:1094
msgid "Return ``True`` if *obj* is a :ref:`coroutine object <coroutine>`." msgid "Return ``True`` if *obj* is a :ref:`coroutine object <coroutine>`."
msgstr "Renvoie ``True`` si *obj* est un :ref:`objet coroutine <coroutine>`." msgstr "Renvoie ``True`` si *obj* est un :ref:`objet coroutine <coroutine>`."
#: library/asyncio-task.rst:1091 #: library/asyncio-task.rst:1096
msgid "" msgid ""
"This method is different from :func:`inspect.iscoroutine` because it returns " "This method is different from :func:`inspect.iscoroutine` because it returns "
"``True`` for generator-based coroutines." "``True`` for generator-based coroutines."
@ -1289,12 +1295,12 @@ msgstr ""
"Cette méthode est différente de :func:`inspect.iscoroutine` car elle renvoie " "Cette méthode est différente de :func:`inspect.iscoroutine` car elle renvoie "
"``True`` pour des coroutines basées sur des générateurs." "``True`` pour des coroutines basées sur des générateurs."
#: library/asyncio-task.rst:1096 #: library/asyncio-task.rst:1101
msgid "Return ``True`` if *func* is a :ref:`coroutine function <coroutine>`." msgid "Return ``True`` if *func* is a :ref:`coroutine function <coroutine>`."
msgstr "" msgstr ""
"Renvoie ``True`` si *func* est une :ref:`fonction coroutine <coroutine>`." "Renvoie ``True`` si *func* est une :ref:`fonction coroutine <coroutine>`."
#: library/asyncio-task.rst:1099 #: library/asyncio-task.rst:1104
msgid "" msgid ""
"This method is different from :func:`inspect.iscoroutinefunction` because it " "This method is different from :func:`inspect.iscoroutinefunction` because it "
"returns ``True`` for generator-based coroutine functions decorated with :" "returns ``True`` for generator-based coroutine functions decorated with :"

View File

@ -5,14 +5,14 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-11-15 19:06-0500\n" "PO-Revision-Date: 2021-11-15 19:06-0500\n"
"Last-Translator: Edith Viau <info@eviau.net>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Last-Translator: Edith Viau <info@eviau.net>\n"
"X-Generator: Poedit 2.3\n" "X-Generator: Poedit 2.3\n"
#: library/audioop.rst:2 #: library/audioop.rst:2

View File

@ -5,15 +5,15 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-11-06 20:24+0100\n" "PO-Revision-Date: 2021-11-06 20:24+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0\n" "X-Generator: Poedit 3.0\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
#: library/bz2.rst:2 #: library/bz2.rst:2
msgid ":mod:`bz2` --- Support for :program:`bzip2` compression" msgid ":mod:`bz2` --- Support for :program:`bzip2` compression"

View File

@ -5,14 +5,14 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-11-06 20:25+0100\n" "PO-Revision-Date: 2021-11-06 20:25+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"X-Generator: Poedit 3.0\n" "X-Generator: Poedit 3.0\n"
#: library/codeop.rst:2 #: library/codeop.rst:2

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-11-06 21:37+0100\n" "PO-Revision-Date: 2021-11-06 21:37+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n" "Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -203,7 +203,7 @@ msgstr ""
"peuvent s'utiliser comme décorateurs ou dans les instructions :keyword:" "peuvent s'utiliser comme décorateurs ou dans les instructions :keyword:"
"`async with` :" "`async with` :"
#: library/contextlib.rst:145 #: library/contextlib.rst:147
msgid "" msgid ""
"When used as a decorator, a new generator instance is implicitly created on " "When used as a decorator, a new generator instance is implicitly created on "
"each function call. This allows the otherwise \"one-shot\" context managers " "each function call. This allows the otherwise \"one-shot\" context managers "
@ -211,7 +211,7 @@ msgid ""
"managers support multiple invocations in order to be used as decorators." "managers support multiple invocations in order to be used as decorators."
msgstr "" msgstr ""
#: library/contextlib.rst:150 #: library/contextlib.rst:152
#, fuzzy #, fuzzy
msgid "" msgid ""
"Async context managers created with :func:`asynccontextmanager` can be used " "Async context managers created with :func:`asynccontextmanager` can be used "
@ -220,7 +220,7 @@ msgstr ""
"Une classe mère qui permet à un gestionnaire de contexte d'être aussi " "Une classe mère qui permet à un gestionnaire de contexte d'être aussi "
"utilisé comme décorateur." "utilisé comme décorateur."
#: library/contextlib.rst:157 #: library/contextlib.rst:159
msgid "" msgid ""
"Return a context manager that closes *thing* upon completion of the block. " "Return a context manager that closes *thing* upon completion of the block. "
"This is basically equivalent to::" "This is basically equivalent to::"
@ -228,11 +228,11 @@ msgstr ""
"Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. " "Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. "
"C'est essentiellement équivalent à ::" "C'est essentiellement équivalent à ::"
#: library/contextlib.rst:169 #: library/contextlib.rst:171
msgid "And lets you write code like this::" msgid "And lets you write code like this::"
msgstr "Et cela vous permet d'écrire du code tel que ::" msgstr "Et cela vous permet d'écrire du code tel que ::"
#: library/contextlib.rst:178 #: library/contextlib.rst:180
msgid "" msgid ""
"without needing to explicitly close ``page``. Even if an error occurs, " "without needing to explicitly close ``page``. Even if an error occurs, "
"``page.close()`` will be called when the :keyword:`with` block is exited." "``page.close()`` will be called when the :keyword:`with` block is exited."
@ -240,7 +240,7 @@ msgstr ""
"sans besoin de fermer explicitement ``page``. Même si une erreur survient, " "sans besoin de fermer explicitement ``page``. Même si une erreur survient, "
"``page.close()`` est appelée à la fermeture du bloc :keyword:`with`." "``page.close()`` est appelée à la fermeture du bloc :keyword:`with`."
#: library/contextlib.rst:184 #: library/contextlib.rst:186
#, fuzzy #, fuzzy
msgid "" msgid ""
"Return an async context manager that calls the ``aclose()`` method of " "Return an async context manager that calls the ``aclose()`` method of "
@ -249,14 +249,14 @@ msgstr ""
"Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. " "Renvoie un gestionnaire de contexte qui ferme *thing* à la fin du bloc. "
"C'est essentiellement équivalent à ::" "C'est essentiellement équivalent à ::"
#: library/contextlib.rst:196 #: library/contextlib.rst:198
msgid "" msgid ""
"Significantly, ``aclosing()`` supports deterministic cleanup of async " "Significantly, ``aclosing()`` supports deterministic cleanup of async "
"generators when they happen to exit early by :keyword:`break` or an " "generators when they happen to exit early by :keyword:`break` or an "
"exception. For example::" "exception. For example::"
msgstr "" msgstr ""
#: library/contextlib.rst:207 #: library/contextlib.rst:209
msgid "" msgid ""
"This pattern ensures that the generator's async exit code is executed in the " "This pattern ensures that the generator's async exit code is executed in the "
"same context as its iterations (so that exceptions and context variables " "same context as its iterations (so that exceptions and context variables "
@ -264,7 +264,7 @@ msgid ""
"task it depends on)." "task it depends on)."
msgstr "" msgstr ""
#: library/contextlib.rst:219 #: library/contextlib.rst:221
msgid "" msgid ""
"Return a context manager that returns *enter_result* from ``__enter__``, but " "Return a context manager that returns *enter_result* from ``__enter__``, but "
"otherwise does nothing. It is intended to be used as a stand-in for an " "otherwise does nothing. It is intended to be used as a stand-in for an "
@ -274,11 +274,11 @@ msgstr ""
"*enter_result*, mais ne fait rien d'autre. L'idée est de l'utiliser comme " "*enter_result*, mais ne fait rien d'autre. L'idée est de l'utiliser comme "
"remplaçant pour un gestionnaire de contexte optionnel, par exemple ::" "remplaçant pour un gestionnaire de contexte optionnel, par exemple ::"
#: library/contextlib.rst:233 #: library/contextlib.rst:235
msgid "An example using *enter_result*::" msgid "An example using *enter_result*::"
msgstr "Un exemple utilisant *enter_result* ::" msgstr "Un exemple utilisant *enter_result* ::"
#: library/contextlib.rst:246 #: library/contextlib.rst:248
#, fuzzy #, fuzzy
msgid "" msgid ""
"It can also be used as a stand-in for :ref:`asynchronous context managers " "It can also be used as a stand-in for :ref:`asynchronous context managers "
@ -287,11 +287,11 @@ msgstr ""
"Similaire à :func:`~contextlib.contextmanager`, mais crée un :ref:" "Similaire à :func:`~contextlib.contextmanager`, mais crée un :ref:"
"`gestionnaire de contexte asynchrone <async-context-managers>`." "`gestionnaire de contexte asynchrone <async-context-managers>`."
#: library/contextlib.rst:262 #: library/contextlib.rst:264
msgid ":term:`asynchronous context manager` support was added." msgid ":term:`asynchronous context manager` support was added."
msgstr "" msgstr ""
#: library/contextlib.rst:269 #: library/contextlib.rst:271
#, fuzzy #, fuzzy
msgid "" msgid ""
"Return a context manager that suppresses any of the specified exceptions if " "Return a context manager that suppresses any of the specified exceptions if "
@ -303,7 +303,7 @@ msgstr ""
"spécifiées si elles surviennent dans le corps du bloc *with*, et reprend " "spécifiées si elles surviennent dans le corps du bloc *with*, et reprend "
"l'exécution sur la première instruction qui suit la fin du bloc *with*." "l'exécution sur la première instruction qui suit la fin du bloc *with*."
#: library/contextlib.rst:274 #: library/contextlib.rst:276
msgid "" msgid ""
"As with any other mechanism that completely suppresses exceptions, this " "As with any other mechanism that completely suppresses exceptions, this "
"context manager should be used only to cover very specific errors where " "context manager should be used only to cover very specific errors where "
@ -315,19 +315,19 @@ msgstr ""
"très spécifiques d'erreurs où il est certain que continuer silencieusement " "très spécifiques d'erreurs où il est certain que continuer silencieusement "
"l'exécution du programme est la bonne chose à faire." "l'exécution du programme est la bonne chose à faire."
#: library/contextlib.rst:279 #: library/contextlib.rst:281
msgid "For example::" msgid "For example::"
msgstr "Par exemple ::" msgstr "Par exemple ::"
#: library/contextlib.rst:289 #: library/contextlib.rst:291
msgid "This code is equivalent to::" msgid "This code is equivalent to::"
msgstr "Ce code est équivalent à ::" msgstr "Ce code est équivalent à ::"
#: library/contextlib.rst:341 library/contextlib.rst:351 #: library/contextlib.rst:343 library/contextlib.rst:353
msgid "This context manager is :ref:`reentrant <reentrant-cms>`." msgid "This context manager is :ref:`reentrant <reentrant-cms>`."
msgstr "Ce gestionnaire de contexte est :ref:`réentrant <reentrant-cms>`." msgstr "Ce gestionnaire de contexte est :ref:`réentrant <reentrant-cms>`."
#: library/contextlib.rst:308 #: library/contextlib.rst:310
msgid "" msgid ""
"Context manager for temporarily redirecting :data:`sys.stdout` to another " "Context manager for temporarily redirecting :data:`sys.stdout` to another "
"file or file-like object." "file or file-like object."
@ -335,7 +335,7 @@ msgstr ""
"Gestionnaire de contexte servant à rediriger temporairement :data:`sys." "Gestionnaire de contexte servant à rediriger temporairement :data:`sys."
"stdout` vers un autre fichier ou objet fichier-compatible." "stdout` vers un autre fichier ou objet fichier-compatible."
#: library/contextlib.rst:311 #: library/contextlib.rst:313
msgid "" msgid ""
"This tool adds flexibility to existing functions or classes whose output is " "This tool adds flexibility to existing functions or classes whose output is "
"hardwired to stdout." "hardwired to stdout."
@ -343,7 +343,7 @@ msgstr ""
"Cet outil ajoute une certaine flexibilité aux fonctions ou classes " "Cet outil ajoute une certaine flexibilité aux fonctions ou classes "
"existantes dont la sortie est envoyée vers la sortie standard." "existantes dont la sortie est envoyée vers la sortie standard."
#: library/contextlib.rst:314 #: library/contextlib.rst:316
#, fuzzy #, fuzzy
msgid "" msgid ""
"For example, the output of :func:`help` normally is sent to *sys.stdout*. " "For example, the output of :func:`help` normally is sent to *sys.stdout*. "
@ -356,7 +356,7 @@ msgstr ""
"stdout*. Vous pouvez capturer cette sortie dans une chaîne de caractères en " "stdout*. Vous pouvez capturer cette sortie dans une chaîne de caractères en "
"la redirigeant vers un objet :class:`io.StringIO` ::" "la redirigeant vers un objet :class:`io.StringIO` ::"
#: library/contextlib.rst:324 #: library/contextlib.rst:326
msgid "" msgid ""
"To send the output of :func:`help` to a file on disk, redirect the output to " "To send the output of :func:`help` to a file on disk, redirect the output to "
"a regular file::" "a regular file::"
@ -364,11 +364,11 @@ msgstr ""
"Pour envoyer la sortie de :func:`help` vers un fichier sur le disque, " "Pour envoyer la sortie de :func:`help` vers un fichier sur le disque, "
"redirigez-la sur un fichier normal ::" "redirigez-la sur un fichier normal ::"
#: library/contextlib.rst:331 #: library/contextlib.rst:333
msgid "To send the output of :func:`help` to *sys.stderr*::" msgid "To send the output of :func:`help` to *sys.stderr*::"
msgstr "Pour envoyer la sortie de :func:`help` sur *sys.stderr* ::" msgstr "Pour envoyer la sortie de :func:`help` sur *sys.stderr* ::"
#: library/contextlib.rst:336 #: library/contextlib.rst:338
msgid "" msgid ""
"Note that the global side effect on :data:`sys.stdout` means that this " "Note that the global side effect on :data:`sys.stdout` means that this "
"context manager is not suitable for use in library code and most threaded " "context manager is not suitable for use in library code and most threaded "
@ -382,7 +382,7 @@ msgstr ""
"Cependant, cela reste une approche utile pour beaucoup de scripts " "Cependant, cela reste une approche utile pour beaucoup de scripts "
"utilitaires." "utilitaires."
#: library/contextlib.rst:348 #: library/contextlib.rst:350
msgid "" msgid ""
"Similar to :func:`~contextlib.redirect_stdout` but redirecting :data:`sys." "Similar to :func:`~contextlib.redirect_stdout` but redirecting :data:`sys."
"stderr` to another file or file-like object." "stderr` to another file or file-like object."
@ -390,14 +390,14 @@ msgstr ""
"Similaire à :func:`~contextlib.redirect_stdout` mais redirige :data:`sys." "Similaire à :func:`~contextlib.redirect_stdout` mais redirige :data:`sys."
"stderr` vers un autre fichier ou objet fichier-compatible." "stderr` vers un autre fichier ou objet fichier-compatible."
#: library/contextlib.rst:358 #: library/contextlib.rst:360
msgid "" msgid ""
"A base class that enables a context manager to also be used as a decorator." "A base class that enables a context manager to also be used as a decorator."
msgstr "" msgstr ""
"Une classe mère qui permet à un gestionnaire de contexte d'être aussi " "Une classe mère qui permet à un gestionnaire de contexte d'être aussi "
"utilisé comme décorateur." "utilisé comme décorateur."
#: library/contextlib.rst:360 #: library/contextlib.rst:362
msgid "" msgid ""
"Context managers inheriting from ``ContextDecorator`` have to implement " "Context managers inheriting from ``ContextDecorator`` have to implement "
"``__enter__`` and ``__exit__`` as normal. ``__exit__`` retains its optional " "``__enter__`` and ``__exit__`` as normal. ``__exit__`` retains its optional "
@ -408,7 +408,7 @@ msgstr ""
"conserve sa gestion optionnelle des exceptions même lors de l'utilisation en " "conserve sa gestion optionnelle des exceptions même lors de l'utilisation en "
"décorateur." "décorateur."
#: library/contextlib.rst:364 #: library/contextlib.rst:366
msgid "" msgid ""
"``ContextDecorator`` is used by :func:`contextmanager`, so you get this " "``ContextDecorator`` is used by :func:`contextmanager`, so you get this "
"functionality automatically." "functionality automatically."
@ -416,22 +416,22 @@ msgstr ""
"``ContextDecorator`` est utilisé par :func:`contextmanager`, donc vous " "``ContextDecorator`` est utilisé par :func:`contextmanager`, donc vous "
"bénéficiez automatiquement de cette fonctionnalité." "bénéficiez automatiquement de cette fonctionnalité."
#: library/contextlib.rst:367 #: library/contextlib.rst:369
msgid "Example of ``ContextDecorator``::" msgid "Example of ``ContextDecorator``::"
msgstr "Exemple de ``ContextDecorator`` ::" msgstr "Exemple de ``ContextDecorator`` ::"
#: library/contextlib.rst:396 #: library/contextlib.rst:398
msgid "" msgid ""
"This change is just syntactic sugar for any construct of the following form::" "This change is just syntactic sugar for any construct of the following form::"
msgstr "" msgstr ""
"Ce changement est simplement un sucre syntaxique pour les constructions de " "Ce changement est simplement un sucre syntaxique pour les constructions de "
"la forme suivante ::" "la forme suivante ::"
#: library/contextlib.rst:402 #: library/contextlib.rst:404
msgid "``ContextDecorator`` lets you instead write::" msgid "``ContextDecorator`` lets you instead write::"
msgstr "``ContextDecorator`` vous permet d'écrire à la place ::" msgstr "``ContextDecorator`` vous permet d'écrire à la place ::"
#: library/contextlib.rst:408 #: library/contextlib.rst:410
msgid "" msgid ""
"It makes it clear that the ``cm`` applies to the whole function, rather than " "It makes it clear that the ``cm`` applies to the whole function, rather than "
"just a piece of it (and saving an indentation level is nice, too)." "just a piece of it (and saving an indentation level is nice, too)."
@ -440,7 +440,7 @@ msgstr ""
"seulement à un morceau en particulier (et gagner un niveau d'indentation est " "seulement à un morceau en particulier (et gagner un niveau d'indentation est "
"toujours appréciable)." "toujours appréciable)."
#: library/contextlib.rst:411 #: library/contextlib.rst:413
msgid "" msgid ""
"Existing context managers that already have a base class can be extended by " "Existing context managers that already have a base class can be extended by "
"using ``ContextDecorator`` as a mixin class::" "using ``ContextDecorator`` as a mixin class::"
@ -448,7 +448,7 @@ msgstr ""
"Les gestionnaires de contexte existants qui ont déjà une classe mère peuvent " "Les gestionnaires de contexte existants qui ont déjà une classe mère peuvent "
"être étendus en utilisant ``ContextDecorator`` comme une *mixin* ::" "être étendus en utilisant ``ContextDecorator`` comme une *mixin* ::"
#: library/contextlib.rst:424 #: library/contextlib.rst:426
msgid "" msgid ""
"As the decorated function must be able to be called multiple times, the " "As the decorated function must be able to be called multiple times, the "
"underlying context manager must support use in multiple :keyword:`with` " "underlying context manager must support use in multiple :keyword:`with` "
@ -461,7 +461,7 @@ msgstr ""
"construction d'origine avec de multiples instructions :keyword:`!with` au " "construction d'origine avec de multiples instructions :keyword:`!with` au "
"sein de la fonction doit être utilisée." "sein de la fonction doit être utilisée."
#: library/contextlib.rst:434 #: library/contextlib.rst:436
#, fuzzy #, fuzzy
msgid "" msgid ""
"Similar to :class:`ContextDecorator` but only for asynchronous functions." "Similar to :class:`ContextDecorator` but only for asynchronous functions."
@ -469,12 +469,12 @@ msgstr ""
"Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte " "Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte "
"asynchrone." "asynchrone."
#: library/contextlib.rst:436 #: library/contextlib.rst:438
#, fuzzy #, fuzzy
msgid "Example of ``AsyncContextDecorator``::" msgid "Example of ``AsyncContextDecorator``::"
msgstr "Exemple de ``ContextDecorator`` ::" msgstr "Exemple de ``ContextDecorator`` ::"
#: library/contextlib.rst:473 #: library/contextlib.rst:475
msgid "" msgid ""
"A context manager that is designed to make it easy to programmatically " "A context manager that is designed to make it easy to programmatically "
"combine other context managers and cleanup functions, especially those that " "combine other context managers and cleanup functions, especially those that "
@ -485,7 +485,7 @@ msgstr ""
"nettoyage, spécifiquement ceux qui sont optionnels ou pilotés par des " "nettoyage, spécifiquement ceux qui sont optionnels ou pilotés par des "
"données d'entrée." "données d'entrée."
#: library/contextlib.rst:477 #: library/contextlib.rst:479
msgid "" msgid ""
"For example, a set of files may easily be handled in a single with statement " "For example, a set of files may easily be handled in a single with statement "
"as follows::" "as follows::"
@ -493,7 +493,7 @@ msgstr ""
"Par exemple, un ensemble de fichiers peut facilement être géré dans une " "Par exemple, un ensemble de fichiers peut facilement être géré dans une "
"unique instruction *with* comme suit ::" "unique instruction *with* comme suit ::"
#: library/contextlib.rst:486 #: library/contextlib.rst:488
msgid "" msgid ""
"Each instance maintains a stack of registered callbacks that are called in " "Each instance maintains a stack of registered callbacks that are called in "
"reverse order when the instance is closed (either explicitly or implicitly " "reverse order when the instance is closed (either explicitly or implicitly "
@ -506,7 +506,7 @@ msgstr ""
"que ces fonctions ne sont *pas* invoquées implicitement quand l'instance de " "que ces fonctions ne sont *pas* invoquées implicitement quand l'instance de "
"la pile de contextes est collectée par le ramasse-miettes." "la pile de contextes est collectée par le ramasse-miettes."
#: library/contextlib.rst:491 #: library/contextlib.rst:493
msgid "" msgid ""
"This stack model is used so that context managers that acquire their " "This stack model is used so that context managers that acquire their "
"resources in their ``__init__`` method (such as file objects) can be handled " "resources in their ``__init__`` method (such as file objects) can be handled "
@ -516,7 +516,7 @@ msgstr ""
"acquièrent leurs ressources dans leur méthode ``__init__`` (tels que les " "acquièrent leurs ressources dans leur méthode ``__init__`` (tels que les "
"objets-fichiers) puissent être gérés correctement." "objets-fichiers) puissent être gérés correctement."
#: library/contextlib.rst:495 #: library/contextlib.rst:497
msgid "" msgid ""
"Since registered callbacks are invoked in the reverse order of registration, " "Since registered callbacks are invoked in the reverse order of registration, "
"this ends up behaving as if multiple nested :keyword:`with` statements had " "this ends up behaving as if multiple nested :keyword:`with` statements had "
@ -532,7 +532,7 @@ msgstr ""
"de rappel intérieure supprime ou remplace une exception, alors les fonctions " "de rappel intérieure supprime ou remplace une exception, alors les fonctions "
"extérieures reçoivent des arguments basés sur ce nouvel état." "extérieures reçoivent des arguments basés sur ce nouvel état."
#: library/contextlib.rst:502 #: library/contextlib.rst:504
msgid "" msgid ""
"This is a relatively low level API that takes care of the details of " "This is a relatively low level API that takes care of the details of "
"correctly unwinding the stack of exit callbacks. It provides a suitable " "correctly unwinding the stack of exit callbacks. It provides a suitable "
@ -544,7 +544,7 @@ msgstr ""
"pour des gestionnaires de contexte de plus haut niveau qui manipulent la " "pour des gestionnaires de contexte de plus haut niveau qui manipulent la "
"pile de sortie de manière spécifique à l'application." "pile de sortie de manière spécifique à l'application."
#: library/contextlib.rst:511 #: library/contextlib.rst:513
msgid "" msgid ""
"Enters a new context manager and adds its :meth:`__exit__` method to the " "Enters a new context manager and adds its :meth:`__exit__` method to the "
"callback stack. The return value is the result of the context manager's own :" "callback stack. The return value is the result of the context manager's own :"
@ -554,7 +554,7 @@ msgstr ""
"`__exit__` à la pile d'appels. La valeur de retour est le résultat de la " "`__exit__` à la pile d'appels. La valeur de retour est le résultat de la "
"méthode :meth:`__enter__` du gestionnaire de contexte donné." "méthode :meth:`__enter__` du gestionnaire de contexte donné."
#: library/contextlib.rst:515 #: library/contextlib.rst:517
msgid "" msgid ""
"These context managers may suppress exceptions just as they normally would " "These context managers may suppress exceptions just as they normally would "
"if used directly as part of a :keyword:`with` statement." "if used directly as part of a :keyword:`with` statement."
@ -563,13 +563,13 @@ msgstr ""
"feraient normalement s'ils étaient utilisés directement derrière une " "feraient normalement s'ils étaient utilisés directement derrière une "
"instruction :keyword:`with`." "instruction :keyword:`with`."
#: library/contextlib.rst:520 #: library/contextlib.rst:522
msgid "Adds a context manager's :meth:`__exit__` method to the callback stack." msgid "Adds a context manager's :meth:`__exit__` method to the callback stack."
msgstr "" msgstr ""
"Ajoute la méthode :meth:`__exit__` d'un gestionnaire de contexte à la pile " "Ajoute la méthode :meth:`__exit__` d'un gestionnaire de contexte à la pile "
"d'appels." "d'appels."
#: library/contextlib.rst:522 #: library/contextlib.rst:524
msgid "" msgid ""
"As ``__enter__`` is *not* invoked, this method can be used to cover part of " "As ``__enter__`` is *not* invoked, this method can be used to cover part of "
"an :meth:`__enter__` implementation with a context manager's own :meth:" "an :meth:`__enter__` implementation with a context manager's own :meth:"
@ -579,7 +579,7 @@ msgstr ""
"pour couvrir une partie de l'implémentation de :meth:`__enter__` avec la " "pour couvrir une partie de l'implémentation de :meth:`__enter__` avec la "
"propre méthode :meth:`__exit__` d'un gestionnaire de contexte." "propre méthode :meth:`__exit__` d'un gestionnaire de contexte."
#: library/contextlib.rst:526 #: library/contextlib.rst:528
msgid "" msgid ""
"If passed an object that is not a context manager, this method assumes it is " "If passed an object that is not a context manager, this method assumes it is "
"a callback with the same signature as a context manager's :meth:`__exit__` " "a callback with the same signature as a context manager's :meth:`__exit__` "
@ -590,7 +590,7 @@ msgstr ""
"meth:`__exit__` des gestionnaires de contexte pour l'ajouter directement à " "meth:`__exit__` des gestionnaires de contexte pour l'ajouter directement à "
"la pile d'appels." "la pile d'appels."
#: library/contextlib.rst:530 #: library/contextlib.rst:532
msgid "" msgid ""
"By returning true values, these callbacks can suppress exceptions the same " "By returning true values, these callbacks can suppress exceptions the same "
"way context manager :meth:`__exit__` methods can." "way context manager :meth:`__exit__` methods can."
@ -599,7 +599,7 @@ msgstr ""
"exceptions de la même manière que le peuvent les méthodes :meth:`__exit__` " "exceptions de la même manière que le peuvent les méthodes :meth:`__exit__` "
"des gestionnaires de contexte." "des gestionnaires de contexte."
#: library/contextlib.rst:533 #: library/contextlib.rst:535
msgid "" msgid ""
"The passed in object is returned from the function, allowing this method to " "The passed in object is returned from the function, allowing this method to "
"be used as a function decorator." "be used as a function decorator."
@ -607,7 +607,7 @@ msgstr ""
"L'objet passé en paramètre est renvoyé par la fonction, ce qui permet à la " "L'objet passé en paramètre est renvoyé par la fonction, ce qui permet à la "
"méthode d'être utilisée comme décorateur de fonction." "méthode d'être utilisée comme décorateur de fonction."
#: library/contextlib.rst:538 #: library/contextlib.rst:540
msgid "" msgid ""
"Accepts an arbitrary callback function and arguments and adds it to the " "Accepts an arbitrary callback function and arguments and adds it to the "
"callback stack." "callback stack."
@ -615,7 +615,7 @@ msgstr ""
"Accepte une fonction arbitraire et ses arguments et les ajoute à la pile des " "Accepte une fonction arbitraire et ses arguments et les ajoute à la pile des "
"fonctions de rappel." "fonctions de rappel."
#: library/contextlib.rst:541 #: library/contextlib.rst:543
msgid "" msgid ""
"Unlike the other methods, callbacks added this way cannot suppress " "Unlike the other methods, callbacks added this way cannot suppress "
"exceptions (as they are never passed the exception details)." "exceptions (as they are never passed the exception details)."
@ -624,7 +624,7 @@ msgstr ""
"cette manière ne peuvent pas supprimer les exceptions (puisqu'elles ne " "cette manière ne peuvent pas supprimer les exceptions (puisqu'elles ne "
"reçoivent jamais les détails de l'exception)." "reçoivent jamais les détails de l'exception)."
#: library/contextlib.rst:544 #: library/contextlib.rst:546
msgid "" msgid ""
"The passed in callback is returned from the function, allowing this method " "The passed in callback is returned from the function, allowing this method "
"to be used as a function decorator." "to be used as a function decorator."
@ -632,7 +632,7 @@ msgstr ""
"La fonction passée en paramètre est renvoyée par la méthode, ce qui permet à " "La fonction passée en paramètre est renvoyée par la méthode, ce qui permet à "
"la méthode d'être utilisée comme décorateur de fonction." "la méthode d'être utilisée comme décorateur de fonction."
#: library/contextlib.rst:549 #: library/contextlib.rst:551
msgid "" msgid ""
"Transfers the callback stack to a fresh :class:`ExitStack` instance and " "Transfers the callback stack to a fresh :class:`ExitStack` instance and "
"returns it. No callbacks are invoked by this operation - instead, they will " "returns it. No callbacks are invoked by this operation - instead, they will "
@ -644,7 +644,7 @@ msgstr ""
"la place, elles sont dorénavant invoquées quand la nouvelle pile sera close " "la place, elles sont dorénavant invoquées quand la nouvelle pile sera close "
"(soit explicitement soit implicitement à la fin d'un bloc :keyword:`with`)." "(soit explicitement soit implicitement à la fin d'un bloc :keyword:`with`)."
#: library/contextlib.rst:554 #: library/contextlib.rst:556
msgid "" msgid ""
"For example, a group of files can be opened as an \"all or nothing\" " "For example, a group of files can be opened as an \"all or nothing\" "
"operation as follows::" "operation as follows::"
@ -652,7 +652,7 @@ msgstr ""
"Par exemple, un groupe de fichiers peut être ouvert comme une opération " "Par exemple, un groupe de fichiers peut être ouvert comme une opération "
 tout ou rien » comme suit ::"  tout ou rien » comme suit ::"
#: library/contextlib.rst:568 #: library/contextlib.rst:570
msgid "" msgid ""
"Immediately unwinds the callback stack, invoking callbacks in the reverse " "Immediately unwinds the callback stack, invoking callbacks in the reverse "
"order of registration. For any context managers and exit callbacks " "order of registration. For any context managers and exit callbacks "
@ -663,7 +663,7 @@ msgstr ""
"et fonction de sortie enregistré, les arguments passés indiqueront qu'aucune " "et fonction de sortie enregistré, les arguments passés indiqueront qu'aucune "
"exception n'est survenue." "exception n'est survenue."
#: library/contextlib.rst:575 #: library/contextlib.rst:577
msgid "" msgid ""
"An :ref:`asynchronous context manager <async-context-managers>`, similar to :" "An :ref:`asynchronous context manager <async-context-managers>`, similar to :"
"class:`ExitStack`, that supports combining both synchronous and asynchronous " "class:`ExitStack`, that supports combining both synchronous and asynchronous "
@ -674,7 +674,7 @@ msgstr ""
"de contexte synchrones et asynchrones, ainsi que la gestion de coroutines " "de contexte synchrones et asynchrones, ainsi que la gestion de coroutines "
"pour la logique de nettoyage." "pour la logique de nettoyage."
#: library/contextlib.rst:580 #: library/contextlib.rst:582
msgid "" msgid ""
"The :meth:`close` method is not implemented, :meth:`aclose` must be used " "The :meth:`close` method is not implemented, :meth:`aclose` must be used "
"instead." "instead."
@ -682,14 +682,14 @@ msgstr ""
"La méthode :meth:`close` n'est pas implémentée, :meth:`aclose` doit plutôt " "La méthode :meth:`close` n'est pas implémentée, :meth:`aclose` doit plutôt "
"être utilisée." "être utilisée."
#: library/contextlib.rst:585 #: library/contextlib.rst:587
msgid "" msgid ""
"Similar to :meth:`enter_context` but expects an asynchronous context manager." "Similar to :meth:`enter_context` but expects an asynchronous context manager."
msgstr "" msgstr ""
"Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte " "Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte "
"asynchrone." "asynchrone."
#: library/contextlib.rst:590 #: library/contextlib.rst:592
msgid "" msgid ""
"Similar to :meth:`push` but expects either an asynchronous context manager " "Similar to :meth:`push` but expects either an asynchronous context manager "
"or a coroutine function." "or a coroutine function."
@ -697,24 +697,24 @@ msgstr ""
"Similaire à :meth:`push` mais attend soit un gestionnaire de contexte " "Similaire à :meth:`push` mais attend soit un gestionnaire de contexte "
"asynchrone soit une fonction coroutine." "asynchrone soit une fonction coroutine."
#: library/contextlib.rst:595 #: library/contextlib.rst:597
msgid "Similar to :meth:`callback` but expects a coroutine function." msgid "Similar to :meth:`callback` but expects a coroutine function."
msgstr "Similaire à :meth:`callback` mais attend une fonction coroutine." msgstr "Similaire à :meth:`callback` mais attend une fonction coroutine."
#: library/contextlib.rst:599 #: library/contextlib.rst:601
msgid "Similar to :meth:`close` but properly handles awaitables." msgid "Similar to :meth:`close` but properly handles awaitables."
msgstr "" msgstr ""
"Similaire à :meth:`close` mais gère correctement les tâches asynchrones." "Similaire à :meth:`close` mais gère correctement les tâches asynchrones."
#: library/contextlib.rst:601 #: library/contextlib.rst:603
msgid "Continuing the example for :func:`asynccontextmanager`::" msgid "Continuing the example for :func:`asynccontextmanager`::"
msgstr "En continuité de l'exemple de :func:`asynccontextmanager` ::" msgstr "En continuité de l'exemple de :func:`asynccontextmanager` ::"
#: library/contextlib.rst:613 #: library/contextlib.rst:615
msgid "Examples and Recipes" msgid "Examples and Recipes"
msgstr "Exemples et Recettes" msgstr "Exemples et Recettes"
#: library/contextlib.rst:615 #: library/contextlib.rst:617
msgid "" msgid ""
"This section describes some examples and recipes for making effective use of " "This section describes some examples and recipes for making effective use of "
"the tools provided by :mod:`contextlib`." "the tools provided by :mod:`contextlib`."
@ -722,11 +722,11 @@ msgstr ""
"Cette section décrit quelques exemples et recettes pour décrire une " "Cette section décrit quelques exemples et recettes pour décrire une "
"utilisation réelle des outils fournis par :mod:`contextlib`." "utilisation réelle des outils fournis par :mod:`contextlib`."
#: library/contextlib.rst:620 #: library/contextlib.rst:622
msgid "Supporting a variable number of context managers" msgid "Supporting a variable number of context managers"
msgstr "Gérer un nombre variable de gestionnaires de contexte" msgstr "Gérer un nombre variable de gestionnaires de contexte"
#: library/contextlib.rst:622 #: library/contextlib.rst:624
msgid "" msgid ""
"The primary use case for :class:`ExitStack` is the one given in the class " "The primary use case for :class:`ExitStack` is the one given in the class "
"documentation: supporting a variable number of context managers and other " "documentation: supporting a variable number of context managers and other "
@ -743,7 +743,7 @@ msgstr ""
"collection spécifique de fichiers de l'utilisateur), ou de certains " "collection spécifique de fichiers de l'utilisateur), ou de certains "
"gestionnaires de contexte qui peuvent être optionnels ::" "gestionnaires de contexte qui peuvent être optionnels ::"
#: library/contextlib.rst:637 #: library/contextlib.rst:639
msgid "" msgid ""
"As shown, :class:`ExitStack` also makes it quite easy to use :keyword:`with` " "As shown, :class:`ExitStack` also makes it quite easy to use :keyword:`with` "
"statements to manage arbitrary resources that don't natively support the " "statements to manage arbitrary resources that don't natively support the "
@ -753,11 +753,11 @@ msgstr ""
"instructions :keyword:`with` pour gérer des ressources arbitraires qui ne " "instructions :keyword:`with` pour gérer des ressources arbitraires qui ne "
"gèrent pas nativement le protocole des gestionnaires de contexte." "gèrent pas nativement le protocole des gestionnaires de contexte."
#: library/contextlib.rst:643 #: library/contextlib.rst:645
msgid "Catching exceptions from ``__enter__`` methods" msgid "Catching exceptions from ``__enter__`` methods"
msgstr "Attraper des exceptions depuis les méthodes ``__enter__``" msgstr "Attraper des exceptions depuis les méthodes ``__enter__``"
#: library/contextlib.rst:645 #: library/contextlib.rst:647
msgid "" msgid ""
"It is occasionally desirable to catch exceptions from an ``__enter__`` " "It is occasionally desirable to catch exceptions from an ``__enter__`` "
"method implementation, *without* inadvertently catching exceptions from the :" "method implementation, *without* inadvertently catching exceptions from the :"
@ -772,7 +772,7 @@ msgstr ""
"`ExitStack`, les étapes du protocole des gestionnaires de contexte peuvent " "`ExitStack`, les étapes du protocole des gestionnaires de contexte peuvent "
"être légèrement séparées pour permettre le code suivant ::" "être légèrement séparées pour permettre le code suivant ::"
#: library/contextlib.rst:660 #: library/contextlib.rst:662
msgid "" msgid ""
"Actually needing to do this is likely to indicate that the underlying API " "Actually needing to do this is likely to indicate that the underlying API "
"should be providing a direct resource management interface for use with :" "should be providing a direct resource management interface for use with :"
@ -791,11 +791,11 @@ msgstr ""
"gestion de plusieurs situations qui ne peuvent pas être traitées directement " "gestion de plusieurs situations qui ne peuvent pas être traitées directement "
"dans une instruction :keyword:`with`." "dans une instruction :keyword:`with`."
#: library/contextlib.rst:670 #: library/contextlib.rst:672
msgid "Cleaning up in an ``__enter__`` implementation" msgid "Cleaning up in an ``__enter__`` implementation"
msgstr "Nettoyer dans une méthode ``__enter__``" msgstr "Nettoyer dans une méthode ``__enter__``"
#: library/contextlib.rst:672 #: library/contextlib.rst:674
msgid "" msgid ""
"As noted in the documentation of :meth:`ExitStack.push`, this method can be " "As noted in the documentation of :meth:`ExitStack.push`, this method can be "
"useful in cleaning up an already allocated resource if later steps in the :" "useful in cleaning up an already allocated resource if later steps in the :"
@ -805,7 +805,7 @@ msgstr ""
"peut être utile pour nettoyer une ressource déjà allouée si les dernières " "peut être utile pour nettoyer une ressource déjà allouée si les dernières "
"étapes de l'implémentation de :meth:`__enter__` échouent." "étapes de l'implémentation de :meth:`__enter__` échouent."
#: library/contextlib.rst:676 #: library/contextlib.rst:678
msgid "" msgid ""
"Here's an example of doing this for a context manager that accepts resource " "Here's an example of doing this for a context manager that accepts resource "
"acquisition and release functions, along with an optional validation " "acquisition and release functions, along with an optional validation "
@ -815,11 +815,11 @@ msgstr ""
"d'acquisition de ressources et de libération, avec une méthode de validation " "d'acquisition de ressources et de libération, avec une méthode de validation "
"optionnelle, et qui les adapte au protocole des gestionnaires de contexte ::" "optionnelle, et qui les adapte au protocole des gestionnaires de contexte ::"
#: library/contextlib.rst:716 #: library/contextlib.rst:718
msgid "Replacing any use of ``try-finally`` and flag variables" msgid "Replacing any use of ``try-finally`` and flag variables"
msgstr "Remplacer un ``try-finally`` avec une option variable" msgstr "Remplacer un ``try-finally`` avec une option variable"
#: library/contextlib.rst:718 #: library/contextlib.rst:720
msgid "" msgid ""
"A pattern you will sometimes see is a ``try-finally`` statement with a flag " "A pattern you will sometimes see is a ``try-finally`` statement with a flag "
"variable to indicate whether or not the body of the ``finally`` clause " "variable to indicate whether or not the body of the ``finally`` clause "
@ -831,7 +831,7 @@ msgstr ""
"ou non. Dans sa forme la plus simple (qui ne peut pas déjà être gérée avec " "ou non. Dans sa forme la plus simple (qui ne peut pas déjà être gérée avec "
"juste une clause ``except``), cela ressemble à ::" "juste une clause ``except``), cela ressemble à ::"
#: library/contextlib.rst:732 #: library/contextlib.rst:734
msgid "" msgid ""
"As with any ``try`` statement based code, this can cause problems for " "As with any ``try`` statement based code, this can cause problems for "
"development and review, because the setup code and the cleanup code can end " "development and review, because the setup code and the cleanup code can end "
@ -842,7 +842,7 @@ msgstr ""
"codes d'installation et de nettoyage peuvent finir par être séparés par des " "codes d'installation et de nettoyage peuvent finir par être séparés par des "
"sections de code arbitrairement longues." "sections de code arbitrairement longues."
#: library/contextlib.rst:736 #: library/contextlib.rst:738
msgid "" msgid ""
":class:`ExitStack` makes it possible to instead register a callback for " ":class:`ExitStack` makes it possible to instead register a callback for "
"execution at the end of a ``with`` statement, and then later decide to skip " "execution at the end of a ``with`` statement, and then later decide to skip "
@ -852,7 +852,7 @@ msgstr ""
"rappel pour être exécutée à la fin d'une instruction ``with``, et décider " "rappel pour être exécutée à la fin d'une instruction ``with``, et décider "
"ensuite de passer l'exécution de cet appel ::" "ensuite de passer l'exécution de cet appel ::"
#: library/contextlib.rst:748 #: library/contextlib.rst:750
msgid "" msgid ""
"This allows the intended cleanup up behaviour to be made explicit up front, " "This allows the intended cleanup up behaviour to be made explicit up front, "
"rather than requiring a separate flag variable." "rather than requiring a separate flag variable."
@ -860,7 +860,7 @@ msgstr ""
"Cela permet de rendre explicite dès le départ le comportement de nettoyage " "Cela permet de rendre explicite dès le départ le comportement de nettoyage "
"attendu, plutôt que de nécessiter une option séparée." "attendu, plutôt que de nécessiter une option séparée."
#: library/contextlib.rst:751 #: library/contextlib.rst:753
msgid "" msgid ""
"If a particular application uses this pattern a lot, it can be simplified " "If a particular application uses this pattern a lot, it can be simplified "
"even further by means of a small helper class::" "even further by means of a small helper class::"
@ -868,7 +868,7 @@ msgstr ""
"Si une application particulière utilise beaucoup ce modèle, cela peut-être " "Si une application particulière utilise beaucoup ce modèle, cela peut-être "
"simplifié encore plus au moyen d'une petite classe d'aide ::" "simplifié encore plus au moyen d'une petite classe d'aide ::"
#: library/contextlib.rst:769 #: library/contextlib.rst:771
msgid "" msgid ""
"If the resource cleanup isn't already neatly bundled into a standalone " "If the resource cleanup isn't already neatly bundled into a standalone "
"function, then it is still possible to use the decorator form of :meth:" "function, then it is still possible to use the decorator form of :meth:"
@ -879,7 +879,7 @@ msgstr ""
"`ExitStack.callback` pour déclarer la fonction de nettoyage de ressource en " "`ExitStack.callback` pour déclarer la fonction de nettoyage de ressource en "
"avance ::" "avance ::"
#: library/contextlib.rst:784 #: library/contextlib.rst:786
msgid "" msgid ""
"Due to the way the decorator protocol works, a callback function declared " "Due to the way the decorator protocol works, a callback function declared "
"this way cannot take any parameters. Instead, any resources to be released " "this way cannot take any parameters. Instead, any resources to be released "
@ -890,12 +890,12 @@ msgstr ""
"doivent être récupérées depuis l'extérieur comme des variables de fermeture " "doivent être récupérées depuis l'extérieur comme des variables de fermeture "
"(*closure*)." "(*closure*)."
#: library/contextlib.rst:790 #: library/contextlib.rst:792
msgid "Using a context manager as a function decorator" msgid "Using a context manager as a function decorator"
msgstr "" msgstr ""
"Utiliser un gestionnaire de contexte en tant que décorateur de fonction" "Utiliser un gestionnaire de contexte en tant que décorateur de fonction"
#: library/contextlib.rst:792 #: library/contextlib.rst:794
msgid "" msgid ""
":class:`ContextDecorator` makes it possible to use a context manager in both " ":class:`ContextDecorator` makes it possible to use a context manager in both "
"an ordinary ``with`` statement and also as a function decorator." "an ordinary ``with`` statement and also as a function decorator."
@ -904,7 +904,7 @@ msgstr ""
"contexte à la fois ordinairement avec une instruction ``with`` ou comme un " "contexte à la fois ordinairement avec une instruction ``with`` ou comme un "
"décorateur de fonction." "décorateur de fonction."
#: library/contextlib.rst:795 #: library/contextlib.rst:797
msgid "" msgid ""
"For example, it is sometimes useful to wrap functions or groups of " "For example, it is sometimes useful to wrap functions or groups of "
"statements with a logger that can track the time of entry and time of exit. " "statements with a logger that can track the time of entry and time of exit. "
@ -919,17 +919,17 @@ msgstr ""
"`ContextDecorator` fournit les deux fonctionnalités en une seule " "`ContextDecorator` fournit les deux fonctionnalités en une seule "
"définition ::" "définition ::"
#: library/contextlib.rst:816 #: library/contextlib.rst:818
msgid "Instances of this class can be used as both a context manager::" msgid "Instances of this class can be used as both a context manager::"
msgstr "" msgstr ""
"Les instances de cette classe peuvent être utilisées comme gestionnaires de " "Les instances de cette classe peuvent être utilisées comme gestionnaires de "
"contexte ::" "contexte ::"
#: library/contextlib.rst:822 #: library/contextlib.rst:824
msgid "And also as a function decorator::" msgid "And also as a function decorator::"
msgstr "Et comme décorateurs de fonctions ::" msgstr "Et comme décorateurs de fonctions ::"
#: library/contextlib.rst:829 #: library/contextlib.rst:831
msgid "" msgid ""
"Note that there is one additional limitation when using context managers as " "Note that there is one additional limitation when using context managers as "
"function decorators: there's no way to access the return value of :meth:" "function decorators: there's no way to access the return value of :meth:"
@ -941,11 +941,11 @@ msgstr ""
"de retour de :meth:`__enter__`. Si cette valeur est nécessaire, il faut " "de retour de :meth:`__enter__`. Si cette valeur est nécessaire, il faut "
"utiliser explicitement une instruction ``with``." "utiliser explicitement une instruction ``with``."
#: library/contextlib.rst:837 #: library/contextlib.rst:839
msgid ":pep:`343` - The \"with\" statement" msgid ":pep:`343` - The \"with\" statement"
msgstr ":pep:`343` - The \"with\" statement" msgstr ":pep:`343` - The \"with\" statement"
#: library/contextlib.rst:837 #: library/contextlib.rst:839
msgid "" msgid ""
"The specification, background, and examples for the Python :keyword:`with` " "The specification, background, and examples for the Python :keyword:`with` "
"statement." "statement."
@ -953,11 +953,11 @@ msgstr ""
"La spécification, les motivations et des exemples de l'instruction :keyword:" "La spécification, les motivations et des exemples de l'instruction :keyword:"
"`with` en Python." "`with` en Python."
#: library/contextlib.rst:843 #: library/contextlib.rst:845
msgid "Single use, reusable and reentrant context managers" msgid "Single use, reusable and reentrant context managers"
msgstr "Gestionnaires de contexte à usage unique, réutilisables et réentrants" msgstr "Gestionnaires de contexte à usage unique, réutilisables et réentrants"
#: library/contextlib.rst:845 #: library/contextlib.rst:847
msgid "" msgid ""
"Most context managers are written in a way that means they can only be used " "Most context managers are written in a way that means they can only be used "
"effectively in a :keyword:`with` statement once. These single use context " "effectively in a :keyword:`with` statement once. These single use context "
@ -970,7 +970,7 @@ msgstr ""
"chaque fois qu'ils sont utilisés — tenter de les utiliser une seconde fois " "chaque fois qu'ils sont utilisés — tenter de les utiliser une seconde fois "
"lève une exception ou ne fonctionne pas correctement." "lève une exception ou ne fonctionne pas correctement."
#: library/contextlib.rst:851 #: library/contextlib.rst:853
msgid "" msgid ""
"This common limitation means that it is generally advisable to create " "This common limitation means that it is generally advisable to create "
"context managers directly in the header of the :keyword:`with` statement " "context managers directly in the header of the :keyword:`with` statement "
@ -981,7 +981,7 @@ msgstr ""
"`with` où ils sont utilisés (comme montré dans tous les exemples " "`with` où ils sont utilisés (comme montré dans tous les exemples "
"d'utilisation au-dessus)." "d'utilisation au-dessus)."
#: library/contextlib.rst:855 #: library/contextlib.rst:857
msgid "" msgid ""
"Files are an example of effectively single use context managers, since the " "Files are an example of effectively single use context managers, since the "
"first :keyword:`with` statement will close the file, preventing any further " "first :keyword:`with` statement will close the file, preventing any further "
@ -992,7 +992,7 @@ msgstr ""
"`with` ferme le fichier, empêchant d'autres opérations d'entrée/sortie " "`with` ferme le fichier, empêchant d'autres opérations d'entrée/sortie "
"d'être exécutées sur ce fichier." "d'être exécutées sur ce fichier."
#: library/contextlib.rst:859 #: library/contextlib.rst:861
msgid "" msgid ""
"Context managers created using :func:`contextmanager` are also single use " "Context managers created using :func:`contextmanager` are also single use "
"context managers, and will complain about the underlying generator failing " "context managers, and will complain about the underlying generator failing "
@ -1002,11 +1002,11 @@ msgstr ""
"usage unique, et se plaindront du fait que le générateur sous-jacent ne " "usage unique, et se plaindront du fait que le générateur sous-jacent ne "
"produise plus de valeur si vous essayez de les utiliser une seconde fois ::" "produise plus de valeur si vous essayez de les utiliser une seconde fois ::"
#: library/contextlib.rst:887 #: library/contextlib.rst:889
msgid "Reentrant context managers" msgid "Reentrant context managers"
msgstr "Gestionnaires de contexte réentrants" msgstr "Gestionnaires de contexte réentrants"
#: library/contextlib.rst:889 #: library/contextlib.rst:891
msgid "" msgid ""
"More sophisticated context managers may be \"reentrant\". These context " "More sophisticated context managers may be \"reentrant\". These context "
"managers can not only be used in multiple :keyword:`with` statements, but " "managers can not only be used in multiple :keyword:`with` statements, but "
@ -1019,7 +1019,7 @@ msgstr ""
"l'intérieur* d'une instruction :keyword:`!with` qui utilise déjà ce même " "l'intérieur* d'une instruction :keyword:`!with` qui utilise déjà ce même "
"gestionnaire de contexte." "gestionnaire de contexte."
#: library/contextlib.rst:894 #: library/contextlib.rst:896
msgid "" msgid ""
":class:`threading.RLock` is an example of a reentrant context manager, as " ":class:`threading.RLock` is an example of a reentrant context manager, as "
"are :func:`suppress` and :func:`redirect_stdout`. Here's a very simple " "are :func:`suppress` and :func:`redirect_stdout`. Here's a very simple "
@ -1029,7 +1029,7 @@ msgstr ""
"réentrant, comme le sont aussi :func:`suppress` et :func:`redirect_stdout`. " "réentrant, comme le sont aussi :func:`suppress` et :func:`redirect_stdout`. "
"Voici un très simple exemple d'utilisation réentrante ::" "Voici un très simple exemple d'utilisation réentrante ::"
#: library/contextlib.rst:913 #: library/contextlib.rst:915
msgid "" msgid ""
"Real world examples of reentrancy are more likely to involve multiple " "Real world examples of reentrancy are more likely to involve multiple "
"functions calling each other and hence be far more complicated than this " "functions calling each other and hence be far more complicated than this "
@ -1039,7 +1039,7 @@ msgstr ""
"fonctions s'entre-appelant, et donc être bien plus compliqués que cet " "fonctions s'entre-appelant, et donc être bien plus compliqués que cet "
"exemple." "exemple."
#: library/contextlib.rst:917 #: library/contextlib.rst:919
msgid "" msgid ""
"Note also that being reentrant is *not* the same thing as being thread " "Note also that being reentrant is *not* the same thing as being thread "
"safe. :func:`redirect_stdout`, for example, is definitely not thread safe, " "safe. :func:`redirect_stdout`, for example, is definitely not thread safe, "
@ -1051,11 +1051,11 @@ msgstr ""
"puisqu'il effectue des changements globaux sur l'état du système en " "puisqu'il effectue des changements globaux sur l'état du système en "
"branchant :data:`sys.stdout` sur différents flux." "branchant :data:`sys.stdout` sur différents flux."
#: library/contextlib.rst:926 #: library/contextlib.rst:928
msgid "Reusable context managers" msgid "Reusable context managers"
msgstr "Gestionnaires de contexte réutilisables" msgstr "Gestionnaires de contexte réutilisables"
#: library/contextlib.rst:928 #: library/contextlib.rst:930
msgid "" msgid ""
"Distinct from both single use and reentrant context managers are \"reusable" "Distinct from both single use and reentrant context managers are \"reusable"
"\" context managers (or, to be completely explicit, \"reusable, but not " "\" context managers (or, to be completely explicit, \"reusable, but not "
@ -1073,7 +1073,7 @@ msgstr ""
"contexte référencée a déjà été utilisée dans une instruction *with* " "contexte référencée a déjà été utilisée dans une instruction *with* "
"englobante." "englobante."
#: library/contextlib.rst:935 #: library/contextlib.rst:937
msgid "" msgid ""
":class:`threading.Lock` is an example of a reusable, but not reentrant, " ":class:`threading.Lock` is an example of a reusable, but not reentrant, "
"context manager (for a reentrant lock, it is necessary to use :class:" "context manager (for a reentrant lock, it is necessary to use :class:"
@ -1083,7 +1083,7 @@ msgstr ""
"réutilisable mais pas réentrant (pour un verrou réentrant, il faut à la " "réutilisable mais pas réentrant (pour un verrou réentrant, il faut à la "
"place utiliser :class:`threading.RLock`)." "place utiliser :class:`threading.RLock`)."
#: library/contextlib.rst:939 #: library/contextlib.rst:941
msgid "" msgid ""
"Another example of a reusable, but not reentrant, context manager is :class:" "Another example of a reusable, but not reentrant, context manager is :class:"
"`ExitStack`, as it invokes *all* currently registered callbacks when leaving " "`ExitStack`, as it invokes *all* currently registered callbacks when leaving "
@ -1094,7 +1094,7 @@ msgstr ""
"actuellement enregistrées en quittant l'instruction *with*, sans regarder où " "actuellement enregistrées en quittant l'instruction *with*, sans regarder où "
"ces fonctions ont été ajoutées ::" "ces fonctions ont été ajoutées ::"
#: library/contextlib.rst:970 #: library/contextlib.rst:972
msgid "" msgid ""
"As the output from the example shows, reusing a single stack object across " "As the output from the example shows, reusing a single stack object across "
"multiple with statements works correctly, but attempting to nest them will " "multiple with statements works correctly, but attempting to nest them will "
@ -1106,7 +1106,7 @@ msgstr ""
"imbriquer fait que la pile est vidée à la fin du *with* le plus imbriqué, ce " "imbriquer fait que la pile est vidée à la fin du *with* le plus imbriqué, ce "
"qui n'est probablement pas le comportement voulu." "qui n'est probablement pas le comportement voulu."
#: library/contextlib.rst:975 #: library/contextlib.rst:977
msgid "" msgid ""
"Using separate :class:`ExitStack` instances instead of reusing a single " "Using separate :class:`ExitStack` instances instead of reusing a single "
"instance avoids that problem::" "instance avoids that problem::"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2019-02-21 17:18+0100\n" "PO-Revision-Date: 2019-02-21 17:18+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -127,9 +127,10 @@ msgstr ""
"ou l'ensemble de composants copiés." "ou l'ensemble de composants copiés."
#: library/copy.rst:62 #: library/copy.rst:62
#, fuzzy
msgid "" msgid ""
"This module does not copy types like module, method, stack trace, stack " "This module does not copy types like module, method, stack trace, stack "
"frame, file, socket, window, array, or any similar types. It does \"copy\" " "frame, file, socket, window, or any similar types. It does \"copy\" "
"functions and classes (shallow and deeply), by returning the original object " "functions and classes (shallow and deeply), by returning the original object "
"unchanged; this is compatible with the way these are treated by the :mod:" "unchanged; this is compatible with the way these are treated by the :mod:"
"`pickle` module." "`pickle` module."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-11-04 18:14+0100\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2019-12-11 11:26+0100\n" "PO-Revision-Date: 2019-12-11 11:26+0100\n"
"Last-Translator: Antoine Wecxsteen\n" "Last-Translator: Antoine Wecxsteen\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1308,7 +1308,7 @@ msgstr ""
"majuscules) ::" "majuscules) ::"
#: library/enum.rst:1155 #: library/enum.rst:1155
msgid "This behavior is deprecated and will be removed in 3.12." msgid "This behavior is deprecated and will be removed in 3.11."
msgstr "" msgstr ""
#: library/enum.rst:1161 #: library/enum.rst:1161

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-02-06 18:15+0100\n" "PO-Revision-Date: 2021-02-06 18:15+0100\n"
"Last-Translator: Antoine Wecxsteen\n" "Last-Translator: Antoine Wecxsteen\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -63,7 +63,7 @@ msgstr ""
"Comme elle ne nettoie jamais les anciennes entrées, elle est plus simple et " "Comme elle ne nettoie jamais les anciennes entrées, elle est plus simple et "
"plus rapide que :func:`lru_cache()` avec une limite." "plus rapide que :func:`lru_cache()` avec une limite."
#: library/functools.rst:258 #: library/functools.rst:264
msgid "For example::" msgid "For example::"
msgstr "Par exemple ::" msgstr "Par exemple ::"
@ -75,7 +75,7 @@ msgid ""
"computed properties of instances that are otherwise effectively immutable." "computed properties of instances that are otherwise effectively immutable."
msgstr "" msgstr ""
#: library/functools.rst:127 library/functools.rst:350 #: library/functools.rst:127 library/functools.rst:356
msgid "Example::" msgid "Example::"
msgstr "Exemple ::" msgstr "Exemple ::"
@ -212,10 +212,9 @@ msgstr ""
#, fuzzy #, fuzzy
msgid "" msgid ""
"If *typed* is set to true, function arguments of different types will be " "If *typed* is set to true, function arguments of different types will be "
"cached separately. For example, ``f(3)`` and ``f(3.0)`` will always be " "cached separately. If *typed* is false, the implementation will usually "
"treated as distinct calls with distinct results. If *typed* is false, the " "regard them as equivalent calls and only cache a single result. (Some types "
"implementation will usually but not always regard them as equivalent calls " "such as *str* and *int* may be cached separately even when *typed* is false.)"
"and only cache a single result."
msgstr "" msgstr ""
"Si *typed* est vrai, les arguments de différents types seront mis en cache " "Si *typed* est vrai, les arguments de différents types seront mis en cache "
"séparément. Par exemple, ``f(3)`` et ``f(3.0)`` seront considérés comme des " "séparément. Par exemple, ``f(3)`` et ``f(3.0)`` seront considérés comme des "
@ -223,6 +222,15 @@ msgstr ""
#: library/functools.rst:168 #: library/functools.rst:168
msgid "" msgid ""
"Note, type specificity applies only to the function's immediate arguments "
"rather than their contents. The scalar arguments, ``Decimal(42)`` and "
"``Fraction(42)`` are be treated as distinct calls with distinct results. In "
"contrast, the tuple arguments ``('answer', Decimal(42))`` and ``('answer', "
"Fraction(42))`` are treated as equivalent."
msgstr ""
#: library/functools.rst:174
msgid ""
"The wrapped function is instrumented with a :func:`cache_parameters` " "The wrapped function is instrumented with a :func:`cache_parameters` "
"function that returns a new :class:`dict` showing the values for *maxsize* " "function that returns a new :class:`dict` showing the values for *maxsize* "
"and *typed*. This is for information purposes only. Mutating the values " "and *typed*. This is for information purposes only. Mutating the values "
@ -233,7 +241,7 @@ msgstr ""
"*maxsize* et de *typed*. Cela ne sert qu'au débogage, changer ces valeurs " "*maxsize* et de *typed*. Cela ne sert qu'au débogage, changer ces valeurs "
"n'a pas d'incidence." "n'a pas d'incidence."
#: library/functools.rst:173 #: library/functools.rst:179
#, fuzzy #, fuzzy
msgid "" msgid ""
"To help measure the effectiveness of the cache and tune the *maxsize* " "To help measure the effectiveness of the cache and tune the *maxsize* "
@ -247,7 +255,7 @@ msgstr ""
"*misses*, *maxsize* et *currsize*. Dans un environnement *multithread*, les " "*misses*, *maxsize* et *currsize*. Dans un environnement *multithread*, les "
"succès et échecs d'appel du cache sont approximatifs." "succès et échecs d'appel du cache sont approximatifs."
#: library/functools.rst:178 #: library/functools.rst:184
msgid "" msgid ""
"The decorator also provides a :func:`cache_clear` function for clearing or " "The decorator also provides a :func:`cache_clear` function for clearing or "
"invalidating the cache." "invalidating the cache."
@ -255,7 +263,7 @@ msgstr ""
"Le décorateur fournit également une fonction :func:`cache_clear` pour vider " "Le décorateur fournit également une fonction :func:`cache_clear` pour vider "
"ou invalider le cache." "ou invalider le cache."
#: library/functools.rst:181 #: library/functools.rst:187
msgid "" msgid ""
"The original underlying function is accessible through the :attr:" "The original underlying function is accessible through the :attr:"
"`__wrapped__` attribute. This is useful for introspection, for bypassing " "`__wrapped__` attribute. This is useful for introspection, for bypassing "
@ -265,13 +273,13 @@ msgstr ""
"`__wrapped__`. Ceci est utile pour l'introspection, pour outrepasser le " "`__wrapped__`. Ceci est utile pour l'introspection, pour outrepasser le "
"cache, ou pour ré-englober la fonction avec un cache différent." "cache, ou pour ré-englober la fonction avec un cache différent."
#: library/functools.rst:185 #: library/functools.rst:191
msgid "" msgid ""
"The cache keeps references to the arguments and return values until they age " "The cache keeps references to the arguments and return values until they age "
"out of the cache or until the cache is cleared." "out of the cache or until the cache is cleared."
msgstr "" msgstr ""
#: library/functools.rst:188 #: library/functools.rst:194
msgid "" msgid ""
"An `LRU (least recently used) cache <https://en.wikipedia.org/wiki/" "An `LRU (least recently used) cache <https://en.wikipedia.org/wiki/"
"Cache_replacement_policies#Least_recently_used_(LRU)>`_ works best when the " "Cache_replacement_policies#Least_recently_used_(LRU)>`_ works best when the "
@ -288,7 +296,7 @@ msgstr ""
"taille limite du cache permet de s'assurer que le cache ne grossisse pas " "taille limite du cache permet de s'assurer que le cache ne grossisse pas "
"sans limite dans les processus à longue durée de vie comme les serveurs Web." "sans limite dans les processus à longue durée de vie comme les serveurs Web."
#: library/functools.rst:195 #: library/functools.rst:201
msgid "" msgid ""
"In general, the LRU cache should only be used when you want to reuse " "In general, the LRU cache should only be used when you want to reuse "
"previously computed values. Accordingly, it doesn't make sense to cache " "previously computed values. Accordingly, it doesn't make sense to cache "
@ -301,11 +309,11 @@ msgstr ""
"mutable distinct à chaque appel ou des fonctions *impures* telles que ``!" "mutable distinct à chaque appel ou des fonctions *impures* telles que ``!"
"time()`` ou ``!random()``." "time()`` ou ``!random()``."
#: library/functools.rst:200 #: library/functools.rst:206
msgid "Example of an LRU cache for static web content::" msgid "Example of an LRU cache for static web content::"
msgstr "Exemple d'un cache LRU pour du contenu web statique ::" msgstr "Exemple d'un cache LRU pour du contenu web statique ::"
#: library/functools.rst:219 #: library/functools.rst:225
msgid "" msgid ""
"Example of efficiently computing `Fibonacci numbers <https://en.wikipedia." "Example of efficiently computing `Fibonacci numbers <https://en.wikipedia."
"org/wiki/Fibonacci_number>`_ using a cache to implement a `dynamic " "org/wiki/Fibonacci_number>`_ using a cache to implement a `dynamic "
@ -316,19 +324,19 @@ msgstr ""
"technique de `programmation dynamique <https://fr.wikipedia.org/wiki/" "technique de `programmation dynamique <https://fr.wikipedia.org/wiki/"
"Programmation_dynamique>`_ ::" "Programmation_dynamique>`_ ::"
#: library/functools.rst:239 #: library/functools.rst:245
msgid "Added the *typed* option." msgid "Added the *typed* option."
msgstr "L'option *typed* a été ajoutée." msgstr "L'option *typed* a été ajoutée."
#: library/functools.rst:242 #: library/functools.rst:248
msgid "Added the *user_function* option." msgid "Added the *user_function* option."
msgstr "Ajout de l'option *user_function*." msgstr "Ajout de l'option *user_function*."
#: library/functools.rst:245 #: library/functools.rst:251
msgid "Added the function :func:`cache_parameters`" msgid "Added the function :func:`cache_parameters`"
msgstr "Ajout de la fonction :func:`cache_parameters`" msgstr "Ajout de la fonction :func:`cache_parameters`"
#: library/functools.rst:250 #: library/functools.rst:256
msgid "" msgid ""
"Given a class defining one or more rich comparison ordering methods, this " "Given a class defining one or more rich comparison ordering methods, this "
"class decorator supplies the rest. This simplifies the effort involved in " "class decorator supplies the rest. This simplifies the effort involved in "
@ -338,7 +346,7 @@ msgstr ""
"riches, ce décorateur de classe fournit le reste. Ceci simplifie l'effort à " "riches, ce décorateur de classe fournit le reste. Ceci simplifie l'effort à "
"fournir dans la spécification de toutes les opérations de comparaison riche :" "fournir dans la spécification de toutes les opérations de comparaison riche :"
#: library/functools.rst:254 #: library/functools.rst:260
msgid "" msgid ""
"The class must define one of :meth:`__lt__`, :meth:`__le__`, :meth:`__gt__`, " "The class must define one of :meth:`__lt__`, :meth:`__le__`, :meth:`__gt__`, "
"or :meth:`__ge__`. In addition, the class should supply an :meth:`__eq__` " "or :meth:`__ge__`. In addition, the class should supply an :meth:`__eq__` "
@ -348,7 +356,7 @@ msgstr ""
"`__le__`, :meth:`__gt__`, or :meth:`__ge__`. De plus, la classe doit fournir " "`__le__`, :meth:`__gt__`, or :meth:`__ge__`. De plus, la classe doit fournir "
"une méthode :meth:`__eq__`." "une méthode :meth:`__eq__`."
#: library/functools.rst:278 #: library/functools.rst:284
msgid "" msgid ""
"While this decorator makes it easy to create well behaved totally ordered " "While this decorator makes it easy to create well behaved totally ordered "
"types, it *does* come at the cost of slower execution and more complex stack " "types, it *does* come at the cost of slower execution and more complex stack "
@ -363,7 +371,7 @@ msgstr ""
"méthodes de comparaison riches résoudra normalement vos problèmes de " "méthodes de comparaison riches résoudra normalement vos problèmes de "
"rapidité." "rapidité."
#: library/functools.rst:287 #: library/functools.rst:293
msgid "" msgid ""
"This decorator makes no attempt to override methods that have been declared " "This decorator makes no attempt to override methods that have been declared "
"in the class *or its superclasses*. Meaning that if a superclass defines a " "in the class *or its superclasses*. Meaning that if a superclass defines a "
@ -371,7 +379,7 @@ msgid ""
"the original method is abstract." "the original method is abstract."
msgstr "" msgstr ""
#: library/functools.rst:294 #: library/functools.rst:300
msgid "" msgid ""
"Returning NotImplemented from the underlying comparison function for " "Returning NotImplemented from the underlying comparison function for "
"unrecognised types is now supported." "unrecognised types is now supported."
@ -379,7 +387,7 @@ msgstr ""
"Retourner NotImplemented dans les fonction de comparaison sous-jacentes pour " "Retourner NotImplemented dans les fonction de comparaison sous-jacentes pour "
"les types non reconnus est maintenant supporté." "les types non reconnus est maintenant supporté."
#: library/functools.rst:300 #: library/functools.rst:306
msgid "" msgid ""
"Return a new :ref:`partial object<partial-objects>` which when called will " "Return a new :ref:`partial object<partial-objects>` which when called will "
"behave like *func* called with the positional arguments *args* and keyword " "behave like *func* called with the positional arguments *args* and keyword "
@ -393,7 +401,7 @@ msgstr ""
"à l'appel, ils sont ajoutés à *args*. Si plus d'arguments nommés sont " "à l'appel, ils sont ajoutés à *args*. Si plus d'arguments nommés sont "
"fournis, ils étendent et surchargent *keywords*. À peu près équivalent à ::" "fournis, ils étendent et surchargent *keywords*. À peu près équivalent à ::"
#: library/functools.rst:316 #: library/functools.rst:322
msgid "" msgid ""
"The :func:`partial` is used for partial function application which \"freezes" "The :func:`partial` is used for partial function application which \"freezes"
"\" some portion of a function's arguments and/or keywords resulting in a new " "\" some portion of a function's arguments and/or keywords resulting in a new "
@ -407,7 +415,7 @@ msgstr ""
"peut être utilisé pour créer un appelable qui se comporte comme la fonction :" "peut être utilisé pour créer un appelable qui se comporte comme la fonction :"
"func:`int` ou l'argument *base* est deux par défaut :" "func:`int` ou l'argument *base* est deux par défaut :"
#: library/functools.rst:331 #: library/functools.rst:337
msgid "" msgid ""
"Return a new :class:`partialmethod` descriptor which behaves like :class:" "Return a new :class:`partialmethod` descriptor which behaves like :class:"
"`partial` except that it is designed to be used as a method definition " "`partial` except that it is designed to be used as a method definition "
@ -417,7 +425,7 @@ msgstr ""
"comme :class:`partial` sauf qu'il est fait pour être utilisé comme une " "comme :class:`partial` sauf qu'il est fait pour être utilisé comme une "
"définition de méthode plutôt que d'être appelé directement." "définition de méthode plutôt que d'être appelé directement."
#: library/functools.rst:335 #: library/functools.rst:341
msgid "" msgid ""
"*func* must be a :term:`descriptor` or a callable (objects which are both, " "*func* must be a :term:`descriptor` or a callable (objects which are both, "
"like normal functions, are handled as descriptors)." "like normal functions, are handled as descriptors)."
@ -425,7 +433,7 @@ msgstr ""
"*func* doit être un :term:`descriptor` ou un appelable (les objets qui sont " "*func* doit être un :term:`descriptor` ou un appelable (les objets qui sont "
"les deux, comme les fonction normales, sont gérés comme des descripteurs)." "les deux, comme les fonction normales, sont gérés comme des descripteurs)."
#: library/functools.rst:338 #: library/functools.rst:344
msgid "" msgid ""
"When *func* is a descriptor (such as a normal Python function, :func:" "When *func* is a descriptor (such as a normal Python function, :func:"
"`classmethod`, :func:`staticmethod`, :func:`abstractmethod` or another " "`classmethod`, :func:`staticmethod`, :func:`abstractmethod` or another "
@ -439,7 +447,7 @@ msgstr ""
"au descripteur sous-jacent, et un :ref:`objet partiel <partial-objects>` " "au descripteur sous-jacent, et un :ref:`objet partiel <partial-objects>` "
"approprié est renvoyé comme résultat." "approprié est renvoyé comme résultat."
#: library/functools.rst:344 #: library/functools.rst:350
msgid "" msgid ""
"When *func* is a non-descriptor callable, an appropriate bound method is " "When *func* is a non-descriptor callable, an appropriate bound method is "
"created dynamically. This behaves like a normal Python function when used as " "created dynamically. This behaves like a normal Python function when used as "
@ -453,7 +461,7 @@ msgstr ""
"premier argument positionnel, avant les *args* et *keywords* fournis au " "premier argument positionnel, avant les *args* et *keywords* fournis au "
"constructeur :class:`partialmethod`." "constructeur :class:`partialmethod`."
#: library/functools.rst:375 #: library/functools.rst:381
msgid "" msgid ""
"Apply *function* of two arguments cumulatively to the items of *iterable*, " "Apply *function* of two arguments cumulatively to the items of *iterable*, "
"from left to right, so as to reduce the iterable to a single value. For " "from left to right, so as to reduce the iterable to a single value. For "
@ -475,11 +483,11 @@ msgstr ""
"la séquence est vide. Si *initializer* n'est pas renseigné et que *iterable* " "la séquence est vide. Si *initializer* n'est pas renseigné et que *iterable* "
"ne contient qu'un élément, le premier élément est renvoyé." "ne contient qu'un élément, le premier élément est renvoyé."
#: library/functools.rst:384 #: library/functools.rst:390
msgid "Roughly equivalent to::" msgid "Roughly equivalent to::"
msgstr "À peu près équivalent à ::" msgstr "À peu près équivalent à ::"
#: library/functools.rst:396 #: library/functools.rst:402
msgid "" msgid ""
"See :func:`itertools.accumulate` for an iterator that yields all " "See :func:`itertools.accumulate` for an iterator that yields all "
"intermediate values." "intermediate values."
@ -487,7 +495,7 @@ msgstr ""
"Voir :func:`itertools.accumulate` pour un itérateur qui génère toutes les " "Voir :func:`itertools.accumulate` pour un itérateur qui génère toutes les "
"valeurs intermédiaires." "valeurs intermédiaires."
#: library/functools.rst:401 #: library/functools.rst:407
msgid "" msgid ""
"Transform a function into a :term:`single-dispatch <single dispatch>` :term:" "Transform a function into a :term:`single-dispatch <single dispatch>` :term:"
"`generic function`." "`generic function`."
@ -495,29 +503,31 @@ msgstr ""
"Transforme une fonction en une :term:`fonction générique <generic " "Transforme une fonction en une :term:`fonction générique <generic "
"function>` :term:`single-dispatch <single dispatch>`." "function>` :term:`single-dispatch <single dispatch>`."
#: library/functools.rst:404 #: library/functools.rst:410
#, fuzzy
msgid "" msgid ""
"To define a generic function, decorate it with the ``@singledispatch`` " "To define a generic function, decorate it with the ``@singledispatch`` "
"decorator. Note that the dispatch happens on the type of the first argument, " "decorator. When defining a function using ``@singledispatch``, note that the "
"create your function accordingly::" "dispatch happens on the type of the first argument::"
msgstr "" msgstr ""
"Pour définir une fonction générique, il faut la décorer avec le décorateur " "Pour définir une fonction générique, il faut la décorer avec le décorateur "
"``@singledispatch``. Noter que la distribution est effectuée sur le type du " "``@singledispatch``. Noter que la distribution est effectuée sur le type du "
"premier argument, donc la fonction doit être créée en conséquence ::" "premier argument, donc la fonction doit être créée en conséquence ::"
#: library/functools.rst:415 #: library/functools.rst:421
#, fuzzy
msgid "" msgid ""
"To add overloaded implementations to the function, use the :func:`register` " "To add overloaded implementations to the function, use the :func:`register` "
"attribute of the generic function. It is a decorator. For functions " "attribute of the generic function, which can be used as a decorator. For "
"annotated with types, the decorator will infer the type of the first " "functions annotated with types, the decorator will infer the type of the "
"argument automatically::" "first argument automatically::"
msgstr "" msgstr ""
"Pour ajouter des surcharges d'implémentation à la fonction, utiliser " "Pour ajouter des surcharges d'implémentation à la fonction, utiliser "
"l'attribut :func:`register` de la fonction générique. C'est un décorateur. " "l'attribut :func:`register` de la fonction générique. C'est un décorateur. "
"Pour les fonctions annotées avec des types, le décorateur infère le type du " "Pour les fonctions annotées avec des types, le décorateur infère le type du "
"premier argument automatiquement ::" "premier argument automatiquement ::"
#: library/functools.rst:433 #: library/functools.rst:439
msgid "" msgid ""
"For code which doesn't use type annotations, the appropriate type argument " "For code which doesn't use type annotations, the appropriate type argument "
"can be passed explicitly to the decorator itself::" "can be passed explicitly to the decorator itself::"
@ -525,25 +535,27 @@ msgstr ""
"Pour le code qui nutilise pas les indications de type, le type souhaité " "Pour le code qui nutilise pas les indications de type, le type souhaité "
"peut être passé explicitement en argument au décorateur ::" "peut être passé explicitement en argument au décorateur ::"
#: library/functools.rst:444 #: library/functools.rst:450
#, fuzzy
msgid "" msgid ""
"To enable registering lambdas and pre-existing functions, the :func:" "To enable registering :term:`lambdas<lambda>` and pre-existing functions, "
"`register` attribute can be used in a functional form::" "the :func:`register` attribute can also be used in a functional form::"
msgstr "" msgstr ""
"Pour permettre l'enregistrement de *lambdas* et de fonctions pré-existantes, " "Pour permettre l'enregistrement de *lambdas* et de fonctions pré-existantes, "
"l'attribut :func:`register` peut être utilisé sous forme fonctionnelle ::" "l'attribut :func:`register` peut être utilisé sous forme fonctionnelle ::"
#: library/functools.rst:452 #: library/functools.rst:458
#, fuzzy
msgid "" msgid ""
"The :func:`register` attribute returns the undecorated function which " "The :func:`register` attribute returns the undecorated function. This "
"enables decorator stacking, pickling, as well as creating unit tests for " "enables decorator stacking, :mod:`pickling<pickle>`, and the creation of "
"each variant independently::" "unit tests for each variant independently::"
msgstr "" msgstr ""
"L'attribut :func:`register` renvoie la fonction non décorée ce qui permet " "L'attribut :func:`register` renvoie la fonction non décorée ce qui permet "
"d'empiler les décorateurs, la sérialisation, et la création de tests " "d'empiler les décorateurs, la sérialisation, et la création de tests "
"unitaires pour chaque variante indépendamment ::" "unitaires pour chaque variante indépendamment ::"
#: library/functools.rst:466 #: library/functools.rst:472
msgid "" msgid ""
"When called, the generic function dispatches on the type of the first " "When called, the generic function dispatches on the type of the first "
"argument::" "argument::"
@ -551,12 +563,14 @@ msgstr ""
"Quand elle est appelée, la fonction générique distribue sur le type du " "Quand elle est appelée, la fonction générique distribue sur le type du "
"premier argument ::" "premier argument ::"
#: library/functools.rst:486 #: library/functools.rst:492
#, fuzzy
msgid "" msgid ""
"Where there is no registered implementation for a specific type, its method " "Where there is no registered implementation for a specific type, its method "
"resolution order is used to find a more generic implementation. The original " "resolution order is used to find a more generic implementation. The original "
"function decorated with ``@singledispatch`` is registered for the base " "function decorated with ``@singledispatch`` is registered for the base :"
"``object`` type, which means it is used if no better implementation is found." "class:`object` type, which means it is used if no better implementation is "
"found."
msgstr "" msgstr ""
"Quand il n'y a pas d'implémentation enregistrée pour un type spécifique, son " "Quand il n'y a pas d'implémentation enregistrée pour un type spécifique, son "
"ordre de résolution de méthode est utilisé pour trouver une implémentation " "ordre de résolution de méthode est utilisé pour trouver une implémentation "
@ -564,21 +578,23 @@ msgstr ""
"est enregistrée pour le type d'``object``, et elle sera utilisée si aucune " "est enregistrée pour le type d'``object``, et elle sera utilisée si aucune "
"implémentation n'est trouvée." "implémentation n'est trouvée."
#: library/functools.rst:492 #: library/functools.rst:498
msgid "" msgid ""
"If an implementation registered to :term:`abstract base class`, virtual " "If an implementation is registered to an :term:`abstract base class`, "
"subclasses will be dispatched to that implementation::" "virtual subclasses of the base class will be dispatched to that "
"implementation::"
msgstr "" msgstr ""
#: library/functools.rst:506 #: library/functools.rst:513
#, fuzzy
msgid "" msgid ""
"To check which implementation will the generic function choose for a given " "To check which implementation the generic function will choose for a given "
"type, use the ``dispatch()`` attribute::" "type, use the ``dispatch()`` attribute::"
msgstr "" msgstr ""
"Pour vérifier quelle implémentation la fonction générique choisira pour un " "Pour vérifier quelle implémentation la fonction générique choisira pour un "
"type donné, utiliser l'attribut ``dispatch()`` ::" "type donné, utiliser l'attribut ``dispatch()`` ::"
#: library/functools.rst:514 #: library/functools.rst:521
msgid "" msgid ""
"To access all registered implementations, use the read-only ``registry`` " "To access all registered implementations, use the read-only ``registry`` "
"attribute::" "attribute::"
@ -586,12 +602,13 @@ msgstr ""
"Pour accéder à toutes les implémentations enregistrées, utiliser l'attribut " "Pour accéder à toutes les implémentations enregistrées, utiliser l'attribut "
"en lecture seule ``registry`` ::" "en lecture seule ``registry`` ::"
#: library/functools.rst:528 #: library/functools.rst:535
msgid "The :func:`register` attribute supports using type annotations." #, fuzzy
msgid "The :func:`register` attribute now supports using type annotations."
msgstr "" msgstr ""
"Lattribut :func:`register` gère lutilisation des indications de type." "Lattribut :func:`register` gère lutilisation des indications de type."
#: library/functools.rst:534 #: library/functools.rst:541
msgid "" msgid ""
"Transform a method into a :term:`single-dispatch <single dispatch>` :term:" "Transform a method into a :term:`single-dispatch <single dispatch>` :term:"
"`generic function`." "`generic function`."
@ -599,32 +616,36 @@ msgstr ""
"Transforme une méthode en une :term:`fonction générique <generic function>` :" "Transforme une méthode en une :term:`fonction générique <generic function>` :"
"term:`single-dispatch <single dispatch>`." "term:`single-dispatch <single dispatch>`."
#: library/functools.rst:537 #: library/functools.rst:544
#, fuzzy
msgid "" msgid ""
"To define a generic method, decorate it with the ``@singledispatchmethod`` " "To define a generic method, decorate it with the ``@singledispatchmethod`` "
"decorator. Note that the dispatch happens on the type of the first non-self " "decorator. When defining a function using ``@singledispatchmethod``, note "
"or non-cls argument, create your function accordingly::" "that the dispatch happens on the type of the first non-*self* or non-*cls* "
"argument::"
msgstr "" msgstr ""
"Pour définir une fonction générique, il faut la décorer avec le décorateur " "Pour définir une fonction générique, il faut la décorer avec le décorateur "
"``@singledispatchmethod``. Notez que la distribution est effectuée sur le " "``@singledispatchmethod``. Notez que la distribution est effectuée sur le "
"type du premier argument non *self* ni *cls*, donc la fonction doit être " "type du premier argument non *self* ni *cls*, donc la fonction doit être "
"conçue en conséquence ::" "conçue en conséquence ::"
#: library/functools.rst:554 #: library/functools.rst:562
msgid "" msgid ""
"``@singledispatchmethod`` supports nesting with other decorators such as " "``@singledispatchmethod`` supports nesting with other decorators such as :"
"``@classmethod``. Note that to allow for ``dispatcher.register``, " "func:`@classmethod<classmethod>`. Note that to allow for ``dispatcher."
"``singledispatchmethod`` must be the *outer most* decorator. Here is the " "register``, ``singledispatchmethod`` must be the *outer most* decorator. "
"``Negator`` class with the ``neg`` methods being class bound::" "Here is the ``Negator`` class with the ``neg`` methods bound to the class, "
"rather than an instance of the class::"
msgstr "" msgstr ""
#: library/functools.rst:575 #: library/functools.rst:584
msgid "" msgid ""
"The same pattern can be used for other similar decorators: ``staticmethod``, " "The same pattern can be used for other similar decorators: :func:"
"``abstractmethod``, and others." "`@staticmethod<staticmethod>`, :func:`@abstractmethod<abc.abstractmethod>`, "
"and others."
msgstr "" msgstr ""
#: library/functools.rst:583 #: library/functools.rst:593
msgid "" msgid ""
"Update a *wrapper* function to look like the *wrapped* function. The " "Update a *wrapper* function to look like the *wrapped* function. The "
"optional arguments are tuples to specify which attributes of the original " "optional arguments are tuples to specify which attributes of the original "
@ -649,7 +670,7 @@ msgstr ""
"met à jour le ``__dict__`` de la fonction englobante, c'est-à-dire le " "met à jour le ``__dict__`` de la fonction englobante, c'est-à-dire le "
"dictionnaire de l'instance)." "dictionnaire de l'instance)."
#: library/functools.rst:593 #: library/functools.rst:603
msgid "" msgid ""
"To allow access to the original function for introspection and other " "To allow access to the original function for introspection and other "
"purposes (e.g. bypassing a caching decorator such as :func:`lru_cache`), " "purposes (e.g. bypassing a caching decorator such as :func:`lru_cache`), "
@ -661,7 +682,7 @@ msgstr ""
"func:`lru_cache`), cette fonction ajoute automatiquement un attribut " "func:`lru_cache`), cette fonction ajoute automatiquement un attribut "
"``__wrapped__`` qui référence la fonction englobée." "``__wrapped__`` qui référence la fonction englobée."
#: library/functools.rst:598 #: library/functools.rst:608
msgid "" msgid ""
"The main intended use for this function is in :term:`decorator` functions " "The main intended use for this function is in :term:`decorator` functions "
"which wrap the decorated function and return the wrapper. If the wrapper " "which wrap the decorated function and return the wrapper. If the wrapper "
@ -675,7 +696,7 @@ msgstr ""
"décorateur, au lieu de la définition originale, métadonnées souvent bien " "décorateur, au lieu de la définition originale, métadonnées souvent bien "
"moins utiles." "moins utiles."
#: library/functools.rst:604 #: library/functools.rst:614
msgid "" msgid ""
":func:`update_wrapper` may be used with callables other than functions. Any " ":func:`update_wrapper` may be used with callables other than functions. Any "
"attributes named in *assigned* or *updated* that are missing from the object " "attributes named in *assigned* or *updated* that are missing from the object "
@ -689,20 +710,20 @@ msgstr ""
"dans la fonction englobante). :exc:`AttributeError` est toujours levée si le " "dans la fonction englobante). :exc:`AttributeError` est toujours levée si le "
"fonction englobante elle même a des attributs non existants dans *updated*." "fonction englobante elle même a des attributs non existants dans *updated*."
#: library/functools.rst:610 #: library/functools.rst:620
msgid "Automatic addition of the ``__wrapped__`` attribute." msgid "Automatic addition of the ``__wrapped__`` attribute."
msgstr "Ajout automatique de l'attribut ``__wrapped__``." msgstr "Ajout automatique de l'attribut ``__wrapped__``."
#: library/functools.rst:613 #: library/functools.rst:623
msgid "Copying of the ``__annotations__`` attribute by default." msgid "Copying of the ``__annotations__`` attribute by default."
msgstr "Copie de l'attribut ``__annotations__`` par défaut." msgstr "Copie de l'attribut ``__annotations__`` par défaut."
#: library/functools.rst:616 #: library/functools.rst:626
msgid "Missing attributes no longer trigger an :exc:`AttributeError`." msgid "Missing attributes no longer trigger an :exc:`AttributeError`."
msgstr "" msgstr ""
"Les attributs manquants ne lèvent plus d'exception :exc:`AttributeError`." "Les attributs manquants ne lèvent plus d'exception :exc:`AttributeError`."
#: library/functools.rst:619 #: library/functools.rst:629
msgid "" msgid ""
"The ``__wrapped__`` attribute now always refers to the wrapped function, " "The ``__wrapped__`` attribute now always refers to the wrapped function, "
"even if that function defined a ``__wrapped__`` attribute. (see :issue:" "even if that function defined a ``__wrapped__`` attribute. (see :issue:"
@ -711,7 +732,7 @@ msgstr ""
"L'attribut ``__wrapped__`` renvoie toujours la fonction englobée, même si " "L'attribut ``__wrapped__`` renvoie toujours la fonction englobée, même si "
"cette fonction définit un attribut ``__wrapped__``. (voir :issue:`17482`)" "cette fonction définit un attribut ``__wrapped__``. (voir :issue:`17482`)"
#: library/functools.rst:627 #: library/functools.rst:637
msgid "" msgid ""
"This is a convenience function for invoking :func:`update_wrapper` as a " "This is a convenience function for invoking :func:`update_wrapper` as a "
"function decorator when defining a wrapper function. It is equivalent to " "function decorator when defining a wrapper function. It is equivalent to "
@ -723,7 +744,7 @@ msgstr ""
"C'est équivalent à ``partial(update_wrapper, wrapped=wrapped, " "C'est équivalent à ``partial(update_wrapper, wrapped=wrapped, "
"assigned=assigned, updated=updated)``. Par exemple ::" "assigned=assigned, updated=updated)``. Par exemple ::"
#: library/functools.rst:653 #: library/functools.rst:663
msgid "" msgid ""
"Without the use of this decorator factory, the name of the example function " "Without the use of this decorator factory, the name of the example function "
"would have been ``'wrapper'``, and the docstring of the original :func:" "would have been ``'wrapper'``, and the docstring of the original :func:"
@ -733,11 +754,11 @@ msgstr ""
"d'exemple aurait été ``'wrapper'``, et la chaîne de documentation de la " "d'exemple aurait été ``'wrapper'``, et la chaîne de documentation de la "
"fonction :func:`example` originale aurait été perdue." "fonction :func:`example` originale aurait été perdue."
#: library/functools.rst:661 #: library/functools.rst:671
msgid ":class:`partial` Objects" msgid ":class:`partial` Objects"
msgstr "Objets :class:`partial`" msgstr "Objets :class:`partial`"
#: library/functools.rst:663 #: library/functools.rst:673
msgid "" msgid ""
":class:`partial` objects are callable objects created by :func:`partial`. " ":class:`partial` objects are callable objects created by :func:`partial`. "
"They have three read-only attributes:" "They have three read-only attributes:"
@ -745,7 +766,7 @@ msgstr ""
"Les objets :class:`partial` sont des objets appelables créés par :func:" "Les objets :class:`partial` sont des objets appelables créés par :func:"
"`partial`. Ils ont trois attributs en lecture seule :" "`partial`. Ils ont trois attributs en lecture seule :"
#: library/functools.rst:669 #: library/functools.rst:679
msgid "" msgid ""
"A callable object or function. Calls to the :class:`partial` object will be " "A callable object or function. Calls to the :class:`partial` object will be "
"forwarded to :attr:`func` with new arguments and keywords." "forwarded to :attr:`func` with new arguments and keywords."
@ -753,7 +774,7 @@ msgstr ""
"Un objet ou une fonction appelable. Les appels à l'objet :class:`partial` " "Un objet ou une fonction appelable. Les appels à l'objet :class:`partial` "
"seront transmis à :attr:`func` avec les nouveaux arguments et mots-clés." "seront transmis à :attr:`func` avec les nouveaux arguments et mots-clés."
#: library/functools.rst:675 #: library/functools.rst:685
msgid "" msgid ""
"The leftmost positional arguments that will be prepended to the positional " "The leftmost positional arguments that will be prepended to the positional "
"arguments provided to a :class:`partial` object call." "arguments provided to a :class:`partial` object call."
@ -761,7 +782,7 @@ msgstr ""
"Les arguments positionnels qui seront ajoutés avant les arguments fournis " "Les arguments positionnels qui seront ajoutés avant les arguments fournis "
"lors de l'appel d'un objet :class:`partial`." "lors de l'appel d'un objet :class:`partial`."
#: library/functools.rst:681 #: library/functools.rst:691
msgid "" msgid ""
"The keyword arguments that will be supplied when the :class:`partial` object " "The keyword arguments that will be supplied when the :class:`partial` object "
"is called." "is called."
@ -769,7 +790,7 @@ msgstr ""
"Les arguments nommés qui seront fournis quand l'objet :class:`partial` est " "Les arguments nommés qui seront fournis quand l'objet :class:`partial` est "
"appelé." "appelé."
#: library/functools.rst:684 #: library/functools.rst:694
msgid "" msgid ""
":class:`partial` objects are like :class:`function` objects in that they are " ":class:`partial` objects are like :class:`function` objects in that they are "
"callable, weak referencable, and can have attributes. There are some " "callable, weak referencable, and can have attributes. There are some "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-10-22 02:12+0200\n" "PO-Revision-Date: 2021-10-22 02:12+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n" "Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -24,9 +24,10 @@ msgid "**Source code:** :source:`Lib/keyword.py`"
msgstr "**Code source :** :source:`Lib/keyword.py`" msgstr "**Code source :** :source:`Lib/keyword.py`"
#: library/keyword.rst:11 #: library/keyword.rst:11
#, fuzzy
msgid "" msgid ""
"This module allows a Python program to determine if a string is a :ref:" "This module allows a Python program to determine if a string is a :ref:"
"`keyword <keywords>`." "`keyword <keywords>` or :ref:`soft keyword <soft-keywords>`."
msgstr "" msgstr ""
"Ce module permet à un programme Python de déterminer si une chaîne " "Ce module permet à un programme Python de déterminer si une chaîne "
"représente un :ref:`mot-clé <keywords>` du langage." "représente un :ref:`mot-clé <keywords>` du langage."
@ -47,13 +48,15 @@ msgstr ""
"effectives, ils seront tout de même inclus." "effectives, ils seront tout de même inclus."
#: library/keyword.rst:29 #: library/keyword.rst:29
msgid "Return ``True`` if *s* is a Python soft :ref:`keyword <keywords>`." #, fuzzy
msgstr "Renvoie vrai si *s* est un :ref:`mot-clé ad-hoc <keywords>` de Python." msgid "Return ``True`` if *s* is a Python :ref:`soft keyword <soft-keywords>`."
msgstr "Renvoie vrai si *s* est un :ref:`mot-clé <keywords>` de Python."
#: library/keyword.rst:36 #: library/keyword.rst:36
#, fuzzy
msgid "" msgid ""
"Sequence containing all the soft :ref:`keywords <keywords>` defined for the " "Sequence containing all the :ref:`soft keywords <soft-keywords>` defined for "
"interpreter. If any soft keywords are defined to only be active when " "the interpreter. If any soft keywords are defined to only be active when "
"particular :mod:`__future__` statements are in effect, these will be " "particular :mod:`__future__` statements are in effect, these will be "
"included as well." "included as well."
msgstr "" msgstr ""
@ -61,3 +64,7 @@ msgstr ""
"l'interpréteur. Si certains mots-clés sont définis pour être actifs " "l'interpréteur. Si certains mots-clés sont définis pour être actifs "
"seulement si des instructions :mod:`__future__` particulières sont " "seulement si des instructions :mod:`__future__` particulières sont "
"effectives, ils seront tout de même inclus." "effectives, ils seront tout de même inclus."
#~ msgid "Return ``True`` if *s* is a Python soft :ref:`keyword <keywords>`."
#~ msgstr ""
#~ "Renvoie vrai si *s* est un :ref:`mot-clé ad-hoc <keywords>` de Python."

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-21 15:04+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-06-04 15:09+0200\n" "PO-Revision-Date: 2021-06-04 15:09+0200\n"
"Last-Translator: louisMaury <louismaury33@gmail.com>\n" "Last-Translator: louisMaury <louismaury33@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -461,7 +461,7 @@ msgstr ""
msgid "Integer specifying the handle of the Python DLL." msgid "Integer specifying the handle of the Python DLL."
msgstr "Nombre entier spécifiant le descripteur de la DLL Python." msgstr "Nombre entier spécifiant le descripteur de la DLL Python."
#: library/sys.rst:810 library/sys.rst:1721 #: library/sys.rst:810 library/sys.rst:1718
msgid ":ref:`Availability <availability>`: Windows." msgid ":ref:`Availability <availability>`: Windows."
msgstr ":ref:`Disponibilité <availability>` : Windows." msgstr ":ref:`Disponibilité <availability>` : Windows."
@ -1211,7 +1211,7 @@ msgstr ""
"`dlopen`. Les noms symboliques valeurs peuvent être trouvées dans le module :" "`dlopen`. Les noms symboliques valeurs peuvent être trouvées dans le module :"
"mod:`os`. (Ce sont les constantes ``RTLD_xxx`` e.g. :data:`os.RTLD_LAZY`)." "mod:`os`. (Ce sont les constantes ``RTLD_xxx`` e.g. :data:`os.RTLD_LAZY`)."
#: library/sys.rst:1260 #: library/sys.rst:1257
msgid ":ref:`Availability <availability>`: Unix." msgid ":ref:`Availability <availability>`: Unix."
msgstr ":ref:`Disponibilité <availability>` : Unix." msgstr ":ref:`Disponibilité <availability>` : Unix."
@ -1543,7 +1543,7 @@ msgstr ""
msgid "See :pep:`525` for more details." msgid "See :pep:`525` for more details."
msgstr "Voir la :pep:`525` pour plus d'informations." msgstr "Voir la :pep:`525` pour plus d'informations."
#: library/sys.rst:1454 #: library/sys.rst:1451
msgid "" msgid ""
"This function has been added on a provisional basis (see :pep:`411` for " "This function has been added on a provisional basis (see :pep:`411` for "
"details.)" "details.)"
@ -1560,7 +1560,7 @@ msgstr ""
"le suivi de leur création, telle que défini par :func:" "le suivi de leur création, telle que défini par :func:"
"`set_coroutine_origin_tracking_depth`." "`set_coroutine_origin_tracking_depth`."
#: library/sys.rst:1475 #: library/sys.rst:1472
msgid "" msgid ""
"This function has been added on a provisional basis (see :pep:`411` for " "This function has been added on a provisional basis (see :pep:`411` for "
"details.) Use it only for debugging purposes." "details.) Use it only for debugging purposes."
@ -1770,11 +1770,11 @@ msgstr ""
"Un :term:`named tuple` qui contient des informations sur la représentation " "Un :term:`named tuple` qui contient des informations sur la représentation "
"interne des entiers de Python. Les attributs sont en lecture seule." "interne des entiers de Python. Les attributs sont en lecture seule."
#: library/sys.rst:1606 #: library/sys.rst:1603
msgid "Attribute" msgid "Attribute"
msgstr "Attribut" msgstr "Attribut"
#: library/sys.rst:1606 #: library/sys.rst:1603
msgid "Explanation" msgid "Explanation"
msgstr "Explication" msgstr "Explication"
@ -2239,15 +2239,13 @@ msgid ""
msgstr "" msgstr ""
#: library/sys.rst:1218 #: library/sys.rst:1218
#, fuzzy
msgid "" msgid ""
"A string giving the site-specific directory prefix where the platform " "A string giving the site-specific directory prefix where the platform "
"independent Python files are installed; by default, this is the string ``'/" "independent Python files are installed; on Unix, the default is ``'/usr/"
"usr/local'``. This can be set at build time with the ``--prefix`` argument " "local'``. This can be set at build time with the ``--prefix`` argument to "
"to the :program:`configure` script. The main collection of Python library " "the :program:`configure` script. See :ref:`installation_paths` for derived "
"modules is installed in the directory :file:`{prefix}/lib/python{X.Y}` while " "paths."
"the platform independent header files (all except :file:`pyconfig.h`) are "
"stored in :file:`{prefix}/include/python{X.Y}`, where *X.Y* is the version "
"number of Python, for example ``3.2``."
msgstr "" msgstr ""
"Une chaîne donnant le préfixe de répertoire spécifique au site dans lequel " "Une chaîne donnant le préfixe de répertoire spécifique au site dans lequel "
"les fichiers Python indépendants de la plate-forme sont installés. Par " "les fichiers Python indépendants de la plate-forme sont installés. Par "
@ -2259,7 +2257,7 @@ msgstr ""
"stockées dans :file:`{prefix}/include/python{X.Y}`, où *X.Y* est le numéro " "stockées dans :file:`{prefix}/include/python{X.Y}`, où *X.Y* est le numéro "
"de version de Python, par exemple ``3.2``." "de version de Python, par exemple ``3.2``."
#: library/sys.rst:1227 #: library/sys.rst:1224
msgid "" msgid ""
"If a :ref:`virtual environment <venv-def>` is in effect, this value will be " "If a :ref:`virtual environment <venv-def>` is in effect, this value will be "
"changed in ``site.py`` to point to the virtual environment. The value for " "changed in ``site.py`` to point to the virtual environment. The value for "
@ -2270,7 +2268,7 @@ msgstr ""
"donnée au moment de la compilation de Python sera toujours disponible, dans :" "donnée au moment de la compilation de Python sera toujours disponible, dans :"
"data:`base_prefix`." "data:`base_prefix`."
#: library/sys.rst:1242 #: library/sys.rst:1239
msgid "" msgid ""
"Strings specifying the primary and secondary prompt of the interpreter. " "Strings specifying the primary and secondary prompt of the interpreter. "
"These are only defined if the interpreter is in interactive mode. Their " "These are only defined if the interpreter is in interactive mode. Their "
@ -2287,7 +2285,7 @@ msgstr ""
"à lire une nouvelle commande interactive, c'est donc utilisable pour " "à lire une nouvelle commande interactive, c'est donc utilisable pour "
"implémenter une invite dynamique." "implémenter une invite dynamique."
#: library/sys.rst:1252 #: library/sys.rst:1249
msgid "" msgid ""
"Set the flags used by the interpreter for :c:func:`dlopen` calls, such as " "Set the flags used by the interpreter for :c:func:`dlopen` calls, such as "
"when the interpreter loads extension modules. Among other things, this will " "when the interpreter loads extension modules. Among other things, this will "
@ -2306,7 +2304,7 @@ msgstr ""
"trouvés dans le module :mod:`os` (ce sont les constantes ``RTLD_xxx``, " "trouvés dans le module :mod:`os` (ce sont les constantes ``RTLD_xxx``, "
"comme :data:`os.RTLD_LAZY`)." "comme :data:`os.RTLD_LAZY`)."
#: library/sys.rst:1268 #: library/sys.rst:1265
msgid "" msgid ""
"Set the system's profile function, which allows you to implement a Python " "Set the system's profile function, which allows you to implement a Python "
"source code profiler in Python. See chapter :ref:`profile` for more " "source code profiler in Python. See chapter :ref:`profile` for more "
@ -2334,7 +2332,7 @@ msgstr ""
"*multithread*. Sa valeur de retour n'est pas utilisée, elle peut simplement " "*multithread*. Sa valeur de retour n'est pas utilisée, elle peut simplement "
"renvoyer ``None``." "renvoyer ``None``."
#: library/sys.rst:1279 #: library/sys.rst:1276
msgid "" msgid ""
"Profile functions should have three arguments: *frame*, *event*, and *arg*. " "Profile functions should have three arguments: *frame*, *event*, and *arg*. "
"*frame* is the current stack frame. *event* is a string: ``'call'``, " "*frame* is the current stack frame. *event* is a string: ``'call'``, "
@ -2347,21 +2345,21 @@ msgstr ""
"``'c_call'``, ``'c_return'`` ou ``'c_exception'``. *arg* dépend du type de " "``'c_call'``, ``'c_return'`` ou ``'c_exception'``. *arg* dépend du type de "
"l'évènement." "l'évènement."
#: library/sys.rst:1284 #: library/sys.rst:1281
msgid "" msgid ""
"Raises an :ref:`auditing event <auditing>` ``sys.setprofile`` with no " "Raises an :ref:`auditing event <auditing>` ``sys.setprofile`` with no "
"arguments." "arguments."
msgstr "" msgstr ""
#: library/sys.rst:1367 #: library/sys.rst:1364
msgid "The events have the following meaning:" msgid "The events have the following meaning:"
msgstr "Les événements ont la signification suivante :" msgstr "Les événements ont la signification suivante :"
#: library/sys.rst:1372 #: library/sys.rst:1369
msgid "``'call'``" msgid "``'call'``"
msgstr "``'call'``" msgstr "``'call'``"
#: library/sys.rst:1289 #: library/sys.rst:1286
msgid "" msgid ""
"A function is called (or some other code block entered). The profile " "A function is called (or some other code block entered). The profile "
"function is called; *arg* is ``None``." "function is called; *arg* is ``None``."
@ -2369,11 +2367,11 @@ msgstr ""
"Une fonction est appelée (ou Python entre dans un autre bloc de code). La " "Une fonction est appelée (ou Python entre dans un autre bloc de code). La "
"fonction de traçage est appelée, *arg* est ``None``." "fonction de traçage est appelée, *arg* est ``None``."
#: library/sys.rst:1387 #: library/sys.rst:1384
msgid "``'return'``" msgid "``'return'``"
msgstr "``'return'``" msgstr "``'return'``"
#: library/sys.rst:1293 #: library/sys.rst:1290
msgid "" msgid ""
"A function (or other code block) is about to return. The profile function " "A function (or other code block) is about to return. The profile function "
"is called; *arg* is the value that will be returned, or ``None`` if the " "is called; *arg* is the value that will be returned, or ``None`` if the "
@ -2383,11 +2381,11 @@ msgstr ""
"fonction de traçage est appelée, *arg* est la valeur qui sera renvoyée, ou " "fonction de traçage est appelée, *arg* est la valeur qui sera renvoyée, ou "
"``None`` si l'événement est causé par la levée d'une exception." "``None`` si l'événement est causé par la levée d'une exception."
#: library/sys.rst:1299 #: library/sys.rst:1296
msgid "``'c_call'``" msgid "``'c_call'``"
msgstr "``'c_call'``" msgstr "``'c_call'``"
#: library/sys.rst:1298 #: library/sys.rst:1295
msgid "" msgid ""
"A C function is about to be called. This may be an extension function or a " "A C function is about to be called. This may be an extension function or a "
"built-in. *arg* is the C function object." "built-in. *arg* is the C function object."
@ -2395,23 +2393,23 @@ msgstr ""
"Une fonction C est sur le point d'être appelée. C'est soit une fonction " "Une fonction C est sur le point d'être appelée. C'est soit une fonction "
"d'extension ou une fonction native. *arg* représente la fonction C." "d'extension ou une fonction native. *arg* représente la fonction C."
#: library/sys.rst:1302 #: library/sys.rst:1299
msgid "``'c_return'``" msgid "``'c_return'``"
msgstr "``'c_return'``" msgstr "``'c_return'``"
#: library/sys.rst:1302 #: library/sys.rst:1299
msgid "A C function has returned. *arg* is the C function object." msgid "A C function has returned. *arg* is the C function object."
msgstr "Une fonction C a renvoyé une valeur. *arg* représente la fonction C." msgstr "Une fonction C a renvoyé une valeur. *arg* représente la fonction C."
#: library/sys.rst:1304 #: library/sys.rst:1301
msgid "``'c_exception'``" msgid "``'c_exception'``"
msgstr "``'c_exception'``" msgstr "``'c_exception'``"
#: library/sys.rst:1305 #: library/sys.rst:1302
msgid "A C function has raised an exception. *arg* is the C function object." msgid "A C function has raised an exception. *arg* is the C function object."
msgstr "Une fonction C a levé une exception. *arg* représente la fonction C." msgstr "Une fonction C a levé une exception. *arg* représente la fonction C."
#: library/sys.rst:1309 #: library/sys.rst:1306
msgid "" msgid ""
"Set the maximum depth of the Python interpreter stack to *limit*. This " "Set the maximum depth of the Python interpreter stack to *limit*. This "
"limit prevents infinite recursion from causing an overflow of the C stack " "limit prevents infinite recursion from causing an overflow of the C stack "
@ -2421,7 +2419,7 @@ msgstr ""
"*limit*. Cette limite empêche une récursion infinie de provoquer un " "*limit*. Cette limite empêche une récursion infinie de provoquer un "
"débordement de la pile C et ainsi un crash de Python." "débordement de la pile C et ainsi un crash de Python."
#: library/sys.rst:1313 #: library/sys.rst:1310
msgid "" msgid ""
"The highest possible limit is platform-dependent. A user may need to set " "The highest possible limit is platform-dependent. A user may need to set "
"the limit higher when they have a program that requires deep recursion and a " "the limit higher when they have a program that requires deep recursion and a "
@ -2433,7 +2431,7 @@ msgstr ""
"profonde, si sa plate-forme le permet. Cela doit être fait avec précaution, " "profonde, si sa plate-forme le permet. Cela doit être fait avec précaution, "
"car une limite trop élevée peut conduire à un crash." "car une limite trop élevée peut conduire à un crash."
#: library/sys.rst:1318 #: library/sys.rst:1315
msgid "" msgid ""
"If the new limit is too low at the current recursion depth, a :exc:" "If the new limit is too low at the current recursion depth, a :exc:"
"`RecursionError` exception is raised." "`RecursionError` exception is raised."
@ -2441,7 +2439,7 @@ msgstr ""
"Si la nouvelle limite est plus basse que la profondeur actuelle, une :exc:" "Si la nouvelle limite est plus basse que la profondeur actuelle, une :exc:"
"`RecursionError` est levée." "`RecursionError` est levée."
#: library/sys.rst:1321 #: library/sys.rst:1318
msgid "" msgid ""
"A :exc:`RecursionError` exception is now raised if the new limit is too low " "A :exc:`RecursionError` exception is now raised if the new limit is too low "
"at the current recursion depth." "at the current recursion depth."
@ -2449,7 +2447,7 @@ msgstr ""
"Une :exc:`RecursionError` est maintenant levée si la nouvelle limite est " "Une :exc:`RecursionError` est maintenant levée si la nouvelle limite est "
"plus basse que la profondeur de récursion actuelle." "plus basse que la profondeur de récursion actuelle."
#: library/sys.rst:1328 #: library/sys.rst:1325
msgid "" msgid ""
"Set the interpreter's thread switch interval (in seconds). This floating-" "Set the interpreter's thread switch interval (in seconds). This floating-"
"point value determines the ideal duration of the \"timeslices\" allocated to " "point value determines the ideal duration of the \"timeslices\" allocated to "
@ -2467,7 +2465,7 @@ msgstr ""
"d'exécution prenant la main à la fin de l'intervalle revient au système " "d'exécution prenant la main à la fin de l'intervalle revient au système "
"d'exploitation. L'interpréteur n'a pas son propre ordonnanceur." "d'exploitation. L'interpréteur n'a pas son propre ordonnanceur."
#: library/sys.rst:1345 #: library/sys.rst:1342
msgid "" msgid ""
"Set the system's trace function, which allows you to implement a Python " "Set the system's trace function, which allows you to implement a Python "
"source code debugger in Python. The function is thread-specific; for a " "source code debugger in Python. The function is thread-specific; for a "
@ -2482,7 +2480,7 @@ msgstr ""
"pour chaque fil d'exécution qu'il souhaite surveiller ou utilisez :func:" "pour chaque fil d'exécution qu'il souhaite surveiller ou utilisez :func:"
"`threading.settrace`." "`threading.settrace`."
#: library/sys.rst:1350 #: library/sys.rst:1347
msgid "" msgid ""
"Trace functions should have three arguments: *frame*, *event*, and *arg*. " "Trace functions should have three arguments: *frame*, *event*, and *arg*. "
"*frame* is the current stack frame. *event* is a string: ``'call'``, " "*frame* is the current stack frame. *event* is a string: ``'call'``, "
@ -2494,7 +2492,7 @@ msgstr ""
"chaîne de caractères pouvant valoir : ``'call'``, ``'line'``, ``'return'``, " "chaîne de caractères pouvant valoir : ``'call'``, ``'line'``, ``'return'``, "
"``'exception'`` ou ``'opcode'``. *arg* dépend du type de l'évènement." "``'exception'`` ou ``'opcode'``. *arg* dépend du type de l'évènement."
#: library/sys.rst:1355 #: library/sys.rst:1352
msgid "" msgid ""
"The trace function is invoked (with *event* set to ``'call'``) whenever a " "The trace function is invoked (with *event* set to ``'call'``) whenever a "
"new local scope is entered; it should return a reference to a local trace " "new local scope is entered; it should return a reference to a local trace "
@ -2506,7 +2504,7 @@ msgstr ""
"référence à une fonction de traçage locale à utiliser pour ce *scope*, ou " "référence à une fonction de traçage locale à utiliser pour ce *scope*, ou "
"``None`` si le *Scope* ne doit pas être tracé." "``None`` si le *Scope* ne doit pas être tracé."
#: library/sys.rst:1360 #: library/sys.rst:1357
msgid "" msgid ""
"The local trace function should return a reference to itself (or to another " "The local trace function should return a reference to itself (or to another "
"function for further tracing in that scope), or ``None`` to turn off tracing " "function for further tracing in that scope), or ``None`` to turn off tracing "
@ -2516,7 +2514,7 @@ msgstr ""
"autre fonction de traçage pour un traçage ultérieur dans cette portée), ou " "autre fonction de traçage pour un traçage ultérieur dans cette portée), ou "
"``None`` pour désactiver le traçage dans cette portée." "``None`` pour désactiver le traçage dans cette portée."
#: library/sys.rst:1364 #: library/sys.rst:1361
msgid "" msgid ""
"If there is any error occurred in the trace function, it will be unset, just " "If there is any error occurred in the trace function, it will be unset, just "
"like ``settrace(None)`` is called." "like ``settrace(None)`` is called."
@ -2524,7 +2522,7 @@ msgstr ""
"Si une erreur se produit dans la fonction de trace, elle sera désactivée, " "Si une erreur se produit dans la fonction de trace, elle sera désactivée, "
"tout comme si ``settrace(None)`` avait été appelée." "tout comme si ``settrace(None)`` avait été appelée."
#: library/sys.rst:1370 #: library/sys.rst:1367
msgid "" msgid ""
"A function is called (or some other code block entered). The global trace " "A function is called (or some other code block entered). The global trace "
"function is called; *arg* is ``None``; the return value specifies the local " "function is called; *arg* is ``None``; the return value specifies the local "
@ -2534,11 +2532,11 @@ msgstr ""
"globale est appelée, *arg* est ``None``, la valeur renvoyée donne la " "globale est appelée, *arg* est ``None``, la valeur renvoyée donne la "
"fonction de traçage locale." "fonction de traçage locale."
#: library/sys.rst:1381 #: library/sys.rst:1378
msgid "``'line'``" msgid "``'line'``"
msgstr "``'line'``" msgstr "``'line'``"
#: library/sys.rst:1375 #: library/sys.rst:1372
msgid "" msgid ""
"The interpreter is about to execute a new line of code or re-execute the " "The interpreter is about to execute a new line of code or re-execute the "
"condition of a loop. The local trace function is called; *arg* is ``None``; " "condition of a loop. The local trace function is called; *arg* is ``None``; "
@ -2555,7 +2553,7 @@ msgstr ""
"désactivés pour un cadre d'exécution en mettant :attr:`f_trace_lines` à :" "désactivés pour un cadre d'exécution en mettant :attr:`f_trace_lines` à :"
"const:`False` pour ce cadre d'exécution." "const:`False` pour ce cadre d'exécution."
#: library/sys.rst:1384 #: library/sys.rst:1381
msgid "" msgid ""
"A function (or other code block) is about to return. The local trace " "A function (or other code block) is about to return. The local trace "
"function is called; *arg* is the value that will be returned, or ``None`` if " "function is called; *arg* is the value that will be returned, or ``None`` if "
@ -2567,11 +2565,11 @@ msgstr ""
"renvoyée, ou ``None`` si l'événement est causé par la levée d'une exception. " "renvoyée, ou ``None`` si l'événement est causé par la levée d'une exception. "
"La valeur renvoyée par la fonction de traçage est ignorée." "La valeur renvoyée par la fonction de traçage est ignorée."
#: library/sys.rst:1392 #: library/sys.rst:1389
msgid "``'exception'``" msgid "``'exception'``"
msgstr "``'exception'``" msgstr "``'exception'``"
#: library/sys.rst:1390 #: library/sys.rst:1387
msgid "" msgid ""
"An exception has occurred. The local trace function is called; *arg* is a " "An exception has occurred. The local trace function is called; *arg* is a "
"tuple ``(exception, value, traceback)``; the return value specifies the new " "tuple ``(exception, value, traceback)``; the return value specifies the new "
@ -2581,11 +2579,11 @@ msgstr ""
"est le triplet ``(exception, valeur, traceback)``, la valeur renvoyée " "est le triplet ``(exception, valeur, traceback)``, la valeur renvoyée "
"spécifie la nouvelle fonction de traçage locale." "spécifie la nouvelle fonction de traçage locale."
#: library/sys.rst:1400 #: library/sys.rst:1397
msgid "``'opcode'``" msgid "``'opcode'``"
msgstr "``'opcode'``" msgstr "``'opcode'``"
#: library/sys.rst:1395 #: library/sys.rst:1392
msgid "" msgid ""
"The interpreter is about to execute a new opcode (see :mod:`dis` for opcode " "The interpreter is about to execute a new opcode (see :mod:`dis` for opcode "
"details). The local trace function is called; *arg* is ``None``; the return " "details). The local trace function is called; *arg* is ``None``; the return "
@ -2600,7 +2598,7 @@ msgstr ""
"explicitement requis en mettant :attr:`f_trace_opcodes` à :const:`True` pour " "explicitement requis en mettant :attr:`f_trace_opcodes` à :const:`True` pour "
"cette *frame*." "cette *frame*."
#: library/sys.rst:1402 #: library/sys.rst:1399
msgid "" msgid ""
"Note that as an exception is propagated down the chain of callers, an " "Note that as an exception is propagated down the chain of callers, an "
"``'exception'`` event is generated at each level." "``'exception'`` event is generated at each level."
@ -2608,7 +2606,7 @@ msgstr ""
"Remarquez que, comme une exception se propage au travers de toute chaîne " "Remarquez que, comme une exception se propage au travers de toute chaîne "
"d'appelants, un événement ``'exception'`` est généré à chaque niveau." "d'appelants, un événement ``'exception'`` est généré à chaque niveau."
#: library/sys.rst:1405 #: library/sys.rst:1402
msgid "" msgid ""
"For more fine-grained usage, it's possible to set a trace function by " "For more fine-grained usage, it's possible to set a trace function by "
"assigning ``frame.f_trace = tracefunc`` explicitly, rather than relying on " "assigning ``frame.f_trace = tracefunc`` explicitly, rather than relying on "
@ -2622,19 +2620,19 @@ msgid ""
"on each frame)." "on each frame)."
msgstr "" msgstr ""
#: library/sys.rst:1416 #: library/sys.rst:1413
msgid "For more information on code and frame objects, refer to :ref:`types`." msgid "For more information on code and frame objects, refer to :ref:`types`."
msgstr "" msgstr ""
"Pour plus d'informations sur les objets code et objets représentant une " "Pour plus d'informations sur les objets code et objets représentant une "
"*frame* de la pile, consultez :ref:`types`." "*frame* de la pile, consultez :ref:`types`."
#: library/sys.rst:1418 #: library/sys.rst:1415
msgid "" msgid ""
"Raises an :ref:`auditing event <auditing>` ``sys.settrace`` with no " "Raises an :ref:`auditing event <auditing>` ``sys.settrace`` with no "
"arguments." "arguments."
msgstr "" msgstr ""
#: library/sys.rst:1422 #: library/sys.rst:1419
msgid "" msgid ""
"The :func:`settrace` function is intended only for implementing debuggers, " "The :func:`settrace` function is intended only for implementing debuggers, "
"profilers, coverage tools and the like. Its behavior is part of the " "profilers, coverage tools and the like. Its behavior is part of the "
@ -2647,7 +2645,7 @@ msgstr ""
"que de la définition du langage, et peut donc ne pas être disponible dans " "que de la définition du langage, et peut donc ne pas être disponible dans "
"toutes les implémentations de Python." "toutes les implémentations de Python."
#: library/sys.rst:1429 #: library/sys.rst:1426
msgid "" msgid ""
"``'opcode'`` event type added; :attr:`f_trace_lines` and :attr:" "``'opcode'`` event type added; :attr:`f_trace_lines` and :attr:"
"`f_trace_opcodes` attributes added to frames" "`f_trace_opcodes` attributes added to frames"
@ -2655,7 +2653,7 @@ msgstr ""
"Ajout du type dévénement ``'opcode'`` ; les attributs :attr:`f_trace_lines` " "Ajout du type dévénement ``'opcode'`` ; les attributs :attr:`f_trace_lines` "
"et :attr:`f_trace_opcodes` ont été ajoutés aux cadres d'exécution" "et :attr:`f_trace_opcodes` ont été ajoutés aux cadres d'exécution"
#: library/sys.rst:1434 #: library/sys.rst:1431
msgid "" msgid ""
"Accepts two optional keyword arguments which are callables that accept an :" "Accepts two optional keyword arguments which are callables that accept an :"
"term:`asynchronous generator iterator` as an argument. The *firstiter* " "term:`asynchronous generator iterator` as an argument. The *firstiter* "
@ -2669,25 +2667,25 @@ msgstr ""
"première fois, et l'appelable *finalizer* sera appelé lorsqu'un générateur " "première fois, et l'appelable *finalizer* sera appelé lorsqu'un générateur "
"asynchrone est sur le point d'être détruit." "asynchrone est sur le point d'être détruit."
#: library/sys.rst:1440 #: library/sys.rst:1437
msgid "" msgid ""
"Raises an :ref:`auditing event <auditing>` ``sys." "Raises an :ref:`auditing event <auditing>` ``sys."
"set_asyncgen_hooks_firstiter`` with no arguments." "set_asyncgen_hooks_firstiter`` with no arguments."
msgstr "" msgstr ""
#: library/sys.rst:1442 #: library/sys.rst:1439
msgid "" msgid ""
"Raises an :ref:`auditing event <auditing>` ``sys." "Raises an :ref:`auditing event <auditing>` ``sys."
"set_asyncgen_hooks_finalizer`` with no arguments." "set_asyncgen_hooks_finalizer`` with no arguments."
msgstr "" msgstr ""
#: library/sys.rst:1444 #: library/sys.rst:1441
msgid "" msgid ""
"Two auditing events are raised because the underlying API consists of two " "Two auditing events are raised because the underlying API consists of two "
"calls, each of which must raise its own event." "calls, each of which must raise its own event."
msgstr "" msgstr ""
#: library/sys.rst:1447 #: library/sys.rst:1444
msgid "" msgid ""
"See :pep:`525` for more details, and for a reference example of a " "See :pep:`525` for more details, and for a reference example of a "
"*finalizer* method see the implementation of ``asyncio.Loop." "*finalizer* method see the implementation of ``asyncio.Loop."
@ -2697,7 +2695,7 @@ msgstr ""
"voir l'implémentation de ``asyncio.Loop.shutdown_asyncgens`` dans :source:" "voir l'implémentation de ``asyncio.Loop.shutdown_asyncgens`` dans :source:"
"`Lib/asyncio/base_events.py`" "`Lib/asyncio/base_events.py`"
#: library/sys.rst:1459 #: library/sys.rst:1456
msgid "" msgid ""
"Allows enabling or disabling coroutine origin tracking. When enabled, the " "Allows enabling or disabling coroutine origin tracking. When enabled, the "
"``cr_origin`` attribute on coroutine objects will contain a tuple of " "``cr_origin`` attribute on coroutine objects will contain a tuple of "
@ -2712,7 +2710,7 @@ msgstr ""
"coroutine a été créé, avec l'appel le plus récent en premier. Lorsqu'il est " "coroutine a été créé, avec l'appel le plus récent en premier. Lorsqu'il est "
"désactivé, la valeur de ``cr_origin`` est ``None``." "désactivé, la valeur de ``cr_origin`` est ``None``."
#: library/sys.rst:1466 #: library/sys.rst:1463
msgid "" msgid ""
"To enable, pass a *depth* value greater than zero; this sets the number of " "To enable, pass a *depth* value greater than zero; this sets the number of "
"frames whose information will be captured. To disable, pass set *depth* to " "frames whose information will be captured. To disable, pass set *depth* to "
@ -2722,11 +2720,11 @@ msgstr ""
"le nombre de cadres d'exécution dont les informations sont capturées. Pour " "le nombre de cadres d'exécution dont les informations sont capturées. Pour "
"le désactiver, mettez *depth* à zéro." "le désactiver, mettez *depth* à zéro."
#: library/sys.rst:1470 #: library/sys.rst:1467
msgid "This setting is thread-specific." msgid "This setting is thread-specific."
msgstr "Ce paramètre est spécifique au fil d'exécution courant." msgstr "Ce paramètre est spécifique au fil d'exécution courant."
#: library/sys.rst:1480 #: library/sys.rst:1477
#, fuzzy #, fuzzy
msgid "" msgid ""
"Changes the :term:`filesystem encoding and error handler` to 'mbcs' and " "Changes the :term:`filesystem encoding and error handler` to 'mbcs' and "
@ -2736,7 +2734,7 @@ msgstr ""
"fichiers à *mbcs* et *replace* respectivement, par cohérence avec les " "fichiers à *mbcs* et *replace* respectivement, par cohérence avec les "
"versions de Python antérieures à la 3.6." "versions de Python antérieures à la 3.6."
#: library/sys.rst:1484 #: library/sys.rst:1481
msgid "" msgid ""
"This is equivalent to defining the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` " "This is equivalent to defining the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` "
"environment variable before launching Python." "environment variable before launching Python."
@ -2744,17 +2742,17 @@ msgstr ""
"Équivaut à définir la variable d'environnement :envvar:" "Équivaut à définir la variable d'environnement :envvar:"
"`PYTHONLEGACYWINDOWSFSENCODING` avant de lancer Python." "`PYTHONLEGACYWINDOWSFSENCODING` avant de lancer Python."
#: library/sys.rst:1487 #: library/sys.rst:1484
msgid "" msgid ""
"See also :func:`sys.getfilesystemencoding` and :func:`sys." "See also :func:`sys.getfilesystemencoding` and :func:`sys."
"getfilesystemencodeerrors`." "getfilesystemencodeerrors`."
msgstr "" msgstr ""
#: library/sys.rst:1492 #: library/sys.rst:1489
msgid "See :pep:`529` for more details." msgid "See :pep:`529` for more details."
msgstr "Voir la :pep:`529` pour plus d'informations." msgstr "Voir la :pep:`529` pour plus d'informations."
#: library/sys.rst:1499 #: library/sys.rst:1496
msgid "" msgid ""
":term:`File objects <file object>` used by the interpreter for standard " ":term:`File objects <file object>` used by the interpreter for standard "
"input, output and errors:" "input, output and errors:"
@ -2762,7 +2760,7 @@ msgstr ""
":term:`objets fichiers <file object>` utilisés par l'interpréteur pour " ":term:`objets fichiers <file object>` utilisés par l'interpréteur pour "
"l'entrée standard, la sortie standard et la sortie d'erreurs :" "l'entrée standard, la sortie standard et la sortie d'erreurs :"
#: library/sys.rst:1502 #: library/sys.rst:1499
msgid "" msgid ""
"``stdin`` is used for all interactive input (including calls to :func:" "``stdin`` is used for all interactive input (including calls to :func:"
"`input`);" "`input`);"
@ -2770,7 +2768,7 @@ msgstr ""
"``stdin`` est utilisé pour toutes les entrées interactives (y compris les " "``stdin`` est utilisé pour toutes les entrées interactives (y compris les "
"appels à :func:`input`)" "appels à :func:`input`)"
#: library/sys.rst:1504 #: library/sys.rst:1501
msgid "" msgid ""
"``stdout`` is used for the output of :func:`print` and :term:`expression` " "``stdout`` is used for the output of :func:`print` and :term:`expression` "
"statements and for the prompts of :func:`input`;" "statements and for the prompts of :func:`input`;"
@ -2778,13 +2776,13 @@ msgstr ""
"``stdout`` est utilisé pour la sortie de :func:`print`, des :term:" "``stdout`` est utilisé pour la sortie de :func:`print`, des :term:"
"`expression` et pour les invites de :func:`input` ;" "`expression` et pour les invites de :func:`input` ;"
#: library/sys.rst:1506 #: library/sys.rst:1503
msgid "The interpreter's own prompts and its error messages go to ``stderr``." msgid "The interpreter's own prompts and its error messages go to ``stderr``."
msgstr "" msgstr ""
"Les invites de l'interpréteur et ses messages d'erreur sont écrits sur " "Les invites de l'interpréteur et ses messages d'erreur sont écrits sur "
"``stderr``." "``stderr``."
#: library/sys.rst:1508 #: library/sys.rst:1505
msgid "" msgid ""
"These streams are regular :term:`text files <text file>` like those returned " "These streams are regular :term:`text files <text file>` like those returned "
"by the :func:`open` function. Their parameters are chosen as follows:" "by the :func:`open` function. Their parameters are chosen as follows:"
@ -2793,13 +2791,13 @@ msgstr ""
"renvoyés par la fonction :func:`open`. Leurs paramètres sont choisis comme " "renvoyés par la fonction :func:`open`. Leurs paramètres sont choisis comme "
"suit :" "suit :"
#: library/sys.rst:1512 #: library/sys.rst:1509
msgid "" msgid ""
"The encoding and error handling are is initialized from :c:member:`PyConfig." "The encoding and error handling are is initialized from :c:member:`PyConfig."
"stdio_encoding` and :c:member:`PyConfig.stdio_errors`." "stdio_encoding` and :c:member:`PyConfig.stdio_errors`."
msgstr "" msgstr ""
#: library/sys.rst:1515 #: library/sys.rst:1512
#, fuzzy #, fuzzy
msgid "" msgid ""
"On Windows, UTF-8 is used for the console device. Non-character devices " "On Windows, UTF-8 is used for the console device. Non-character devices "
@ -2821,7 +2819,7 @@ msgstr ""
"régionaux système si le processus n'est pas attaché initialement à une " "régionaux système si le processus n'est pas attaché initialement à une "
"console." "console."
#: library/sys.rst:1524 #: library/sys.rst:1521
msgid "" msgid ""
"The special behaviour of the console can be overridden by setting the " "The special behaviour of the console can be overridden by setting the "
"environment variable PYTHONLEGACYWINDOWSSTDIO before starting Python. In " "environment variable PYTHONLEGACYWINDOWSSTDIO before starting Python. In "
@ -2832,7 +2830,7 @@ msgstr ""
"Python. Dans ce cas, les pages de code de la console sont utilisées comme " "Python. Dans ce cas, les pages de code de la console sont utilisées comme "
"pour tout autre périphérique de caractères." "pour tout autre périphérique de caractères."
#: library/sys.rst:1529 #: library/sys.rst:1526
msgid "" msgid ""
"Under all platforms, you can override the character encoding by setting the :" "Under all platforms, you can override the character encoding by setting the :"
"envvar:`PYTHONIOENCODING` environment variable before starting Python or by " "envvar:`PYTHONIOENCODING` environment variable before starting Python or by "
@ -2847,7 +2845,7 @@ msgstr ""
"Toutefois, pour la console Windows, cela s'applique uniquement lorsque :" "Toutefois, pour la console Windows, cela s'applique uniquement lorsque :"
"envvar:`PYTHONLEGACYWINDOWSSTDIO` est également défini." "envvar:`PYTHONLEGACYWINDOWSSTDIO` est également défini."
#: library/sys.rst:1536 #: library/sys.rst:1533
#, fuzzy #, fuzzy
msgid "" msgid ""
"When interactive, the ``stdout`` stream is line-buffered. Otherwise, it is " "When interactive, the ``stdout`` stream is line-buffered. Otherwise, it is "
@ -2861,12 +2859,12 @@ msgstr ""
"fichiers textes classiques. Vous pouvez remplacer cette valeur avec " "fichiers textes classiques. Vous pouvez remplacer cette valeur avec "
"l'option :option:`-u` en ligne de commande." "l'option :option:`-u` en ligne de commande."
#: library/sys.rst:1542 #: library/sys.rst:1539
msgid "" msgid ""
"Non-interactive ``stderr`` is now line-buffered instead of fully buffered." "Non-interactive ``stderr`` is now line-buffered instead of fully buffered."
msgstr "" msgstr ""
#: library/sys.rst:1548 #: library/sys.rst:1545
msgid "" msgid ""
"To write or read binary data from/to the standard streams, use the " "To write or read binary data from/to the standard streams, use the "
"underlying binary :data:`~io.TextIOBase.buffer` object. For example, to " "underlying binary :data:`~io.TextIOBase.buffer` object. For example, to "
@ -2877,7 +2875,7 @@ msgstr ""
"pour écrire des octets sur :data:`stdout`, utilisez ``sys.stdout.buffer." "pour écrire des octets sur :data:`stdout`, utilisez ``sys.stdout.buffer."
"write(b'abc')``." "write(b'abc')``."
#: library/sys.rst:1552 #: library/sys.rst:1549
msgid "" msgid ""
"However, if you are writing a library (and do not control in which context " "However, if you are writing a library (and do not control in which context "
"its code will be executed), be aware that the standard streams may be " "its code will be executed), be aware that the standard streams may be "
@ -2889,7 +2887,7 @@ msgstr ""
"remplacés par des objets de type fichier tel un :class:`io.StringIO` qui " "remplacés par des objets de type fichier tel un :class:`io.StringIO` qui "
"n'ont pas l'attribut :attr:`~io.BufferedIOBase.buffer`." "n'ont pas l'attribut :attr:`~io.BufferedIOBase.buffer`."
#: library/sys.rst:1562 #: library/sys.rst:1559
msgid "" msgid ""
"These objects contain the original values of ``stdin``, ``stderr`` and " "These objects contain the original values of ``stdin``, ``stderr`` and "
"``stdout`` at the start of the program. They are used during finalization, " "``stdout`` at the start of the program. They are used during finalization, "
@ -2901,7 +2899,7 @@ msgstr ""
"pendant la finalisation, et peuvent être utiles pour écrire dans le vrai " "pendant la finalisation, et peuvent être utiles pour écrire dans le vrai "
"flux standard, peu importe si l'objet ``sys.std*`` a été redirigé." "flux standard, peu importe si l'objet ``sys.std*`` a été redirigé."
#: library/sys.rst:1567 #: library/sys.rst:1564
msgid "" msgid ""
"It can also be used to restore the actual files to known working file " "It can also be used to restore the actual files to known working file "
"objects in case they have been overwritten with a broken object. However, " "objects in case they have been overwritten with a broken object. However, "
@ -2913,7 +2911,7 @@ msgstr ""
"cependant la bonne façon de faire serait de sauvegarder explicitement les " "cependant la bonne façon de faire serait de sauvegarder explicitement les "
"flux avant de les remplacer et ainsi pouvoir les restaurer." "flux avant de les remplacer et ainsi pouvoir les restaurer."
#: library/sys.rst:1573 #: library/sys.rst:1570
msgid "" msgid ""
"Under some conditions ``stdin``, ``stdout`` and ``stderr`` as well as the " "Under some conditions ``stdin``, ``stdout`` and ``stderr`` as well as the "
"original values ``__stdin__``, ``__stdout__`` and ``__stderr__`` can be " "original values ``__stdin__``, ``__stdout__`` and ``__stderr__`` can be "
@ -2926,12 +2924,12 @@ msgstr ""
"Windows qui ne sont pas connectées à une console, ou les applications Python " "Windows qui ne sont pas connectées à une console, ou les applications Python "
"démarrées avec :program:`pythonw`." "démarrées avec :program:`pythonw`."
#: library/sys.rst:1581 #: library/sys.rst:1578
msgid "" msgid ""
"A frozenset of strings containing the names of standard library modules." "A frozenset of strings containing the names of standard library modules."
msgstr "" msgstr ""
#: library/sys.rst:1583 #: library/sys.rst:1580
msgid "" msgid ""
"It is the same on all platforms. Modules which are not available on some " "It is the same on all platforms. Modules which are not available on some "
"platforms and modules disabled at Python build are also listed. All module " "platforms and modules disabled at Python build are also listed. All module "
@ -2939,7 +2937,7 @@ msgid ""
"modules are excluded." "modules are excluded."
msgstr "" msgstr ""
#: library/sys.rst:1588 #: library/sys.rst:1585
msgid "" msgid ""
"For packages, only the main package is listed: sub-packages and sub-modules " "For packages, only the main package is listed: sub-packages and sub-modules "
"are not listed. For example, the ``email`` package is listed, but the " "are not listed. For example, the ``email`` package is listed, but the "
@ -2947,63 +2945,63 @@ msgid ""
"listed." "listed."
msgstr "" msgstr ""
#: library/sys.rst:1593 #: library/sys.rst:1590
msgid "See also the :attr:`sys.builtin_module_names` list." msgid "See also the :attr:`sys.builtin_module_names` list."
msgstr "" msgstr ""
#: library/sys.rst:1600 #: library/sys.rst:1597
msgid "" msgid ""
"A :term:`named tuple` holding information about the thread implementation." "A :term:`named tuple` holding information about the thread implementation."
msgstr "" msgstr ""
"Un :term:`named tuple` contenant des informations sur l'implémentation des " "Un :term:`named tuple` contenant des informations sur l'implémentation des "
"fils d'exécution." "fils d'exécution."
#: library/sys.rst:1608 #: library/sys.rst:1605
msgid ":const:`name`" msgid ":const:`name`"
msgstr ":const:`name`" msgstr ":const:`name`"
#: library/sys.rst:1608 #: library/sys.rst:1605
msgid "Name of the thread implementation:" msgid "Name of the thread implementation:"
msgstr "Nom de l'implémentation des fils d'exécution :" msgstr "Nom de l'implémentation des fils d'exécution :"
#: library/sys.rst:1610 #: library/sys.rst:1607
msgid "``'nt'``: Windows threads" msgid "``'nt'``: Windows threads"
msgstr "``'nt'`` : Fils d'exécution Windows" msgstr "``'nt'`` : Fils d'exécution Windows"
#: library/sys.rst:1611 #: library/sys.rst:1608
msgid "``'pthread'``: POSIX threads" msgid "``'pthread'``: POSIX threads"
msgstr "``'pthread'`` : Fils d'exécution POSIX" msgstr "``'pthread'`` : Fils d'exécution POSIX"
#: library/sys.rst:1612 #: library/sys.rst:1609
msgid "``'solaris'``: Solaris threads" msgid "``'solaris'``: Solaris threads"
msgstr "``'solaris'`` : Fils d'exécution Solaris" msgstr "``'solaris'`` : Fils d'exécution Solaris"
#: library/sys.rst:1614 #: library/sys.rst:1611
msgid ":const:`lock`" msgid ":const:`lock`"
msgstr ":const:`lock`" msgstr ":const:`lock`"
#: library/sys.rst:1614 #: library/sys.rst:1611
msgid "Name of the lock implementation:" msgid "Name of the lock implementation:"
msgstr "Nom de l'implémentation du système de verrou :" msgstr "Nom de l'implémentation du système de verrou :"
#: library/sys.rst:1616 #: library/sys.rst:1613
msgid "``'semaphore'``: a lock uses a semaphore" msgid "``'semaphore'``: a lock uses a semaphore"
msgstr "``'semaphore'`` : Verrou utilisant une sémaphore" msgstr "``'semaphore'`` : Verrou utilisant une sémaphore"
#: library/sys.rst:1617 #: library/sys.rst:1614
msgid "``'mutex+cond'``: a lock uses a mutex and a condition variable" msgid "``'mutex+cond'``: a lock uses a mutex and a condition variable"
msgstr "" msgstr ""
"``'mutex+cond'`` : Un verrou utilisant un *mutex* et une *condition variable*" "``'mutex+cond'`` : Un verrou utilisant un *mutex* et une *condition variable*"
#: library/sys.rst:1619 #: library/sys.rst:1616
msgid "``None`` if this information is unknown" msgid "``None`` if this information is unknown"
msgstr "``None`` si cette information n'est pas connue" msgstr "``None`` si cette information n'est pas connue"
#: library/sys.rst:1621 #: library/sys.rst:1618
msgid ":const:`version`" msgid ":const:`version`"
msgstr ":const:`version`" msgstr ":const:`version`"
#: library/sys.rst:1621 #: library/sys.rst:1618
msgid "" msgid ""
"Name and version of the thread library. It is a string, or ``None`` if this " "Name and version of the thread library. It is a string, or ``None`` if this "
"information is unknown." "information is unknown."
@ -3011,7 +3009,7 @@ msgstr ""
"Nom et version de l'implémentation des fils d'exécution, c'est une chaîne, " "Nom et version de l'implémentation des fils d'exécution, c'est une chaîne, "
"ou ``None`` si ces informations sont inconnues." "ou ``None`` si ces informations sont inconnues."
#: library/sys.rst:1630 #: library/sys.rst:1627
msgid "" msgid ""
"When this variable is set to an integer value, it determines the maximum " "When this variable is set to an integer value, it determines the maximum "
"number of levels of traceback information printed when an unhandled " "number of levels of traceback information printed when an unhandled "
@ -3025,55 +3023,55 @@ msgstr ""
"est égale ou inférieure à ``0``, la pile d'appels n'est pas affichée, seul " "est égale ou inférieure à ``0``, la pile d'appels n'est pas affichée, seul "
"seuls le type et la valeur de l'exception sont le sont." "seuls le type et la valeur de l'exception sont le sont."
#: library/sys.rst:1638 #: library/sys.rst:1635
msgid "Handle an unraisable exception." msgid "Handle an unraisable exception."
msgstr "" msgstr ""
#: library/sys.rst:1640 #: library/sys.rst:1637
msgid "" msgid ""
"Called when an exception has occurred but there is no way for Python to " "Called when an exception has occurred but there is no way for Python to "
"handle it. For example, when a destructor raises an exception or during " "handle it. For example, when a destructor raises an exception or during "
"garbage collection (:func:`gc.collect`)." "garbage collection (:func:`gc.collect`)."
msgstr "" msgstr ""
#: library/sys.rst:1644 #: library/sys.rst:1641
msgid "The *unraisable* argument has the following attributes:" msgid "The *unraisable* argument has the following attributes:"
msgstr "Les arguments *unraisable* ont la signification suivante :" msgstr "Les arguments *unraisable* ont la signification suivante :"
#: library/sys.rst:1646 #: library/sys.rst:1643
msgid "*exc_type*: Exception type." msgid "*exc_type*: Exception type."
msgstr "*exc_type* : le type de l'exception ;" msgstr "*exc_type* : le type de l'exception ;"
#: library/sys.rst:1647 #: library/sys.rst:1644
msgid "*exc_value*: Exception value, can be ``None``." msgid "*exc_value*: Exception value, can be ``None``."
msgstr "*exc_value*: la valeur de l'exception, peut être ``None`` ;" msgstr "*exc_value*: la valeur de l'exception, peut être ``None`` ;"
#: library/sys.rst:1648 #: library/sys.rst:1645
msgid "*exc_traceback*: Exception traceback, can be ``None``." msgid "*exc_traceback*: Exception traceback, can be ``None``."
msgstr "" msgstr ""
"*exc_traceback* : la pile d'appels pour cette exception, peut être ``None`` ;" "*exc_traceback* : la pile d'appels pour cette exception, peut être ``None`` ;"
#: library/sys.rst:1649 #: library/sys.rst:1646
msgid "*err_msg*: Error message, can be ``None``." msgid "*err_msg*: Error message, can be ``None``."
msgstr "" msgstr ""
#: library/sys.rst:1650 #: library/sys.rst:1647
msgid "*object*: Object causing the exception, can be ``None``." msgid "*object*: Object causing the exception, can be ``None``."
msgstr "" msgstr ""
#: library/sys.rst:1652 #: library/sys.rst:1649
msgid "" msgid ""
"The default hook formats *err_msg* and *object* as: ``f'{err_msg}: {object!" "The default hook formats *err_msg* and *object* as: ``f'{err_msg}: {object!"
"r}'``; use \"Exception ignored in\" error message if *err_msg* is ``None``." "r}'``; use \"Exception ignored in\" error message if *err_msg* is ``None``."
msgstr "" msgstr ""
#: library/sys.rst:1656 #: library/sys.rst:1653
msgid "" msgid ""
":func:`sys.unraisablehook` can be overridden to control how unraisable " ":func:`sys.unraisablehook` can be overridden to control how unraisable "
"exceptions are handled." "exceptions are handled."
msgstr "" msgstr ""
#: library/sys.rst:1659 #: library/sys.rst:1656
msgid "" msgid ""
"Storing *exc_value* using a custom hook can create a reference cycle. It " "Storing *exc_value* using a custom hook can create a reference cycle. It "
"should be cleared explicitly to break the reference cycle when the exception " "should be cleared explicitly to break the reference cycle when the exception "
@ -3083,7 +3081,7 @@ msgstr ""
"créer un cycle de références. *exc_value* doit être nettoyée explicitement " "créer un cycle de références. *exc_value* doit être nettoyée explicitement "
"pour casser ce cycle lorsque l'exception n'est plus nécessaire." "pour casser ce cycle lorsque l'exception n'est plus nécessaire."
#: library/sys.rst:1663 #: library/sys.rst:1660
#, fuzzy #, fuzzy
msgid "" msgid ""
"Storing *object* using a custom hook can resurrect it if it is set to an " "Storing *object* using a custom hook can resurrect it if it is set to an "
@ -3095,17 +3093,17 @@ msgstr ""
"*thread* après la fin de la fonction de rappel, pour éviter de ressusciter " "*thread* après la fin de la fonction de rappel, pour éviter de ressusciter "
"des objets." "des objets."
#: library/sys.rst:1667 #: library/sys.rst:1664
msgid "See also :func:`excepthook` which handles uncaught exceptions." msgid "See also :func:`excepthook` which handles uncaught exceptions."
msgstr "" msgstr ""
#: library/sys.rst:1669 #: library/sys.rst:1666
msgid "" msgid ""
"Raises an :ref:`auditing event <auditing>` ``sys.unraisablehook`` with " "Raises an :ref:`auditing event <auditing>` ``sys.unraisablehook`` with "
"arguments ``hook``, ``unraisable``." "arguments ``hook``, ``unraisable``."
msgstr "" msgstr ""
#: library/sys.rst:1671 #: library/sys.rst:1668
msgid "" msgid ""
"Raise an auditing event ``sys.unraisablehook`` with arguments ``hook``, " "Raise an auditing event ``sys.unraisablehook`` with arguments ``hook``, "
"``unraisable`` when an exception that cannot be handled occurs. The " "``unraisable`` when an exception that cannot be handled occurs. The "
@ -3113,7 +3111,7 @@ msgid ""
"hook has been set, ``hook`` may be ``None``." "hook has been set, ``hook`` may be ``None``."
msgstr "" msgstr ""
#: library/sys.rst:1680 #: library/sys.rst:1677
msgid "" msgid ""
"A string containing the version number of the Python interpreter plus " "A string containing the version number of the Python interpreter plus "
"additional information on the build number and compiler used. This string " "additional information on the build number and compiler used. This string "
@ -3128,7 +3126,7 @@ msgstr ""
"utilisez plutôt :data:`version_info` et les fonctions fournies par le " "utilisez plutôt :data:`version_info` et les fonctions fournies par le "
"module :mod:`platform`." "module :mod:`platform`."
#: library/sys.rst:1689 #: library/sys.rst:1686
msgid "" msgid ""
"The C API version for this interpreter. Programmers may find this useful " "The C API version for this interpreter. Programmers may find this useful "
"when debugging version conflicts between Python and extension modules." "when debugging version conflicts between Python and extension modules."
@ -3137,7 +3135,7 @@ msgstr ""
"trouver cette information utile en déboguant des conflits de versions entre " "trouver cette information utile en déboguant des conflits de versions entre "
"Python et des modules d'extension." "Python et des modules d'extension."
#: library/sys.rst:1695 #: library/sys.rst:1692
msgid "" msgid ""
"A tuple containing the five components of the version number: *major*, " "A tuple containing the five components of the version number: *major*, "
"*minor*, *micro*, *releaselevel*, and *serial*. All values except " "*minor*, *micro*, *releaselevel*, and *serial*. All values except "
@ -3155,11 +3153,11 @@ msgstr ""
"attributs sont aussi accessibles par leur nom, ainsi ``sys.version_info[0]`` " "attributs sont aussi accessibles par leur nom, ainsi ``sys.version_info[0]`` "
"est équivalent à ``sys.version_info.major``, et ainsi de suite." "est équivalent à ``sys.version_info.major``, et ainsi de suite."
#: library/sys.rst:1703 #: library/sys.rst:1700
msgid "Added named component attributes." msgid "Added named component attributes."
msgstr "Ajout des attributs nommés." msgstr "Ajout des attributs nommés."
#: library/sys.rst:1708 #: library/sys.rst:1705
msgid "" msgid ""
"This is an implementation detail of the warnings framework; do not modify " "This is an implementation detail of the warnings framework; do not modify "
"this value. Refer to the :mod:`warnings` module for more information on the " "this value. Refer to the :mod:`warnings` module for more information on the "
@ -3169,7 +3167,7 @@ msgstr ""
"Ne modifiez pas cette valeur. Reportez-vous au module :mod:`warnings` pour " "Ne modifiez pas cette valeur. Reportez-vous au module :mod:`warnings` pour "
"plus d'informations sur le gestionnaire d'avertissements." "plus d'informations sur le gestionnaire d'avertissements."
#: library/sys.rst:1715 #: library/sys.rst:1712
msgid "" msgid ""
"The version number used to form registry keys on Windows platforms. This is " "The version number used to form registry keys on Windows platforms. This is "
"stored as string resource 1000 in the Python DLL. The value is normally the " "stored as string resource 1000 in the Python DLL. The value is normally the "
@ -3184,7 +3182,7 @@ msgstr ""
"d'information, et la modifier n'a aucun effet sur les clés de registre " "d'information, et la modifier n'a aucun effet sur les clés de registre "
"utilisées par Python." "utilisées par Python."
#: library/sys.rst:1726 #: library/sys.rst:1723
msgid "" msgid ""
"A dictionary of the various implementation-specific flags passed through " "A dictionary of the various implementation-specific flags passed through "
"the :option:`-X` command-line option. Option names are either mapped to " "the :option:`-X` command-line option. Option names are either mapped to "
@ -3195,7 +3193,7 @@ msgstr ""
"correspondent soit leur valeur, si elle est donnée explicitement, soit à :" "correspondent soit leur valeur, si elle est donnée explicitement, soit à :"
"const:`True`. Exemple :" "const:`True`. Exemple :"
#: library/sys.rst:1742 #: library/sys.rst:1739
msgid "" msgid ""
"This is a CPython-specific way of accessing options passed through :option:`-" "This is a CPython-specific way of accessing options passed through :option:`-"
"X`. Other implementations may export them through other means, or not at " "X`. Other implementations may export them through other means, or not at "
@ -3205,11 +3203,11 @@ msgstr ""
"l'option :option:`-X`. D'autres implémentations pourraient les exposer par " "l'option :option:`-X`. D'autres implémentations pourraient les exposer par "
"d'autres moyens, ou pas du tout." "d'autres moyens, ou pas du tout."
#: library/sys.rst:1750 #: library/sys.rst:1747
msgid "Citations" msgid "Citations"
msgstr "Citations" msgstr "Citations"
#: library/sys.rst:1751 #: library/sys.rst:1748
msgid "" msgid ""
"ISO/IEC 9899:1999. \"Programming languages -- C.\" A public draft of this " "ISO/IEC 9899:1999. \"Programming languages -- C.\" A public draft of this "
"standard is available at http://www.open-std.org/jtc1/sc22/wg14/www/docs/" "standard is available at http://www.open-std.org/jtc1/sc22/wg14/www/docs/"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -85,11 +85,11 @@ msgstr ""
msgid "Example of usage::" msgid "Example of usage::"
msgstr "Exemples d'utilisation ::" msgstr "Exemples d'utilisation ::"
#: library/sysconfig.rst:65 #: library/sysconfig.rst:66
msgid "Installation paths" msgid "Installation paths"
msgstr "" msgstr ""
#: library/sysconfig.rst:67 #: library/sysconfig.rst:68
msgid "" msgid ""
"Python uses an installation scheme that differs depending on the platform " "Python uses an installation scheme that differs depending on the platform "
"and on the installation options. These schemes are stored in :mod:" "and on the installation options. These schemes are stored in :mod:"
@ -97,124 +97,128 @@ msgid ""
"`os.name`." "`os.name`."
msgstr "" msgstr ""
#: library/sysconfig.rst:71 #: library/sysconfig.rst:72
msgid "" msgid ""
"Every new component that is installed using :mod:`distutils` or a Distutils-" "Every new component that is installed using :mod:`distutils` or a Distutils-"
"based system will follow the same scheme to copy its file in the right " "based system will follow the same scheme to copy its file in the right "
"places." "places."
msgstr "" msgstr ""
#: library/sysconfig.rst:75 #: library/sysconfig.rst:76
msgid "Python currently supports seven schemes:" msgid "Python currently supports six schemes:"
msgstr "" msgstr ""
#: library/sysconfig.rst:77 #: library/sysconfig.rst:78
msgid "" msgid ""
"*posix_prefix*: scheme for POSIX platforms like Linux or macOS. This is the " "*posix_prefix*: scheme for POSIX platforms like Linux or macOS. This is the "
"default scheme used when Python or a component is installed." "default scheme used when Python or a component is installed."
msgstr "" msgstr ""
#: library/sysconfig.rst:79 #: library/sysconfig.rst:80
msgid "" msgid ""
"*posix_home*: scheme for POSIX platforms used when a *home* option is used " "*posix_home*: scheme for POSIX platforms used when a *home* option is used "
"upon installation. This scheme is used when a component is installed " "upon installation. This scheme is used when a component is installed "
"through Distutils with a specific home prefix." "through Distutils with a specific home prefix."
msgstr "" msgstr ""
#: library/sysconfig.rst:82 #: library/sysconfig.rst:83
msgid "" msgid ""
"*posix_user*: scheme for POSIX platforms used when a component is installed " "*posix_user*: scheme for POSIX platforms used when a component is installed "
"through Distutils and the *user* option is used. This scheme defines paths " "through Distutils and the *user* option is used. This scheme defines paths "
"located under the user home directory." "located under the user home directory."
msgstr "" msgstr ""
#: library/sysconfig.rst:85 #: library/sysconfig.rst:86
msgid "*nt*: scheme for NT platforms like Windows." msgid "*nt*: scheme for NT platforms like Windows."
msgstr "" msgstr ""
#: library/sysconfig.rst:86 #: library/sysconfig.rst:87
msgid "*nt_user*: scheme for NT platforms, when the *user* option is used." msgid "*nt_user*: scheme for NT platforms, when the *user* option is used."
msgstr "" msgstr ""
#: library/sysconfig.rst:88 #: library/sysconfig.rst:88
msgid "*osx_framework_user*: scheme for macOS, when the *user* option is used."
msgstr ""
#: library/sysconfig.rst:90
msgid "" msgid ""
"Each scheme is itself composed of a series of paths and each path has a " "Each scheme is itself composed of a series of paths and each path has a "
"unique identifier. Python currently uses eight paths:" "unique identifier. Python currently uses eight paths:"
msgstr "" msgstr ""
#: library/sysconfig.rst:91 #: library/sysconfig.rst:93
msgid "" msgid ""
"*stdlib*: directory containing the standard Python library files that are " "*stdlib*: directory containing the standard Python library files that are "
"not platform-specific." "not platform-specific."
msgstr "" msgstr ""
#: library/sysconfig.rst:93 #: library/sysconfig.rst:95
msgid "" msgid ""
"*platstdlib*: directory containing the standard Python library files that " "*platstdlib*: directory containing the standard Python library files that "
"are platform-specific." "are platform-specific."
msgstr "" msgstr ""
#: library/sysconfig.rst:95 #: library/sysconfig.rst:97
msgid "*platlib*: directory for site-specific, platform-specific files." msgid "*platlib*: directory for site-specific, platform-specific files."
msgstr "" msgstr ""
#: library/sysconfig.rst:96 #: library/sysconfig.rst:98
msgid "*purelib*: directory for site-specific, non-platform-specific files." msgid "*purelib*: directory for site-specific, non-platform-specific files."
msgstr "" msgstr ""
#: library/sysconfig.rst:97 #: library/sysconfig.rst:99
msgid "*include*: directory for non-platform-specific header files." msgid "*include*: directory for non-platform-specific header files."
msgstr "" msgstr ""
#: library/sysconfig.rst:98 #: library/sysconfig.rst:100
msgid "*platinclude*: directory for platform-specific header files." msgid "*platinclude*: directory for platform-specific header files."
msgstr "" msgstr ""
#: library/sysconfig.rst:99 #: library/sysconfig.rst:101
msgid "*scripts*: directory for script files." msgid "*scripts*: directory for script files."
msgstr "" msgstr ""
#: library/sysconfig.rst:100 #: library/sysconfig.rst:102
msgid "*data*: directory for data files." msgid "*data*: directory for data files."
msgstr "" msgstr ""
#: library/sysconfig.rst:102 #: library/sysconfig.rst:104
msgid ":mod:`sysconfig` provides some functions to determine these paths." msgid ":mod:`sysconfig` provides some functions to determine these paths."
msgstr "" msgstr ""
#: library/sysconfig.rst:106 #: library/sysconfig.rst:108
msgid "" msgid ""
"Return a tuple containing all schemes currently supported in :mod:" "Return a tuple containing all schemes currently supported in :mod:"
"`sysconfig`." "`sysconfig`."
msgstr "" msgstr ""
#: library/sysconfig.rst:112 #: library/sysconfig.rst:114
msgid "Return the default scheme name for the current platform." msgid "Return the default scheme name for the current platform."
msgstr "" msgstr ""
#: library/sysconfig.rst:114 #: library/sysconfig.rst:116
msgid "" msgid ""
"This function was previously named ``_get_default_scheme()`` and considered " "This function was previously named ``_get_default_scheme()`` and considered "
"an implementation detail." "an implementation detail."
msgstr "" msgstr ""
#: library/sysconfig.rst:121 #: library/sysconfig.rst:123
msgid "" msgid ""
"Return a preferred scheme name for an installation layout specified by *key*." "Return a preferred scheme name for an installation layout specified by *key*."
msgstr "" msgstr ""
#: library/sysconfig.rst:123 #: library/sysconfig.rst:125
msgid "*key* must be either ``\"prefix\"``, ``\"home\"``, or ``\"user\"``." msgid "*key* must be either ``\"prefix\"``, ``\"home\"``, or ``\"user\"``."
msgstr "" msgstr ""
#: library/sysconfig.rst:125 #: library/sysconfig.rst:127
msgid "" msgid ""
"The return value is a scheme name listed in :func:`get_scheme_names`. It can " "The return value is a scheme name listed in :func:`get_scheme_names`. It can "
"be passed to :mod:`sysconfig` functions that take a *scheme* argument, such " "be passed to :mod:`sysconfig` functions that take a *scheme* argument, such "
"as :func:`get_paths`." "as :func:`get_paths`."
msgstr "" msgstr ""
#: library/sysconfig.rst:134 #: library/sysconfig.rst:136
msgid "" msgid ""
"Return a dict containing preferred scheme names on the current platform. " "Return a dict containing preferred scheme names on the current platform. "
"Python implementers and redistributors may add their preferred schemes to " "Python implementers and redistributors may add their preferred schemes to "
@ -224,109 +228,109 @@ msgid ""
"mix with those by the other." "mix with those by the other."
msgstr "" msgstr ""
#: library/sysconfig.rst:141 #: library/sysconfig.rst:143
msgid "" msgid ""
"End users should not use this function, but :func:`get_default_scheme` and :" "End users should not use this function, but :func:`get_default_scheme` and :"
"func:`get_preferred_scheme()` instead." "func:`get_preferred_scheme()` instead."
msgstr "" msgstr ""
#: library/sysconfig.rst:149 #: library/sysconfig.rst:151
msgid "" msgid ""
"Return a tuple containing all path names currently supported in :mod:" "Return a tuple containing all path names currently supported in :mod:"
"`sysconfig`." "`sysconfig`."
msgstr "" msgstr ""
#: library/sysconfig.rst:155 #: library/sysconfig.rst:157
msgid "" msgid ""
"Return an installation path corresponding to the path *name*, from the " "Return an installation path corresponding to the path *name*, from the "
"install scheme named *scheme*." "install scheme named *scheme*."
msgstr "" msgstr ""
#: library/sysconfig.rst:158 #: library/sysconfig.rst:160
msgid "" msgid ""
"*name* has to be a value from the list returned by :func:`get_path_names`." "*name* has to be a value from the list returned by :func:`get_path_names`."
msgstr "" msgstr ""
#: library/sysconfig.rst:160 #: library/sysconfig.rst:162
msgid "" msgid ""
":mod:`sysconfig` stores installation paths corresponding to each path name, " ":mod:`sysconfig` stores installation paths corresponding to each path name, "
"for each platform, with variables to be expanded. For instance the *stdlib* " "for each platform, with variables to be expanded. For instance the *stdlib* "
"path for the *nt* scheme is: ``{base}/Lib``." "path for the *nt* scheme is: ``{base}/Lib``."
msgstr "" msgstr ""
#: library/sysconfig.rst:164 #: library/sysconfig.rst:166
msgid "" msgid ""
":func:`get_path` will use the variables returned by :func:`get_config_vars` " ":func:`get_path` will use the variables returned by :func:`get_config_vars` "
"to expand the path. All variables have default values for each platform so " "to expand the path. All variables have default values for each platform so "
"one may call this function and get the default value." "one may call this function and get the default value."
msgstr "" msgstr ""
#: library/sysconfig.rst:168 #: library/sysconfig.rst:170
msgid "" msgid ""
"If *scheme* is provided, it must be a value from the list returned by :func:" "If *scheme* is provided, it must be a value from the list returned by :func:"
"`get_scheme_names`. Otherwise, the default scheme for the current platform " "`get_scheme_names`. Otherwise, the default scheme for the current platform "
"is used." "is used."
msgstr "" msgstr ""
#: library/sysconfig.rst:172 #: library/sysconfig.rst:174
msgid "" msgid ""
"If *vars* is provided, it must be a dictionary of variables that will update " "If *vars* is provided, it must be a dictionary of variables that will update "
"the dictionary return by :func:`get_config_vars`." "the dictionary return by :func:`get_config_vars`."
msgstr "" msgstr ""
#: library/sysconfig.rst:175 #: library/sysconfig.rst:177
msgid "" msgid ""
"If *expand* is set to ``False``, the path will not be expanded using the " "If *expand* is set to ``False``, the path will not be expanded using the "
"variables." "variables."
msgstr "" msgstr ""
#: library/sysconfig.rst:178 #: library/sysconfig.rst:180
msgid "If *name* is not found, raise a :exc:`KeyError`." msgid "If *name* is not found, raise a :exc:`KeyError`."
msgstr "" msgstr ""
#: library/sysconfig.rst:183 #: library/sysconfig.rst:185
msgid "" msgid ""
"Return a dictionary containing all installation paths corresponding to an " "Return a dictionary containing all installation paths corresponding to an "
"installation scheme. See :func:`get_path` for more information." "installation scheme. See :func:`get_path` for more information."
msgstr "" msgstr ""
#: library/sysconfig.rst:186 #: library/sysconfig.rst:188
msgid "" msgid ""
"If *scheme* is not provided, will use the default scheme for the current " "If *scheme* is not provided, will use the default scheme for the current "
"platform." "platform."
msgstr "" msgstr ""
#: library/sysconfig.rst:189 #: library/sysconfig.rst:191
msgid "" msgid ""
"If *vars* is provided, it must be a dictionary of variables that will update " "If *vars* is provided, it must be a dictionary of variables that will update "
"the dictionary used to expand the paths." "the dictionary used to expand the paths."
msgstr "" msgstr ""
#: library/sysconfig.rst:192 #: library/sysconfig.rst:194
msgid "If *expand* is set to false, the paths will not be expanded." msgid "If *expand* is set to false, the paths will not be expanded."
msgstr "" msgstr ""
#: library/sysconfig.rst:194 #: library/sysconfig.rst:196
msgid "" msgid ""
"If *scheme* is not an existing scheme, :func:`get_paths` will raise a :exc:" "If *scheme* is not an existing scheme, :func:`get_paths` will raise a :exc:"
"`KeyError`." "`KeyError`."
msgstr "" msgstr ""
#: library/sysconfig.rst:199 #: library/sysconfig.rst:201
msgid "Other functions" msgid "Other functions"
msgstr "Autres fonctions" msgstr "Autres fonctions"
#: library/sysconfig.rst:203 #: library/sysconfig.rst:205
msgid "" msgid ""
"Return the ``MAJOR.MINOR`` Python version number as a string. Similar to " "Return the ``MAJOR.MINOR`` Python version number as a string. Similar to "
"``'%d.%d' % sys.version_info[:2]``." "``'%d.%d' % sys.version_info[:2]``."
msgstr "" msgstr ""
#: library/sysconfig.rst:209 #: library/sysconfig.rst:211
msgid "Return a string that identifies the current platform." msgid "Return a string that identifies the current platform."
msgstr "" msgstr ""
#: library/sysconfig.rst:211 #: library/sysconfig.rst:213
msgid "" msgid ""
"This is used mainly to distinguish platform-specific build directories and " "This is used mainly to distinguish platform-specific build directories and "
"platform-specific built distributions. Typically includes the OS name and " "platform-specific built distributions. Typically includes the OS name and "
@ -335,99 +339,99 @@ msgid ""
"version isn't particularly important." "version isn't particularly important."
msgstr "" msgstr ""
#: library/sysconfig.rst:217 #: library/sysconfig.rst:219
msgid "Examples of returned values:" msgid "Examples of returned values:"
msgstr "Exemples de valeurs renvoyées :" msgstr "Exemples de valeurs renvoyées :"
#: library/sysconfig.rst:219 #: library/sysconfig.rst:221
msgid "linux-i586" msgid "linux-i586"
msgstr "linux-i586" msgstr "linux-i586"
#: library/sysconfig.rst:220 #: library/sysconfig.rst:222
msgid "linux-alpha (?)" msgid "linux-alpha (?)"
msgstr "linux-alpha (?)" msgstr "linux-alpha (?)"
#: library/sysconfig.rst:221 #: library/sysconfig.rst:223
msgid "solaris-2.6-sun4u" msgid "solaris-2.6-sun4u"
msgstr "solaris-2.6-sun4u" msgstr "solaris-2.6-sun4u"
#: library/sysconfig.rst:223 #: library/sysconfig.rst:225
msgid "Windows will return one of:" msgid "Windows will return one of:"
msgstr "" msgstr ""
#: library/sysconfig.rst:225 #: library/sysconfig.rst:227
msgid "win-amd64 (64bit Windows on AMD64, aka x86_64, Intel64, and EM64T)" msgid "win-amd64 (64bit Windows on AMD64, aka x86_64, Intel64, and EM64T)"
msgstr "" msgstr ""
#: library/sysconfig.rst:226 #: library/sysconfig.rst:228
msgid "win32 (all others - specifically, sys.platform is returned)" msgid "win32 (all others - specifically, sys.platform is returned)"
msgstr "" msgstr ""
#: library/sysconfig.rst:228 #: library/sysconfig.rst:230
msgid "macOS can return:" msgid "macOS can return:"
msgstr "" msgstr ""
#: library/sysconfig.rst:230 #: library/sysconfig.rst:232
msgid "macosx-10.6-ppc" msgid "macosx-10.6-ppc"
msgstr "macosx-10.6-ppc" msgstr "macosx-10.6-ppc"
#: library/sysconfig.rst:231 #: library/sysconfig.rst:233
msgid "macosx-10.4-ppc64" msgid "macosx-10.4-ppc64"
msgstr "macosx-10.4-ppc64" msgstr "macosx-10.4-ppc64"
#: library/sysconfig.rst:232 #: library/sysconfig.rst:234
msgid "macosx-10.3-i386" msgid "macosx-10.3-i386"
msgstr "macosx-10.3-i386" msgstr "macosx-10.3-i386"
#: library/sysconfig.rst:233 #: library/sysconfig.rst:235
msgid "macosx-10.4-fat" msgid "macosx-10.4-fat"
msgstr "macosx-10.4-fat" msgstr "macosx-10.4-fat"
#: library/sysconfig.rst:235 #: library/sysconfig.rst:237
msgid "" msgid ""
"For other non-POSIX platforms, currently just returns :data:`sys.platform`." "For other non-POSIX platforms, currently just returns :data:`sys.platform`."
msgstr "" msgstr ""
#: library/sysconfig.rst:240 #: library/sysconfig.rst:242
msgid "" msgid ""
"Return ``True`` if the running Python interpreter was built from source and " "Return ``True`` if the running Python interpreter was built from source and "
"is being run from its built location, and not from a location resulting from " "is being run from its built location, and not from a location resulting from "
"e.g. running ``make install`` or installing via a binary installer." "e.g. running ``make install`` or installing via a binary installer."
msgstr "" msgstr ""
#: library/sysconfig.rst:247 #: library/sysconfig.rst:249
msgid "Parse a :file:`config.h`\\-style file." msgid "Parse a :file:`config.h`\\-style file."
msgstr "" msgstr ""
#: library/sysconfig.rst:249 #: library/sysconfig.rst:251
msgid "" msgid ""
"*fp* is a file-like object pointing to the :file:`config.h`\\-like file." "*fp* is a file-like object pointing to the :file:`config.h`\\-like file."
msgstr "" msgstr ""
#: library/sysconfig.rst:251 #: library/sysconfig.rst:253
msgid "" msgid ""
"A dictionary containing name/value pairs is returned. If an optional " "A dictionary containing name/value pairs is returned. If an optional "
"dictionary is passed in as the second argument, it is used instead of a new " "dictionary is passed in as the second argument, it is used instead of a new "
"dictionary, and updated with the values read in the file." "dictionary, and updated with the values read in the file."
msgstr "" msgstr ""
#: library/sysconfig.rst:258 #: library/sysconfig.rst:260
msgid "Return the path of :file:`pyconfig.h`." msgid "Return the path of :file:`pyconfig.h`."
msgstr "" msgstr ""
#: library/sysconfig.rst:262 #: library/sysconfig.rst:264
msgid "Return the path of :file:`Makefile`." msgid "Return the path of :file:`Makefile`."
msgstr "" msgstr ""
#: library/sysconfig.rst:266 #: library/sysconfig.rst:268
msgid "Using :mod:`sysconfig` as a script" msgid "Using :mod:`sysconfig` as a script"
msgstr "" msgstr ""
#: library/sysconfig.rst:268 #: library/sysconfig.rst:270
msgid "You can use :mod:`sysconfig` as a script with Python's *-m* option:" msgid "You can use :mod:`sysconfig` as a script with Python's *-m* option:"
msgstr "" msgstr ""
#: library/sysconfig.rst:294 #: library/sysconfig.rst:296
msgid "" msgid ""
"This call will print in the standard output the information returned by :" "This call will print in the standard output the information returned by :"
"func:`get_platform`, :func:`get_python_version`, :func:`get_path` and :func:" "func:`get_platform`, :func:`get_python_version`, :func:`get_path` and :func:"

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-04-27 15:01+0200\n" "PO-Revision-Date: 2021-04-27 15:01+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n" "Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -403,10 +403,11 @@ msgid "Stop the test run on the first error or failure."
msgstr "Arrête l'exécution des tests lors du premier cas d'erreur ou d'échec." msgstr "Arrête l'exécution des tests lors du premier cas d'erreur ou d'échec."
#: library/unittest.rst:224 #: library/unittest.rst:224
#, fuzzy
msgid "" msgid ""
"Only run test methods and classes that match the pattern or substring. This " "Only run test methods and classes that match the pattern or substring. This "
"option may be used multiple times, in which case all test cases that match " "option may be used multiple times, in which case all test cases that match "
"of the given patterns are included." "any of the given patterns are included."
msgstr "" msgstr ""
"Exécute uniquement les méthodes de test et les classes qui correspondent au " "Exécute uniquement les méthodes de test et les classes qui correspondent au "
"motif ou à la chaîne de caractères. Cette option peut être utilisée " "motif ou à la chaîne de caractères. Cette option peut être utilisée "

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-11-04 18:14+0100\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-10-21 23:42+0200\n" "PO-Revision-Date: 2021-10-21 23:42+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n" "Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1180,16 +1180,17 @@ msgid "Generator functions"
msgstr "Fonctions générateurs" msgstr "Fonctions générateurs"
#: reference/datamodel.rst:649 #: reference/datamodel.rst:649
#, fuzzy
msgid "" msgid ""
"A function or method which uses the :keyword:`yield` statement (see section :" "A function or method which uses the :keyword:`yield` statement (see section :"
"ref:`yield`) is called a :dfn:`generator function`. Such a function, when " "ref:`yield`) is called a :dfn:`generator function`. Such a function, when "
"called, always returns an iterator object which can be used to execute the " "called, always returns an :term:`iterator` object which can be used to "
"body of the function: calling the iterator's :meth:`iterator.__next__` " "execute the body of the function: calling the iterator's :meth:`iterator."
"method will cause the function to execute until it provides a value using " "__next__` method will cause the function to execute until it provides a "
"the :keyword:`!yield` statement. When the function executes a :keyword:" "value using the :keyword:`!yield` statement. When the function executes a :"
"`return` statement or falls off the end, a :exc:`StopIteration` exception is " "keyword:`return` statement or falls off the end, a :exc:`StopIteration` "
"raised and the iterator will have reached the end of the set of values to be " "exception is raised and the iterator will have reached the end of the set of "
"returned." "values to be returned."
msgstr "" msgstr ""
"Une fonction ou une méthode qui utilise l'instruction :keyword:`yield` (voir " "Une fonction ou une méthode qui utilise l'instruction :keyword:`yield` (voir "
"la section :ref:`yield`) est appelée :dfn:`fonction générateur`. Une telle " "la section :ref:`yield`) est appelée :dfn:`fonction générateur`. Une telle "
@ -1224,12 +1225,13 @@ msgid "Asynchronous generator functions"
msgstr "Fonctions générateurs asynchrones" msgstr "Fonctions générateurs asynchrones"
#: reference/datamodel.rst:674 #: reference/datamodel.rst:674
#, fuzzy
msgid "" msgid ""
"A function or method which is defined using :keyword:`async def` and which " "A function or method which is defined using :keyword:`async def` and which "
"uses the :keyword:`yield` statement is called a :dfn:`asynchronous generator " "uses the :keyword:`yield` statement is called a :dfn:`asynchronous generator "
"function`. Such a function, when called, returns an asynchronous iterator " "function`. Such a function, when called, returns an :term:`asynchronous "
"object which can be used in an :keyword:`async for` statement to execute the " "iterator` object which can be used in an :keyword:`async for` statement to "
"body of the function." "execute the body of the function."
msgstr "" msgstr ""
"Une fonction ou une méthode définie avec :keyword:`async def` et qui utilise " "Une fonction ou une méthode définie avec :keyword:`async def` et qui utilise "
"l'instruction :keyword:`yield` est appelée :dfn:`fonction générateur " "l'instruction :keyword:`yield` est appelée :dfn:`fonction générateur "
@ -3533,7 +3535,7 @@ msgstr ""
"qui est utilisé à la place de la classe de base. Le *n*-uplet peut être " "qui est utilisé à la place de la classe de base. Le *n*-uplet peut être "
"vide, dans ce cas la classe de base originale est ignorée." "vide, dans ce cas la classe de base originale est ignorée."
#: reference/datamodel.rst:2198 #: reference/datamodel.rst:2008
msgid ":pep:`560` - Core support for typing module and generic types" msgid ":pep:`560` - Core support for typing module and generic types"
msgstr "" msgstr ""
":pep:`560` — Gestion de base pour les types modules et les types génériques" ":pep:`560` — Gestion de base pour les types modules et les types génériques"
@ -3882,14 +3884,48 @@ msgstr "Émulation de types génériques"
#: reference/datamodel.rst:2183 #: reference/datamodel.rst:2183
msgid "" msgid ""
"One can implement the generic class syntax as specified by :pep:`484` (for " "When using :term:`type annotations<annotation>`, it is often useful to "
"example ``List[int]``) by defining a special method:" "*parameterize* a :term:`generic type` using Python's square-brackets "
"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 "" msgstr ""
"Vous pouvez implémenter la syntaxe générique des classes comme spécifié par "
"la :pep:`484` (par exemple ``List[int]``) en définissant une méthode "
"spéciale :"
#: reference/datamodel.rst:2188 #: reference/datamodel.rst:2191
#, fuzzy
msgid ":pep:`484` - Type Hints"
msgstr ":pep:`343` — L'instruction ``with``"
#: reference/datamodel.rst:2191
msgid "Introducing Python's framework for type annotations"
msgstr ""
#: reference/datamodel.rst:2194
msgid ":ref:`Generic Alias Types<types-genericalias>`"
msgstr ""
#: reference/datamodel.rst:2194
msgid "Documentation for objects representing parameterized generic classes"
msgstr ""
#: reference/datamodel.rst:2197
msgid ""
":ref:`Generics`, :ref:`user-defined generics<user-defined-generics>` and :"
"class:`typing.Generic`"
msgstr ""
#: reference/datamodel.rst:2197
msgid ""
"Documentation on how to implement generic classes that can be parameterized "
"at runtime and understood by static type-checkers."
msgstr ""
#: reference/datamodel.rst:2200
msgid ""
"A class can *generally* only be parameterized if it defines the special "
"class method ``__class_getitem__()``."
msgstr ""
#: reference/datamodel.rst:2205
msgid "" msgid ""
"Return an object representing the specialization of a generic class by type " "Return an object representing the specialization of a generic class by type "
"arguments found in *key*." "arguments found in *key*."
@ -3897,24 +3933,97 @@ msgstr ""
"Renvoie un objet représentant la spécialisation d'une classe générique en " "Renvoie un objet représentant la spécialisation d'une classe générique en "
"fonction des arguments types trouvés dans *key*." "fonction des arguments types trouvés dans *key*."
#: reference/datamodel.rst:2191 #: reference/datamodel.rst:2208
msgid "" msgid ""
"This method is looked up on the class object itself, and when defined in the " "When defined on a class, ``__class_getitem__()`` is automatically a class "
"class body, this method is implicitly a class method. Note, this mechanism " "method. As such, there is no need for it to be decorated with :func:"
"is primarily reserved for use with static type hints, other usage is " "`@classmethod<classmethod>` when it is defined."
"discouraged."
msgstr "" msgstr ""
"Python recherche cette méthode dans l'objet de classe lui-même et, "
"lorsqu'elle est définie dans le corps de la classe, cette méthode est "
"implicitement une méthode de classe. Notez que ce mécanisme est "
"principalement réservé à une utilisation avec des indications de type "
"statiques, d'autres utilisations sont déconseillées."
#: reference/datamodel.rst:2204 #: reference/datamodel.rst:2214
msgid "The purpose of *__class_getitem__*"
msgstr ""
#: reference/datamodel.rst:2216
msgid ""
"The purpose of :meth:`~object.__class_getitem__` is to allow runtime "
"parameterization of standard-library generic classes in order to more easily "
"apply :term:`type hints<type hint>` to these classes."
msgstr ""
#: reference/datamodel.rst:2220
msgid ""
"To implement custom generic classes that can be parameterized at runtime and "
"understood by static type-checkers, users should either inherit from a "
"standard library class that already implements :meth:`~object."
"__class_getitem__`, or inherit from :class:`typing.Generic`, which has its "
"own implementation of ``__class_getitem__()``."
msgstr ""
#: reference/datamodel.rst:2226
msgid ""
"Custom implementations of :meth:`~object.__class_getitem__` on classes "
"defined outside of the standard library may not be understood by third-party "
"type-checkers such as mypy. Using ``__class_getitem__()`` on any class for "
"purposes other than type hinting is discouraged."
msgstr ""
#: reference/datamodel.rst:2236
msgid "*__class_getitem__* versus *__getitem__*"
msgstr ""
#: reference/datamodel.rst:2238
msgid ""
"Usually, the :ref:`subscription<subscriptions>` of an object using square "
"brackets will call the :meth:`~object.__getitem__` instance method defined "
"on the object's class. However, if the object being subscribed is itself a "
"class, the class method :meth:`~object.__class_getitem__` may be called "
"instead. ``__class_getitem__()`` should return a :ref:`GenericAlias<types-"
"genericalias>` object if it is properly defined."
msgstr ""
#: reference/datamodel.rst:2245
msgid ""
"Presented with the :term:`expression` ``obj[x]``, the Python interpreter "
"follows something like the following process to decide whether :meth:"
"`~object.__getitem__` or :meth:`~object.__class_getitem__` should be called::"
msgstr ""
#: reference/datamodel.rst:2273
msgid ""
"In Python, all classes are themselves instances of other classes. The class "
"of a class is known as that class's :term:`metaclass`, and most classes have "
"the :class:`type` class as their metaclass. :class:`type` does not define :"
"meth:`~object.__getitem__`, meaning that expressions such as ``list[int]``, "
"``dict[str, float]`` and ``tuple[str, bytes]`` all result in :meth:`~object."
"__class_getitem__` being called::"
msgstr ""
#: reference/datamodel.rst:2292
msgid ""
"However, if a class has a custom metaclass that defines :meth:`~object."
"__getitem__`, subscribing the class may result in different behaviour. An "
"example of this can be found in the :mod:`enum` module::"
msgstr ""
#: reference/datamodel.rst:2317
#, 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"
#: reference/datamodel.rst:2316
msgid ""
"Introducing :meth:`~object.__class_getitem__`, and outlining when a :ref:"
"`subscription<subscriptions>` results in ``__class_getitem__()`` being "
"called instead of :meth:`~object.__getitem__`"
msgstr ""
#: reference/datamodel.rst:2324
msgid "Emulating callable objects" msgid "Emulating callable objects"
msgstr "Émulation d'objets appelables" msgstr "Émulation d'objets appelables"
#: reference/datamodel.rst:2211 #: reference/datamodel.rst:2331
msgid "" msgid ""
"Called when the instance is \"called\" as a function; if this method is " "Called when the instance is \"called\" as a function; if this method is "
"defined, ``x(arg1, arg2, ...)`` roughly translates to ``type(x).__call__(x, " "defined, ``x(arg1, arg2, ...)`` roughly translates to ``type(x).__call__(x, "
@ -3924,11 +4033,11 @@ msgstr ""
"méthode est définie, ``x(arg1, arg2, …)`` est un raccourci pour ``type(x)." "méthode est définie, ``x(arg1, arg2, …)`` est un raccourci pour ``type(x)."
"__call__(x, arg1, …)``." "__call__(x, arg1, …)``."
#: reference/datamodel.rst:2218 #: reference/datamodel.rst:2338
msgid "Emulating container types" msgid "Emulating container types"
msgstr "Émulation de types conteneurs" msgstr "Émulation de types conteneurs"
#: reference/datamodel.rst:2220 #: reference/datamodel.rst:2340
msgid "" msgid ""
"The following methods can be defined to implement container objects. " "The following methods can be defined to implement container objects. "
"Containers usually are sequences (such as lists or tuples) or mappings (like " "Containers usually are sequences (such as lists or tuples) or mappings (like "
@ -3995,7 +4104,7 @@ msgstr ""
"de correspondances, :meth:`__iter__` doit itérer sur les clés de l'objet ; " "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." "pour les séquences, elle doit itérer sur les valeurs."
#: reference/datamodel.rst:2255 #: reference/datamodel.rst:2375
msgid "" msgid ""
"Called to implement the built-in function :func:`len`. Should return the " "Called to implement the built-in function :func:`len`. Should return the "
"length of the object, an integer ``>=`` 0. Also, an object that doesn't " "length of the object, an integer ``>=`` 0. Also, an object that doesn't "
@ -4007,7 +4116,7 @@ msgstr ""
"définit pas de méthode :meth:`__bool__` et dont la méthode :meth:`__len__` " "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." "renvoie zéro est considéré comme valant ``False`` dans un contexte booléen."
#: reference/datamodel.rst:2262 #: reference/datamodel.rst:2382
msgid "" msgid ""
"In CPython, the length is required to be at most :attr:`sys.maxsize`. If the " "In CPython, the length is required to be at most :attr:`sys.maxsize`. If the "
"length is larger than :attr:`!sys.maxsize` some features (such as :func:" "length is larger than :attr:`!sys.maxsize` some features (such as :func:"
@ -4021,7 +4130,7 @@ msgstr ""
"exc:`!OverflowError` lors de tests booléens, un objet doit définir la " "exc:`!OverflowError` lors de tests booléens, un objet doit définir la "
"méthode :meth:`__bool__`." "méthode :meth:`__bool__`."
#: reference/datamodel.rst:2271 #: reference/datamodel.rst:2391
msgid "" msgid ""
"Called to implement :func:`operator.length_hint`. Should return an estimated " "Called to implement :func:`operator.length_hint`. Should return an estimated "
"length for the object (which may be greater or less than the actual length). " "length for the object (which may be greater or less than the actual length). "
@ -4038,31 +4147,33 @@ msgstr ""
"méthode est utilisée uniquement pour optimiser les traitements et n'est " "méthode est utilisée uniquement pour optimiser les traitements et n'est "
"jamais tenue de renvoyer un résultat exact." "jamais tenue de renvoyer un résultat exact."
#: reference/datamodel.rst:2285 #: reference/datamodel.rst:2405
msgid "" msgid ""
"Slicing is done exclusively with the following three methods. A call like ::" "Slicing is done exclusively with the following three methods. A call like ::"
msgstr "" 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 ::" "Un appel comme ::"
#: reference/datamodel.rst:2289 #: reference/datamodel.rst:2409
msgid "is translated to ::" msgid "is translated to ::"
msgstr "est traduit en ::" msgstr "est traduit en ::"
#: reference/datamodel.rst:2293 #: reference/datamodel.rst:2413
msgid "and so forth. Missing slice items are always filled in with ``None``." 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``." msgstr "et ainsi de suite. Les éléments manquants sont remplacés par ``None``."
#: reference/datamodel.rst:2298 #: reference/datamodel.rst:2418
#, fuzzy
msgid "" msgid ""
"Called to implement evaluation of ``self[key]``. For sequence types, the " "Called to implement evaluation of ``self[key]``. For :term:`sequence` types, "
"accepted keys should be integers and slice objects. Note that the special " "the accepted keys should be integers and slice objects. Note that the "
"interpretation of negative indexes (if the class wishes to emulate a " "special interpretation of negative indexes (if the class wishes to emulate "
"sequence type) is up to the :meth:`__getitem__` method. If *key* is of an " "a :term:`sequence` type) is up to the :meth:`__getitem__` method. If *key* "
"inappropriate type, :exc:`TypeError` may be raised; if of a value outside " "is of an inappropriate type, :exc:`TypeError` may be raised; if of a value "
"the set of indexes for the sequence (after any special interpretation of " "outside the set of indexes for the sequence (after any special "
"negative values), :exc:`IndexError` should be raised. For mapping types, if " "interpretation of negative values), :exc:`IndexError` should be raised. For :"
"*key* is missing (not in the container), :exc:`KeyError` should be raised." "term:`mapping` types, if *key* is missing (not in the container), :exc:"
"`KeyError` should be raised."
msgstr "" msgstr ""
"Appelée pour implémenter l'évaluation de ``self[key]``. Pour les types " "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 " "séquences, les clés autorisées sont les entiers et les objets tranches "
@ -4074,7 +4185,7 @@ msgstr ""
"`IndexError` doit être levée. Pour les tableaux de correspondances, si *key* " "`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." "n'existe pas dans le conteneur, une :exc:`KeyError` doit être levée."
#: reference/datamodel.rst:2309 #: reference/datamodel.rst:2430
msgid "" msgid ""
":keyword:`for` loops expect that an :exc:`IndexError` will be raised for " ":keyword:`for` loops expect that an :exc:`IndexError` will be raised for "
"illegal indexes to allow proper detection of the end of the sequence." "illegal indexes to allow proper detection of the end of the sequence."
@ -4082,7 +4193,14 @@ msgstr ""
":keyword:`for` s'attend à ce qu'une :exc:`IndexError` soit levée en cas " ":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." "d'indice illégal afin de détecter correctement la fin de la séquence."
#: reference/datamodel.rst:2315 #: reference/datamodel.rst:2435
msgid ""
"When :ref:`subscripting<subscriptions>` 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 ""
#: reference/datamodel.rst:2443
msgid "" msgid ""
"Called to implement assignment to ``self[key]``. Same note as for :meth:" "Called to implement assignment to ``self[key]``. Same note as for :meth:"
"`__getitem__`. This should only be implemented for mappings if the objects " "`__getitem__`. This should only be implemented for mappings if the objects "
@ -4098,7 +4216,7 @@ msgstr ""
"exceptions que pour la méthode :meth:`__getitem__` doivent être levées en " "exceptions que pour la méthode :meth:`__getitem__` doivent être levées en "
"cas de mauvaises valeurs de clés." "cas de mauvaises valeurs de clés."
#: reference/datamodel.rst:2324 #: reference/datamodel.rst:2452
msgid "" msgid ""
"Called to implement deletion of ``self[key]``. Same note as for :meth:" "Called to implement deletion of ``self[key]``. Same note as for :meth:"
"`__getitem__`. This should only be implemented for mappings if the objects " "`__getitem__`. This should only be implemented for mappings if the objects "
@ -4113,7 +4231,7 @@ msgstr ""
"Les mêmes exceptions que pour la méthode :meth:`__getitem__` doivent être " "Les mêmes exceptions que pour la méthode :meth:`__getitem__` doivent être "
"levées en cas de mauvaises valeurs de clés." "levées en cas de mauvaises valeurs de clés."
#: reference/datamodel.rst:2333 #: reference/datamodel.rst:2461
msgid "" msgid ""
"Called by :class:`dict`\\ .\\ :meth:`__getitem__` to implement ``self[key]`` " "Called by :class:`dict`\\ .\\ :meth:`__getitem__` to implement ``self[key]`` "
"for dict subclasses when key is not in the dictionary." "for dict subclasses when key is not in the dictionary."
@ -4122,29 +4240,20 @@ msgstr ""
"``self[key]`` dans les sous-classes de dictionnaires lorsque la clé n'est " "``self[key]`` dans les sous-classes de dictionnaires lorsque la clé n'est "
"pas dans le dictionnaire." "pas dans le dictionnaire."
#: reference/datamodel.rst:2339 #: reference/datamodel.rst:2467
#, fuzzy
msgid "" msgid ""
"This method is called when an iterator is required for a container. This " "This method is called when an :term:`iterator` is required for a container. "
"method should return a new iterator object that can iterate over all the " "This method should return a new iterator object that can iterate over all "
"objects in the container. For mappings, it should iterate over the keys of " "the objects in the container. For mappings, it should iterate over the keys "
"the container." "of the container."
msgstr "" msgstr ""
"Cette méthode est appelée quand un itérateur est requis pour un conteneur. " "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 " "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 " "tous les objets du conteneur. Pour les tableaux de correspondances, elle "
"doit itérer sur les clés du conteneur." "doit itérer sur les clés du conteneur."
#: reference/datamodel.rst:2343 #: reference/datamodel.rst:2475
msgid ""
"Iterator objects also need to implement this method; they are required to "
"return themselves. For more information on iterator objects, see :ref:"
"`typeiter`."
msgstr ""
"Les objets itérateurs doivent aussi implémenter cette méthode ; ils doivent "
"alors se renvoyer eux-mêmes. Pour plus d'information sur les objets "
"itérateurs, lisez :ref:`typeiter`."
#: reference/datamodel.rst:2349
msgid "" msgid ""
"Called (if present) by the :func:`reversed` built-in to implement reverse " "Called (if present) by the :func:`reversed` built-in to implement reverse "
"iteration. It should return a new iterator object that iterates over all " "iteration. It should return a new iterator object that iterates over all "
@ -4154,7 +4263,7 @@ msgstr ""
"implémenter l'itération en sens inverse. Elle doit renvoyer un nouvel objet " "implémenter l'itération en sens inverse. Elle doit renvoyer un nouvel objet "
"itérateur qui itère sur tous les objets du conteneur en sens inverse." "itérateur qui itère sur tous les objets du conteneur en sens inverse."
#: reference/datamodel.rst:2353 #: reference/datamodel.rst:2479
msgid "" msgid ""
"If the :meth:`__reversed__` method is not provided, the :func:`reversed` " "If the :meth:`__reversed__` method is not provided, the :func:`reversed` "
"built-in will fall back to using the sequence protocol (:meth:`__len__` and :" "built-in will fall back to using the sequence protocol (:meth:`__len__` and :"
@ -4168,7 +4277,7 @@ msgstr ""
"doivent fournir :meth:`__reversed__` que si l'implémentation qu'ils " "doivent fournir :meth:`__reversed__` que si l'implémentation qu'ils "
"proposent est plus efficace que celle de :func:`reversed`." "proposent est plus efficace que celle de :func:`reversed`."
#: reference/datamodel.rst:2360 #: reference/datamodel.rst:2486
msgid "" msgid ""
"The membership test operators (:keyword:`in` and :keyword:`not in`) are " "The membership test operators (:keyword:`in` and :keyword:`not in`) are "
"normally implemented as an iteration through a container. However, container " "normally implemented as an iteration through a container. However, container "
@ -4181,7 +4290,7 @@ msgstr ""
"suivantes avec une implémentation plus efficace, qui ne requièrent " "suivantes avec une implémentation plus efficace, qui ne requièrent "
"d'ailleurs pas que l'objet soit itérable." "d'ailleurs pas que l'objet soit itérable."
#: reference/datamodel.rst:2367 #: reference/datamodel.rst:2493
msgid "" msgid ""
"Called to implement membership test operators. Should return true if *item* " "Called to implement membership test operators. Should return true if *item* "
"is in *self*, false otherwise. For mapping objects, this should consider " "is in *self*, false otherwise. For mapping objects, this should consider "
@ -4192,7 +4301,7 @@ msgstr ""
"tableaux de correspondances, seules les clés sont considérées (pas les " "tableaux de correspondances, seules les clés sont considérées (pas les "
"valeurs des paires clés-valeurs)." "valeurs des paires clés-valeurs)."
#: reference/datamodel.rst:2371 #: reference/datamodel.rst:2497
msgid "" msgid ""
"For objects that don't define :meth:`__contains__`, the membership test " "For objects that don't define :meth:`__contains__`, the membership test "
"first tries iteration via :meth:`__iter__`, then the old sequence iteration " "first tries iteration via :meth:`__iter__`, then the old sequence iteration "
@ -4205,11 +4314,11 @@ msgstr ""
"reportez-vous à :ref:`cette section dans la référence du langage <membership-" "reportez-vous à :ref:`cette section dans la référence du langage <membership-"
"test-details>`." "test-details>`."
#: reference/datamodel.rst:2380 #: reference/datamodel.rst:2506
msgid "Emulating numeric types" msgid "Emulating numeric types"
msgstr "Émulation de types numériques" msgstr "Émulation de types numériques"
#: reference/datamodel.rst:2382 #: reference/datamodel.rst:2508
msgid "" msgid ""
"The following methods can be defined to emulate numeric objects. Methods " "The following methods can be defined to emulate numeric objects. Methods "
"corresponding to operations that are not supported by the particular kind of " "corresponding to operations that are not supported by the particular kind of "
@ -4222,7 +4331,7 @@ msgstr ""
"opérations bit à bit pour les nombres qui ne sont pas entiers) doivent être " "opérations bit à bit pour les nombres qui ne sont pas entiers) doivent être "
"laissées indéfinies." "laissées indéfinies."
#: reference/datamodel.rst:2408 #: reference/datamodel.rst:2534
msgid "" msgid ""
"These methods are called to implement the binary arithmetic operations (``" "These methods are called to implement the binary arithmetic operations (``"
"+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, "
@ -4245,7 +4354,7 @@ msgstr ""
"accepter un troisième argument optionnel si la version ternaire de la " "accepter un troisième argument optionnel si la version ternaire de la "
"fonction native :func:`pow` est autorisée." "fonction native :func:`pow` est autorisée."
#: reference/datamodel.rst:2419 #: reference/datamodel.rst:2545
msgid "" msgid ""
"If one of those methods does not support the operation with the supplied " "If one of those methods does not support the operation with the supplied "
"arguments, it should return ``NotImplemented``." "arguments, it should return ``NotImplemented``."
@ -4253,7 +4362,7 @@ msgstr ""
"Si l'une de ces méthodes n'autorise pas l'opération avec les arguments " "Si l'une de ces méthodes n'autorise pas l'opération avec les arguments "
"donnés, elle doit renvoyer ``NotImplemented``." "donnés, elle doit renvoyer ``NotImplemented``."
#: reference/datamodel.rst:2442 #: reference/datamodel.rst:2568
msgid "" msgid ""
"These methods are called to implement the binary arithmetic operations (``" "These methods are called to implement the binary arithmetic operations (``"
"+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, "
@ -4274,7 +4383,7 @@ msgstr ""
"`__rsub__`, ``y.__rsub__(x)`` est appelée si ``x.__sub__(y)`` renvoie " "`__rsub__`, ``y.__rsub__(x)`` est appelée si ``x.__sub__(y)`` renvoie "
"*NotImplemented*." "*NotImplemented*."
#: reference/datamodel.rst:2453 #: reference/datamodel.rst:2579
msgid "" msgid ""
"Note that ternary :func:`pow` will not try calling :meth:`__rpow__` (the " "Note that ternary :func:`pow` will not try calling :meth:`__rpow__` (the "
"coercion rules would become too complicated)." "coercion rules would become too complicated)."
@ -4282,7 +4391,7 @@ msgstr ""
"Notez que la fonction ternaire :func:`pow` n'essaie pas d'appeler :meth:" "Notez que la fonction ternaire :func:`pow` n'essaie pas d'appeler :meth:"
"`__rpow__` (les règles de coercition seraient trop compliquées)." "`__rpow__` (les règles de coercition seraient trop compliquées)."
#: reference/datamodel.rst:2458 #: reference/datamodel.rst:2584
msgid "" msgid ""
"If the right operand's type is a subclass of the left operand's type and " "If the right operand's type is a subclass of the left operand's type and "
"that subclass provides a different implementation of the reflected method " "that subclass provides a different implementation of the reflected method "
@ -4296,7 +4405,7 @@ msgstr ""
"méthode originelle de l'opérande gauche. Ce comportement permet à des sous-" "méthode originelle de l'opérande gauche. Ce comportement permet à des sous-"
"classes de surcharger les opérations de leurs ancêtres." "classes de surcharger les opérations de leurs ancêtres."
#: reference/datamodel.rst:2479 #: reference/datamodel.rst:2605
msgid "" msgid ""
"These methods are called to implement the augmented arithmetic assignments " "These methods are called to implement the augmented arithmetic assignments "
"(``+=``, ``-=``, ``*=``, ``@=``, ``/=``, ``//=``, ``%=``, ``**=``, ``<<=``, " "(``+=``, ``-=``, ``*=``, ``@=``, ``/=``, ``//=``, ``%=``, ``**=``, ``<<=``, "
@ -4325,7 +4434,7 @@ msgstr ""
"erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais " "erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais "
"ce comportement est en fait partie intégrante du modèle de données." "ce comportement est en fait partie intégrante du modèle de données."
#: reference/datamodel.rst:2500 #: reference/datamodel.rst:2626
msgid "" msgid ""
"Called to implement the unary arithmetic operations (``-``, ``+``, :func:" "Called to implement the unary arithmetic operations (``-``, ``+``, :func:"
"`abs` and ``~``)." "`abs` and ``~``)."
@ -4333,7 +4442,7 @@ msgstr ""
"Appelée pour implémenter les opérations arithmétiques unaires (``-``, ``" "Appelée pour implémenter les opérations arithmétiques unaires (``-``, ``"
"+``, :func:`abs` et ``~``)." "+``, :func:`abs` et ``~``)."
#: reference/datamodel.rst:2513 #: reference/datamodel.rst:2639
msgid "" msgid ""
"Called to implement the built-in functions :func:`complex`, :func:`int` and :" "Called to implement the built-in functions :func:`complex`, :func:`int` and :"
"func:`float`. Should return a value of the appropriate type." "func:`float`. Should return a value of the appropriate type."
@ -4341,7 +4450,7 @@ msgstr ""
"Appelées pour implémenter les fonctions natives :func:`complex`, :func:`int` " "Appelées pour implémenter les fonctions natives :func:`complex`, :func:`int` "
"et :func:`float`. Elles doivent renvoyer une valeur du type approprié." "et :func:`float`. Elles doivent renvoyer une valeur du type approprié."
#: reference/datamodel.rst:2520 #: reference/datamodel.rst:2646
msgid "" msgid ""
"Called to implement :func:`operator.index`, and whenever Python needs to " "Called to implement :func:`operator.index`, and whenever Python needs to "
"losslessly convert the numeric object to an integer object (such as in " "losslessly convert the numeric object to an integer object (such as in "
@ -4355,7 +4464,7 @@ msgstr ""
"`oct`). La présence de cette méthode indique que l'objet numérique est un " "`oct`). La présence de cette méthode indique que l'objet numérique est un "
"type entier. Elle doit renvoyer un entier." "type entier. Elle doit renvoyer un entier."
#: reference/datamodel.rst:2526 #: reference/datamodel.rst:2652
msgid "" msgid ""
"If :meth:`__int__`, :meth:`__float__` and :meth:`__complex__` are not " "If :meth:`__int__`, :meth:`__float__` and :meth:`__complex__` are not "
"defined then corresponding built-in functions :func:`int`, :func:`float` " "defined then corresponding built-in functions :func:`int`, :func:`float` "
@ -4365,7 +4474,7 @@ msgstr ""
"définies, alors les fonctions natives :func:`int`, :func:`float` et :func:" "définies, alors les fonctions natives :func:`int`, :func:`float` et :func:"
"`complex` redirigent par défaut vers :meth:`__index__`." "`complex` redirigent par défaut vers :meth:`__index__`."
#: reference/datamodel.rst:2538 #: reference/datamodel.rst:2664
msgid "" msgid ""
"Called to implement the built-in function :func:`round` and :mod:`math` " "Called to implement the built-in function :func:`round` and :mod:`math` "
"functions :func:`~math.trunc`, :func:`~math.floor` and :func:`~math.ceil`. " "functions :func:`~math.trunc`, :func:`~math.floor` and :func:`~math.ceil`. "
@ -4379,17 +4488,17 @@ msgstr ""
"toutes ces méthodes doivent renvoyer la valeur de l'objet tronquée pour " "toutes ces méthodes doivent renvoyer la valeur de l'objet tronquée pour "
"donner un :class:`~numbers.Integral` (typiquement un :class:`int`)." "donner un :class:`~numbers.Integral` (typiquement un :class:`int`)."
#: reference/datamodel.rst:2544 #: reference/datamodel.rst:2670
msgid "" msgid ""
"The built-in function :func:`int` falls back to :meth:`__trunc__` if " "The built-in function :func:`int` falls back to :meth:`__trunc__` if "
"neither :meth:`__int__` nor :meth:`__index__` is defined." "neither :meth:`__int__` nor :meth:`__index__` is defined."
msgstr "" msgstr ""
#: reference/datamodel.rst:2551 #: reference/datamodel.rst:2677
msgid "With Statement Context Managers" msgid "With Statement Context Managers"
msgstr "Gestionnaire de contexte With" msgstr "Gestionnaire de contexte With"
#: reference/datamodel.rst:2553 #: reference/datamodel.rst:2679
msgid "" msgid ""
"A :dfn:`context manager` is an object that defines the runtime context to be " "A :dfn:`context manager` is an object that defines the runtime context to be "
"established when executing a :keyword:`with` statement. The context manager " "established when executing a :keyword:`with` statement. The context manager "
@ -4406,7 +4515,7 @@ msgstr ""
"dans la section :ref:`with`), mais ils peuvent aussi être directement " "dans la section :ref:`with`), mais ils peuvent aussi être directement "
"invoqués par leurs méthodes." "invoqués par leurs méthodes."
#: reference/datamodel.rst:2564 #: reference/datamodel.rst:2690
msgid "" msgid ""
"Typical uses of context managers include saving and restoring various kinds " "Typical uses of context managers include saving and restoring various kinds "
"of global state, locking and unlocking resources, closing opened files, etc." "of global state, locking and unlocking resources, closing opened files, etc."
@ -4415,14 +4524,14 @@ msgstr ""
"et la restauration d'états divers, le verrouillage et le déverrouillage de " "et la restauration d'états divers, le verrouillage et le déverrouillage de "
"ressources, la fermeture de fichiers ouverts, etc." "ressources, la fermeture de fichiers ouverts, etc."
#: reference/datamodel.rst:2567 #: reference/datamodel.rst:2693
msgid "" msgid ""
"For more information on context managers, see :ref:`typecontextmanager`." "For more information on context managers, see :ref:`typecontextmanager`."
msgstr "" msgstr ""
"Pour plus d'informations sur les gestionnaires de contexte, lisez :ref:" "Pour plus d'informations sur les gestionnaires de contexte, lisez :ref:"
"`typecontextmanager`." "`typecontextmanager`."
#: reference/datamodel.rst:2572 #: reference/datamodel.rst:2698
msgid "" msgid ""
"Enter the runtime context related to this object. The :keyword:`with` " "Enter the runtime context related to this object. The :keyword:`with` "
"statement will bind this method's return value to the target(s) specified in " "statement will bind this method's return value to the target(s) specified in "
@ -4433,7 +4542,7 @@ msgstr ""
"cible spécifiée par la clause :keyword:`!as` de l'instruction, si elle est " "cible spécifiée par la clause :keyword:`!as` de l'instruction, si elle est "
"spécifiée." "spécifiée."
#: reference/datamodel.rst:2579 #: reference/datamodel.rst:2705
msgid "" msgid ""
"Exit the runtime context related to this object. The parameters describe the " "Exit the runtime context related to this object. The parameters describe the "
"exception that caused the context to be exited. If the context was exited " "exception that caused the context to be exited. If the context was exited "
@ -4443,7 +4552,7 @@ msgstr ""
"l'exception qui a causé la sortie du contexte. Si l'on sort du contexte sans " "l'exception qui a causé la sortie du contexte. Si l'on sort du contexte sans "
"exception, les trois arguments sont à :const:`None`." "exception, les trois arguments sont à :const:`None`."
#: reference/datamodel.rst:2583 #: reference/datamodel.rst:2709
msgid "" msgid ""
"If an exception is supplied, and the method wishes to suppress the exception " "If an exception is supplied, and the method wishes to suppress the exception "
"(i.e., prevent it from being propagated), it should return a true value. " "(i.e., prevent it from being propagated), it should return a true value. "
@ -4455,7 +4564,7 @@ msgstr ""
"propagée), elle doit renvoyer ``True``. Sinon, l'exception est traitée " "propagée), elle doit renvoyer ``True``. Sinon, l'exception est traitée "
"normalement à la sortie de cette méthode." "normalement à la sortie de cette méthode."
#: reference/datamodel.rst:2587 #: reference/datamodel.rst:2713
msgid "" msgid ""
"Note that :meth:`__exit__` methods should not reraise the passed-in " "Note that :meth:`__exit__` methods should not reraise the passed-in "
"exception; this is the caller's responsibility." "exception; this is the caller's responsibility."
@ -4463,11 +4572,11 @@ msgstr ""
"Notez qu'une méthode :meth:`__exit__` ne doit pas lever à nouveau " "Notez qu'une méthode :meth:`__exit__` ne doit pas lever à nouveau "
"l'exception qu'elle reçoit ; c'est du ressort de l'appelant." "l'exception qu'elle reçoit ; c'est du ressort de l'appelant."
#: reference/datamodel.rst:2594 #: reference/datamodel.rst:2720
msgid ":pep:`343` - The \"with\" statement" msgid ":pep:`343` - The \"with\" statement"
msgstr ":pep:`343` — L'instruction ``with``" msgstr ":pep:`343` — L'instruction ``with``"
#: reference/datamodel.rst:2594 #: reference/datamodel.rst:2720
msgid "" msgid ""
"The specification, background, and examples for the Python :keyword:`with` " "The specification, background, and examples for the Python :keyword:`with` "
"statement." "statement."
@ -4475,11 +4584,11 @@ msgstr ""
"La spécification, les motivations et des exemples de l'instruction :keyword:" "La spécification, les motivations et des exemples de l'instruction :keyword:"
"`with` en Python." "`with` en Python."
#: reference/datamodel.rst:2601 #: reference/datamodel.rst:2727
msgid "Customizing positional arguments in class pattern matching" msgid "Customizing positional arguments in class pattern matching"
msgstr "Arguments positionnels dans le filtrage par motif sur les classes" msgstr "Arguments positionnels dans le filtrage par motif sur les classes"
#: reference/datamodel.rst:2603 #: reference/datamodel.rst:2729
msgid "" msgid ""
"When using a class name in a pattern, positional arguments in the pattern " "When using a class name in a pattern, positional arguments in the pattern "
"are not allowed by default, i.e. ``case MyClass(x, y)`` is typically invalid " "are not allowed by default, i.e. ``case MyClass(x, y)`` is typically invalid "
@ -4491,7 +4600,7 @@ msgstr ""
"fait rien pour cela. Afin de prendre en charge le filtrage par arguments " "fait rien pour cela. Afin de prendre en charge le filtrage par arguments "
"positionnels, une classe doit définir ``__match_args__``." "positionnels, une classe doit définir ``__match_args__``."
#: reference/datamodel.rst:2610 #: reference/datamodel.rst:2736
msgid "" msgid ""
"This class variable can be assigned a tuple of strings. When this class is " "This class variable can be assigned a tuple of strings. When this class is "
"used in a class pattern with positional arguments, each positional argument " "used in a class pattern with positional arguments, each positional argument "
@ -4505,7 +4614,7 @@ msgstr ""
"n'est pas défini, tout se passe comme si sa valeur était le *n*-uplet vide " "n'est pas défini, tout se passe comme si sa valeur était le *n*-uplet vide "
"``()``." "``()``."
#: reference/datamodel.rst:2616 #: reference/datamodel.rst:2742
msgid "" msgid ""
"For example, if ``MyClass.__match_args__`` is ``(\"left\", \"center\", " "For example, if ``MyClass.__match_args__`` is ``(\"left\", \"center\", "
"\"right\")`` that means that ``case MyClass(x, y)`` is equivalent to ``case " "\"right\")`` that means that ``case MyClass(x, y)`` is equivalent to ``case "
@ -4520,19 +4629,19 @@ msgstr ""
"d'arguments positionnels que la longueur ``__match_args__``. Dans le cas " "d'arguments positionnels que la longueur ``__match_args__``. Dans le cas "
"contraire, le filtrage lève l'exception :exc:`TypeError`." "contraire, le filtrage lève l'exception :exc:`TypeError`."
#: reference/datamodel.rst:2626 #: reference/datamodel.rst:2752
msgid ":pep:`634` - Structural Pattern Matching" msgid ":pep:`634` - Structural Pattern Matching"
msgstr ":pep:`634`  Filtrage par motif structurel" msgstr ":pep:`634`  Filtrage par motif structurel"
#: reference/datamodel.rst:2627 #: reference/datamodel.rst:2753
msgid "The specification for the Python ``match`` statement." msgid "The specification for the Python ``match`` statement."
msgstr "Spécification de l'instruction ``match``." msgstr "Spécification de l'instruction ``match``."
#: reference/datamodel.rst:2633 #: reference/datamodel.rst:2759
msgid "Special method lookup" msgid "Special method lookup"
msgstr "Recherche des méthodes spéciales" msgstr "Recherche des méthodes spéciales"
#: reference/datamodel.rst:2635 #: reference/datamodel.rst:2761
msgid "" msgid ""
"For custom classes, implicit invocations of special methods are only " "For custom classes, implicit invocations of special methods are only "
"guaranteed to work correctly if defined on an object's type, not in the " "guaranteed to work correctly if defined on an object's type, not in the "
@ -4544,7 +4653,7 @@ msgstr ""
"type d'objet, pas dans le dictionnaire de l'objet instance. Ce comportement " "type d'objet, pas dans le dictionnaire de l'objet instance. Ce comportement "
"explique pourquoi le code suivant lève une exception ::" "explique pourquoi le code suivant lève une exception ::"
#: reference/datamodel.rst:2650 #: reference/datamodel.rst:2776
msgid "" msgid ""
"The rationale behind this behaviour lies with a number of special methods " "The rationale behind this behaviour lies with a number of special methods "
"such as :meth:`__hash__` and :meth:`__repr__` that are implemented by all " "such as :meth:`__hash__` and :meth:`__repr__` that are implemented by all "
@ -4558,7 +4667,7 @@ msgstr ""
"méthodes utilisait le processus normal de recherche, elles ne " "méthodes utilisait le processus normal de recherche, elles ne "
"fonctionneraient pas si on les appelait sur l'objet type lui-même ::" "fonctionneraient pas si on les appelait sur l'objet type lui-même ::"
#: reference/datamodel.rst:2663 #: reference/datamodel.rst:2789
msgid "" msgid ""
"Incorrectly attempting to invoke an unbound method of a class in this way is " "Incorrectly attempting to invoke an unbound method of a class in this way is "
"sometimes referred to as 'metaclass confusion', and is avoided by bypassing " "sometimes referred to as 'metaclass confusion', and is avoided by bypassing "
@ -4568,7 +4677,7 @@ msgstr ""
"parfois appelé « confusion de métaclasse » et se contourne en shuntant " "parfois appelé « confusion de métaclasse » et se contourne en shuntant "
"l'instance lors de la recherche des méthodes spéciales ::" "l'instance lors de la recherche des méthodes spéciales ::"
#: reference/datamodel.rst:2672 #: reference/datamodel.rst:2798
msgid "" msgid ""
"In addition to bypassing any instance attributes in the interest of " "In addition to bypassing any instance attributes in the interest of "
"correctness, implicit special method lookup generally also bypasses the :" "correctness, implicit special method lookup generally also bypasses the :"
@ -4578,7 +4687,7 @@ msgstr ""
"correctement, la recherche des méthodes spéciales implicites shunte aussi la " "correctement, la recherche des méthodes spéciales implicites shunte aussi la "
"méthode :meth:`__getattribute__` même dans la métaclasse de l'objet ::" "méthode :meth:`__getattribute__` même dans la métaclasse de l'objet ::"
#: reference/datamodel.rst:2698 #: reference/datamodel.rst:2824
msgid "" msgid ""
"Bypassing the :meth:`__getattribute__` machinery in this fashion provides " "Bypassing the :meth:`__getattribute__` machinery in this fashion provides "
"significant scope for speed optimisations within the interpreter, at the " "significant scope for speed optimisations within the interpreter, at the "
@ -4592,15 +4701,15 @@ msgstr ""
"être définie sur l'objet classe lui-même afin d'être invoquée de manière " "être définie sur l'objet classe lui-même afin d'être invoquée de manière "
"cohérente par l'interpréteur)." "cohérente par l'interpréteur)."
#: reference/datamodel.rst:2709 #: reference/datamodel.rst:2835
msgid "Coroutines" msgid "Coroutines"
msgstr "Coroutines" msgstr "Coroutines"
#: reference/datamodel.rst:2713 #: reference/datamodel.rst:2839
msgid "Awaitable Objects" msgid "Awaitable Objects"
msgstr "Objets *attendables* (*awaitable*)" msgstr "Objets *attendables* (*awaitable*)"
#: reference/datamodel.rst:2715 #: reference/datamodel.rst:2841
msgid "" msgid ""
"An :term:`awaitable` object generally implements an :meth:`__await__` " "An :term:`awaitable` object generally implements an :meth:`__await__` "
"method. :term:`Coroutine objects <coroutine>` returned from :keyword:`async " "method. :term:`Coroutine objects <coroutine>` returned from :keyword:`async "
@ -4610,7 +4719,7 @@ msgstr ""
"`__await__`. Les objets :term:`coroutine` renvoyés par les fonctions :" "`__await__`. Les objets :term:`coroutine` renvoyés par les fonctions :"
"keyword:`async def` sont des *attendables* (*awaitable*)." "keyword:`async def` sont des *attendables* (*awaitable*)."
#: reference/datamodel.rst:2721 #: reference/datamodel.rst:2847
msgid "" msgid ""
"The :term:`generator iterator` objects returned from generators decorated " "The :term:`generator iterator` objects returned from generators decorated "
"with :func:`types.coroutine` or :func:`asyncio.coroutine` are also " "with :func:`types.coroutine` or :func:`asyncio.coroutine` are also "
@ -4621,7 +4730,7 @@ msgstr ""
"des *attendables* (*awaitable*), mais ils n'implémentent pas :meth:" "des *attendables* (*awaitable*), mais ils n'implémentent pas :meth:"
"`__await__`." "`__await__`."
#: reference/datamodel.rst:2727 #: reference/datamodel.rst:2853
msgid "" msgid ""
"Must return an :term:`iterator`. Should be used to implement :term:" "Must return an :term:`iterator`. Should be used to implement :term:"
"`awaitable` objects. For instance, :class:`asyncio.Future` implements this " "`awaitable` objects. For instance, :class:`asyncio.Future` implements this "
@ -4631,17 +4740,17 @@ msgstr ""
"objets :term:`awaitable`. Par exemple, :class:`asyncio.Future` implémente " "objets :term:`awaitable`. Par exemple, :class:`asyncio.Future` implémente "
"cette méthode pour être compatible avec les expressions :keyword:`await`." "cette méthode pour être compatible avec les expressions :keyword:`await`."
#: reference/datamodel.rst:2733 #: reference/datamodel.rst:2859
msgid ":pep:`492` for additional information about awaitable objects." msgid ":pep:`492` for additional information about awaitable objects."
msgstr "" msgstr ""
":pep:`492` pour les informations relatives aux objets *attendables* " ":pep:`492` pour les informations relatives aux objets *attendables* "
"(*awaitable*)." "(*awaitable*)."
#: reference/datamodel.rst:2739 #: reference/datamodel.rst:2865
msgid "Coroutine Objects" msgid "Coroutine Objects"
msgstr "Objets coroutines" msgstr "Objets coroutines"
#: reference/datamodel.rst:2741 #: reference/datamodel.rst:2867
msgid "" msgid ""
":term:`Coroutine objects <coroutine>` are :term:`awaitable` objects. A " ":term:`Coroutine objects <coroutine>` are :term:`awaitable` objects. A "
"coroutine's execution can be controlled by calling :meth:`__await__` and " "coroutine's execution can be controlled by calling :meth:`__await__` and "
@ -4659,7 +4768,7 @@ msgstr ""
"exception, elle est propagée par l'itérateur. Les coroutines ne doivent pas " "exception, elle est propagée par l'itérateur. Les coroutines ne doivent pas "
"lever directement des exceptions :exc:`StopIteration` non gérées." "lever directement des exceptions :exc:`StopIteration` non gérées."
#: reference/datamodel.rst:2749 #: reference/datamodel.rst:2875
msgid "" msgid ""
"Coroutines also have the methods listed below, which are analogous to those " "Coroutines also have the methods listed below, which are analogous to those "
"of generators (see :ref:`generator-methods`). However, unlike generators, " "of generators (see :ref:`generator-methods`). However, unlike generators, "
@ -4670,13 +4779,13 @@ msgstr ""
"contraire des générateurs, vous ne pouvez pas itérer directement sur des " "contraire des générateurs, vous ne pouvez pas itérer directement sur des "
"coroutines." "coroutines."
#: reference/datamodel.rst:2753 #: reference/datamodel.rst:2879
msgid "It is a :exc:`RuntimeError` to await on a coroutine more than once." msgid "It is a :exc:`RuntimeError` to await on a coroutine more than once."
msgstr "" 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`." "`RuntimeError`."
#: reference/datamodel.rst:2759 #: reference/datamodel.rst:2885
msgid "" msgid ""
"Starts or resumes execution of the coroutine. If *value* is ``None``, this " "Starts or resumes execution of the coroutine. If *value* is ``None``, this "
"is equivalent to advancing the iterator returned by :meth:`__await__`. If " "is equivalent to advancing the iterator returned by :meth:`__await__`. If "
@ -4693,7 +4802,7 @@ msgstr ""
"est le même que lorsque vous itérez sur la valeur de retour de :meth:" "est le même que lorsque vous itérez sur la valeur de retour de :meth:"
"`__await__`, décrite ci-dessus." "`__await__`, décrite ci-dessus."
#: reference/datamodel.rst:2769 #: reference/datamodel.rst:2895
msgid "" msgid ""
"Raises the specified exception in the coroutine. This method delegates to " "Raises the specified exception in the coroutine. This method delegates to "
"the :meth:`~generator.throw` method of the iterator that caused the " "the :meth:`~generator.throw` method of the iterator that caused the "
@ -4711,7 +4820,7 @@ msgstr ""
"retour de :meth:`__await__`, décrite ci-dessus. Si l'exception n'est pas " "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." "gérée par la coroutine, elle est propagée à l'appelant."
#: reference/datamodel.rst:2780 #: reference/datamodel.rst:2906
msgid "" msgid ""
"Causes the coroutine to clean itself up and exit. If the coroutine is " "Causes the coroutine to clean itself up and exit. If the coroutine is "
"suspended, this method first delegates to the :meth:`~generator.close` " "suspended, this method first delegates to the :meth:`~generator.close` "
@ -4728,7 +4837,7 @@ msgstr ""
"la coroutine est marquée comme ayant terminé son exécution, même si elle n'a " "la coroutine est marquée comme ayant terminé son exécution, même si elle n'a "
"jamais démarré." "jamais démarré."
#: reference/datamodel.rst:2788 #: reference/datamodel.rst:2914
msgid "" msgid ""
"Coroutine objects are automatically closed using the above process when they " "Coroutine objects are automatically closed using the above process when they "
"are about to be destroyed." "are about to be destroyed."
@ -4736,11 +4845,11 @@ msgstr ""
"Les objets coroutines sont automatiquement fermés en utilisant le processus " "Les objets coroutines sont automatiquement fermés en utilisant le processus "
"décrit au-dessus au moment où ils sont détruits." "décrit au-dessus au moment où ils sont détruits."
#: reference/datamodel.rst:2794 #: reference/datamodel.rst:2920
msgid "Asynchronous Iterators" msgid "Asynchronous Iterators"
msgstr "Itérateurs asynchrones" msgstr "Itérateurs asynchrones"
#: reference/datamodel.rst:2796 #: reference/datamodel.rst:2922
msgid "" msgid ""
"An *asynchronous iterator* can call asynchronous code in its ``__anext__`` " "An *asynchronous iterator* can call asynchronous code in its ``__anext__`` "
"method." "method."
@ -4748,18 +4857,18 @@ msgstr ""
"Un *itérateur asynchrone* peut appeler du code asynchrone dans sa méthode " "Un *itérateur asynchrone* peut appeler du code asynchrone dans sa méthode "
"``__anext__``." "``__anext__``."
#: reference/datamodel.rst:2799 #: reference/datamodel.rst:2925
msgid "" msgid ""
"Asynchronous iterators can be used in an :keyword:`async for` statement." "Asynchronous iterators can be used in an :keyword:`async for` statement."
msgstr "" msgstr ""
"Les itérateurs asynchrones peuvent être utilisés dans des instructions :" "Les itérateurs asynchrones peuvent être utilisés dans des instructions :"
"keyword:`async for`." "keyword:`async for`."
#: reference/datamodel.rst:2803 #: reference/datamodel.rst:2929
msgid "Must return an *asynchronous iterator* object." msgid "Must return an *asynchronous iterator* object."
msgstr "Doit renvoyer un objet *itérateur asynchrone*." msgstr "Doit renvoyer un objet *itérateur asynchrone*."
#: reference/datamodel.rst:2807 #: reference/datamodel.rst:2933
msgid "" msgid ""
"Must return an *awaitable* resulting in a next value of the iterator. " "Must return an *awaitable* resulting in a next value of the iterator. "
"Should raise a :exc:`StopAsyncIteration` error when the iteration is over." "Should raise a :exc:`StopAsyncIteration` error when the iteration is over."
@ -4768,11 +4877,11 @@ msgstr ""
"suivante de l'itérateur. Doit lever une :exc:`StopAsyncIteration` quand " "suivante de l'itérateur. Doit lever une :exc:`StopAsyncIteration` quand "
"l'itération est terminée." "l'itération est terminée."
#: reference/datamodel.rst:2810 #: reference/datamodel.rst:2936
msgid "An example of an asynchronous iterable object::" msgid "An example of an asynchronous iterable object::"
msgstr "Un exemple d'objet itérateur asynchrone ::" msgstr "Un exemple d'objet itérateur asynchrone ::"
#: reference/datamodel.rst:2827 #: reference/datamodel.rst:2953
msgid "" msgid ""
"Prior to Python 3.7, ``__aiter__`` could return an *awaitable* that would " "Prior to Python 3.7, ``__aiter__`` could return an *awaitable* that would "
"resolve to an :term:`asynchronous iterator <asynchronous iterator>`." "resolve to an :term:`asynchronous iterator <asynchronous iterator>`."
@ -4781,7 +4890,7 @@ msgstr ""
"(*awaitable*) qui se résolvait potentiellement en un :term:`itérateur " "(*awaitable*) qui se résolvait potentiellement en un :term:`itérateur "
"asynchrone <asynchronous iterator>`." "asynchrone <asynchronous iterator>`."
#: reference/datamodel.rst:2832 #: reference/datamodel.rst:2958
msgid "" msgid ""
"Starting with Python 3.7, ``__aiter__`` must return an asynchronous iterator " "Starting with Python 3.7, ``__aiter__`` must return an asynchronous iterator "
"object. Returning anything else will result in a :exc:`TypeError` error." "object. Returning anything else will result in a :exc:`TypeError` error."
@ -4789,11 +4898,11 @@ msgstr ""
"À partir de Python 3.7, ``__aiter__`` doit renvoyer un objet itérateur " "À partir de Python 3.7, ``__aiter__`` doit renvoyer un objet itérateur "
"asynchrone. Renvoyer autre chose entraine une erreur :exc:`TypeError`." "asynchrone. Renvoyer autre chose entraine une erreur :exc:`TypeError`."
#: reference/datamodel.rst:2840 #: reference/datamodel.rst:2966
msgid "Asynchronous Context Managers" msgid "Asynchronous Context Managers"
msgstr "Gestionnaires de contexte asynchrones" msgstr "Gestionnaires de contexte asynchrones"
#: reference/datamodel.rst:2842 #: reference/datamodel.rst:2968
msgid "" msgid ""
"An *asynchronous context manager* is a *context manager* that is able to " "An *asynchronous context manager* is a *context manager* that is able to "
"suspend execution in its ``__aenter__`` and ``__aexit__`` methods." "suspend execution in its ``__aenter__`` and ``__aexit__`` methods."
@ -4802,7 +4911,7 @@ msgstr ""
"qui est capable de suspendre son exécution dans ses méthodes ``__aenter__`` " "qui est capable de suspendre son exécution dans ses méthodes ``__aenter__`` "
"et ``__aexit__``." "et ``__aexit__``."
#: reference/datamodel.rst:2845 #: reference/datamodel.rst:2971
msgid "" msgid ""
"Asynchronous context managers can be used in an :keyword:`async with` " "Asynchronous context managers can be used in an :keyword:`async with` "
"statement." "statement."
@ -4810,7 +4919,7 @@ msgstr ""
"Les gestionnaires de contexte asynchrones peuvent être utilisés dans des " "Les gestionnaires de contexte asynchrones peuvent être utilisés dans des "
"instructions :keyword:`async with`." "instructions :keyword:`async with`."
#: reference/datamodel.rst:2849 #: reference/datamodel.rst:2975
msgid "" msgid ""
"Semantically similar to :meth:`__enter__`, the only difference being that it " "Semantically similar to :meth:`__enter__`, the only difference being that it "
"must return an *awaitable*." "must return an *awaitable*."
@ -4818,7 +4927,7 @@ msgstr ""
"Sémantiquement équivalente à :meth:`__enter__`, à la seule différence près " "Sémantiquement équivalente à :meth:`__enter__`, à la seule différence près "
"qu'elle doit renvoyer un *attendable* (*awaitable*)." "qu'elle doit renvoyer un *attendable* (*awaitable*)."
#: reference/datamodel.rst:2854 #: reference/datamodel.rst:2980
msgid "" msgid ""
"Semantically similar to :meth:`__exit__`, the only difference being that it " "Semantically similar to :meth:`__exit__`, the only difference being that it "
"must return an *awaitable*." "must return an *awaitable*."
@ -4826,15 +4935,15 @@ msgstr ""
"Sémantiquement équivalente à :meth:`__exit__`, à la seule différence près " "Sémantiquement équivalente à :meth:`__exit__`, à la seule différence près "
"qu'elle doit renvoyer un *attendable* (*awaitable*)." "qu'elle doit renvoyer un *attendable* (*awaitable*)."
#: reference/datamodel.rst:2857 #: reference/datamodel.rst:2983
msgid "An example of an asynchronous context manager class::" msgid "An example of an asynchronous context manager class::"
msgstr "Un exemple de classe de gestionnaire de contexte asynchrone ::" msgstr "Un exemple de classe de gestionnaire de contexte asynchrone ::"
#: reference/datamodel.rst:2870 #: reference/datamodel.rst:2996
msgid "Footnotes" msgid "Footnotes"
msgstr "Notes de bas de page" msgstr "Notes de bas de page"
#: reference/datamodel.rst:2871 #: reference/datamodel.rst:2997
msgid "" msgid ""
"It *is* possible in some cases to change an object's type, under certain " "It *is* possible in some cases to change an object's type, under certain "
"controlled conditions. It generally isn't a good idea though, since it can " "controlled conditions. It generally isn't a good idea though, since it can "
@ -4845,7 +4954,7 @@ msgstr ""
"car cela peut conduire à un comportement très étrange si ce n'est pas géré " "car cela peut conduire à un comportement très étrange si ce n'est pas géré "
"correctement." "correctement."
#: reference/datamodel.rst:2875 #: reference/datamodel.rst:3001
msgid "" msgid ""
"The :meth:`__hash__`, :meth:`__iter__`, :meth:`__reversed__`, and :meth:" "The :meth:`__hash__`, :meth:`__iter__`, :meth:`__reversed__`, and :meth:"
"`__contains__` methods have special handling for this; others will still " "`__contains__` methods have special handling for this; others will still "
@ -4857,7 +4966,7 @@ msgstr ""
"lèvent toujours :exc:`TypeError`, mais le font en considérant que ``None`` " "lèvent toujours :exc:`TypeError`, mais le font en considérant que ``None`` "
"n'est pas un appelable." "n'est pas un appelable."
#: reference/datamodel.rst:2880 #: reference/datamodel.rst:3006
msgid "" msgid ""
"\"Does not support\" here means that the class has no such method, or the " "\"Does not support\" here means that the class has no such method, or the "
"method returns ``NotImplemented``. Do not set the method to ``None`` if you " "method returns ``NotImplemented``. Do not set the method to ``None`` if you "
@ -4869,7 +4978,7 @@ msgstr ""
"``None`` à la méthode si vous voulez un repli vers la méthode symétrique de " "``None`` à la méthode si vous voulez un repli vers la méthode symétrique de "
"l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli." "l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli."
#: reference/datamodel.rst:2886 #: reference/datamodel.rst:3012
msgid "" msgid ""
"For operands of the same type, it is assumed that if the non-reflected " "For operands of the same type, it is assumed that if the non-reflected "
"method -- such as :meth:`__add__` -- fails then the overall operation is not " "method -- such as :meth:`__add__` -- fails then the overall operation is not "
@ -4879,6 +4988,35 @@ msgstr ""
"(telle que :meth:`__add__`) échoue, alors l'opération en tant que telle " "(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." "n'est pas autorisée et donc la méthode symétrique n'est pas appelée."
#~ msgid ""
#~ "One can implement the generic class syntax as specified by :pep:`484` "
#~ "(for example ``List[int]``) by defining a special method:"
#~ msgstr ""
#~ "Vous pouvez implémenter la syntaxe générique des classes comme spécifié "
#~ "par la :pep:`484` (par exemple ``List[int]``) en définissant une méthode "
#~ "spéciale :"
#~ msgid ""
#~ "This method is looked up on the class object itself, and when defined in "
#~ "the class body, this method is implicitly a class method. Note, this "
#~ "mechanism is primarily reserved for use with static type hints, other "
#~ "usage is discouraged."
#~ msgstr ""
#~ "Python recherche cette méthode dans l'objet de classe lui-même et, "
#~ "lorsqu'elle est définie dans le corps de la classe, cette méthode est "
#~ "implicitement une méthode de classe. Notez que ce mécanisme est "
#~ "principalement réservé à une utilisation avec des indications de type "
#~ "statiques, d'autres utilisations sont déconseillées."
#~ msgid ""
#~ "Iterator objects also need to implement this method; they are required to "
#~ "return themselves. For more information on iterator objects, see :ref:"
#~ "`typeiter`."
#~ msgstr ""
#~ "Les objets itérateurs doivent aussi implémenter cette méthode ; ils "
#~ "doivent alors se renvoyer eux-mêmes. Pour plus d'information sur les "
#~ "objets itérateurs, lisez :ref:`typeiter`."
#~ msgid "" #~ msgid ""
#~ "If :meth:`__int__` is not defined then the built-in function :func:`int` " #~ "If :meth:`__int__` is not defined then the built-in function :func:`int` "
#~ "falls back to :meth:`__trunc__`." #~ "falls back to :meth:`__trunc__`."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-21 15:04+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-04-09 23:45+0200\n" "PO-Revision-Date: 2021-04-09 23:45+0200\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n" "Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -78,29 +78,58 @@ msgstr ""
"opérations de liaisons de noms (*name binding* en anglais)." "opérations de liaisons de noms (*name binding* en anglais)."
#: reference/executionmodel.rst:59 #: reference/executionmodel.rst:59
msgid "" msgid "The following constructs bind names:"
"The following constructs bind names: formal parameters to functions, :" msgstr ""
"keyword:`import` statements, class and function definitions (these bind the "
"class or function name in the defining block), and targets that are " #: reference/executionmodel.rst:61
"identifiers if occurring in an assignment, :keyword:`for` loop header, or " msgid "formal parameters to functions,"
"after :keyword:`!as` in a :keyword:`with` statement or :keyword:`except` " msgstr ""
"clause. The :keyword:`!import` statement of the form ``from ... import *`` "
"binds all names defined in the imported module, except those beginning with " #: reference/executionmodel.rst:62
"an underscore. This form may only be used at the module level." msgid "class definitions,"
msgstr ""
#: reference/executionmodel.rst:63
msgid "function definitions,"
msgstr ""
#: reference/executionmodel.rst:64
msgid "assignment expressions,"
msgstr ""
#: reference/executionmodel.rst:65
msgid ""
":ref:`targets <assignment>` that are identifiers if occurring in an "
"assignment:"
msgstr ""
#: reference/executionmodel.rst:68
msgid ":keyword:`for` loop header,"
msgstr "" msgstr ""
"Les constructions suivantes conduisent à des opérations de liaison à des "
"noms : les paramètres formels d'une fonction, les instructions :keyword:"
"`import`, les définitions de fonctions et de classes (le nom de la classe ou "
"de la fonction est lié au bloc qui la définit) et les cibles qui sont des "
"identifiants dans les assignations, les entêtes de boucles :keyword:`for` ou "
"après :keyword:`!as` dans une instruction :keyword:`with` ou une clause :"
"keyword:`except`. L'instruction :keyword:`!import` sous la forme ``from ... "
"import *`` lie tous les noms définis dans le module importé, sauf ceux qui "
"commencent par un tiret bas (`'_'`). Cette forme ne doit être utilisée qu'au "
"niveau du module."
#: reference/executionmodel.rst:69 #: reference/executionmodel.rst:69
msgid "" msgid ""
"after :keyword:`!as` in a :keyword:`with` statement, :keyword:`except` "
"clause or in the as-pattern in structural pattern matching,"
msgstr ""
#: reference/executionmodel.rst:71
msgid "in a capture pattern in structural pattern matching"
msgstr ""
#: reference/executionmodel.rst:73
msgid ":keyword:`import` statements."
msgstr ""
#: reference/executionmodel.rst:75
msgid ""
"The :keyword:`!import` statement of the form ``from ... import *`` binds all "
"names defined in the imported module, except those beginning with an "
"underscore. This form may only be used at the module level."
msgstr ""
#: reference/executionmodel.rst:79
msgid ""
"A target occurring in a :keyword:`del` statement is also considered bound " "A target occurring in a :keyword:`del` statement is also considered bound "
"for this purpose (though the actual semantics are to unbind the name)." "for this purpose (though the actual semantics are to unbind the name)."
msgstr "" msgstr ""
@ -108,7 +137,7 @@ msgstr ""
"considérée comme une liaison à un nom dans ce cadre (bien que la sémantique " "considérée comme une liaison à un nom dans ce cadre (bien que la sémantique "
"véritable soit de délier le nom)." "véritable soit de délier le nom)."
#: reference/executionmodel.rst:72 #: reference/executionmodel.rst:82
msgid "" msgid ""
"Each assignment or import statement occurs within a block defined by a class " "Each assignment or import statement occurs within a block defined by a class "
"or function definition or at the module level (the top-level code block)." "or function definition or at the module level (the top-level code block)."
@ -117,7 +146,7 @@ msgstr ""
"une définition de classe ou de fonction ou au niveau du module (le bloc de " "une définition de classe ou de fonction ou au niveau du module (le bloc de "
"code de plus haut niveau)." "code de plus haut niveau)."
#: reference/executionmodel.rst:77 #: reference/executionmodel.rst:87
msgid "" msgid ""
"If a name is bound in a block, it is a local variable of that block, unless " "If a name is bound in a block, it is a local variable of that block, unless "
"declared as :keyword:`nonlocal` or :keyword:`global`. If a name is bound at " "declared as :keyword:`nonlocal` or :keyword:`global`. If a name is bound at "
@ -132,7 +161,7 @@ msgstr ""
"est utilisée dans un bloc de code alors qu'elle n'y est pas définie, c'est " "est utilisée dans un bloc de code alors qu'elle n'y est pas définie, c'est "
"une :dfn:`variable libre`." "une :dfn:`variable libre`."
#: reference/executionmodel.rst:83 #: reference/executionmodel.rst:93
msgid "" msgid ""
"Each occurrence of a name in the program text refers to the :dfn:`binding` " "Each occurrence of a name in the program text refers to the :dfn:`binding` "
"of that name established by the following name resolution rules." "of that name established by the following name resolution rules."
@ -140,11 +169,11 @@ msgstr ""
"Chaque occurrence d'un nom dans un programme fait référence à la :dfn:" "Chaque occurrence d'un nom dans un programme fait référence à la :dfn:"
"`liaison` de ce nom établie par les règles de résolution des noms suivantes." "`liaison` de ce nom établie par les règles de résolution des noms suivantes."
#: reference/executionmodel.rst:89 #: reference/executionmodel.rst:99
msgid "Resolution of names" msgid "Resolution of names"
msgstr "Résolution des noms" msgstr "Résolution des noms"
#: reference/executionmodel.rst:93 #: reference/executionmodel.rst:103
msgid "" msgid ""
"A :dfn:`scope` defines the visibility of a name within a block. If a local " "A :dfn:`scope` defines the visibility of a name within a block. If a local "
"variable is defined in a block, its scope includes that block. If the " "variable is defined in a block, its scope includes that block. If the "
@ -158,7 +187,7 @@ msgstr ""
"les blocs contenus dans celui qui comprend la définition, à moins qu'un bloc " "les blocs contenus dans celui qui comprend la définition, à moins qu'un bloc "
"intérieur ne définisse une autre liaison pour ce nom." "intérieur ne définisse une autre liaison pour ce nom."
#: reference/executionmodel.rst:101 #: reference/executionmodel.rst:111
msgid "" msgid ""
"When a name is used in a code block, it is resolved using the nearest " "When a name is used in a code block, it is resolved using the nearest "
"enclosing scope. The set of all such scopes visible to a code block is " "enclosing scope. The set of all such scopes visible to a code block is "
@ -168,7 +197,7 @@ msgstr ""
"portée la plus petite. L'ensemble de toutes les portées visibles dans un " "portée la plus petite. L'ensemble de toutes les portées visibles dans un "
"bloc de code s'appelle :dfn:`l'environnement` du bloc." "bloc de code s'appelle :dfn:`l'environnement` du bloc."
#: reference/executionmodel.rst:109 #: reference/executionmodel.rst:119
msgid "" msgid ""
"When a name is not found at all, a :exc:`NameError` exception is raised. If " "When a name is not found at all, a :exc:`NameError` exception is raised. If "
"the current scope is a function scope, and the name refers to a local " "the current scope is a function scope, and the name refers to a local "
@ -182,7 +211,7 @@ msgstr ""
"nom est utilisé, une exception :exc:`UnboundLocalError` est levée. :exc:" "nom est utilisé, une exception :exc:`UnboundLocalError` est levée. :exc:"
"`UnboundLocalError` est une sous-classe de :exc:`NameError`." "`UnboundLocalError` est une sous-classe de :exc:`NameError`."
#: reference/executionmodel.rst:115 #: reference/executionmodel.rst:125
msgid "" msgid ""
"If a name binding operation occurs anywhere within a code block, all uses of " "If a name binding operation occurs anywhere within a code block, all uses of "
"the name within the block are treated as references to the current block. " "the name within the block are treated as references to the current block. "
@ -201,7 +230,7 @@ msgstr ""
"de code peuvent être déterminées en parcourant tout le texte du bloc à la " "de code peuvent être déterminées en parcourant tout le texte du bloc à la "
"recherche des opérations de liaisons." "recherche des opérations de liaisons."
#: reference/executionmodel.rst:122 #: reference/executionmodel.rst:132
#, fuzzy #, fuzzy
msgid "" msgid ""
"If the :keyword:`global` statement occurs within a block, all uses of the " "If the :keyword:`global` statement occurs within a block, all uses of the "
@ -224,7 +253,7 @@ msgstr ""
"l'espace de nommage natif. L'instruction :keyword:`!global` doit précéder " "l'espace de nommage natif. L'instruction :keyword:`!global` doit précéder "
"toute utilisation du nom considéré." "toute utilisation du nom considéré."
#: reference/executionmodel.rst:131 #: reference/executionmodel.rst:141
msgid "" msgid ""
"The :keyword:`global` statement has the same scope as a name binding " "The :keyword:`global` statement has the same scope as a name binding "
"operation in the same block. If the nearest enclosing scope for a free " "operation in the same block. If the nearest enclosing scope for a free "
@ -235,7 +264,7 @@ msgstr ""
"du même bloc. Si la portée englobante la plus petite pour une variable libre " "du même bloc. Si la portée englobante la plus petite pour une variable libre "
"contient une instruction *global*, la variable libre est considérée globale." "contient une instruction *global*, la variable libre est considérée globale."
#: reference/executionmodel.rst:137 #: reference/executionmodel.rst:147
msgid "" msgid ""
"The :keyword:`nonlocal` statement causes corresponding names to refer to " "The :keyword:`nonlocal` statement causes corresponding names to refer to "
"previously bound variables in the nearest enclosing function scope. :exc:" "previously bound variables in the nearest enclosing function scope. :exc:"
@ -248,7 +277,7 @@ msgstr ""
"compilation si le nom donné n'existe dans aucune portée de fonction " "compilation si le nom donné n'existe dans aucune portée de fonction "
"englobante." "englobante."
#: reference/executionmodel.rst:144 #: reference/executionmodel.rst:154
msgid "" msgid ""
"The namespace for a module is automatically created the first time a module " "The namespace for a module is automatically created the first time a module "
"is imported. The main module for a script is always called :mod:`__main__`." "is imported. The main module for a script is always called :mod:`__main__`."
@ -257,7 +286,7 @@ msgstr ""
"que le module est importé. Le module principal d'un script s'appelle " "que le module est importé. Le module principal d'un script s'appelle "
"toujours :mod:`__main__`." "toujours :mod:`__main__`."
#: reference/executionmodel.rst:147 #: reference/executionmodel.rst:157
msgid "" msgid ""
"Class definition blocks and arguments to :func:`exec` and :func:`eval` are " "Class definition blocks and arguments to :func:`exec` and :func:`eval` are "
"special in the context of name resolution. A class definition is an " "special in the context of name resolution. A class definition is an "
@ -283,11 +312,11 @@ msgstr ""
"puisque celles-ci sont implémentées en utilisant une portée de fonction. " "puisque celles-ci sont implémentées en utilisant une portée de fonction. "
"Ainsi, les instructions suivantes échouent ::" "Ainsi, les instructions suivantes échouent ::"
#: reference/executionmodel.rst:165 #: reference/executionmodel.rst:175
msgid "Builtins and restricted execution" msgid "Builtins and restricted execution"
msgstr "Noms natifs et restrictions d'exécution" msgstr "Noms natifs et restrictions d'exécution"
#: reference/executionmodel.rst:171 #: reference/executionmodel.rst:181
msgid "" msgid ""
"Users should not touch ``__builtins__``; it is strictly an implementation " "Users should not touch ``__builtins__``; it is strictly an implementation "
"detail. Users wanting to override values in the builtins namespace should :" "detail. Users wanting to override values in the builtins namespace should :"
@ -300,7 +329,7 @@ msgstr ""
"keyword:`importer <import>` le module :mod:`builtins` et modifier ses " "keyword:`importer <import>` le module :mod:`builtins` et modifier ses "
"attributs judicieusement." "attributs judicieusement."
#: reference/executionmodel.rst:176 #: reference/executionmodel.rst:186
msgid "" msgid ""
"The builtins namespace associated with the execution of a code block is " "The builtins namespace associated with the execution of a code block is "
"actually found by looking up the name ``__builtins__`` in its global " "actually found by looking up the name ``__builtins__`` in its global "
@ -319,11 +348,11 @@ msgstr ""
"``__builtins__`` est un pseudonyme du dictionnaire du module :mod:`builtins` " "``__builtins__`` est un pseudonyme du dictionnaire du module :mod:`builtins` "
"lui-même." "lui-même."
#: reference/executionmodel.rst:188 #: reference/executionmodel.rst:198
msgid "Interaction with dynamic features" msgid "Interaction with dynamic features"
msgstr "Interaction avec les fonctionnalités dynamiques" msgstr "Interaction avec les fonctionnalités dynamiques"
#: reference/executionmodel.rst:190 #: reference/executionmodel.rst:200
msgid "" msgid ""
"Name resolution of free variables occurs at runtime, not at compile time. " "Name resolution of free variables occurs at runtime, not at compile time. "
"This means that the following code will print 42::" "This means that the following code will print 42::"
@ -331,7 +360,7 @@ msgstr ""
"La résolution des noms de variables libres intervient à l'exécution, pas à " "La résolution des noms de variables libres intervient à l'exécution, pas à "
"la compilation. Cela signifie que le code suivant affiche 42 ::" "la compilation. Cela signifie que le code suivant affiche 42 ::"
#: reference/executionmodel.rst:201 #: reference/executionmodel.rst:211
msgid "" msgid ""
"The :func:`eval` and :func:`exec` functions do not have access to the full " "The :func:`eval` and :func:`exec` functions do not have access to the full "
"environment for resolving names. Names may be resolved in the local and " "environment for resolving names. Names may be resolved in the local and "
@ -350,11 +379,11 @@ msgstr ""
"nommage globaux et locaux. Si seulement un espace de nommage est spécifié, " "nommage globaux et locaux. Si seulement un espace de nommage est spécifié, "
"il est utilisé pour les deux." "il est utilisé pour les deux."
#: reference/executionmodel.rst:212 #: reference/executionmodel.rst:222
msgid "Exceptions" msgid "Exceptions"
msgstr "Exceptions" msgstr "Exceptions"
#: reference/executionmodel.rst:223 #: reference/executionmodel.rst:233
msgid "" msgid ""
"Exceptions are a means of breaking out of the normal flow of control of a " "Exceptions are a means of breaking out of the normal flow of control of a "
"code block in order to handle errors or other exceptional conditions. An " "code block in order to handle errors or other exceptional conditions. An "
@ -369,7 +398,7 @@ msgstr ""
"a, directement ou indirectement, invoqué le bloc de code où l'erreur s'est " "a, directement ou indirectement, invoqué le bloc de code où l'erreur s'est "
"produite." "produite."
#: reference/executionmodel.rst:229 #: reference/executionmodel.rst:239
msgid "" msgid ""
"The Python interpreter raises an exception when it detects a run-time error " "The Python interpreter raises an exception when it detects a run-time error "
"(such as division by zero). A Python program can also explicitly raise an " "(such as division by zero). A Python program can also explicitly raise an "
@ -387,7 +416,7 @@ msgstr ""
"peut être utilisée pour spécifier un code de nettoyage qui ne gère pas " "peut être utilisée pour spécifier un code de nettoyage qui ne gère pas "
"l'exception mais qui est exécuté quoi qu'il arrive (exception ou pas)." "l'exception mais qui est exécuté quoi qu'il arrive (exception ou pas)."
#: reference/executionmodel.rst:239 #: reference/executionmodel.rst:249
msgid "" msgid ""
"Python uses the \"termination\" model of error handling: an exception " "Python uses the \"termination\" model of error handling: an exception "
"handler can find out what happened and continue execution at an outer level, " "handler can find out what happened and continue execution at an outer level, "
@ -400,7 +429,7 @@ msgstr ""
"l'erreur et ré-essayer l'opération qui a échoué (sauf à entrer à nouveau " "l'erreur et ré-essayer l'opération qui a échoué (sauf à entrer à nouveau "
"dans le code en question par le haut)." "dans le code en question par le haut)."
#: reference/executionmodel.rst:246 #: reference/executionmodel.rst:256
msgid "" msgid ""
"When an exception is not handled at all, the interpreter terminates " "When an exception is not handled at all, the interpreter terminates "
"execution of the program, or returns to its interactive main loop. In " "execution of the program, or returns to its interactive main loop. In "
@ -412,7 +441,7 @@ msgstr ""
"il affiche une trace de la pile d'appels, sauf si l'exception est :exc:" "il affiche une trace de la pile d'appels, sauf si l'exception est :exc:"
"`SystemExit`." "`SystemExit`."
#: reference/executionmodel.rst:250 #: reference/executionmodel.rst:260
msgid "" msgid ""
"Exceptions are identified by class instances. The :keyword:`except` clause " "Exceptions are identified by class instances. The :keyword:`except` clause "
"is selected depending on the class of the instance: it must reference the " "is selected depending on the class of the instance: it must reference the "
@ -426,7 +455,7 @@ msgstr ""
"L'instance peut être transmise au gestionnaire et peut apporter des " "L'instance peut être transmise au gestionnaire et peut apporter des "
"informations complémentaires sur les conditions de l'exception." "informations complémentaires sur les conditions de l'exception."
#: reference/executionmodel.rst:257 #: reference/executionmodel.rst:267
msgid "" msgid ""
"Exception messages are not part of the Python API. Their contents may " "Exception messages are not part of the Python API. Their contents may "
"change from one version of Python to the next without warning and should not " "change from one version of Python to the next without warning and should not "
@ -438,7 +467,7 @@ msgstr ""
"code ne doit pas reposer sur ceux-ci s'il doit fonctionner sur plusieurs " "code ne doit pas reposer sur ceux-ci s'il doit fonctionner sur plusieurs "
"versions de l'interpréteur." "versions de l'interpréteur."
#: reference/executionmodel.rst:261 #: reference/executionmodel.rst:271
msgid "" msgid ""
"See also the description of the :keyword:`try` statement in section :ref:" "See also the description of the :keyword:`try` statement in section :ref:"
"`try` and :keyword:`raise` statement in section :ref:`raise`." "`try` and :keyword:`raise` statement in section :ref:`raise`."
@ -447,14 +476,36 @@ msgstr ""
"section :ref:`try` et de l'instruction :keyword:`raise` dans la section :ref:" "section :ref:`try` et de l'instruction :keyword:`raise` dans la section :ref:"
"`raise`." "`raise`."
#: reference/executionmodel.rst:266 #: reference/executionmodel.rst:276
msgid "Footnotes" msgid "Footnotes"
msgstr "Notes" msgstr "Notes"
#: reference/executionmodel.rst:267 #: reference/executionmodel.rst:277
msgid "" msgid ""
"This limitation occurs because the code that is executed by these operations " "This limitation occurs because the code that is executed by these operations "
"is not available at the time the module is compiled." "is not available at the time the module is compiled."
msgstr "" msgstr ""
"En effet, le code qui est exécuté par ces opérations n'est pas connu au " "En effet, le code qui est exécuté par ces opérations n'est pas connu au "
"moment où le module est compilé." "moment où le module est compilé."
#~ msgid ""
#~ "The following constructs bind names: formal parameters to functions, :"
#~ "keyword:`import` statements, class and function definitions (these bind "
#~ "the class or function name in the defining block), and targets that are "
#~ "identifiers if occurring in an assignment, :keyword:`for` loop header, or "
#~ "after :keyword:`!as` in a :keyword:`with` statement or :keyword:`except` "
#~ "clause. The :keyword:`!import` statement of the form ``from ... import "
#~ "*`` binds all names defined in the imported module, except those "
#~ "beginning with an underscore. This form may only be used at the module "
#~ "level."
#~ msgstr ""
#~ "Les constructions suivantes conduisent à des opérations de liaison à des "
#~ "noms : les paramètres formels d'une fonction, les instructions :keyword:"
#~ "`import`, les définitions de fonctions et de classes (le nom de la classe "
#~ "ou de la fonction est lié au bloc qui la définit) et les cibles qui sont "
#~ "des identifiants dans les assignations, les entêtes de boucles :keyword:"
#~ "`for` ou après :keyword:`!as` dans une instruction :keyword:`with` ou une "
#~ "clause :keyword:`except`. L'instruction :keyword:`!import` sous la forme "
#~ "``from ... import *`` lie tous les noms définis dans le module importé, "
#~ "sauf ceux qui commencent par un tiret bas (`'_'`). Cette forme ne doit "
#~ "être utilisée qu'au niveau du module."

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-21 15:04+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-04-10 17:40+0200\n" "PO-Revision-Date: 2021-04-10 17:40+0200\n"
"Last-Translator: Samuel Giffard <samuel@giffard.co>\n" "Last-Translator: Samuel Giffard <samuel@giffard.co>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -715,12 +715,14 @@ msgstr ""
"lexicales suivantes :" "lexicales suivantes :"
#: reference/lexical_analysis.rst:471 #: reference/lexical_analysis.rst:471
#, fuzzy
msgid "" msgid ""
"One syntactic restriction not indicated by these productions is that " "One syntactic restriction not indicated by these productions is that "
"whitespace is not allowed between the :token:`stringprefix` or :token:" "whitespace is not allowed between the :token:`~python-grammar:stringprefix` "
"`bytesprefix` and the rest of the literal. The source character set is " "or :token:`~python-grammar:bytesprefix` and the rest of the literal. The "
"defined by the encoding declaration; it is UTF-8 if no encoding declaration " "source character set is defined by the encoding declaration; it is UTF-8 if "
"is given in the source file; see section :ref:`encodings`." "no encoding declaration is given in the source file; see section :ref:"
"`encodings`."
msgstr "" msgstr ""
"Une restriction syntaxique non indiquée par ces règles est qu'aucun blanc " "Une restriction syntaxique non indiquée par ces règles est qu'aucun blanc "
"n'est autorisé entre le :token:`stringprefix` ou :token:`bytesprefix` et le " "n'est autorisé entre le :token:`stringprefix` ou :token:`bytesprefix` et le "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-10-16 23:16+0200\n" "PO-Revision-Date: 2021-10-16 23:16+0200\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n" "Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -442,11 +442,12 @@ msgstr ""
"ignorant le reste." "ignorant le reste."
#: tutorial/controlflow.rst:378 #: tutorial/controlflow.rst:378
#, fuzzy
msgid "" msgid ""
"Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the ``" "Mapping patterns: ``{\"bandwidth\": b, \"latency\": l}`` captures the ``"
"\"bandwidth\"`` and ``\"latency\"`` values from a dictionary. Unlike " "\"bandwidth\"`` and ``\"latency\"`` values from a dictionary. Unlike "
"sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is " "sequence patterns, extra keys are ignored. An unpacking like ``**rest`` is "
"also supported. (But ``**_`` would be redundant, so it not allowed.)" "also supported. (But ``**_`` would be redundant, so it is not allowed.)"
msgstr "" msgstr ""
"Il existe les filtres d'association, qui ressemblent syntaxiquement aux " "Il existe les filtres d'association, qui ressemblent syntaxiquement aux "
"dictionnaires. Par exemple, le filtre ``{\"bande_passante\": b, \"latence\": " "dictionnaires. Par exemple, le filtre ``{\"bande_passante\": b, \"latence\": "

View File

@ -12,7 +12,6 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Last-Translator: Yannick Gingras <ygingras@ygingras.net>\n"
"X-Generator: Poedit 2.4.2\n" "X-Generator: Poedit 2.4.2\n"
#: whatsnew/3.10.rst:3 #: whatsnew/3.10.rst:3
@ -1828,7 +1827,7 @@ msgstr ""
#: whatsnew/3.10.rst:1173 #: whatsnew/3.10.rst:1173
msgid "" msgid ""
":ref:`importlib.metadata entry points <entry-points>` now provides a nicer " ":ref:`importlib.metadata entry points <entry-points>` now provide a nicer "
"experience for selecting entry points by group and name through a new :class:" "experience for selecting entry points by group and name through a new :class:"
"`importlib.metadata.EntryPoints` class. See the Compatibility Note in the " "`importlib.metadata.EntryPoints` class. See the Compatibility Note in the "
"docs for more info on the deprecation and usage." "docs for more info on the deprecation and usage."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Python 3\n" "Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n" "POT-Creation-Date: 2021-11-27 10:27+0100\n"
"PO-Revision-Date: 2021-10-27 20:52+0200\n" "PO-Revision-Date: 2021-10-27 20:52+0200\n"
"Last-Translator: Yannick Gingras <ygingras@ygingras.net>\n" "Last-Translator: Yannick Gingras <ygingras@ygingras.net>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
@ -1371,7 +1371,7 @@ msgstr ""
"pour mesurer la taille d'apogée de parties de code spécifiques (contribution " "pour mesurer la taille d'apogée de parties de code spécifiques (contribution "
"de *Huon Wilson* dans :issue:`40630`)." "de *Huon Wilson* dans :issue:`40630`)."
#: whatsnew/3.9.rst:1485 #: whatsnew/3.9.rst:1481
msgid "typing" msgid "typing"
msgstr "*typing*" msgstr "*typing*"
@ -1817,7 +1817,7 @@ msgstr ""
"Le paramètre *random* de :func:`random.shuffle` est maintenant obsolète " "Le paramètre *random* de :func:`random.shuffle` est maintenant obsolète "
"(contribution de *Raymond Hettinger* dans :issue:`40465`)." "(contribution de *Raymond Hettinger* dans :issue:`40465`)."
#: whatsnew/3.9.rst:1399 #: whatsnew/3.9.rst:1395
msgid "Removed" msgid "Removed"
msgstr "Retraits" msgstr "Retraits"
@ -2510,7 +2510,7 @@ msgstr ""
"la plus efficace d'appeler un objet Python appelable sans aucun argument " "la plus efficace d'appeler un objet Python appelable sans aucun argument "
"(contribution de *Victor Stinner* dans :issue:`37194`)." "(contribution de *Victor Stinner* dans :issue:`37194`)."
#: whatsnew/3.9.rst:1410 #: whatsnew/3.9.rst:1406
msgid "Changes in the limited C API (if ``Py_LIMITED_API`` macro is defined):" msgid "Changes in the limited C API (if ``Py_LIMITED_API`` macro is defined):"
msgstr "" msgstr ""
"Changements dans l'API C limité (si la macro ``Py_LIMITED_API`` est " "Changements dans l'API C limité (si la macro ``Py_LIMITED_API`` est "
@ -2538,7 +2538,7 @@ msgstr ""
"``PyObject_INIT()`` et ``PyObject_INIT_VAR()`` deviennent des fonctions " "``PyObject_INIT()`` et ``PyObject_INIT_VAR()`` deviennent des fonctions "
"\"opaques\" régulières pour cacher les détails d'implémentation" "\"opaques\" régulières pour cacher les détails d'implémentation"
#: whatsnew/3.9.rst:1437 #: whatsnew/3.9.rst:1433
msgid "(Contributed by Victor Stinner in :issue:`38644` and :issue:`39542`.)" msgid "(Contributed by Victor Stinner in :issue:`38644` and :issue:`39542`.)"
msgstr "" msgstr ""
"(contribution de *Victor Stinner* dans :issue:`38644` et :issue:`39542`)." "(contribution de *Victor Stinner* dans :issue:`38644` et :issue:`39542`)."
@ -2726,16 +2726,6 @@ msgstr ""
#: whatsnew/3.9.rst:1381 #: whatsnew/3.9.rst:1381
msgid "" msgid ""
":c:func:`PyType_HasFeature` now always calls :c:func:`PyType_GetFlags`. "
"Previously, it accessed directly the :c:member:`PyTypeObject.tp_flags` "
"member when the limited C API was not used."
msgstr ""
"Maintenant, :c:func:`PyType_HasFeature` appelle toujours :c:func:"
"`PyType_GetFlags`. Précédemment, elle accédait directement au membre :c:"
"member:`PyTypeObject.tp_flags` quand l'API limité C n'était pas utilisé ;"
#: whatsnew/3.9.rst:1385
msgid ""
":c:func:`PyObject_GET_WEAKREFS_LISTPTR` macro was converted to a function: " ":c:func:`PyObject_GET_WEAKREFS_LISTPTR` macro was converted to a function: "
"the macro accessed directly the :c:member:`PyTypeObject.tp_weaklistoffset` " "the macro accessed directly the :c:member:`PyTypeObject.tp_weaklistoffset` "
"member." "member."
@ -2744,7 +2734,7 @@ msgstr ""
"fonction : la macro accédait directement au membre :c:member:`PyTypeObject." "fonction : la macro accédait directement au membre :c:member:`PyTypeObject."
"tp_weaklistoffset` ;" "tp_weaklistoffset` ;"
#: whatsnew/3.9.rst:1389 #: whatsnew/3.9.rst:1385
msgid "" msgid ""
":c:func:`PyObject_CheckBuffer` macro was converted to a function: the macro " ":c:func:`PyObject_CheckBuffer` macro was converted to a function: the macro "
"accessed directly the :c:member:`PyTypeObject.tp_as_buffer` member." "accessed directly the :c:member:`PyTypeObject.tp_as_buffer` member."
@ -2752,7 +2742,7 @@ msgstr ""
"La macro :c:func:`PyObject_CheckBuffer` a été convertie en fonction : la " "La macro :c:func:`PyObject_CheckBuffer` a été convertie en fonction : la "
"macro accédait directement au membre :c:member:`PyTypeObject.tp_as_buffer` ;" "macro accédait directement au membre :c:member:`PyTypeObject.tp_as_buffer` ;"
#: whatsnew/3.9.rst:1392 #: whatsnew/3.9.rst:1388
msgid "" msgid ""
":c:func:`PyIndex_Check` is now always declared as an opaque function to hide " ":c:func:`PyIndex_Check` is now always declared as an opaque function to hide "
"implementation details: removed the ``PyIndex_Check()`` macro. The macro " "implementation details: removed the ``PyIndex_Check()`` macro. The macro "
@ -2763,11 +2753,11 @@ msgstr ""
"``PyIndex_Check()``. La macro accédait directement au membre :c:member:" "``PyIndex_Check()``. La macro accédait directement au membre :c:member:"
"`PyTypeObject.tp_as_number`." "`PyTypeObject.tp_as_number`."
#: whatsnew/3.9.rst:1396 #: whatsnew/3.9.rst:1392
msgid "(See :issue:`40170` for more details.)" msgid "(See :issue:`40170` for more details.)"
msgstr "(Voir :issue:`40170` pour plus de détails.)" msgstr "(Voir :issue:`40170` pour plus de détails.)"
#: whatsnew/3.9.rst:1401 #: whatsnew/3.9.rst:1397
msgid "" msgid ""
"Excluded ``PyFPE_START_PROTECT()`` and ``PyFPE_END_PROTECT()`` macros of " "Excluded ``PyFPE_START_PROTECT()`` and ``PyFPE_END_PROTECT()`` macros of "
"``pyfpe.h`` from the limited C API. (Contributed by Victor Stinner in :issue:" "``pyfpe.h`` from the limited C API. (Contributed by Victor Stinner in :issue:"
@ -2776,7 +2766,7 @@ msgstr ""
"Exclusion des macros ``PyFPE_START_PROTECT()`` et ``PyFPE_END_PROTECT()`` de " "Exclusion des macros ``PyFPE_START_PROTECT()`` et ``PyFPE_END_PROTECT()`` de "
"l'API C limité (contribution de *Victor Stinner* dans :issue:`38835`)." "l'API C limité (contribution de *Victor Stinner* dans :issue:`38835`)."
#: whatsnew/3.9.rst:1405 #: whatsnew/3.9.rst:1401
msgid "" msgid ""
"The ``tp_print`` slot of :ref:`PyTypeObject <type-structs>` has been " "The ``tp_print`` slot of :ref:`PyTypeObject <type-structs>` has been "
"removed. It was used for printing objects to files in Python 2.7 and before. " "removed. It was used for printing objects to files in Python 2.7 and before. "
@ -2788,11 +2778,11 @@ msgstr ""
"dans les versions précédentes. Depuis Python 3.0, il était ignoré et " "dans les versions précédentes. Depuis Python 3.0, il était ignoré et "
"inutilisé (contribution de *Jeroen Demeyer* dans :issue:`36974`)." "inutilisé (contribution de *Jeroen Demeyer* dans :issue:`36974`)."
#: whatsnew/3.9.rst:1412 #: whatsnew/3.9.rst:1408
msgid "Excluded the following functions from the limited C API:" msgid "Excluded the following functions from the limited C API:"
msgstr "Exclusion des fonctions suivantes de l'API C limité :" msgstr "Exclusion des fonctions suivantes de l'API C limité :"
#: whatsnew/3.9.rst:1414 #: whatsnew/3.9.rst:1410
msgid "" msgid ""
"``PyThreadState_DeleteCurrent()`` (Contributed by Joannah Nanjekye in :issue:" "``PyThreadState_DeleteCurrent()`` (Contributed by Joannah Nanjekye in :issue:"
"`37878`.)" "`37878`.)"
@ -2800,82 +2790,82 @@ msgstr ""
"``PyThreadState_DeleteCurrent()`` (contribution de *Joannah Nanjekye* dans :" "``PyThreadState_DeleteCurrent()`` (contribution de *Joannah Nanjekye* dans :"
"issue:`37878`) ;" "issue:`37878`) ;"
#: whatsnew/3.9.rst:1416 #: whatsnew/3.9.rst:1412
msgid "``_Py_CheckRecursionLimit``" msgid "``_Py_CheckRecursionLimit``"
msgstr "``_Py_CheckRecursionLimit`` ;" msgstr "``_Py_CheckRecursionLimit`` ;"
#: whatsnew/3.9.rst:1417 #: whatsnew/3.9.rst:1413
msgid "``_Py_NewReference()``" msgid "``_Py_NewReference()``"
msgstr "``_Py_NewReference()`` ;" msgstr "``_Py_NewReference()`` ;"
#: whatsnew/3.9.rst:1418 #: whatsnew/3.9.rst:1414
msgid "``_Py_ForgetReference()``" msgid "``_Py_ForgetReference()``"
msgstr "``_Py_ForgetReference()`` ;" msgstr "``_Py_ForgetReference()`` ;"
#: whatsnew/3.9.rst:1419 #: whatsnew/3.9.rst:1415
msgid "``_PyTraceMalloc_NewReference()``" msgid "``_PyTraceMalloc_NewReference()``"
msgstr "``_PyTraceMalloc_NewReference()`` ;" msgstr "``_PyTraceMalloc_NewReference()`` ;"
#: whatsnew/3.9.rst:1420 #: whatsnew/3.9.rst:1416
msgid "``_Py_GetRefTotal()``" msgid "``_Py_GetRefTotal()``"
msgstr "``_Py_GetRefTotal()`` ;" msgstr "``_Py_GetRefTotal()`` ;"
#: whatsnew/3.9.rst:1421 #: whatsnew/3.9.rst:1417
msgid "The trashcan mechanism which never worked in the limited C API." msgid "The trashcan mechanism which never worked in the limited C API."
msgstr "" msgstr ""
"Le mécanisme *trashcan* qui n'a jamais fonctionné dans l'API C limité ;" "Le mécanisme *trashcan* qui n'a jamais fonctionné dans l'API C limité ;"
#: whatsnew/3.9.rst:1422 #: whatsnew/3.9.rst:1418
msgid "``PyTrash_UNWIND_LEVEL``" msgid "``PyTrash_UNWIND_LEVEL``"
msgstr "``PyTrash_UNWIND_LEVEL`` ;" msgstr "``PyTrash_UNWIND_LEVEL`` ;"
#: whatsnew/3.9.rst:1423 #: whatsnew/3.9.rst:1419
msgid "``Py_TRASHCAN_BEGIN_CONDITION``" msgid "``Py_TRASHCAN_BEGIN_CONDITION``"
msgstr "``Py_TRASHCAN_BEGIN_CONDITION`` ;" msgstr "``Py_TRASHCAN_BEGIN_CONDITION`` ;"
#: whatsnew/3.9.rst:1424 #: whatsnew/3.9.rst:1420
msgid "``Py_TRASHCAN_BEGIN``" msgid "``Py_TRASHCAN_BEGIN``"
msgstr "``Py_TRASHCAN_BEGIN`` ;" msgstr "``Py_TRASHCAN_BEGIN`` ;"
#: whatsnew/3.9.rst:1425 #: whatsnew/3.9.rst:1421
msgid "``Py_TRASHCAN_END``" msgid "``Py_TRASHCAN_END``"
msgstr "``Py_TRASHCAN_END`` ;" msgstr "``Py_TRASHCAN_END`` ;"
#: whatsnew/3.9.rst:1426 #: whatsnew/3.9.rst:1422
msgid "``Py_TRASHCAN_SAFE_BEGIN``" msgid "``Py_TRASHCAN_SAFE_BEGIN``"
msgstr "``Py_TRASHCAN_SAFE_BEGIN`` ;" msgstr "``Py_TRASHCAN_SAFE_BEGIN`` ;"
#: whatsnew/3.9.rst:1427 #: whatsnew/3.9.rst:1423
msgid "``Py_TRASHCAN_SAFE_END``" msgid "``Py_TRASHCAN_SAFE_END``"
msgstr "``Py_TRASHCAN_SAFE_END``." msgstr "``Py_TRASHCAN_SAFE_END``."
#: whatsnew/3.9.rst:1429 #: whatsnew/3.9.rst:1425
msgid "Moved following functions and definitions to the internal C API:" msgid "Moved following functions and definitions to the internal C API:"
msgstr "" msgstr ""
"Migration des fonctions et définitions suivantes vers l'API C interne :" "Migration des fonctions et définitions suivantes vers l'API C interne :"
#: whatsnew/3.9.rst:1431 #: whatsnew/3.9.rst:1427
msgid "``_PyDebug_PrintTotalRefs()``" msgid "``_PyDebug_PrintTotalRefs()``"
msgstr "``_PyDebug_PrintTotalRefs()`` ;" msgstr "``_PyDebug_PrintTotalRefs()`` ;"
#: whatsnew/3.9.rst:1432 #: whatsnew/3.9.rst:1428
msgid "``_Py_PrintReferences()``" msgid "``_Py_PrintReferences()``"
msgstr "``_Py_PrintReferences()`` ;" msgstr "``_Py_PrintReferences()`` ;"
#: whatsnew/3.9.rst:1433 #: whatsnew/3.9.rst:1429
msgid "``_Py_PrintReferenceAddresses()``" msgid "``_Py_PrintReferenceAddresses()``"
msgstr "``_Py_PrintReferenceAddresses()`` ;" msgstr "``_Py_PrintReferenceAddresses()`` ;"
#: whatsnew/3.9.rst:1434 #: whatsnew/3.9.rst:1430
msgid "``_Py_tracemalloc_config``" msgid "``_Py_tracemalloc_config``"
msgstr "``_Py_tracemalloc_config`` ;" msgstr "``_Py_tracemalloc_config`` ;"
#: whatsnew/3.9.rst:1435 #: whatsnew/3.9.rst:1431
msgid "``_Py_AddToAllObjects()`` (specific to ``Py_TRACE_REFS`` build)" msgid "``_Py_AddToAllObjects()`` (specific to ``Py_TRACE_REFS`` build)"
msgstr "" msgstr ""
"``_Py_AddToAllObjects()`` (spécifique aux compilations ``Py_TRACE_REFS``)." "``_Py_AddToAllObjects()`` (spécifique aux compilations ``Py_TRACE_REFS``)."
#: whatsnew/3.9.rst:1439 #: whatsnew/3.9.rst:1435
msgid "" msgid ""
"Removed ``_PyRuntime.getframe`` hook and removed ``_PyThreadState_GetFrame`` " "Removed ``_PyRuntime.getframe`` hook and removed ``_PyThreadState_GetFrame`` "
"macro which was an alias to ``_PyRuntime.getframe``. They were only exposed " "macro which was an alias to ``_PyRuntime.getframe``. They were only exposed "
@ -2888,7 +2878,7 @@ msgstr ""
"type ``PyThreadFrameGetter`` (contribution de *Victor Stinner* dans :issue:" "type ``PyThreadFrameGetter`` (contribution de *Victor Stinner* dans :issue:"
"`39946`)." "`39946`)."
#: whatsnew/3.9.rst:1444 #: whatsnew/3.9.rst:1440
msgid "" msgid ""
"Removed the following functions from the C API. Call :c:func:`PyGC_Collect` " "Removed the following functions from the C API. Call :c:func:`PyGC_Collect` "
"explicitly to clear all free lists. (Contributed by Inada Naoki and Victor " "explicitly to clear all free lists. (Contributed by Inada Naoki and Victor "
@ -2899,31 +2889,31 @@ msgstr ""
"Naoki* et *Victor Stinner* dans :issue:`37340`, :issue:`38896` et :issue:" "Naoki* et *Victor Stinner* dans :issue:`37340`, :issue:`38896` et :issue:"
"`40428`) :" "`40428`) :"
#: whatsnew/3.9.rst:1449 #: whatsnew/3.9.rst:1445
msgid "``PyAsyncGen_ClearFreeLists()``" msgid "``PyAsyncGen_ClearFreeLists()``"
msgstr "``PyAsyncGen_ClearFreeLists()`` ;" msgstr "``PyAsyncGen_ClearFreeLists()`` ;"
#: whatsnew/3.9.rst:1450 #: whatsnew/3.9.rst:1446
msgid "``PyContext_ClearFreeList()``" msgid "``PyContext_ClearFreeList()``"
msgstr "``PyContext_ClearFreeList()`` ;" msgstr "``PyContext_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1451 #: whatsnew/3.9.rst:1447
msgid "``PyDict_ClearFreeList()``" msgid "``PyDict_ClearFreeList()``"
msgstr "``PyDict_ClearFreeList()`` ;" msgstr "``PyDict_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1452 #: whatsnew/3.9.rst:1448
msgid "``PyFloat_ClearFreeList()``" msgid "``PyFloat_ClearFreeList()``"
msgstr "``PyFloat_ClearFreeList()`` ;" msgstr "``PyFloat_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1453 #: whatsnew/3.9.rst:1449
msgid "``PyFrame_ClearFreeList()``" msgid "``PyFrame_ClearFreeList()``"
msgstr "``PyFrame_ClearFreeList()`` ;" msgstr "``PyFrame_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1454 #: whatsnew/3.9.rst:1450
msgid "``PyList_ClearFreeList()``" msgid "``PyList_ClearFreeList()``"
msgstr "``PyList_ClearFreeList()`` ;" msgstr "``PyList_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1455 #: whatsnew/3.9.rst:1451
msgid "" msgid ""
"``PyMethod_ClearFreeList()`` and ``PyCFunction_ClearFreeList()``: the free " "``PyMethod_ClearFreeList()`` and ``PyCFunction_ClearFreeList()``: the free "
"lists of bound method objects have been removed." "lists of bound method objects have been removed."
@ -2931,18 +2921,18 @@ msgstr ""
"``PyMethod_ClearFreeList()`` et ``PyCFunction_ClearFreeList()`` : les *free " "``PyMethod_ClearFreeList()`` et ``PyCFunction_ClearFreeList()`` : les *free "
"lists* des objets méthode liées ont été retirées ;" "lists* des objets méthode liées ont été retirées ;"
#: whatsnew/3.9.rst:1457 #: whatsnew/3.9.rst:1453
msgid "" msgid ""
"``PySet_ClearFreeList()``: the set free list has been removed in Python 3.4." "``PySet_ClearFreeList()``: the set free list has been removed in Python 3.4."
msgstr "" msgstr ""
"``PySet_ClearFreeList()`` : la *free list* des objets *sets* a été retirée " "``PySet_ClearFreeList()`` : la *free list* des objets *sets* a été retirée "
"dans Python 3.4 ;" "dans Python 3.4 ;"
#: whatsnew/3.9.rst:1459 #: whatsnew/3.9.rst:1455
msgid "``PyTuple_ClearFreeList()``" msgid "``PyTuple_ClearFreeList()``"
msgstr "``PyTuple_ClearFreeList()`` ;" msgstr "``PyTuple_ClearFreeList()`` ;"
#: whatsnew/3.9.rst:1460 #: whatsnew/3.9.rst:1456
msgid "" msgid ""
"``PyUnicode_ClearFreeList()``: the Unicode free list has been removed in " "``PyUnicode_ClearFreeList()``: the Unicode free list has been removed in "
"Python 3.3." "Python 3.3."
@ -2950,7 +2940,7 @@ msgstr ""
"``PyUnicode_ClearFreeList()`` : la *free list* des objets Unicode a été " "``PyUnicode_ClearFreeList()`` : la *free list* des objets Unicode a été "
"retirée dans Python 3.3." "retirée dans Python 3.3."
#: whatsnew/3.9.rst:1463 #: whatsnew/3.9.rst:1459
msgid "" msgid ""
"Removed ``_PyUnicode_ClearStaticStrings()`` function. (Contributed by Victor " "Removed ``_PyUnicode_ClearStaticStrings()`` function. (Contributed by Victor "
"Stinner in :issue:`39465`.)" "Stinner in :issue:`39465`.)"
@ -2959,7 +2949,7 @@ msgstr ""
"*Victor Stinner* dans :issue:`39465`)." "*Victor Stinner* dans :issue:`39465`)."
# Féminin puisque Py_UNICODE_MATCH est une macro. # Féminin puisque Py_UNICODE_MATCH est une macro.
#: whatsnew/3.9.rst:1466 #: whatsnew/3.9.rst:1462
msgid "" msgid ""
"Removed ``Py_UNICODE_MATCH``. It has been deprecated by :pep:`393`, and " "Removed ``Py_UNICODE_MATCH``. It has been deprecated by :pep:`393`, and "
"broken since Python 3.3. The :c:func:`PyUnicode_Tailmatch` function can be " "broken since Python 3.3. The :c:func:`PyUnicode_Tailmatch` function can be "
@ -2970,7 +2960,7 @@ msgstr ""
"`PyUnicode_Tailmatch` peut être utilisée à sa place (contribution de *Inada " "`PyUnicode_Tailmatch` peut être utilisée à sa place (contribution de *Inada "
"Naoki* dans :issue:`36346`)." "Naoki* dans :issue:`36346`)."
#: whatsnew/3.9.rst:1471 #: whatsnew/3.9.rst:1467
msgid "" msgid ""
"Cleaned header files of interfaces defined but with no implementation. The " "Cleaned header files of interfaces defined but with no implementation. The "
"public API symbols being removed are: " "public API symbols being removed are: "
@ -2992,11 +2982,11 @@ msgstr ""
"``PyNoArgsFunction`` (contribution de *Pablo Galindo Salgado* dans :issue:" "``PyNoArgsFunction`` (contribution de *Pablo Galindo Salgado* dans :issue:"
"`39372`)." "`39372`)."
#: whatsnew/3.9.rst:1482 #: whatsnew/3.9.rst:1478
msgid "Notable changes in Python 3.9.1" msgid "Notable changes in Python 3.9.1"
msgstr "Changements importants dans Python 3.9.1" msgstr "Changements importants dans Python 3.9.1"
#: whatsnew/3.9.rst:1487 #: whatsnew/3.9.rst:1483
msgid "" msgid ""
"The behavior of :class:`typing.Literal` was changed to conform with :pep:" "The behavior of :class:`typing.Literal` was changed to conform with :pep:"
"`586` and to match the behavior of static type checkers specified in the PEP." "`586` and to match the behavior of static type checkers specified in the PEP."
@ -3005,18 +2995,18 @@ msgstr ""
"avec :pep:`586` et pour avoir le comportement des vérificateurs de types " "avec :pep:`586` et pour avoir le comportement des vérificateurs de types "
"statique spécifiés dans le PEP :" "statique spécifiés dans le PEP :"
#: whatsnew/3.9.rst:1490 #: whatsnew/3.9.rst:1486
msgid "``Literal`` now de-duplicates parameters." msgid "``Literal`` now de-duplicates parameters."
msgstr "``Literal`` de-duplique maintenant les paramètres ;" msgstr "``Literal`` de-duplique maintenant les paramètres ;"
#: whatsnew/3.9.rst:1491 #: whatsnew/3.9.rst:1487
msgid "" msgid ""
"Equality comparisons between ``Literal`` objects are now order independent." "Equality comparisons between ``Literal`` objects are now order independent."
msgstr "" msgstr ""
"Les comparaisons d'égalité entre les objets ``Literal`` sont maintenant " "Les comparaisons d'égalité entre les objets ``Literal`` sont maintenant "
"indépendantes de l'ordre ;" "indépendantes de l'ordre ;"
#: whatsnew/3.9.rst:1492 #: whatsnew/3.9.rst:1488
msgid "" msgid ""
"``Literal`` comparisons now respect types. For example, ``Literal[0] == " "``Literal`` comparisons now respect types. For example, ``Literal[0] == "
"Literal[False]`` previously evaluated to ``True``. It is now ``False``. To " "Literal[False]`` previously evaluated to ``True``. It is now ``False``. To "
@ -3028,7 +3018,7 @@ msgstr ""
"C'est maintenant ``False``. Pour gérer ce changement, le cache interne des " "C'est maintenant ``False``. Pour gérer ce changement, le cache interne des "
"types utilisés peut maintenant différentier les types ;" "types utilisés peut maintenant différentier les types ;"
#: whatsnew/3.9.rst:1496 #: whatsnew/3.9.rst:1492
msgid "" msgid ""
"``Literal`` objects will now raise a :exc:`TypeError` exception during " "``Literal`` objects will now raise a :exc:`TypeError` exception during "
"equality comparisons if any of their parameters are not :term:`hashable`. " "equality comparisons if any of their parameters are not :term:`hashable`. "
@ -3040,16 +3030,16 @@ msgstr ""
"term:`immuable <immutable>`. Prenez-note que déclarer un ``Literal`` avec un " "term:`immuable <immutable>`. Prenez-note que déclarer un ``Literal`` avec un "
"paramètre muable ne lève pas une erreur ::" "paramètre muable ne lève pas une erreur ::"
#: whatsnew/3.9.rst:1508 #: whatsnew/3.9.rst:1504
msgid "(Contributed by Yurii Karabas in :issue:`42345`.)" msgid "(Contributed by Yurii Karabas in :issue:`42345`.)"
msgstr "(Contribution de *Yurii Karabas* dans :issue:`42345`.)" msgstr "(Contribution de *Yurii Karabas* dans :issue:`42345`.)"
#: whatsnew/3.9.rst:1511 #: whatsnew/3.9.rst:1507
msgid "macOS 11.0 (Big Sur) and Apple Silicon Mac support" msgid "macOS 11.0 (Big Sur) and Apple Silicon Mac support"
msgstr "" msgstr ""
"Prise en charge de *macOS* 11.0 (Big Sur) et de Mac sur processeur Apple" "Prise en charge de *macOS* 11.0 (Big Sur) et de Mac sur processeur Apple"
#: whatsnew/3.9.rst:1513 #: whatsnew/3.9.rst:1509
msgid "" msgid ""
"As of 3.9.1, Python now fully supports building and running on macOS 11.0 " "As of 3.9.1, Python now fully supports building and running on macOS 11.0 "
"(Big Sur) and on Apple Silicon Macs (based on the ``ARM64`` architecture). A " "(Big Sur) and on Apple Silicon Macs (based on the ``ARM64`` architecture). A "
@ -3061,20 +3051,20 @@ msgid ""
"version in use at runtime (\"weaklinking\")." "version in use at runtime (\"weaklinking\")."
msgstr "" msgstr ""
#: whatsnew/3.9.rst:1522 #: whatsnew/3.9.rst:1518
msgid "(Contributed by Ronald Oussoren and Lawrence D'Anna in :issue:`41100`.)" msgid "(Contributed by Ronald Oussoren and Lawrence D'Anna in :issue:`41100`.)"
msgstr "" msgstr ""
"(contribution de *Ronald Oussoren* et *Lawrence D'Anna* dans :issue:`41100`)." "(contribution de *Ronald Oussoren* et *Lawrence D'Anna* dans :issue:`41100`)."
#: whatsnew/3.9.rst:1525 #: whatsnew/3.9.rst:1521
msgid "Notable changes in Python 3.9.2" msgid "Notable changes in Python 3.9.2"
msgstr "Changements importants dans Python 3.9.2" msgstr "Changements importants dans Python 3.9.2"
#: whatsnew/3.9.rst:1528 #: whatsnew/3.9.rst:1524
msgid "collections.abc" msgid "collections.abc"
msgstr "*collections.abc*" msgstr "*collections.abc*"
#: whatsnew/3.9.rst:1530 #: whatsnew/3.9.rst:1526
msgid "" msgid ""
":class:`collections.abc.Callable` generic now flattens type parameters, " ":class:`collections.abc.Callable` generic now flattens type parameters, "
"similar to what :data:`typing.Callable` currently does. This means that " "similar to what :data:`typing.Callable` currently does. This means that "
@ -3090,11 +3080,11 @@ msgid ""
"Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)" "Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)"
msgstr "" msgstr ""
#: whatsnew/3.9.rst:1544 #: whatsnew/3.9.rst:1540
msgid "urllib.parse" msgid "urllib.parse"
msgstr "*urllib.parse*" msgstr "*urllib.parse*"
#: whatsnew/3.9.rst:1546 #: whatsnew/3.9.rst:1542
msgid "" msgid ""
"Earlier Python versions allowed using both ``;`` and ``&`` as query " "Earlier Python versions allowed using both ``;`` and ``&`` as query "
"parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib." "parameter separators in :func:`urllib.parse.parse_qs` and :func:`urllib."
@ -3115,6 +3105,15 @@ msgstr ""
"Pour plus de détails, voir leur documentation respective (contribution de " "Pour plus de détails, voir leur documentation respective (contribution de "
"*Adam Goldschmidt*, *Senthil Kumaran* et *Ken Jin* dans :issue:`42967`)." "*Adam Goldschmidt*, *Senthil Kumaran* et *Ken Jin* dans :issue:`42967`)."
#~ msgid ""
#~ ":c:func:`PyType_HasFeature` now always calls :c:func:`PyType_GetFlags`. "
#~ "Previously, it accessed directly the :c:member:`PyTypeObject.tp_flags` "
#~ "member when the limited C API was not used."
#~ msgstr ""
#~ "Maintenant, :c:func:`PyType_HasFeature` appelle toujours :c:func:"
#~ "`PyType_GetFlags`. Précédemment, elle accédait directement au membre :c:"
#~ "member:`PyTypeObject.tp_flags` quand l'API limité C n'était pas utilisé ;"
#~ msgid "" #~ msgid ""
#~ "This article explains the new features in Python 3.9, compared to 3.8." #~ "This article explains the new features in Python 3.9, compared to 3.8."
#~ msgstr "" #~ msgstr ""