Merge branch '3.11' into pathlib

This commit is contained in:
nicolas talabardon 2023-02-19 19:53:04 +00:00
commit 2ab830641c
16 changed files with 762 additions and 372 deletions

View File

@ -104,6 +104,10 @@ ce qui suit après vous être assuré que ``~/.local/bin/`` se trouve dans votre
chmod a+x ~/.local/bin/podiff
Allez ensuite dans le répertoire du dépôt récupéré (``python-docs-fr``) et faites :
.. code-block:: bash
git config diff.podiff.textconv podiff

View File

@ -155,7 +155,7 @@ $(POSPELL_TMP_DIR)/%.po.out: %.po dict
.PHONY: fuzzy
fuzzy: ensure_prerequisites
potodo -f --exclude venv .venv $(EXCLUDED)
potodo --offline -f --exclude venv .venv $(EXCLUDED)
.PHONY: check-headers
check-headers:

View File

@ -61,7 +61,7 @@ vous signifiez votre acceptation de cet accord.
Historique du projet
--------------------
- vers 2000 : `lancement du projet <https://julienpalard.frama.io/write-the-docs-paris-19/#/2>`_ ;
- vers 2000 : lancement du projet ;
- vers 2012 : `reprise <https://github.com/AFPy/python_doc_fr>`_ par l'`AFPy <https://www.afpy.org/>`_ ;
- 2016 : 15 % de la documentation traduite ;
- 2017 : le projet devient traduction officielle de la documentation Python par la `PEP 545 <https://www.python.org/dev/peps/pep-0545/>`_ ;

View File

@ -6,8 +6,8 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-05-22 23:13+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"PO-Revision-Date: 2023-02-17 12:00+0200\n"
"Last-Translator: Rémi Lapeyre <remi.lapeyre@lenstra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -15,18 +15,19 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: c-api/refcounting.rst:8
msgid "Reference Counting"
msgid "Comptage de références"
msgstr ""
#: c-api/refcounting.rst:10
msgid ""
"The macros in this section are used for managing reference counts of Python "
"objects."
msgstr ""
msgstr "Les macros dans cette section permettent de gérer le compteur de références "
"des objets Python."
#: c-api/refcounting.rst:16
msgid "Increment the reference count for object *o*."
msgstr ""
msgstr "Incrémente le compteur de références de l'object *o*."
#: c-api/refcounting.rst:18
msgid ""
@ -34,82 +35,101 @@ msgid ""
"term:`strong reference` in-place. The :c:func:`Py_NewRef` function can be "
"used to create a new :term:`strong reference`."
msgstr ""
"Cette fonction est souvent utilisée pour convertir une :term:`référence empruntée` "
"en une :term:`référence forte` *sur place*. La fonction :c:func:`Py_NewRef` peut être "
"utilisée pour créer une nouvelle :term:`référence forte`."
#: c-api/refcounting.rst:22
msgid ""
"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, "
"use :c:func:`Py_XINCREF`."
msgstr ""
"L'object ne doit pas être ``NULL``, la fonction :c:func:`Py_XINCREF` doit être "
"utilisée s'il est possible qu'il soit ``NULL``."
#: c-api/refcounting.rst:28
msgid ""
"Increment the reference count for object *o*. The object may be ``NULL``, "
"in which case the macro has no effect."
msgstr ""
"Incrémente le compteur de références de l'objet *o*. La macro n'a pas d'effet "
"si l'objet est ``NULL``."
#: c-api/refcounting.rst:31
msgid "See also :c:func:`Py_XNewRef`."
msgstr ""
msgstr "Voir aussi :c:func:`Py_XNewRef`."
#: c-api/refcounting.rst:36
msgid ""
"Create a new :term:`strong reference` to an object: increment the reference "
"count of the object *o* and return the object *o*."
msgstr ""
"Créer une nouvelle :term:`référence forte` d'un objet : incrémente le compteur de "
"référence de l'objet *o* and renvoie l'objet *o*."
#: c-api/refcounting.rst:39
msgid ""
"When the :term:`strong reference` is no longer needed, :c:func:`Py_DECREF` "
"should be called on it to decrement the object reference count."
msgstr ""
":c:func:`Py_DECREF` doit être appelée quand la :term:`référence forte` n'est "
"plus utilisée pour décrémenter le compteur de références de l'objet."
#: c-api/refcounting.rst:42
msgid ""
"The object *o* must not be ``NULL``; use :c:func:`Py_XNewRef` if *o* can be "
"``NULL``."
msgstr ""
"L'objet *o* ne doit pas être ``NULL`` et la fonction :c:func:`Py_XNewRef` doit être "
"utilisée si *o* peut être ``NULL``."
#: c-api/refcounting.rst:45
msgid "For example::"
msgstr ""
msgstr "Par exemple ::"
#: c-api/refcounting.rst:50
msgid "can be written as::"
msgstr ""
msgstr "peut être écrit ::"
#: c-api/refcounting.rst:54
msgid "See also :c:func:`Py_INCREF`."
msgstr ""
msgstr "Voir aussi :c:func:`Py_INCREF`."
#: c-api/refcounting.rst:61
msgid "Similar to :c:func:`Py_NewRef`, but the object *o* can be NULL."
msgstr ""
msgstr "Semblable à :c:func:`Py_NewRef` mais l'objet *o* peut être ``NULL``."
#: c-api/refcounting.rst:63
msgid "If the object *o* is ``NULL``, the function just returns ``NULL``."
msgstr ""
msgstr "Cette fonction renvoie ``NULL`` si l'objet *o* est ``NULL``."
#: c-api/refcounting.rst:70
msgid "Decrement the reference count for object *o*."
msgstr ""
msgstr "Décrémente le compteur de références de l'objet *o*."
#: c-api/refcounting.rst:72
msgid ""
"If the reference count reaches zero, the object's type's deallocation "
"function (which must not be ``NULL``) is invoked."
msgstr ""
"Si le compteur de références atteint zéro, la fonction de dés-allocation du "
"type de l'objet (qui ne doit pas être ``NULL``) est invoquée."
#: c-api/refcounting.rst:75
msgid ""
"This function is usually used to delete a :term:`strong reference` before "
"exiting its scope."
msgstr ""
"Cette fonction est généralement utilisée pour supprimer une :term:`référence forte` "
"avant qu'elle ne soit plus accessible."
#: c-api/refcounting.rst:78
msgid ""
"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, "
"use :c:func:`Py_XDECREF`."
msgstr ""
"L'objet en argument ne doit pas être ``NULL``. :c:func:`Py_XDECREF` doit être "
"utilisée si l'objet peut être ``NULL``."
#: c-api/refcounting.rst:83
msgid ""
@ -123,6 +143,15 @@ msgid ""
"update the list data structure, and then call :c:func:`Py_DECREF` for the "
"temporary variable."
msgstr ""
"La fonction de dés-allocation peut invoquer du code Python arbitraire (par "
"exemple quand une instance d'une classe avec une méthode :meth:`__del__` est "
"supprimée). Le code exécuté a accès à toutes les variables Python globales mais "
"les exceptions lors de l'exécution de ce code ne sont pas propagées. Tous les "
"objets qui peuvent être atteints à partir d'une variable globale doivent être "
"dans un état cohérent avant d'appeler :c:func:`Py_DECREF`. Par exemple le code "
"pour supprimer un élément d'une liste doit copier une référence à l'objet dans "
"une variable temporaire, mettre à jour la liste, et enfin appeler :c:func:`Py_DECREF` "
"avec la variable temporaire."
#: c-api/refcounting.rst:95
msgid ""
@ -130,6 +159,9 @@ msgid ""
"in which case the macro has no effect; otherwise the effect is the same as "
"for :c:func:`Py_DECREF`, and the same warning applies."
msgstr ""
"Décrémente le compteur de références de l'objet *o*. L'objet peut être ``NULL``, "
"dans ce cas la macro n'a pas d'effet. Dans le cas contraire le comportement "
"est identique à :c:func:`Py_DECREF` et les mêmes avertissements sont de rigueur."
#: c-api/refcounting.rst:102
msgid ""
@ -140,24 +172,39 @@ msgid ""
"object passed because the macro carefully uses a temporary variable and sets "
"the argument to ``NULL`` before decrementing its reference count."
msgstr ""
"Décrémente le competeur de références de l'objet *o*. L'objet peut être ``NULL``, "
"dans ce cas la macro n'a pas d'effet. Dans le cas contraire le comportement est "
"identique à :c:func:`Py_DECREF`, puis l'argument est mis à ``NULL``. "
"L'avertissement au sujet de l'objet passé en argument à :c:func:`Py_DECREF` "
"ne s'applique pas car la macro utilise une variable temporaire et met l'objet "
"à ``NULL`` avant de décrémenter le compteur de références."
#: c-api/refcounting.rst:109
msgid ""
"It is a good idea to use this macro whenever decrementing the reference "
"count of an object that might be traversed during garbage collection."
msgstr ""
"Il est recommandé d'utiliser cette macro lorsqu'on décrémente le compteur de "
"référence d'un objet qui peut être parcouru par le ramasse-miette."
#: c-api/refcounting.rst:114
msgid ""
"Increment the reference count for object *o*. A function version of :c:func:"
"`Py_XINCREF`. It can be used for runtime dynamic embedding of Python."
msgstr ""
"Incrémente le compteur de références de l'objet *o*. C'est la version "
"fonctionnelle de :c:func:`Py_XINCREF`. Elle peut être utilisé lorsque Python "
"est embarqué dynamiquement dans une application."
#: c-api/refcounting.rst:120
msgid ""
"Decrement the reference count for object *o*. A function version of :c:func:"
"`Py_XDECREF`. It can be used for runtime dynamic embedding of Python."
msgstr ""
"Décrémente le compteur de références de l'objet *o*. C'est la version "
"fonctionnelle de :c:func:`Py_XDECREF`. Elle peut être utilisée lorsque Python "
"est embarqué dynamiquement dans une application."
#: c-api/refcounting.rst:124
msgid ""
@ -165,3 +212,7 @@ msgid ""
"core: :c:func:`_Py_Dealloc`, :c:func:`_Py_ForgetReference`, :c:func:"
"`_Py_NewReference`, as well as the global variable :c:data:`_Py_RefTotal`."
msgstr ""
"Les fonctions ou macros suivantes doivent être uniquement utilisées au sein de "
"l'interpréteur et ne font pas partie de l'API publique : :c:func:`_Py_Dealloc`, "
":c:func:`_Py_ForgetReference`, :c:func:`_Py_NewReference`, ainsi que la variable "
"globale :c:data:`_Py_RefTotal`."

View File

@ -6,20 +6,20 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-09-23 16:16+0200\n"
"PO-Revision-Date: 2018-10-04 12:26+0200\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"PO-Revision-Date: 2023-02-17 17:33+0100\n"
"Last-Translator: Rémi Lapeyre <remi.lapeyre@lenstra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.2.2\n"
#: c-api/stable.rst:7
msgid "C API Stability"
msgstr ""
msgstr "Stabilité de lAPI C"
#: c-api/stable.rst:9
#, fuzzy
msgid ""
"Python's C API is covered by the Backwards Compatibility Policy, :pep:`387`. "
"While the C API will change with every minor release (e.g. from 3.9 to "
@ -27,10 +27,12 @@ msgid ""
"API. Changing existing API or removing API is only done after a deprecation "
"period or to fix serious issues."
msgstr ""
"L'API C de Python change à chaque version. La majorité de ces changement "
"n'affecte cependant pas la compatibilité du code source. Typiquement, des "
"API sont ajoutées, mais ni modifiées ni supprimées (bien que certaines "
"interfaces puissent être supprimées, après avoir d'abord été dépréciées)."
"L'API C respecte la politique de rétrocompatibilité de Python, :pep:`387`. "
"Malgré la présence dévolutions dans chaque version mineure (par exemple "
"entre 3.9 et 3.10), la majorité de ces changement n'affecte pas la "
"compatibilité du code source. Typiquement des APIs sont ajoutées mais pas "
"modifiées ou supprimées, bien que cela puisse arriver après une période de "
"dépréciation ou pour corriger un problème important."
#: c-api/stable.rst:15
msgid ""
@ -40,16 +42,24 @@ msgid ""
"work on 3.10.8 and vice versa, but will need to be compiled separately for "
"3.9.x and 3.10.x."
msgstr ""
"Linterface binaire de CPython (ABI) est entièrement compatible au sein "
"dune version mineure (à condition que la compilation soit toujours faite de "
"même manière, comme indiqué dans :ref:`stable-abi-platform` ci-dessous). "
"Ainsi le code compilé pour Python 3.10.0 fonctionnera avec Python 3.10.8 et "
"inversement, mais il devra être compilé séparément pour 3.9.x et 3.10.x."
#: c-api/stable.rst:21
msgid ""
"Names prefixed by an underscore, such as ``_Py_InternalState``, are private "
"API that can change without notice even in patch releases."
msgstr ""
"Les noms commençant par un caractère souligné, comme ``_Py_InternalState``, "
"font partie de lAPI privée et peuvent changer sans préavis même dans une "
"version de correctif."
#: c-api/stable.rst:26
msgid "Stable Application Binary Interface"
msgstr "ABI Stable"
msgstr "ABI stable"
#: c-api/stable.rst:28
msgid ""
@ -58,6 +68,11 @@ msgid ""
"multiple versions of Python. Contents of the Limited API are :ref:`listed "
"below <stable-abi-list>`."
msgstr ""
"Le concept d*API restreinte*, un sous-ensemble de lAPI C de Python, existe "
"depuis Python 3.2. Les extensions qui utilisent uniquement lAPI restreinte "
"peuvent être compilées une seule fois et fonctionner avec plusieurs versions "
"de Python. Les objets faisant partie de lAPI restreinte sont :ref:`documentés "
"ci-dessous <stable-abi-list>`."
#: c-api/stable.rst:33
msgid ""
@ -66,6 +81,11 @@ msgid ""
"symbols exposed in the Limited API, but also other ones for example, "
"functions necessary to support older versions of the Limited API."
msgstr ""
"Python a aussi une *ABI stable* : un ensemble de symboles qui sont "
"compatibles avec lensemble des versions Python 3.x. LABI stable contient "
"les symboles utilisés par lAPI restreinte, mais pas seulement — par exemple "
"les fonctions nécessaires pour supporter les versions précédentes de lAPI "
"restreinte en font aussi partie."
#: c-api/stable.rst:38
msgid ""
@ -73,12 +93,17 @@ msgid ""
"and Stable ABI work the same way for all uses of the API for example, "
"embedding Python.)"
msgstr ""
"(Par simplicité ce document parle *dextensions*, mais lAPI restreinte et "
"lABI stable fonctionnent de la même manière pour tous les cas dusages de "
"lAPI — par exemple pour embarquer Python.)"
#: c-api/stable.rst:44
msgid ""
"Define this macro before including ``Python.h`` to opt in to only use the "
"Limited API, and to select the Limited API version."
msgstr ""
"Définissez cette macro avant dinclure ``Python.h`` pour ninclure que lAPI "
"restreinte et indiquer sa version."
#: c-api/stable.rst:47
msgid ""
@ -88,6 +113,11 @@ msgid ""
"the specified one onward, and can use Limited API introduced up to that "
"version."
msgstr ""
"Définissez ``Py_LIMITED_API`` à la valeur de :c:data:`PY_VERSION_HEX` "
"correspond à la version minimale de Python que votre extension supporte. "
"Cette extension fonctionnera sans re-compilation avec toutes les versions "
"futures de Python 3, et peut utiliser lensemble des éléments de lAPI "
"restreinte présent dans cette version."
#: c-api/stable.rst:53
msgid ""
@ -95,12 +125,19 @@ msgid ""
"minor version (e.g. ``0x030A0000`` for Python 3.10) for stability when "
"compiling with future Python versions."
msgstr ""
"Il est recommandé de renseigner une version mineure minimale (par exemple "
"``0x030A0000`` pour Python 3.10) plutôt que dutiliser directement la macro "
"``PY_VERSION_HEX`` pour ne pas dépendre de la version de Python utilisée "
"lors de la compilation."
#: c-api/stable.rst:57
msgid ""
"You can also define ``Py_LIMITED_API`` to ``3``. This works the same as "
"``0x03020000`` (Python 3.2, the version that introduced Limited API)."
msgstr ""
"Vous pouvez aussi définir ``Py_LIMITED_API`` à ``3``. Cette valeur est "
"équivalente à ``0x03020000`` correspondant à Python 3.2, la première version "
"à supporter lAPI restreinte."
#: c-api/stable.rst:60
msgid ""
@ -108,6 +145,9 @@ msgid ""
"``python3.dll`` rather than a version-specific library such as ``python39."
"dll``."
msgstr ""
"Sur Windows les extensions qui utilisent lABI stable doivent être liées "
"avec ``python3.dll`` et non pas avec une bibliothèque spécifique à une "
"version comme ``python39.dll``."
#: c-api/stable.rst:64
msgid ""
@ -117,6 +157,12 @@ msgid ""
"to ensure that, for example, extensions built with the 3.10+ Limited API are "
"not installed for lower versions of Python."
msgstr ""
"Sur certaines plateformes Python essaiera de charger une bibliothèque "
"partagée dont le nom contient ``abi3`` (par exemple ``mymodule.abi3.so``). "
"Il ne vérifie pas si ces extensions respectent lABI stable. Lutilisateur "
"(ou ses outils dadministration) doit sassurer que les extensions compilées "
"avec une version donnée de lAPI restreinte, par exemple 3.10+, ne sont pas "
"utilisées avec des versions plus anciennes de Python."
#: c-api/stable.rst:71
msgid ""
@ -124,16 +170,23 @@ msgid ""
"library, not solely as macros. This makes them usable from languages that "
"don't use the C preprocessor."
msgstr ""
"Toutes les fonctions de lABI stable sont présentes dans la bibliothèque "
"dynamique de Python en tant que fonction, et pas uniquement comme macro. "
"Elles peuvent donc être utilisées avec des langages qui nutilisent pas le "
"pré-processeur C."
#: c-api/stable.rst:77
msgid "Limited API Scope and Performance"
msgstr ""
msgstr "Porté de lAPI restreinte et performance"
#: c-api/stable.rst:79
msgid ""
"The goal for the Limited API is to allow everything that is possible with "
"the full C API, but possibly with a performance penalty."
msgstr ""
"Lobjectif de lAPI restreinte est de permettre lensemble des opérations "
"possibles avec lAPI C étendue, mais peut avoir un impact sur les "
"performances."
#: c-api/stable.rst:82
msgid ""
@ -141,6 +194,10 @@ msgid ""
"variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it "
"can rely on version-specific implementation details of the list object."
msgstr ""
"Par exemple la fonction :c:func:`PyList_GetItem` est disponible, mais la "
"macro « dangereuse » :c:func:`PyList_GET_ITEM` ne lest pas. Cette macro "
"peut être plus rapide car elle dépend de détails dimplémentation spécifique "
"à lobjet ``list``."
#: c-api/stable.rst:87
msgid ""
@ -149,6 +206,11 @@ msgid ""
"allowing stability as Python's data structures are improved, but possibly "
"reducing performance."
msgstr ""
"Si ``Py_LIMITED_API`` nest pas défini certaines fonctions de lAPI C seront "
"remplacées par des macros ou une version en-ligne. Définir "
"``Py_LIMITED_API`` désactive cette optimisation, permettant de se garantir "
"contre les évolutions des structures de données utilisées par Python, et "
"peut réduire les performances."
#: c-api/stable.rst:92
msgid ""
@ -159,10 +221,17 @@ msgid ""
"where a version-specific one is not available for example, for prereleases "
"of an upcoming Python version."
msgstr ""
"En omettant la définition de ``Py_LIMITED_API`` il est possible de compiler "
"une extension utilisant lAPI restreinte avec une version spécifique de lABI. "
"Les performances seront meilleures pour cette version de Python, mais la "
"compatibilité sera réduite. Compiler en définissant ``Py_LIMITED_API`` "
"produira une extension qui peut être utilisée quand une variante spécifique "
"à une version nest pas disponible — par exemple pour une version alpha de "
"Python."
#: c-api/stable.rst:101
msgid "Limited API Caveats"
msgstr ""
msgstr "Inconvénients de lAPI restreinte"
#: c-api/stable.rst:103
msgid ""
@ -171,6 +240,10 @@ msgid ""
"only covers definitions, but an API also includes other issues, such as "
"expected semantics."
msgstr ""
"Compiler avec ``Py_LIMITED_API`` *nest pas* une garantie absolue que le "
"code est conforme à lAPI restreinte ou à lABI stable. ``Py_LIMITED_API`` ne "
"concerne que la définition des objets, mais une API inclut aussi dautres "
"spécificités comme le comportement attendu."
#: c-api/stable.rst:108
msgid ""
@ -181,18 +254,31 @@ msgid ""
"the argument will be used directly, causing a ``NULL`` dereference and "
"crash. A similar argument works for fields of structs."
msgstr ""
"Une des limitations est que ``Py_LIMITED_API`` ne protège pas contre lappel "
"dune fonction avec des arguments qui sont invalides pour une version de "
"Python plus ancienne. Par exemple considérons une fonction qui accepte "
"``NULL`` comme argument à partir de 3.9. ``NULL`` permet maintenant "
"dutiliser le comportement par défaut, mais Python 3.8 essayera daccéder à "
"lobjet pointé et dé-référencera ``NULL``, causant un crash. Des problèmes "
"similaires peuvent se produire avec les attributs des structures."
#: c-api/stable.rst:115
msgid ""
"Another issue is that some struct fields are currently not hidden when "
"``Py_LIMITED_API`` is defined, even though they're part of the Limited API."
msgstr ""
"Un autre problème est que certains attributs ne sont pas encore cachés "
"lorsque ``Py_LIMITED_API`` est défini, même sil ne font pas partie de lAPI "
"restreinte."
#: c-api/stable.rst:118
msgid ""
"For these reasons, we recommend testing an extension with *all* minor Python "
"versions it supports, and preferably to build with the *lowest* such version."
msgstr ""
"Pour ces raisons il est recommandé de tester une extension avec *lensemble "
"des versions mineures* supportées de Python, et généralement de la compiler "
"avec la plus *ancienne* de ces versions."
#: c-api/stable.rst:121
msgid ""
@ -201,6 +287,10 @@ msgid ""
"few private declarations are exposed for technical reasons (or even "
"unintentionally, as bugs)."
msgstr ""
"Il est aussi recommandé de vérifier la documentation de toutes les API "
"utilisées pour vérifier quelles fassent bien partie de lAPI restreinte. Même "
"lorsque ``Py_LIMITED_API`` est défini quelques fonctions privées peuvent "
"être exposées aux utilisateurs pour des raisons techniques, ou par erreur."
#: c-api/stable.rst:126
msgid ""
@ -210,10 +300,15 @@ msgid ""
"particular, parts of the Limited API may be deprecated and removed, provided "
"that the Stable ABI stays stable."
msgstr ""
"Notez aussi que lAPI restreinte nest pas forcément stable : compiler avec "
"Python 3.8 en définissant ``Py_LIMITED_API`` garanti que lextension "
"fonctionnera avec Python 3.12, mais pas quelle pourra *être compilée* avec "
"Python 3.12. En particulier certaines parties de lAPI restreinte peuvent être "
"dépréciées et retirées tant que lABI stable nest pas modifiée."
#: c-api/stable.rst:136
msgid "Platform Considerations"
msgstr ""
msgstr "Considérations relatives aux plateformes"
#: c-api/stable.rst:138
msgid ""
@ -222,6 +317,11 @@ msgid ""
"ABI, these details define a “platform”. They usually depend on the OS type "
"and processor architecture"
msgstr ""
"La stabilité de lABI ne dépend pas que de Python mais aussi du compilateur "
"utilisé, des bibliothèques systèmes et des options du compilateur. "
"Lensemble de ces détails correspondent à ce que lABI stable appelle une "
 plateforme ». Ils dépendent généralement du système dexploitation et de "
"larchitecture du processeur."
#: c-api/stable.rst:143
msgid ""
@ -230,76 +330,16 @@ msgid ""
"does not break the Stable ABI. This is the case with Windows and macOS "
"releases from ``python.org`` and many third-party distributors."
msgstr ""
"Les distributeurs de Python doivent sassurer que toutes les versions de "
"Python pour une plateforme donnée sont compilées de manière à ne pas rompre "
"la compatibilité de lABI stable. Cest le cas des versions produites pour "
"Windows et macOS de ``python.org`` et de la plupart des distributions "
"tierces."
#: c-api/stable.rst:153
msgid "Contents of Limited API"
msgstr ""
msgstr "Contenu de lAPI restreinte"
#: c-api/stable.rst:156
msgid "Currently, the Limited API includes the following items:"
msgstr ""
#~ msgid ""
#~ "Unfortunately, the API compatibility does not extend to binary "
#~ "compatibility (the ABI). The reason is primarily the evolution of struct "
#~ "definitions, where addition of a new field, or changing the type of a "
#~ "field, might not break the API, but can break the ABI. As a consequence, "
#~ "extension modules need to be recompiled for every Python release "
#~ "(although an exception is possible on Unix when none of the affected "
#~ "interfaces are used). In addition, on Windows, extension modules link "
#~ "with a specific pythonXY.dll and need to be recompiled to link with a "
#~ "newer one."
#~ msgstr ""
#~ "Malheureusement, la compatibilité de l'API ne s'étend pas à une "
#~ "compatibilité binaire (l'ABI). L'évolution des structures en est la "
#~ "raison principale : l'ajout de nouveaux attributs, ou le changement du "
#~ "type d'un attribut peut ne pas casser l'API mais casser l'ABI. Par "
#~ "conséquent, les modules d'extension doivent être recompilés à chaque "
#~ "nouvelle version de Python (ce n'est exceptionnellement pas nécessaire "
#~ "sur Unix, si aucune des interfaces modifiées n'est utilisée). De plus, "
#~ "sous Windows, les modules d'extension sont liés à un *pythonXY.dll* "
#~ "spécifique, ils est donc nécessaire de les recompiler pour les lier au "
#~ "nouveau DLL."
#~ msgid ""
#~ "Since Python 3.2, a subset of the API has been declared to guarantee a "
#~ "stable ABI. Extension modules wishing to use this API (called \"limited "
#~ "API\") need to define ``Py_LIMITED_API``. A number of interpreter details "
#~ "then become hidden from the extension module; in return, a module is "
#~ "built that works on any 3.x version (x>=2) without recompilation."
#~ msgstr ""
#~ "Depuis Python 3.2 il est garanti qu'une certaine partie de l'API gardera "
#~ "une ABI stable. Les modules d'extension souhaitant utiliser cette API "
#~ "(Appellée \"API limitée\") doivent définir ``Py_LIMITED_API``. Des "
#~ "spécificités de l'interpréteur sont alors cachées au module, en "
#~ "contrepartie le module devient compatible avec toutes les versions de "
#~ "Python 3.x (x>=2) sans recompilation."
#~ msgid ""
#~ "In some cases, the stable ABI needs to be extended with new functions. "
#~ "Extension modules wishing to use these new APIs need to set "
#~ "``Py_LIMITED_API`` to the ``PY_VERSION_HEX`` value (see :ref:"
#~ "`apiabiversion`) of the minimum Python version they want to support (e.g. "
#~ "``0x03030000`` for Python 3.3). Such modules will work on all subsequent "
#~ "Python releases, but fail to load (because of missing symbols) on the "
#~ "older releases."
#~ msgstr ""
#~ "Dans certains cas, il est nécessaire d'étendre l'ABI stable avec de "
#~ "nouvelles fonctions. Les modules d'extension souhaitant utiliser ces "
#~ "nouvelles APIs doivent configurer ``Py_LIMITED_API`` à la valeur "
#~ "``Py_VERSION_HEX`` correspondant à la plus ancienne version de Python "
#~ "qu'ils souhaitent supporter (voir :ref:`apiabiversion`, par exemple "
#~ "``0x03030000`` pour Python 3.3). De tels modules fonctionneront dans "
#~ "toutes les versions ultérieures de Python, mais ne pourront pas se "
#~ "charger (dû à des symboles manquants) sur les versions plus anciennes."
#~ msgid ""
#~ "As of Python 3.2, the set of functions available to the limited API is "
#~ "documented in :pep:`384`. In the C API documentation, API elements that "
#~ "are not part of the limited API are marked as \"Not part of the limited "
#~ "API.\""
#~ msgstr ""
#~ "Depuis Python 3.2, l'ensemble des fonctions exposées par l'API limitée "
#~ "est documentée dans la :pep:`384`. Dans la documentation de l'API C, les "
#~ "éléments ne faisant pas partie de l'API limitée sont notés \"Ne faisant "
#~ "pas partie de l'API limitée\" (*\"Not part of the limited API\"*)."
msgstr "Pour le moment lAPI restreinte inclut les éléments suivants :"

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2019-12-25 17:24+0100\n"
"PO-Revision-Date: 2023-02-16 16:53+0100\n"
"Last-Translator: Antoine <antoine.venier@hotmail.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n"
"X-Generator: Poedit 2.3\n"
#: extending/embedding.rst:8
msgid "Embedding Python in Another Application"
@ -421,13 +421,12 @@ msgstr ""
"compiler :"
#: extending/embedding.rst:304
#, fuzzy
msgid ""
"``pythonX.Y-config --ldflags --embed`` will give you the recommended flags "
"when linking:"
msgstr ""
"``pythonX.Y-config --ldflags`` vous donnera les drapeaux recommandés lors de "
"l'édition de lien :"
"``pythonX.Y-config --ldflags --embed`` vous donnera les drapeaux recommandés "
"lors de l'édition de lien :"
#: extending/embedding.rst:313
msgid ""

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2022-05-12 09:43+0200\n"
"Last-Translator: ZepmanBC <zepman@gmail.com>\n"
"PO-Revision-Date: 2023-02-17 10:44+0100\n"
"Last-Translator: CédricM <c.morgantini@free.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0.1\n"
"X-Generator: Poedit 3.2.2\n"
#: howto/annotations.rst:5
msgid "Annotations Best Practices"
@ -132,6 +132,11 @@ msgid ""
"parent's ``__annotations__``. In Python 3.10 and newer, the child class's "
"annotations will be an empty dict instead."
msgstr ""
"Dans les versions antérieures à Python 3.10, l'accès aux ``__annotations__`` "
"d'une classe qui n'a pas d'annotation mais dont un parent de cette classe en "
"a, aurait renvoyé les ``__annotations__`` de la classe parent. Dans les "
"versions 3.10 et plus récentes, le résultat d'annotations de la classe "
"enfant est un dictionnaire vide."
#: howto/annotations.rst:68
msgid "Accessing The Annotations Dict Of An Object In Python 3.9 And Older"

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2022-10-18 12:27+0200\n"
"PO-Revision-Date: 2023-02-16 15:07+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0\n"
"X-Generator: Poedit 3.2.2\n"
#: howto/sockets.rst:5
msgid "Socket Programming HOWTO"
@ -481,7 +481,6 @@ msgid ""
msgstr ""
#: howto/sockets.rst:262
#, fuzzy
msgid ""
"Socket libraries have calls for converting 16 and 32 bit integers - ``ntohl, "
"htonl, ntohs, htons`` where \"n\" means *network* and \"h\" means *host*, "
@ -489,21 +488,14 @@ msgid ""
"order, these do nothing, but where the machine is byte-reversed, these swap "
"the bytes around appropriately."
msgstr ""
"Il est parfaitement possible denvoyer des données binaires sur un "
"connecteur. Le gros problème est que toutes les machines nutilisent pas les "
"mêmes formats pour les données binaires. Par exemple, une puce Motorola code "
"l'entier 1, sous 16 bits, comme les deux octets hexadécimaux 00 01. Intel et "
"DEC, cependant, utilisent lordre doctets inverse — ce même 1 est codé 01 "
"00. Les bibliothèques de connecteurs ont des appels pour convertir des "
"entiers de 16 et 32 bits — ``ntohl, htonl, ntohs, htons`` où ``n`` signifie "
"*réseau* (*network*, en anglais) et ``h`` signifie *hôte*, ``s`` signifie "
"*court* (*short*, en anglais) et ``l`` signifie *long*. Lorsque lordre du "
"réseau est lordre de lhôte, ceux-ci ne font rien, mais lorsque la machine "
"utilise lordre doctets inverse, ceux-ci échangent les octets de manière "
"appropriée."
"Les bibliothèques de sockets ont des appels pour convertir les entiers 16 et "
"32 bits - ``ntohl, htonl, ntohs, htons`` où « n » signifie *network* "
"(réseau) et « h » signifie *host* (hôte), « s » signifie *short* (court) et "
 l » signifie *long*. Lorsque lordre du réseau est lordre de lhôte, ils "
"ne font rien, mais lorsque la machine fonctionne en ordre inversé, ils "
"échangent les octets de manière appropriée."
#: howto/sockets.rst:268
#, fuzzy
msgid ""
"In these days of 64-bit machines, the ASCII representation of binary data is "
"frequently smaller than the binary representation. That's because a "
@ -512,13 +504,13 @@ msgid ""
"be 8. Of course, this doesn't fit well with fixed-length messages. "
"Decisions, decisions."
msgstr ""
"De nos jours, avec les machines 32 bits, la représentation *ASCII* des "
"De nos jours, avec les machines 64 bits, la représentation *ASCII* des "
"données binaires est souvent plus compacte que la représentation binaire. "
"Cest parce quun nombre surprenant de fois, tous ces *longs* ont la valeur "
"0, ou peut-être 1. La chaîne « 0 » serait codée sur deux octets, alors "
"qu'elle le serait sur quatre en binaire. Bien sûr, cela ne fonctionne pas "
"très bien avec les messages de longueur fixe. Ah, les décisions, les "
"décisions…"
"Cest parce que dans un nombre surprenant de cas, tous ces *entiers* ont la "
"valeur 0 et parfois 1. La chaîne « 0 » serait codée sur deux octets, alors "
"qu'elle le serait sur 8 en tant que binaire 64 bits. Bien sûr, cela ne "
"fonctionne pas très bien avec les messages de longueur fixe. Cest une "
"affaire de choix."
#: howto/sockets.rst:277
msgid "Disconnecting"

View File

@ -6,8 +6,8 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2022-05-20 10:21+0200\n"
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
"PO-Revision-Date: 2023-02-17 10:21+0200\n"
"Last-Translator: Mouna Sebti <mounasb@proton.me>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -572,7 +572,7 @@ msgstr ""
#: library/csv.rst:386
msgid "An empty *escapechar* is not allowed."
msgstr ""
msgstr "Un ``escapechar`` vide n'est pas autorisé."
#: library/csv.rst:391
msgid ""
@ -604,7 +604,7 @@ msgstr ""
#: library/csv.rst:407
msgid "An empty *quotechar* is not allowed."
msgstr ""
msgstr "Un ``quotechar`` vide n'est pas autorisé."
#: library/csv.rst:412
msgid ""
@ -787,7 +787,6 @@ msgid "The corresponding simplest possible writing example is::"
msgstr "Le plus simple exemple d'écriture correspondant est ::"
#: library/csv.rst:543
#, fuzzy
msgid ""
"Since :func:`open` is used to open a CSV file for reading, the file will by "
"default be decoded into unicode using the system default encoding (see :func:"
@ -796,7 +795,7 @@ msgid ""
msgstr ""
"Puisque :func:`open` est utilisée pour ouvrir un fichier CSV en lecture, le "
"fichier sera par défaut décodé vers Unicode en utilisant l'encodage par "
"défaut (voir :func:`locale.getpreferredencoding`). Pour décoder un fichier "
"défaut (voir :func:`locale.getencoding`). Pour décoder un fichier "
"utilisant un encodage différent, utilisez l'argument ``encoding`` de "
"*open* ::"

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-24 09:01+0200\n"
"PO-Revision-Date: 2018-09-28 13:01+0200\n"
"PO-Revision-Date: 2023-02-17 14:44+0100\n"
"Last-Translator: \n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.5\n"
"X-Generator: Poedit 3.0.1\n"
#: library/email.examples.rst:4
msgid ":mod:`email`: Examples"
@ -66,7 +66,7 @@ msgid ""
"Here's an example of how to unpack a MIME message like the one above, into a "
"directory of files:"
msgstr ""
"Voici un message de comment décomposer un message MIME comme celui ci dessus "
"Voici un exemple de comment décomposer un message MIME comme celui ci-dessus "
"en tant que fichiers dans un dossier :"
#: library/email.examples.rst:39

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2021-11-06 21:59+0100\n"
"PO-Revision-Date: 2023-02-17 11:56+0100\n"
"Last-Translator: Jean Abou Samra <jean@abou-samra.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0\n"
"X-Generator: Poedit 3.2.2\n"
#: library/itertools.rst:2
msgid ":mod:`itertools` --- Functions creating iterators for efficient looping"
@ -54,7 +54,6 @@ msgstr ""
"count())``."
#: library/itertools.rst:33
#, fuzzy
msgid ""
"These tools and their built-in counterparts also work well with the high-"
"speed functions in the :mod:`operator` module. For example, the "
@ -437,11 +436,10 @@ msgid ""
"`~fractions.Fraction`.)"
msgstr ""
"Si *func* est renseigné, il doit être une fonction à deux arguments. Les "
"éléments de l'entrée *iterable* peuvent être de n'importe quel type "
"acceptable comme arguments de *func*. Par exemple, avec l'opération par "
"défaut d'addition, les éléments peuvent être de n'importe quel type "
"additionnable, :class:`~decimal.Decimal` ou :class:`~fractions.Fraction` "
"inclus."
"éléments de *iterable* peuvent être de n'importe quel type acceptable comme "
"arguments de *func*. Par exemple, avec l'opération par défaut d'addition, "
"les éléments peuvent être de n'importe quel type additionnable, :class:"
"`~decimal.Decimal` ou :class:`~fractions.Fraction` inclus."
#: library/itertools.rst:112
msgid ""
@ -462,7 +460,6 @@ msgid "Roughly equivalent to::"
msgstr "À peu près équivalent à ::"
#: library/itertools.rst:136
#, fuzzy
msgid ""
"There are a number of uses for the *func* argument. It can be set to :func:"
"`min` for a running minimum, :func:`max` for a running maximum, or :func:"
@ -473,11 +470,7 @@ msgstr ""
"func:`min` pour calculer un minimum glissant, :func:`max` pour un maximum "
"glissant ou :func:`operator.mul` pour un produit glissant. Des tableaux de "
"remboursements peuvent être construits en ajoutant les intérêts et en "
"soustrayant les paiements. Des `suites par récurrence <https://fr.wikipedia."
"org/wiki/Suite_d%C3%A9finie_par_r%C3%A9currence>`_ de premier ordre peuvent "
"être modélisées en en passant la valeur initiale dans *iterable* et en "
"n'utilisant que le premier argument de *func*, qui contient le résultat des "
"évaluations précédentes ::"
"soustrayant les paiements:"
#: library/itertools.rst:154
msgid ""
@ -521,18 +514,16 @@ msgid "Return *r* length subsequences of elements from the input *iterable*."
msgstr "Renvoie les combinaisons de longueur *r* de *iterable*."
#: library/itertools.rst:244
#, fuzzy
msgid ""
"The combination tuples are emitted in lexicographic ordering according to "
"the order of the input *iterable*. So, if the input *iterable* is sorted, "
"the output tuples will be produced in sorted order."
msgstr ""
"Les combinaisons sont produites dans l'ordre lexicographique dérivé de "
"l'ordre des éléments de l'itérable *iterable*. Ainsi, si *iterable* est "
"ordonné, les *n*-uplets de combinaison produits le sont aussi."
"l'ordre des éléments de *iterable*. Ainsi, si *iterable* est ordonné, les "
"*n*-uplets de combinaison produits le sont aussi."
#: library/itertools.rst:199
#, fuzzy
msgid ""
"Elements are treated as unique based on their position, not on their value. "
"So if the input elements are unique, there will be no repeated values in "
@ -724,7 +715,6 @@ msgid ":func:`groupby` is roughly equivalent to::"
msgstr ":func:`groupby` est à peu près équivalente à ::"
#: library/itertools.rst:437
#, fuzzy
msgid ""
"Make an iterator that returns selected elements from the iterable. If "
"*start* is non-zero, then elements from the iterable are skipped until start "
@ -739,12 +729,7 @@ msgstr ""
"consécutivement sauf si *step* est plus grand que 1, auquel cas certains "
"éléments seront ignorés. Si *stop* est ``None``, alors l'itération continue "
"jusqu'à ce que l'itérateur soit épuisé s'il ne l'est pas déjà ; sinon, il "
"s'arrête à la position spécifiée. À la différence des tranches standards, :"
"func:`slice` ne gère pas les valeurs négatives pour *start*, *stop* ou "
"*step*. Peut être utilisée pour extraire les champs consécutifs depuis des "
"données dont la structure interne a été aplatie (par exemple, un rapport "
"multi-lignes pourrait lister un nom de champ toutes les trois lignes). À peu "
"près similaire à ::"
"s'arrête à la position spécifiée."
#: library/itertools.rst:444
msgid ""
@ -792,18 +777,16 @@ msgstr ""
"sont générées."
#: library/itertools.rst:507
#, fuzzy
msgid ""
"The permutation tuples are emitted in lexicographic order according to the "
"order of the input *iterable*. So, if the input *iterable* is sorted, the "
"output tuples will be produced in sorted order."
msgstr ""
"Les combinaisons sont produites dans l'ordre lexicographique qui provient de "
"l'ordre des éléments de l'itérable *iterable*. Ainsi, si *iterable* est "
"ordonné, les *n*-uplets de combinaison produits le sont aussi."
"l'ordre des éléments de *iterable*. Ainsi, si *iterable* est ordonné, les "
"*n*-uplets de combinaison produits le sont aussi."
#: library/itertools.rst:511
#, fuzzy
msgid ""
"Elements are treated as unique based on their position, not on their value. "
"So if the input elements are unique, there will be no repeated values within "
@ -887,27 +870,22 @@ msgstr ""
"cette fonction ne sert que sur des itérables finis."
#: library/itertools.rst:592
#, fuzzy
msgid ""
"Make an iterator that returns *object* over and over again. Runs "
"indefinitely unless the *times* argument is specified."
msgstr ""
"Crée un itérateur qui renvoie *object* à l'infini. S'exécute indéfiniment "
"sauf si l'argument *times* est spécifié. Utilisée comme argument de :func:"
"`map` pour les paramètres invariants de la fonction appelée. Aussi utilisée "
"avec :func:`zip` pour créer une partie invariante d'un *n*-uplet."
"sauf si l'argument *times* est spécifié."
#: library/itertools.rst:606
#, fuzzy
msgid ""
"A common use for *repeat* is to supply a stream of constant values to *map* "
"or *zip*:"
msgstr ""
"Une utilisation courante de *repeat* est de fournir un flux constant de "
"valeurs à *map* ou *zip* ::"
"valeurs à *map* ou *zip* :"
#: library/itertools.rst:616
#, fuzzy
msgid ""
"Make an iterator that computes the function using arguments obtained from "
"the iterable. Used instead of :func:`map` when argument parameters are "
@ -917,9 +895,7 @@ msgstr ""
"Crée un itérateur qui exécute la fonction avec les arguments obtenus depuis "
"l'itérable. Utilisée à la place de :func:`map` quand les arguments sont déjà "
"groupés en *n*-uplets depuis un seul itérable  la donnée a déjà été « pré-"
"zippée ». La différence entre :func:`map` et :func:`starmap` est similaire à "
"la différence entre ``fonction(a,b)`` et ``fonction(*c)``. À peu près "
"équivalent à ::"
"zippée »."
#: library/itertools.rst:621
msgid ""
@ -941,7 +917,6 @@ msgid "Return *n* independent iterators from a single iterable."
msgstr "Renvoie *n* itérateurs indépendants depuis un unique itérable."
#: library/itertools.rst:649
#, fuzzy
msgid ""
"The following Python code helps explain what *tee* does (although the actual "
"implementation is more complex and uses only a single underlying :abbr:`FIFO "
@ -949,18 +924,17 @@ msgid ""
msgstr ""
"Le code Python qui suit aide à expliquer ce que fait *tee*, bien que la "
"vraie implémentation soit plus complexe et n'utilise qu'une file :abbr:`FIFO "
"(premier entré, premier sorti ou *first-in, first-out* en anglais)`."
"(premier entré, premier sorti ou *first-in, first-out* en anglais)` :"
#: library/itertools.rst:668
#, fuzzy
msgid ""
"Once a :func:`tee` has been created, the original *iterable* should not be "
"used anywhere else; otherwise, the *iterable* could get advanced without the "
"tee objects being informed."
msgstr ""
"Une fois que :func:`tee` a créé un branchement, l'itérable *iterable* ne "
"doit être utilisé nulle part ailleurs ; sinon, *iterable* pourrait être "
"avancé sans que les objets tee ne soient informés."
"Une fois quun :func:`tee` a été créé, loriginal de *iterable* ne doit être "
"utilisé nulle part ailleurs ; sinon *iterable* pourrait être avancé sans que "
"les objets *tee* nen soient informés."
#: library/itertools.rst:672
msgid ""
@ -1053,7 +1027,6 @@ msgstr ""
"disponible dans le Python Package Index ::"
#: library/itertools.rst:742
#, fuzzy
msgid ""
"Many of the recipes offer the same high performance as the underlying "
"toolset. Superior memory performance is kept by processing elements one at a "

View File

@ -5,8 +5,8 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2022-10-18 15:52+0200\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"PO-Revision-Date: 2023-02-17 14:52+0200\n"
"Last-Translator: Mouna Sebti <mounasb@proton.me>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -19,9 +19,8 @@ msgid ":mod:`re` --- Regular expression operations"
msgstr ":mod:`re` — Opérations à base d'expressions rationnelles"
#: library/re.rst:10
#, fuzzy
msgid "**Source code:** :source:`Lib/re/`"
msgstr "**Code source :** :source:`Lib/re.py`"
msgstr "**Code source :** :source:`Lib/re/`"
#: library/re.rst:14
msgid ""
@ -199,7 +198,6 @@ msgstr ""
"interprétées."
#: library/re.rst:90
#, fuzzy
msgid ""
"Repetition operators or quantifiers (``*``, ``+``, ``?``, ``{m,n}``, etc) "
"cannot be directly nested. This avoids ambiguity with the non-greedy "
@ -208,7 +206,7 @@ msgid ""
"For example, the expression ``(?:a{6})*`` matches any multiple of six "
"``'a'`` characters."
msgstr ""
"Les caractères de répétition (``*``, ``+``, ``?``, ``{m,n}``, etc.) ne "
"Les caractères de répétition ou quantificateurs (``*``, ``+``, ``?``, ``{m,n}``, etc.) ne "
"peuvent être directement imbriqués. Cela empêche l'ambiguïté avec le suffixe "
"modificateur non gourmand ``?`` et avec les autres modificateurs dans "
"d'autres implémentations. Pour appliquer une seconde répétition à une "
@ -315,7 +313,6 @@ msgid "``*?``, ``+?``, ``??``"
msgstr "``*?``, ``+?``, ``??``"
#: library/re.rst:149
#, fuzzy
msgid ""
"The ``'*'``, ``'+'``, and ``'?'`` quantifiers are all :dfn:`greedy`; they "
"match as much text as possible. Sometimes this behaviour isn't desired; if "
@ -325,19 +322,18 @@ msgid ""
"characters as possible will be matched. Using the RE ``<.*?>`` will match "
"only ``'<a>'``."
msgstr ""
"Les qualificateurs ``'*'``, ``'+'`` et ``'?'`` sont tous :dfn:`greedy` "
"Les quantificateurs ``'*'``, ``'+'`` et ``'?'`` sont tous :dfn:`greedy` "
"(gourmands) ; ils valident autant de texte que possible. Parfois ce "
"comportement n'est pas désiré ; si l'expression rationnelle ``<.*>`` est "
"testée avec la chaîne ``'<a> b <c>'``, cela correspondra à la chaîne "
"entière, et non juste à ``'<a>'``. Ajouter ``?`` derrière le qualificateur "
"entière, et non juste à ``'<a>'``. Ajouter ``?`` derrière le quantificateur "
"lui fait réaliser l'opération de façon :dfn:`non-greedy` (ou :dfn:"
"`minimal`) ; le *moins* de caractères possibles seront validés. Utiliser "
"l'expression rationnelle ``<.*?>`` validera uniquement ``'<a>'``."
#: library/re.rst:179
#, fuzzy
msgid "``*+``, ``++``, ``?+``"
msgstr "``*?``, ``+?``, ``??``"
msgstr "``*+``, ``++``, ``?+``"
#: library/re.rst:163
msgid ""
@ -400,7 +396,6 @@ msgid "``{m,n}?``"
msgstr "``{m,n}?``"
#: library/re.rst:199
#, fuzzy
msgid ""
"Causes the resulting RE to match from *m* to *n* repetitions of the "
"preceding RE, attempting to match as *few* repetitions as possible. This is "
@ -408,16 +403,15 @@ msgid ""
"character string ``'aaaaaa'``, ``a{3,5}`` will match 5 ``'a'`` characters, "
"while ``a{3,5}?`` will only match 3 characters."
msgstr ""
"Fait valider par l'expression rationnelle résultante entre *m* et *n* "
"Fait valider l'expression rationnelle résultante entre *m* et *n* "
"répétitions de l'expression qui précède, cherchant à en valider le moins "
"possible. Il s'agit de la version non gourmande du précédent qualificateur. "
"possible. Il s'agit de la version non gourmande du précédent quantificateur. "
"Par exemple, dans la chaîne de 6 caractères ``'aaaaaa'``, ``a{3,5}`` "
"trouvera 5 caractères ``'a'``, alors que ``a{3,5}?`` n'en trouvera que 3."
#: library/re.rst:218
#, fuzzy
msgid "``{m,n}+``"
msgstr "``{m,n}``"
msgstr "``{m,n}+``"
#: library/re.rst:206
#, fuzzy
@ -434,7 +428,7 @@ msgid ""
msgstr ""
"Fait valider par l'expression rationnelle résultante entre *m* et *n* "
"répétitions de l'expression qui précède, cherchant à en valider le moins "
"possible. Il s'agit de la version non gourmande du précédent qualificateur. "
"possible. Il s'agit de la version non gourmande du précédent quantificateur. "
"Par exemple, dans la chaîne de 6 caractères ``'aaaaaa'``, ``a{3,5}`` "
"trouvera 5 caractères ``'a'``, alors que ``a{3,5}?`` n'en trouvera que 3."
@ -679,9 +673,8 @@ msgstr ""
"l'expression."
#: library/re.rst:341
#, fuzzy
msgid "This construction can only be used at the start of the expression."
msgstr "Correspond uniquement au début d'une chaîne de caractères."
msgstr "Cette construction ne peut être utilisée qu'au début d'une chaîne de caractères."
#: library/re.rst:350
msgid "``(?:...)``"
@ -755,9 +748,8 @@ msgstr ""
"groupe."
#: library/re.rst:391
#, fuzzy
msgid "``(?>...)``"
msgstr "``(?...)``"
msgstr "``(?>...)``"
#: library/re.rst:379
msgid ""
@ -848,7 +840,8 @@ msgstr "``\\g<1>``"
#: library/re.rst:420
msgid "Group names containing non-ASCII characters in bytes patterns."
msgstr ""
msgstr "Les noms de groupe qui contiennent des caractères non-ASCII"
"dans des motifs d'octets (type *bytes*)."
#: library/re.rst:427
msgid "``(?P=name)``"
@ -977,7 +970,8 @@ msgstr ""
#: library/re.rst:495
msgid "Group *id* containing anything except ASCII digits."
msgstr ""
msgstr "Identifiant ``id`` de groupe contenant autre chose que des chiffres"
"ASCII."
#: library/re.rst:499
msgid ""
@ -1168,15 +1162,14 @@ msgid "``\\w``"
msgstr "``\\w``"
#: library/re.rst:592
#, fuzzy
msgid ""
"Matches Unicode word characters; this includes alphanumeric characters (as "
"defined by :meth:`str.isalnum`) as well as the underscore (``_``). If the :"
"const:`ASCII` flag is used, only ``[a-zA-Z0-9_]`` is matched."
msgstr ""
"Valide les caractères Unicode de mot ; cela inclut la plupart des caractères "
"qui peuvent être compris dans un mot d'une quelconque langue, aussi bien que "
"les nombres et les tirets bas. Si l'option :const:`ASCII` est utilisée, "
"Valide les caractères Unicode de mot ; cela inclut les caractères alphanumériques "
"(tels que définis par :meth:`str.isalnum`), ainsi que les tirets bas(``_``). "
"Si l'option :const:`ASCII` est utilisée, "
"seuls les caractères de la classe ``[a-zA-Z0-9_]`` sont validés."
#: library/re.rst:597
@ -1454,7 +1447,6 @@ msgstr ""
"l'exception du saut de ligne. Correspond à l'option de groupe ``(?s)``."
#: library/re.rst:782
#, fuzzy
msgid ""
"This flag allows you to write regular expressions that look nicer and are "
"more readable by allowing you to visually separate logical sections of the "
@ -1470,9 +1462,10 @@ msgstr ""
"présentent mieux et sont plus lisibles en vous permettant de séparer "
"visuellement les sections logiques du motif et d'ajouter des commentaires. "
"Les caractères d'espacement à l'intérieur du motif sont ignorés, sauf à "
"l'intérieur des classes de caractères ou quand précédés d'un *backslash* non "
"échappé, ou dans des séquences comme ``*?``, ``(?:`` or ``(?P<...>``. Quand "
"une ligne contient un ``#`` qui n'est pas dans une classe de caractères ou "
"l'intérieur des classes de caractères ou quand ils sont précédés d'un *backslash* "
"non échappé, ou dans des séquences comme ``*?``, ``(?:`` ou ``(?P<...>``."
"Par exemple, ``(? :`` et ``* ?`` ne sont pas autorisés. Quand une ligne"
"contient un ``#`` qui n'est ni dans une classe de caractères, ni "
"précédé d'un *backslash* non échappé, tous les caractères depuis le ``#`` le "
"plus à gauche jusqu'à la fin de la ligne sont ignorés."
@ -1807,10 +1800,12 @@ msgstr ""
"adjacentes à une correspondance non vide précédente."
#: library/re.rst:1016
#, fuzzy
msgid ""
"Group *id* containing anything except ASCII digits. Group names containing "
"non-ASCII characters in bytes replacement strings."
msgstr ""
msgstr "Identifiant de groupe contenant autre chose que des chiffres"
"ASCII."
#: library/re.rst:1023
msgid ""
@ -2481,21 +2476,25 @@ msgstr "search() vs. match()"
msgid ""
"Python offers different primitive operations based on regular expressions:"
msgstr ""
"Python offre différentes opérations primitives basées sur des expressions"
"régulières."
#: library/re.rst:1566
#, fuzzy
msgid ":func:`re.match` checks for a match only at the beginning of the string"
msgstr "Correspond uniquement à la fin d'une chaîne de caractères."
msgstr ":func:`re.match` cherche une correspondance uniquement au début de la"
"chaîne de caractères"
#: library/re.rst:1567
msgid ""
":func:`re.search` checks for a match anywhere in the string (this is what "
"Perl does by default)"
msgstr ""
msgstr ":func:`re.search` cherche une correspondance n'importe où dans"
"la chaîne de caractères (ce que fait Perl par défaut)"
#: library/re.rst:1569
msgid ":func:`re.fullmatch` checks for entire string to be a match"
msgstr ""
msgstr ":func:`re.fullmatch` cherche une correspondance avec l'intégralité"
"de la chaîne de caractères."
#: library/re.rst:1581
msgid ""

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-02-12 21:25+0100\n"
"PO-Revision-Date: 2019-03-26 15:55+0100\n"
"PO-Revision-Date: 2023-02-17 18:06+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n"
"X-Generator: Poedit 3.2.2\n"
#: library/sqlite3.rst:2
msgid ":mod:`sqlite3` --- DB-API 2.0 interface for SQLite databases"
@ -52,27 +52,35 @@ msgstr ""
#: library/sqlite3.rst:34
msgid "This document includes four main sections:"
msgstr ""
msgstr "Ce document inclus 4 sections principales :"
#: library/sqlite3.rst:36
msgid ":ref:`sqlite3-tutorial` teaches how to use the :mod:`!sqlite3` module."
msgstr ""
":ref:`tutoriel sqlite3 <sqlite3-tutorial>` explique comment utiliser le "
"module :mod:`!sqlite3`."
#: library/sqlite3.rst:37
msgid ""
":ref:`sqlite3-reference` describes the classes and functions this module "
"defines."
msgstr ""
":ref:`référence sqlite3 <sqlite3-reference>` décrit les classes et les "
"fonctions que ce module définit."
#: library/sqlite3.rst:39
msgid ":ref:`sqlite3-howtos` details how to handle specific tasks."
msgstr ""
":ref:`guide sqlite3 <sqlite3-howtos>` détaille comment gérer des tâches "
"spécifiques."
#: library/sqlite3.rst:40
msgid ""
":ref:`sqlite3-explanation` provides in-depth background on transaction "
"control."
msgstr ""
":ref:`explications sqlite3 <sqlite3-explanation>` propose un contexte "
"détaillé du contrôle de transaction."
#: library/sqlite3.rst:47
msgid "https://www.sqlite.org"
@ -104,7 +112,7 @@ msgstr "PEP écrite par Marc-André Lemburg."
#: library/sqlite3.rst:66
msgid "Tutorial"
msgstr ""
msgstr "Tutoriel"
#: library/sqlite3.rst:68
msgid ""
@ -112,6 +120,10 @@ msgid ""
"basic :mod:`!sqlite3` functionality. It assumes a fundamental understanding "
"of database concepts, including `cursors`_ and `transactions`_."
msgstr ""
"Dans ce tutoriel, vous allez créer une base de données des films des Monty "
"Python en utilisant les fonctionnalités de base de :mod:`!sqlite3`. Cela "
"nécessite une compréhension élémentaire des concepts des bases de données, "
"notamment les `curseurs`_ et les `transactions`_."
#: library/sqlite3.rst:73
msgid ""
@ -120,12 +132,19 @@ msgid ""
"create a connection to the database :file:`tutorial.db` in the current "
"working directory, implicitly creating it if it does not exist:"
msgstr ""
"Tout dabord, nous devons créer une nouvelle base de données et ouvrir une "
"connexion à la base de données pour permettre à :mod:`!sqlite3` de "
"travailler avec elle. Appelez :func:`sqlite3.connect` pour créer une "
"connexion à la base de données :file:`tutorial.db` dans le répertoire de "
"travail actuel, en la créant implicitement si elle nexiste pas :"
#: library/sqlite3.rst:84
msgid ""
"The returned :class:`Connection` object ``con`` represents the connection to "
"the on-disk database."
msgstr ""
"Lobjet :class:`Connection` renvoyé — ``con`` — représente la connexion à la "
"base de données sur disque."
#: library/sqlite3.rst:87
msgid ""
@ -133,6 +152,9 @@ msgid ""
"will need to use a database cursor. Call :meth:`con.cursor() <Connection."
"cursor>` to create the :class:`Cursor`:"
msgstr ""
"Afin dexécuter les instructions SQL et de récupérer les résultats des "
"requêtes SQL, nous devrons utiliser un curseur de base de données. Appelez :"
"meth:`con.cursor() <Connection.cursor>` pour créer la :class:`Cursor` :"
#: library/sqlite3.rst:95
msgid ""
@ -143,6 +165,14 @@ msgid ""
"types is optional. Execute the ``CREATE TABLE`` statement by calling :meth:"
"`cur.execute(...) <Cursor.execute>`:"
msgstr ""
"Maintenant que nous avons une connexion à la base de données et un curseur, "
"nous pouvons créer une table ``movie`` avec des colonnes pour le titre, "
"lannée de sortie et la note de la critique. Pour plus de simplicité, nous "
"pouvons simplement utiliser les noms des colonnes dans la déclaration de la "
"table — grâce à la fonctionnalité de `typage flexible <flexible typing_>`_ "
"de SQLite, spécifier les types de données est facultatif. Exécutez "
"linstruction ``CREATE TABLE`` en appelant :meth:`cur.execute(…) <Cursor."
"execute>` :"
#: library/sqlite3.rst:111
msgid ""
@ -153,6 +183,13 @@ msgid ""
"execute>`, assign the result to ``res``, and call :meth:`res.fetchone() "
"<Cursor.fetchone>` to fetch the resulting row:"
msgstr ""
"Nous pouvons vérifier que la nouvelle table a été créée en interrogeant la "
"table ``sqlite_master`` intégrée à SQLite, qui devrait maintenant contenir "
"une entrée pour la définition de la table ``movie`` (voir `le schéma Table "
"<The Schema Table_>`_ pour plus de détails). Exécutez cette requête en "
"appelant :meth:`cur.execute(…) <Cursor.execute>`, affectez le résultat à "
"``res``, et appelez :meth:`res.fetchone() <Cursor.fetchone>` pour récupérer "
"la ligne résultante :"
#: library/sqlite3.rst:125
msgid ""
@ -160,6 +197,10 @@ msgid ""
"`tuple` containing the table's name. If we query ``sqlite_master`` for a non-"
"existent table ``spam``, :meth:`!res.fetchone()` will return ``None``:"
msgstr ""
"Nous pouvons voir que la table a été créée, puisque la requête retourne un :"
"class:`tuple` contenant le nom de la table. Si nous interrogeons "
"``sqlite_master`` pour une table ``spam`` inexistante, :meth:`!res."
"fetchone()`` retournera ``None`` :"
#: library/sqlite3.rst:136
msgid ""
@ -167,6 +208,9 @@ msgid ""
"``INSERT`` statement, once again by calling :meth:`cur.execute(...) <Cursor."
"execute>`:"
msgstr ""
"Maintenant, ajoutez deux lignes de données en tant que littéraux SQL en "
"exécutant une instruction ``INSERT``, une fois encore en appelant :meth:`cur."
"execute(…) <Cursor.execute>` :"
#: library/sqlite3.rst:148
msgid ""
@ -175,6 +219,11 @@ msgid ""
"controlling-transactions` for details). Call :meth:`con.commit() <Connection."
"commit>` on the connection object to commit the transaction:"
msgstr ""
"Linstruction ``INSERT`` ouvre implicitement une transaction, qui doit être "
"validée avant que les modifications ne soient enregistrées dans la base de "
"données (voir :ref:`contrôle des transactions SQL <sqlite3-controlling-"
"transactions>` pour plus de détails). Appelez :meth:`con.commit() "
"<Connection.commit>` sur lobjet de connexion pour valider la transaction :"
#: library/sqlite3.rst:158
msgid ""
@ -183,18 +232,27 @@ msgid ""
"assign the result to ``res``, and call :meth:`res.fetchall() <Cursor."
"fetchall>` to return all resulting rows:"
msgstr ""
"Nous pouvons vérifier que les données ont été insérées correctement en "
"exécutant une requête ``SELECT``. Utilisez la désormais familière :meth:`cur."
"execute(…) <Cursor.execute>` pour affecter le résultat à ``res``, et "
"appelez :meth:`res.fetchall() <Cursor.fetchall>` pour retourner toutes les "
"lignes résultantes :"
#: library/sqlite3.rst:170
msgid ""
"The result is a :class:`list` of two :class:`!tuple`\\s, one per row, each "
"containing that row's ``score`` value."
msgstr ""
"Le résultat est une :class:`liste <list>` de deux :class:`!tuple`\\s, une "
"par ligne, chacun contenant la valeur ``score`` de cette ligne."
#: library/sqlite3.rst:173
msgid ""
"Now, insert three more rows by calling :meth:`cur.executemany(...) <Cursor."
"executemany>`:"
msgstr ""
"Maintenant, insérez trois lignes supplémentaires en appelant :meth:`cur."
"executemany(…) <Cursor.executemany>` :"
#: library/sqlite3.rst:186
msgid ""
@ -203,18 +261,28 @@ msgid ""
"to bind Python values to SQL statements, to avoid `SQL injection attacks`_ "
"(see :ref:`sqlite3-placeholders` for more details)."
msgstr ""
"Remarquez que les placeholders ``?`` sont utilisés pour lier les ``data`` à "
"la requête. Utilisez toujours les placeholders au lieu d:ref:`expressions "
"formatées <tut-formatting>` pour lier les valeurs Python aux instructions "
"SQL, afin déviter les `injections SQL`_ (voir :ref:`placeholder SQL "
"<sqlite3-placeholders>` pour plus de détails)."
#: library/sqlite3.rst:192
msgid ""
"We can verify that the new rows were inserted by executing a ``SELECT`` "
"query, this time iterating over the results of the query:"
msgstr ""
"Nous pouvons vérifier que les nouvelles lignes ont été insérées en exécutant "
"une requête ``SELECT``, cette fois-ci en itérant sur les résultats de la "
"requête :"
#: library/sqlite3.rst:206
msgid ""
"Each row is a two-item :class:`tuple` of ``(year, title)``, matching the "
"columns selected in the query."
msgstr ""
"Chaque ligne est un :class:`tuple` de deux éléments ``(année, titre)``, "
"correspondant aux colonnes sélectionnées dans la requête."
#: library/sqlite3.rst:209
msgid ""
@ -222,64 +290,76 @@ msgid ""
"`con.close() <Connection.close>` to close the existing connection, opening a "
"new one, creating a new cursor, then querying the database:"
msgstr ""
"Enfin, vérifiez que la base de données a été écrite sur le disque en "
"appelant :meth:`con.close() <Connection.close>` pour fermer la connexion "
"existante, en ouvrir une nouvelle, créer un nouveau curseur, puis interroger "
"la base de données :"
#: library/sqlite3.rst:224
msgid ""
"You've now created an SQLite database using the :mod:`!sqlite3` module, "
"inserted data and retrieved values from it in multiple ways."
msgstr ""
"Vous avez maintenant créé une base de données SQLite à laide du module :mod:"
"`!sqlite3`, inséré des données et récupéré des valeurs de plusieurs façons."
#: library/sqlite3.rst:236
msgid ":ref:`sqlite3-howtos` for further reading:"
msgstr ""
msgstr ":ref:`guide sqlite3 <sqlite3-howtos>` pour une lecture plus poussée:"
#: library/sqlite3.rst:238
msgid ":ref:`sqlite3-placeholders`"
msgstr ""
msgstr ":ref:`placeholders sqlite3 <sqlite3-placeholders>`"
#: library/sqlite3.rst:239
msgid ":ref:`sqlite3-adapters`"
msgstr ""
msgstr ":ref:`adaptateurs sqlite3 <sqlite3-adapters>`"
#: library/sqlite3.rst:240
msgid ":ref:`sqlite3-converters`"
msgstr ""
msgstr ":ref:`convertisseurs sqlite3 <sqlite3-converters>`"
#: library/sqlite3.rst:557
msgid ":ref:`sqlite3-connection-context-manager`"
msgstr ""
":ref:`gestionnaire de contexte de connexion sqlite3 <sqlite3-connection-"
"context-manager>`"
#: library/sqlite3.rst:242
msgid ":ref:`sqlite3-howto-row-factory`"
msgstr ""
msgstr ":ref:`guide de fabrique de ligne sqlite3 <sqlite3-howto-row-factory>`"
#: library/sqlite3.rst:244
msgid ""
":ref:`sqlite3-explanation` for in-depth background on transaction control."
msgstr ""
":ref:`explications sqlite3 <sqlite3-explanation>` pour un contexte détaillé "
"du contrôle de transaction."
#: library/sqlite3.rst:249
msgid "Reference"
msgstr ""
msgstr "Références"
#: library/sqlite3.rst:257
#, fuzzy
msgid "Module functions"
msgstr "Fonctions et constantes du module"
msgstr "Fonctions du module"
#: library/sqlite3.rst:264
msgid "Open a connection to an SQLite database."
msgstr ""
msgstr "Ouvrez une connexion à une base de données SQLite."
#: library/sqlite3.rst:0
msgid "Parameters"
msgstr ""
msgstr "Paramètres"
#: library/sqlite3.rst:266
msgid ""
"The path to the database file to be opened. Pass ``\":memory:\"`` to open a "
"connection to a database that is in RAM instead of on disk."
msgstr ""
"Le chemin daccès au fichier de la base de données à ouvrir. Passez ``\":"
"memory:\"`` pour ouvrir une connexion à une base de données qui est dans la "
"RAM plutôt que sur le disque."
#: library/sqlite3.rst:272
msgid ""
@ -288,6 +368,11 @@ msgid ""
"transaction to modify the database, it will be locked until that transaction "
"is committed. Default five seconds."
msgstr ""
"Le temps (en secondes) que la connexion doit attendre avant de lever une "
"exception, si la base de données est verrouillée par une autre connexion. Si "
"une autre connexion ouvre une transaction pour modifier la base de données, "
"celle-ci sera verrouillée jusquà ce que cette transaction soit validée. Par "
"défaut, cinq secondes."
#: library/sqlite3.rst:279
msgid ""
@ -301,6 +386,17 @@ msgid ""
"class:`str` will be returned instead. By default (``0``), type detection is "
"disabled."
msgstr ""
"Contrôle si et comment les types de données non :ref:`nativement pris en "
"charge par SQLite <sqlite3-types>` sont recherchés pour être convertis en "
"types Python, en utilisant les convertisseurs enregistrés avec :func:"
"`register_converter`. Définissez-le à nimporte quelle combinaison (en "
"utilisant ``|``, opérateurs bit-à-bit OR) de :const:`PARSE_DECLTYPES` et :"
"const:`PARSE_COLNAMES` pour activer ceci. Les noms de colonnes ont la "
"priorité sur les types déclarés si les deux drapeaux sont activés. Les types "
"ne peuvent pas être détectés pour les champs générés (par exemple "
"``max(data)``), même si le paramètre *detect_types* est activé ; :class:"
"`str` sera retourné à la place. Par défaut (``0``), la détection des types "
"est désactivée."
#: library/sqlite3.rst:293
msgid ""
@ -310,6 +406,12 @@ msgid ""
"opening transactions implicitly. See :ref:`sqlite3-controlling-transactions` "
"for more."
msgstr ""
"Lattribut :attr:`~Connection.isolation_level` de la connexion, contrôlant "
"si et comment les transactions sont ouvertes implicitement. Peut être "
"``\"DEFERRED\"`` (par défaut), ``\"EXCLUSIVE\"`` ou ``\"IMMEDIATE\"`` ; ou "
"``None`` pour désactiver louverture implicite des transactions. Voir :ref:"
"`contrôle des transactions sqlite3 <sqlite3-controlling-transactions>` pour "
"en savoir plus."
#: library/sqlite3.rst:301
msgid ""
@ -319,18 +421,29 @@ msgid ""
"operations may need to be serialized by the user to avoid data corruption. "
"See :attr:`threadsafety` for more information."
msgstr ""
"Si ``True`` (par défaut), :exc:`ProgrammingError` sera levée si la connexion "
"à la base de données est utilisée par un thread autre que celui qui la "
"créée. Si ``False``, la connexion peut être utilisée par plusieurs threads ; "
"les opérations décriture devront peut-être être sérialisées par "
"lutilisateur pour éviter la corruption des données. Voir :attr:`sécurité "
"des threads <threadsafety>` pour plus dinformations."
#: library/sqlite3.rst:310
msgid ""
"A custom subclass of :class:`Connection` to create the connection with, if "
"not the default :class:`Connection` class."
msgstr ""
"Une sous-classe personnalisée de :class:`Connection` pour créer la "
"connexion, si ce nest pas la classe par défaut :class:`Connection`."
#: library/sqlite3.rst:314
msgid ""
"The number of statements that :mod:`!sqlite3` should internally cache for "
"this connection, to avoid parsing overhead. By default, 128 statements."
msgstr ""
"Le nombre dinstructions que :mod:`!sqlite3` doit mettre en cache en interne "
"pour cette connexion, afin déviter les surcharges danalyse. Par défaut, "
"128 instructions."
#: library/sqlite3.rst:319
msgid ""
@ -340,6 +453,12 @@ msgid ""
"absolute. The query string allows passing parameters to SQLite, enabling "
"various :ref:`sqlite3-uri-tricks`."
msgstr ""
"Si elle a pour valeur ``True``, la base de données est interprétée comme un :"
"abbr:`URI (Uniform Resource Identifier)` avec un chemin daccès au fichier "
"et une chaîne de requête facultative. La partie schéma *doit* être ``\"file:"
"\"``, et le chemin peut être relatif ou absolu. La chaîne dinterrogation "
"permet de passer des paramètres à SQLite, ce qui permet dactiver diverses :"
"ref:`astuces dURI sqlite3 <sqlite3-uri-tricks>`."
#: library/sqlite3.rst:0
#, fuzzy
@ -366,6 +485,8 @@ msgstr ""
msgid ""
"*database* can now also be a :term:`path-like object`, not only a string."
msgstr ""
"*database* peut maintenant aussi être un :term:`objet de type chemin <path-"
"like object>`, et pas seulement une chaîne de caractères."
#: library/sqlite3.rst:339
msgid "The ``sqlite3.connect/handle`` auditing event."
@ -378,9 +499,13 @@ msgid ""
"performed, other than checking that there are no unclosed string literals "
"and the statement is terminated by a semicolon."
msgstr ""
"Renvoie ``True`` si la déclaration de la chaîne semble contenir une ou "
"plusieurs déclarations SQL complètes. Aucune vérification syntaxique ou "
"analyse syntaxique daucune sorte nest effectuée, si ce nest la "
"vérification quil ny a pas de chaîne littérale non fermée et que "
"linstruction se termine par un point-virgule."
#: library/sqlite3.rst:350
#, fuzzy
msgid "For example:"
msgstr "Exemple :"
@ -390,6 +515,10 @@ msgid ""
"entered text seems to form a complete SQL statement, or if additional input "
"is needed before calling :meth:`~Cursor.execute`."
msgstr ""
"Cette fonction peut être utile pendant la saisie en ligne de commande pour "
"déterminer si le texte saisi semble former une instruction SQL complète, ou "
"si une saisie supplémentaire est nécessaire avant dappeler :meth:`~Cursor."
"execute`."
#: library/sqlite3.rst:365
msgid ""
@ -399,12 +528,22 @@ msgid ""
"*flag* set to ``True``. Afterwards, you will get tracebacks from callbacks "
"on :data:`sys.stderr`. Use ``False`` to disable the feature again."
msgstr ""
"Activer ou désactiver les traces des fonctions de rappel. Par défaut, vous "
"nobtiendrez pas de traces de pile dappels dans les fonctions définies par "
"lutilisateur, les agrégats, les convertisseurs, les fonctions de rappel des "
"mécanismes dautorisation, etc. Si vous voulez les déboguer, vous pouvez "
"appeler cette fonction avec *flag* à ``True``. Ensuite, vous obtiendrez les "
"traces des fonctions de rappel sur :data:`sys.stderr`. Utilisez ``False`` "
"pour désactiver à nouveau cette fonctionnalité."
#: library/sqlite3.rst:372
msgid ""
"Register an :func:`unraisable hook handler <sys.unraisablehook>` for an "
"improved debug experience:"
msgstr ""
"Enregistrez un :func:`gestionnaire de point dentrée *non levable* <sys."
"unraisablehook>` (*unraisable* en anglais) pour une expérience de débogage "
"améliorée :"
#: library/sqlite3.rst:397
msgid ""
@ -413,6 +552,10 @@ msgid ""
"its sole argument, and must return a value of a :ref:`type that SQLite "
"natively understands <sqlite3-types>`."
msgstr ""
"Enregistre un *adaptateur* appelable pour adapter le type Python *type* en "
"un type SQLite. Ladaptateur est appelé avec un objet Python de type *type* "
"comme unique argument, et doit retourner une valeur dun :ref:`type que "
"SQLite comprend nativement <sqlite3-types>`."
#: library/sqlite3.rst:405
msgid ""
@ -423,15 +566,22 @@ msgid ""
"parameter *detect_types* of :func:`connect` for information regarding how "
"type detection works."
msgstr ""
"Enregistre le *convertisseur* appellable pour convertir les objets SQLite de "
"type *typename* en un objet Python dun type spécifique. Le convertisseur "
"est invoqué pour toutes les valeurs SQLite de type *typename* ; on lui passe "
"un objet :class:`bytes` et il doit retourner un objet du type Python désiré. "
"Consultez le paramètre *detect_types* de :func:`connect` pour des "
"informations sur le fonctionnement de la détection des types."
#: library/sqlite3.rst:413
msgid ""
"Note: *typename* and the name of the type in your query are matched case-"
"insensitively."
msgstr ""
"Remarque : *typename* et le nom du type dans votre requête sont comparés "
"sans tenir compte de la casse."
#: library/sqlite3.rst:420
#, fuzzy
msgid "Module constants"
msgstr "Fonctions et constantes du module"

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2022-10-18 16:14+0200\n"
"PO-Revision-Date: 2023-02-17 15:37+0100\n"
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.4.2\n"
"X-Generator: Poedit 3.0.1\n"
#: library/turtle.rst:3
msgid ":mod:`turtle` --- Turtle graphics"
@ -1830,8 +1830,8 @@ msgid ""
"*picname* is ``\"nopic\"``, delete background image, if present. If "
"*picname* is ``None``, return the filename of the current backgroundimage. ::"
msgstr ""
"Défini l'image de fond ou renvoie l'image de fond actuelle. Si *picname* est "
"un nom de fichier, cette image et mis en image de fond. Si *picname* est "
"Définit l'image de fond ou renvoie l'image de fond actuelle. Si *picname* "
"est un nom de fichier, cette image et mis en image de fond. Si *picname* est "
"``\"nopic\"``, l'image de fond sera supprimée si présente. SI *picname* est "
"``None``, le nom du fichier de l'image de fond actuelle est renvoyé. ::"
@ -1949,7 +1949,7 @@ msgid ""
"the time interval between two consecutive canvas updates.) The longer the "
"drawing delay, the slower the animation."
msgstr ""
"Défini ou renvoie le délai (*delay*) de dessin en millisecondes. (Cet "
"Définit ou renvoie le délai (*delay*) de dessin en millisecondes. (Cet "
"approximativement le temps passé entre deux mises à jour du canevas.) Plus "
"le délai est long, plus l'animation sera lente."
@ -1969,11 +1969,11 @@ msgid ""
"arguments, returns the currently stored value of n. Second argument sets "
"delay value (see :func:`delay`)."
msgstr ""
"Active/désactive les animations des tortues et défini le délai pour mettre à "
"jour les dessins.Si *n* est passé, seulement les n-ièmes mises à jours "
"Active/désactive les animations des tortues et définit le délai pour mettre "
"à jour les dessins.Si *n* est passé, seulement les n-ièmes mises à jours "
"régulières de l'écran seront vraiment effectuées. (Peut être utilisé pour "
"accélérer le dessin de graphiques complexes.) Lorsqu'appelé sans arguments, "
"renvoie la valeur actuelle de *n*. Le deuxième argument défini la valeur du "
"renvoie la valeur actuelle de *n*. Le deuxième argument définit la valeur du "
"délai (voir :func:`delay`)."
#: library/turtle.rst:1760
@ -2183,12 +2183,11 @@ msgid "one of the values 1.0 or 255"
msgstr "l'une des valeurs suivantes : 1.0 ou 255"
#: library/turtle.rst:1944
#, fuzzy
msgid ""
"Return the colormode or set it to 1.0 or 255. Subsequently *r*, *g*, *b* "
"values of color triples have to be in the range 0..*cmode*."
msgstr ""
"Renvoie le mode de couleur (*colormode*) ou le défini à 1.0 ou 255. Les "
"Renvoie le mode de couleur (*colormode*) ou le définit à 1.0 ou 255. Les "
"valeurs *r*, *g* et *b* doivent aussi être dans la gamme ``0``\\ ..\\ "
"*cmode*."
@ -2346,7 +2345,7 @@ msgstr ""
#: library/turtle.rst:2096
msgid "Set title of turtle window to *titlestring*."
msgstr "Défini le titre de la fenêtre de la tortue à *titlestring*."
msgstr "Définit le titre de la fenêtre de la tortue comme *titlestring*."
#: library/turtle.rst:2105
msgid "Public classes"

File diff suppressed because it is too large Load Diff

View File

@ -6,8 +6,8 @@ msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2022-11-14 15:35+0100\n"
"Last-Translator: Yannick Gingras <ygingras@ygingras.net>\n"
"PO-Revision-Date: 2023-02-17 15:35+0100\n"
"Last-Translator: Mouna Sebti <mounasb@proton.me>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -22,7 +22,7 @@ msgstr "Les nouveautés de Python 3.11"
#: whatsnew/3.11.rst:0
msgid "Release"
msgstr ""
msgstr "Version"
#: whatsnew/3.11.rst:5
msgid "|release|"
@ -38,7 +38,7 @@ msgstr ""
#: whatsnew/3.11.rst:0
msgid "Editor"
msgstr ""
msgstr "Éditeur"
#: whatsnew/3.11.rst:7
msgid "Pablo Galindo Salgado"
@ -66,6 +66,9 @@ msgid ""
"measured a 1.25x speedup on the standard benchmark suite. See :ref:"
"`whatsnew311-faster-cpython` for details."
msgstr ""
"Python 3.11 est entre 10 et 60% plus rapide que Python 3.10. En moyenne,"
"nous avons mesuré une multiplication de la vitesse par 1.25 sur la suite de"
"benchmark standard. Voir les détails sur :ref:`whatsnew311-faster-cpython`."
#: whatsnew/3.11.rst:68
msgid "New syntax features:"
@ -76,9 +79,8 @@ msgid ":ref:`whatsnew311-pep654`"
msgstr ""
#: whatsnew/3.11.rst:72
#, fuzzy
msgid "New built-in features:"
msgstr "Nouvelles fonctionnalités de typage :"
msgstr "Nouvelles fonctionnalités natives :"
#: whatsnew/3.11.rst:74
msgid ":ref:`whatsnew311-pep678`"
@ -86,7 +88,7 @@ msgstr ""
#: whatsnew/3.11.rst:76
msgid "New standard library modules:"
msgstr ""
msgstr "Nouveaux modules de bibliothèque standard :"
#: whatsnew/3.11.rst:78
msgid ""
@ -96,7 +98,7 @@ msgstr ""
#: whatsnew/3.11.rst:81
msgid "Interpreter improvements:"
msgstr ""
msgstr "Améliorations de l'interpréteur :"
#: whatsnew/3.11.rst:83
msgid ":ref:`whatsnew311-pep657`"
@ -142,12 +144,16 @@ msgid ""
":pep:`594`: :ref:`Many legacy standard library modules have been deprecated "
"<whatsnew311-pep594>` and will be removed in Python 3.13"
msgstr ""
":pep:`594`: :ref:`De nombreux anciens modules de la bibliothèque standard sont"
"devenus obsolètes <whatsnew311-pep594>` et seront supprimés dans la version 3.13"
#: whatsnew/3.11.rst:101
msgid ""
":pep:`624`: :ref:`Py_UNICODE encoder APIs have been removed <whatsnew311-"
"pep624>`"
msgstr ""
":pep:`624`: :ref:`les API d'encodage Py_UNICODE ont été supprimées <whatsnew311-"
"pep624>`"
#: whatsnew/3.11.rst:103
msgid ""
@ -183,9 +189,9 @@ msgid ""
"function calls:"
msgstr ""
"Les versions précédentes de l'interpréteur indiquaient uniquement la ligne, "
"ce qui rendait ambigu quel objet était ``None``. Les messages d'erreurs "
"ce qui rendait ambigu quel objet était ``None``. Ces messages d'erreurs "
"améliorés sont aussi utiles quand on travaille avec des objets dictionnaires "
"fortement imbriqués et des appels de fonction multiples,"
":class:`dict` fortement imbriqués et des appels de fonction multiples :"
#: whatsnew/3.11.rst:151
#, fuzzy
@ -234,7 +240,7 @@ msgstr ""
#: whatsnew/3.11.rst:185
msgid "PEP 654: Exception Groups and ``except*``"
msgstr ""
msgstr "PEP 654: Groupes d'exception et ``except*``"
#: whatsnew/3.11.rst:187
msgid ""
@ -248,7 +254,7 @@ msgstr ""
#: whatsnew/3.11.rst:194
msgid "See :pep:`654` for more details."
msgstr ""
msgstr "Voir :pep:`654` pour plus de détails."
#: whatsnew/3.11.rst:196
msgid ""
@ -276,7 +282,7 @@ msgstr ""
#: whatsnew/3.11.rst:210
msgid "See :pep:`678` for more details."
msgstr ""
msgstr "Voir :pep:`678` pour plus de détails."
#: whatsnew/3.11.rst:212
msgid ""
@ -286,7 +292,7 @@ msgstr ""
#: whatsnew/3.11.rst:219
msgid "Windows ``py.exe`` launcher improvements"
msgstr ""
msgstr "Améliorations du lanceur Windows ``py.exe``"
#: whatsnew/3.11.rst:221
msgid ""
@ -351,7 +357,7 @@ msgstr ""
#: whatsnew/3.11.rst:270
msgid "See :pep:`646` for more details."
msgstr ""
msgstr "Voir :pep:`646` pour plus de détails."
#: whatsnew/3.11.rst:272
msgid ""
@ -383,11 +389,11 @@ msgstr ""
#: whatsnew/3.11.rst:301
msgid "The following definition is equivalent::"
msgstr ""
msgstr "La définition suivante est équivalente ::"
#: whatsnew/3.11.rst:307
msgid "See :pep:`655` for more details."
msgstr ""
msgstr "Voir :pep:`655` pour plus de détails."
#: whatsnew/3.11.rst:309
msgid ""
@ -423,7 +429,7 @@ msgstr ""
#: whatsnew/3.11.rst:345
msgid "See :pep:`673` for more details."
msgstr ""
msgstr "Voir :pep:`673` pour plus de détails."
#: whatsnew/3.11.rst:347
msgid ""
@ -449,10 +455,12 @@ msgstr ""
#: whatsnew/3.11.rst:364
msgid "For example, a SQL query function could be annotated as follows::"
msgstr ""
"Par exemple, une fonction de requête SQL pourrait être annotée de cette"
"façon ::"
#: whatsnew/3.11.rst:382
msgid "See :pep:`675` for more details."
msgstr ""
msgstr "Voir :pep:`675` pour plus de détails."
#: whatsnew/3.11.rst:384
msgid ""
@ -475,11 +483,11 @@ msgstr ""
#: whatsnew/3.11.rst:399
msgid "For example::"
msgstr ""
msgstr "Par exemple ::"
#: whatsnew/3.11.rst:417
msgid "See :pep:`681` for more details."
msgstr ""
msgstr "Voir :pep:`681` pour plus de détails."
#: whatsnew/3.11.rst:419
msgid ""
@ -954,12 +962,11 @@ msgid "IDLE and idlelib"
msgstr "``IDLE`` et ``idlelib``"
#: whatsnew/3.11.rst:804
#, fuzzy
msgid ""
"Apply syntax highlighting to ``.pyi`` files. (Contributed by Alex Waygood "
"and Terry Jan Reedy in :issue:`45447`.)"
msgstr ""
"Fait la coloration syntaxique des fichiers ``.pyi`` (contribution d'*Alex "
"Applique la coloration syntaxique aux fichiers ``.pyi`` (contribution d'*Alex "
"Waygood* et de *Terry Jan Reedy* dans :issue:`45447`)."
#: whatsnew/3.11.rst:807
@ -1430,6 +1437,8 @@ msgstr ""
#: whatsnew/3.11.rst:1131
msgid "For major changes, see :ref:`new-feat-related-type-hints-311`."
msgstr ""
"Pour les modifications majeures, voir :ref:`new-feat-related-"
"type-hints-311`."
#: whatsnew/3.11.rst:1133
msgid ""
@ -1739,7 +1748,9 @@ msgstr ""
msgid ""
"Interpreter startup is now 10-15% faster in Python 3.11. This has a big "
"impact for short-running programs using Python."
msgstr ""
msgstr "Le lancement de l'interpréteur est 10 à 15% plus rapide"
"dans la version 3.11. Cela a un grand impact pour les programmes courts"
"utilisant Python."
#: whatsnew/3.11.rst:1362
msgid ""
@ -1954,7 +1965,7 @@ msgstr ""
#: whatsnew/3.11.rst:1467
msgid "Calls"
msgstr ""
msgstr "Appels"
#: whatsnew/3.11.rst:1467
msgid "``f(arg)`` ``C(arg)``"
@ -2162,7 +2173,7 @@ msgstr ""
#: whatsnew/3.11.rst:1554
msgid "About"
msgstr ""
msgstr "À propos"
#: whatsnew/3.11.rst:1556
msgid ""
@ -2429,6 +2440,8 @@ msgstr "Obsolescence"
msgid ""
"This section lists Python APIs that have been deprecated in Python 3.11."
msgstr ""
"Cette section liste les API Python qui sont devenues obsolètes dans la"
"version 3.11."
#: whatsnew/3.11.rst:1671
msgid ""
@ -2585,7 +2598,7 @@ msgstr ""
#: whatsnew/3.11.rst:1742
msgid "Standard Library"
msgstr ""
msgstr "Bibliothèque Standard"
#: whatsnew/3.11.rst:1744
msgid ""
@ -2776,6 +2789,8 @@ msgid ""
"The following Python APIs have been deprecated in earlier Python releases, "
"and will be removed in Python 3.12."
msgstr ""
"Les API Python suivantes sont devenues obsolètes dans des versions "
"précédentes, et seront supprimées dans la version 3.12."
#: whatsnew/3.11.rst:1847
msgid ""
@ -3038,6 +3053,8 @@ msgstr "Retraits"
#: whatsnew/3.11.rst:1907
msgid "This section lists Python APIs that have been removed in Python 3.11."
msgstr ""
"Cette section liste les API Python qui ont été supprimées dans la version "
"3.11."
#: whatsnew/3.11.rst:1909
msgid ""
@ -3213,6 +3230,9 @@ msgid ""
"This section lists previously described changes and other bugfixes in the "
"Python API that may require changes to your Python code."
msgstr ""
"Cette section liste les modifications précédemment décrites et d'autres"
"corrections de bogues dans l'API Python qui pourraient nécessiter des"
"modification dans votre code."
#: whatsnew/3.11.rst:2016
msgid ""
@ -3314,7 +3334,7 @@ msgstr ""
#: whatsnew/3.11.rst:2087
msgid "Building Python now requires:"
msgstr ""
msgstr "Compiler Python nécessite à présent :"
#: whatsnew/3.11.rst:2089
msgid ""