10000 Working on library/parser by JulienPalard · Pull Request #822 · python/python-docs-fr · GitHub
[go: up one dir, main page]

Skip to content

Working on library/parser #822

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jun 20, 2019
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 50 additions & 3 deletions library/parser.po
Original file line number Diff line number Diff line change
Expand Up @@ -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-15 15:37+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"
Expand All @@ -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 ""
Expand All @@ -28,13 +28,23 @@ 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 utilisé pour le code de l'application. C'est aussi plus "
"rapide."

#: ../Doc/library/parser.rst:30
msgid ""
"From Python 2.5 onward, it's much more convenient to cut in at the Abstract "
"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 ""
Expand All @@ -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 certaines exemples d'utilisation du module :mod:"
"`parser` sont présentés."

#: ../Doc/library/parser.rst:39
msgid ""
Expand All @@ -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 le parseur interne dont la syntaxe est documentée "
"exhaustivement dans :ref:`reference-index`. L'analyseur lui-même est crée à "
"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ées par les fonctions :func:`expr` ou :func:`suite` de ce "
"module sont directement le résultat du parseur interne, alors que les objets "
"ST crées 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 évoluant. "
"Cependant, déplacer du code 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 à toujours conservé la compatibilité ascendante."

#: ../Doc/library/parser.rst:56
msgid ""
Expand All @@ -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 renv 10076 oyé par les fonctions :func:`st2list` ou :"
"func:`st2tuple` ont 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. Ces nombres entiers sont nommés dans le fichier :file:`Include/"
"graminit.h` et dans le module Python :mod:`symbol`. Les éléments suivants "
"représentent les composants, reconnus dans la chaîne donnée, de cet élément "
"gramatical : 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 inclu 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 jetons :const:`NAME`, jetons incluants 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 meme jeton peut être "
"représenté : ``(1, 'if', 12)``, où ``12`` est le numéro de la ligne sur "
"laquel le dernier symbole se trouve."

#: ../Doc/library/parser.rst:73
msgid ""
Expand Down
0