extending.po: 19%

This commit is contained in:
Julien Palard 2016-01-12 00:05:17 +01:00
parent 33c0772fbc
commit ba38dd4021

View File

@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: Python 3.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-12-22 00:55+0100\n"
"PO-Revision-Date: 2016-01-08 08:45+0100\n"
"PO-Revision-Date: 2016-01-12 00:03+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
"Language-Team: French <translation@afpy.fr>\n"
"Language: fr\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Vé 0.1.4\n"
"X-Generator: Poedit 1.8.6\n"
#: extending/building.rst:7
msgid "Building C and C++ Extensions"
@ -357,6 +357,17 @@ msgid ""
"which saves you the trouble of allocating memory space and loading the file "
"contents."
msgstr ""
"La fonction :c:func:`Py_SetProgramName` devrait être appelée avant :c:func:"
"`Py_Initialize` pour informer l'interpréteur des chemins vers les "
"bibliothèque Python. Ensuite, l'interpréteur Python est initialisé avec :c:"
"func:`Py_Initialize`, suivi par l'exécution d'un script Python, codé en dur, "
"qui affiche la date et l'heure. Ensuite, l'interpréteur est arrêté par un "
"appel à :c:func:`Py_Finalize`, puis le programme se termine. Dans un vrai "
"programme, vous voudrez peut-être obtenir le script Python d'une autre "
"source, peut-être d'une fonction d'un éditeur de texte, un fichier ou une "
"base de données. Obtenir le code Python à partir d'un fichier se fait plus "
"aisément avec :c:func:`PyRun_SimpleFile`,ce qui vous évite d'avoir à allouer "
"la mémoire et d'y charger le contenu du fichier."
#: extending/embedding.rst:90
msgid "Beyond Very High Level Embedding: An overview"
@ -546,6 +557,15 @@ msgid ""
"and write some glue code that gives Python access to those routines, just "
"like you would write a normal Python extension. For example::"
msgstr ""
"Jusqu'à présent, l'interpréteur Python intégré n'avait pas accès aux "
"fonctionnalités de l'application elle-même. L'API Python le permet en "
"étendant l'interpréteur intégré. Autrement dit, l'interpréteur intégré est "
"étendu avec des fonctions fournies par l'application. Bien que cela puisse "
"sembler complexe, ce n'est pas si dur. Il suffit d'oublier que l'application "
"démarre l'interpréteur Python, au lieu de cela, voyez l'application comme un "
"ensemble de fonctions, et rédigez un peu de code pour exposer ces fonctions "
"à Python, tout comme vous écririez une extension Python normale. Par "
"exemple ::"
#: extending/embedding.rst:241
msgid ""
@ -660,6 +680,15 @@ msgid ""
"extract the configuration values that you will want to combine together. "
"For example:"
msgstr ""
"Si cette procédure ne fonctionne pas pour vous (il n'est pas garanti "
"qu'ellefonctionne pour toutes les plateformes Unix, mais nous traiteront "
"volontiers les :ref: `rapports de bugs <reporting-bugs>`), vous devrez lire "
"ladocumentation de votre système sur la liaison dynamique (*dynamic "
"linking*) et / ouexaminer le :file:`Makefile` de Python (utilisez :func:"
"`sysconfig.get_makefile_filename` pour trouver son emplacement) et les "
"options de compilation. Dans ce cas, le module :mod:`sysconfig` est un outil "
"utile pour extraire automatiquement les valeurs de configuration que vous "
"voudrez combiner ensemble. Par example :"
#: extending/extending.rst:8
msgid "Extending Python with C or C++"
@ -685,6 +714,10 @@ msgid ""
"aspects of the Python run-time system. The Python API is incorporated in a "
"C source file by including the header ``\"Python.h\"``."
msgstr ""
"Pour gérer les extensions, l'API Python (*Application Programmer Interface*) "
"définit un ensemble de fonctions, macros et variables qui donnent accès à la "
"plupart des aspects du système d'exécution de Python. L'API Python est "
"incorporée dans un fichier source C en incluant l'en-tête ``\"Python.h\"``."
#: extending/extending.rst:20
msgid ""
@ -707,6 +740,17 @@ msgid ""
"with C code and are more portable between implementations of Python than "
"writing and compiling a C extension module."
msgstr ""
"L'interface d'extension C est spécifique à CPython, et les modules "
"d'extension ne fonctionne pas sur les autres implémentations de Python. Dans "
"de nombreux cas, il est possible d'éviter la rédaction des extensions en C "
"et ainsi préserver la portabilité vers d'autres implémentations. Par "
"exemple, si vous devez appeler une fonction de la bibliothèque C ou faire un "
"appel système, vous devriez envisager d'utiliser le module :mod:`ctypes` ou "
"d'utiliser la bibliothèque `CFFI <http://cffi.readthedocs.org>`_ plutôt que "
"d'écrire du code C sur mesure. Ces modules vous permettent d'écrire du code "
"Python s'interfaçant avec le code C et sont plus portables entre les "
"implémentations de Python que l'écriture et la compilation d'une d'extension "
"C."
#: extending/extending.rst:39
msgid "A Simple Example"
@ -720,6 +764,12 @@ msgid ""
"terminated character string as argument and returns an integer. We want "
"this function to be callable from Python as follows::"
msgstr ""
"Créons un module d'extension appelé ``spam`` (la nourriture préférée de fans "
"des Monty Python ...) et disons que nous voulons créer une interface Python "
"à la fonction de la bibliothèque C :c:func:`system`. [#] _ Cette fonction "
"prend une chaîne de caractères terminée par NULL comme argument et renvoie "
"un entier. Nous voulons que cette fonction soit appelable à partir de Python "
"comme suit ::"
#: extending/extending.rst:50
msgid ""
@ -728,16 +778,22 @@ msgid ""
"`spammodule.c`; if the module name is very long, like ``spammify``, the "
"module name can be just :file:`spammify.c`.)"
msgstr ""
"Commencez par créer un fichier :file:`spammodule.c`. (Historiquement, si un "
"module se nomme ``spam``, le fichier C contenant son implémentation est "
"appelé :file:`spammodule.c`. Si le nom du module est très long, comme "
"``spammify``, le nom du module peut être juste :file: `spammify.c`.)"
#: extending/extending.rst:55
msgid "The first line of our file can be::"
msgstr "La première ligne de notre fichier peut être:"
msgstr "La première ligne de notre fichier peut être ::"
#: extending/extending.rst:59
msgid ""
"which pulls in the Python API (you can add a comment describing the purpose "
"of the module and a copyright notice if you like)."
msgstr ""
"qui récupère l'API Python (vous pouvez ajouter un commentaire décrivant le "
"but du module et un avis de droit d'auteur si vous le souhaitez)."
#: extending/extending.rst:64
msgid ""
@ -745,6 +801,9 @@ msgid ""
"standard headers on some systems, you *must* include :file:`Python.h` before "
"any standard headers are included."
msgstr ""
"Python pouvant définir certaines définitions pré-processeur qui affectent "
"les têtes standard sur certains systèmes, vous *devez* inclure :file:`Python."
"h` avant les en-têtes standards."
#: extending/extending.rst:68
msgid ""
@ -756,6 +815,13 @@ msgid ""
"on your system, it declares the functions :c:func:`malloc`, :c:func:`free` "
"and :c:func:`realloc` directly."
msgstr ""
"Tous les symboles exposés par:file:`Python.h` sont préfixés de ``Py`` ou "
"``PY``, sauf ceux qui sont définis dans les en-têtes standard. Pour le "
"confort, et comme ils sont largement utilisés par l'interpréteur Python, ``"
"\"Python.h\"`` inclu lui même quelques d'en-têtes standard : ``<stdio.h>``, "
"``<string.h>``, ``<errno.h>`` et ``<stdlib.h>``. Si ce dernier n'existe pas "
"sur votre système, il déclare les fonctions :c:func:`malloc`, :c:func:`free` "
"et :c:func:`realloc` directement."
#: extending/extending.rst:76
msgid ""
@ -763,6 +829,10 @@ msgid ""
"called when the Python expression ``spam.system(string)`` is evaluated "
"(we'll see shortly how it ends up being called)::"
msgstr ""
"La prochaine chose que nous ajoutons à notre fichier de module est la "
"fonction C qui sera appelée lorsque l'expression Python ``spam."
"system(chaîne)`` sera évaluée (nous verrons bientôt comment elle finit par "
"être appelée) ::"
#: extending/extending.rst:92
msgid ""
@ -771,12 +841,18 @@ msgid ""
"C function. The C function always has two arguments, conventionally named "
"*self* and *args*."
msgstr ""
"Il ya une correspondance directe de la liste des arguments en Python (par "
"exemple, l'expression ``\"ls -l\"``) aux arguments passés à la fonction C. "
"La fonction C a toujours deux arguments, appelés par convention *self* et "
"*args*."
#: extending/extending.rst:97
msgid ""
"The *self* argument points to the module object for module-level functions; "
"for a method it would point to the object instance."
msgstr ""
"Pour les fonctions au niveau du module, l'argument *self* pointe sur l'objet "
"module, pour une méthode, il pointe sur l'instance de l'objet."
#: extending/extending.rst:100
msgid ""
@ -789,6 +865,15 @@ msgid ""
"determine the required types of the arguments as well as the types of the C "
"variables into which to store the converted values. More about this later."
msgstr ""
"L'argument *args* sera un pointeur vers un *tuple* Python contenant les "
"arguments. Chaque élément du *tuple* correspond à un argument dans la liste "
"des arguments de l'appel. Les arguments sont des objets Python --- afin d'en "
"faire quelque chose dans notre fonction C, nous devons les convertir en "
"valeurs C. La fonction :c:func:`PyArg_ParseTuple` de l'API Python vérifie "
"les types des arguments et les convertit en valeurs C. Elle utilise un "
"modèle sous forme de chaîne pour déterminer les types requis des arguments "
"ainsi que les types de variables C dans lequel stocker les valeurs "
"converties. Nous en verront plus, plus tard."
#: extending/extending.rst:109
msgid ""
@ -799,10 +884,16 @@ msgid ""
"the calling function can return *NULL* immediately (as we saw in the "
"example)."
msgstr ""
":c:func:`PyArg_ParseTuple` renvoie vrai (pas zéro) si tous les arguments ont "
"le bon type et que ses composants ont été stockés dans les variables dont "
"les adresses données. Il retourne faux (zéro) si une liste d'arguments "
"invalide a été passée. Dans ce dernier cas, elle soulève également une "
"exception appropriée de sorte que la fonction d'appel puisse retourner "
"*NULL* immédiatement (comme nous l'avons vu dans l'exemple)."
#: extending/extending.rst:119
msgid "Intermezzo: Errors and Exceptions"
msgstr ""
msgstr "Intermezzo: Les Erreurs et Exceptions"
#: extending/extending.rst:121
msgid ""