forked from AFPy/python-docs-fr
Working on library/parser (#822)
This commit is contained in:
parent 229ae21cfd
commit fb57ef14b2
1 changed files with 50 additions and 3 deletions
| | @ -6,8 +6,8 @@ msgstr "" | |||
"Project-Id-Version: Python 3.6\n" | ||||
"Report-Msgid-Bugs-To: \n" | ||||
"POT-Creation-Date: 2018-12-21 09:48+0100\n" | ||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | ||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | ||||
"PO-Revision-Date: 2019-06-20 14:07+0200\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" | ||||
| | @ -16,7 +16,7 @@ msgstr "" | |||
| ||||
#: ../Doc/library/parser.rst:2 | ||||
msgid ":mod:`parser` --- Access Python parse trees" | ||||
msgstr "" | ||||
msgstr ":mod:`parser` — Accès aux arbres syntaxiques" | ||||
| ||||
#: ../Doc/library/parser.rst:21 | ||||
msgid "" | ||||
| | @ -28,6 +28,13 @@ msgid "" | |||
"in a manner identical to the code forming the application. It is also " | ||||
"faster." | ||||
msgstr "" | ||||
"Le module :mod:`parser` expose une interface à l'analyseur et au compilateur " | ||||
"de byte-code internes de Python. Son objectif principal est de permettre à " | ||||
"du code Python de modifier l'arbre syntaxique d'une expression Python puis " | ||||
"de la rendre exécutable. Cette approche est plus fiable que celle consistant " | ||||
"à manipuler des chaines de caractères, puisque l'analyse est faite avec le " | ||||
"même analyseur que celui utilisé pour le code de l'application. C'est aussi " | ||||
"plus rapide." | ||||
| ||||
#: ../Doc/library/parser.rst:30 | ||||
msgid "" | ||||
| | @ -35,6 +42,9 @@ msgid "" | |||
"Syntax Tree (AST) generation and compilation stage, using the :mod:`ast` " | ||||
"module." | ||||
msgstr "" | ||||
"À partir de Python 2.5, il est plus pratique de faire ces manipulations " | ||||
"entre la génération de l'AST (*Abstract Syntax Tree*) et la compilation, en " | ||||
"utilisant le module :mod:`ast`." | ||||
| ||||
#: ../Doc/library/parser.rst:34 | ||||
msgid "" | ||||
| | @ -43,6 +53,10 @@ msgid "" | |||
"editing the parse trees for Python code, but some examples of using the :mod:" | ||||
"`parser` module are presented." | ||||
msgstr "" | ||||
"Certaines particularités de ce module sont importantes à retenir pour en " | ||||
"faire un bon usage. Ce n'est pas un tutoriel sur la modification d'arbres " | ||||
"syntaxiques Python, mais certains exemples d'utilisation du module :mod:" | ||||
"`parser` sont présentés." | ||||
| ||||
#: ../Doc/library/parser.rst:39 | ||||
msgid "" | ||||
| | @ -64,6 +78,22 @@ msgid "" | |||
"from one version to another, whereas source code has always been forward-" | ||||
"compatible." | ||||
msgstr "" | ||||
"Le prérequis le plus important est une bonne compréhension de la grammaire " | ||||
"Python utilisée par l'analyseur interne dont la syntaxe est documentée " | ||||
"exhaustivement dans :ref:`reference-index`. L'analyseur lui-même est généré " | ||||
"à partir d'une grammaire spécifiée dans le fichier :file:`Grammar/Grammar` " | ||||
"dans la distribution standard de Python. Les arbres syntaxiques stockés dans " | ||||
"les objets ST créés par les fonctions :func:`expr` ou :func:`suite` de ce " | ||||
"module sont directement le résultat de l'analyseur interne, alors que les " | ||||
"objets ST créés par :func:`sequence2st` simulent ces structures. N'oubliez " | ||||
"pas qu'une séquence considérée « correcte » dans une version de Python peut " | ||||
"ne pas l'être dans une autre, la grammaire de Python pouvant évoluer. " | ||||
"Cependant, déplacer du code source d'une version de Python à une autre sous " | ||||
"forme textuelle donnera toujours des arbres syntaxique corrects, à " | ||||
"l'exception qu'une version plus ancienne de l'interpréteur ne pourra pas " | ||||
"analyser les constructions récentes du langage. Les arbres syntaxiques quant " | ||||
"à eux ne sont généralement pas compatibles d'une version à l'autre, alors " | ||||
"que le code source a toujours conservé la compatibilité ascendante." | ||||
| ||||
#: ../Doc/library/parser.rst:56 | ||||
msgid "" | ||||
| | @ -85,6 +115,23 @@ msgid "" | |||
"requested, the same token might be represented as ``(1, 'if', 12)``, where " | ||||
"the ``12`` represents the line number at which the terminal symbol was found." | ||||
msgstr "" | ||||
"Chaque élément des séquences renvoyé par les fonctions :func:`st2list` ou :" | ||||
"func:`st2tuple` possède une forme simple. Les séquences représentant des " | ||||
"éléments non terminaux de la grammaire ont toujours une taille supérieure à " | ||||
"un. Le premier élément est un nombre entier représentant un élément de la " | ||||
"grammaire. Le fichier d'en-têtes C :file:`Include/graminit.h` et le module " | ||||
"Python :mod:`symbol` attribuent des noms symboliques à ces nombres. Les " | ||||
"éléments suivants représentent les composants, tels que reconnus dans la " | ||||
"chaîne analysée, de cet élément grammatical : ces séquences ont toujours la " | ||||
"même forme que leur parent. Notez que les mots clés utilisés pour identifier " | ||||
"le type du nœud parent, tel que :keyword:`if` dans un :const:`if_stmt` sont " | ||||
"inclus dans l'arbre du nœud sans traitement particulier. Par exemple, le mot " | ||||
"clé :keyword:`!if` est représenté par la paire ``(1, 'if')``, où ``1`` est " | ||||
"la valeur numérique pour les lexèmes :const:`NAME`, ce qui inclut les noms " | ||||
"de variables et de fonctions définis par l'utilisateur. Dans sa forme " | ||||
"alternative, renvoyée lorsque le numéro de la ligne est requis, le même " | ||||
"lexème peut être représenté : ``(1, 'if', 12)``, où ``12`` est le numéro de " | ||||
"la ligne sur laquelle le dernier symbole se trouve." | ||||
| ||||
#: ../Doc/library/parser.rst:73 | ||||
msgid "" | ||||
| | | |||
Loading…
Add table
Add a link
Reference in a new issue