forked from AFPy/python-docs-fr
Compare commits
5 Commits
a6d9d36aac
...
adb2296845
Author | SHA1 | Date |
---|---|---|
Rémi Lapeyre | adb2296845 | |
NicolasGibaud | 92e43cb2cb | |
Rémi Lapeyre | fa5ab2955f | |
finevine | 4232990623 | |
finevine | f20eb52ad6 |
198
c-api/stable.po
198
c-api/stable.po
|
@ -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 l’API 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 ""
|
||||
"L’interface binaire de CPython (ABI) est entièrement compatible au sein "
|
||||
"d’une 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 l’API 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 l’API C de Python, existe "
|
||||
"depuis Python 3.2. Les extensions qui utilisent uniquement l’API restreinte "
|
||||
"peuvent être compilées une seule fois et fonctionner avec plusieurs versions "
|
||||
"de Python. Les objets faisant partie de l’API 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 l’ensemble des versions Python 3.x. L’ABI stable contient "
|
||||
"les symboles utilisés par l’API restreinte, mais pas seulement — par exemple "
|
||||
"les fonctions nécessaires pour supporter les versions précédentes de l’API "
|
||||
"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 *d’extensions*, mais l’API restreinte et "
|
||||
"l’ABI stable fonctionnent de la même manière pour tous les cas d’usages de "
|
||||
"l’API — 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 d’inclure ``Python.h`` pour n’inclure que l’API "
|
||||
"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 l’ensemble des éléments de l’API "
|
||||
"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 d’utiliser 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 l’API 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 l’ABI 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 l’ABI stable. L’utilisateur "
|
||||
"(ou ses outils d’administration) doit s’assurer que les extensions compilées "
|
||||
"avec une version donnée de l’API 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 l’ABI 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 n’utilisent pas le "
|
||||
"pré-processeur C."
|
||||
|
||||
#: c-api/stable.rst:77
|
||||
msgid "Limited API Scope and Performance"
|
||||
msgstr ""
|
||||
msgstr "Porté de l’API 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 ""
|
||||
"L’objectif de l’API restreinte est de permettre l’ensemble des opérations "
|
||||
"possibles avec l’API 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 l’est pas. Cette macro "
|
||||
"peut être plus rapide car elle dépend de détails d’implémentation spécifique "
|
||||
"à l’objet ``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`` n’est pas défini certaines fonctions de l’API 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 l’API restreinte avec une version spécifique de l’ABI. "
|
||||
"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 n’est pas disponible — par exemple pour une version alpha de "
|
||||
"Python."
|
||||
|
||||
#: c-api/stable.rst:101
|
||||
msgid "Limited API Caveats"
|
||||
msgstr ""
|
||||
msgstr "Inconvénients de l’API 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`` *n’est pas* une garantie absolue que le "
|
||||
"code est conforme à l’API restreinte ou à l’ABI stable. ``Py_LIMITED_API`` ne "
|
||||
"concerne que la définition des objets, mais une API inclut aussi d’autres "
|
||||
"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 l’appel "
|
||||
"d’une 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 "
|
||||
"d’utiliser le comportement par défaut, mais Python 3.8 essayera d’accéder à "
|
||||
"l’objet 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 s’il ne font pas partie de l’API "
|
||||
"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 *l’ensemble "
|
||||
"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 qu’elles fassent bien partie de l’API 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 l’API restreinte n’est pas forcément stable : compiler avec "
|
||||
"Python 3.8 en définissant ``Py_LIMITED_API`` garanti que l’extension "
|
||||
"fonctionnera avec Python 3.12, mais pas qu’elle pourra *être compilée* avec "
|
||||
"Python 3.12. En particulier certaines parties de l’API restreinte peuvent être "
|
||||
"dépréciées et retirées tant que l’ABI stable n’est 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 l’ABI ne dépend pas que de Python mais aussi du compilateur "
|
||||
"utilisé, des bibliothèques systèmes et des options du compilateur. "
|
||||
"L’ensemble de ces détails correspondent à ce que l’ABI stable appelle une "
|
||||
"« plateforme ». Ils dépendent généralement du système d’exploitation et de "
|
||||
"l’architecture 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 s’assurer que toutes les versions de "
|
||||
"Python pour une plateforme donnée sont compilées de manière à ne pas rompre "
|
||||
"la compatibilité de l’ABI stable. C’est 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 l’API 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 l’API restreinte inclut les éléments suivants :"
|
||||
|
|
|
@ -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 d’envoyer des données binaires sur un "
|
||||
"connecteur. Le gros problème est que toutes les machines n’utilisent 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 l’ordre d’octets 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 l’ordre du "
|
||||
"réseau est l’ordre de l’hôte, ceux-ci ne font rien, mais lorsque la machine "
|
||||
"utilise l’ordre d’octets 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 l’ordre du réseau est l’ordre de l’hô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. "
|
||||
"C’est parce qu’un 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…"
|
||||
"C’est 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. C’est une "
|
||||
"affaire de choix."
|
||||
|
||||
#: howto/sockets.rst:277
|
||||
msgid "Disconnecting"
|
||||
|
|
|
@ -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 qu’un :func:`tee` a été créé, l’original de *iterable* ne doit être "
|
||||
"utilisé nulle part ailleurs ; sinon *iterable* pourrait être avancé sans que "
|
||||
"les objets *tee* n’en 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 "
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue