forked from AFPy/python-docs-fr
Tutorial Modules Review.
This commit is contained in:
parent
d71a11b4bb
commit
3c33cb06b2
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: Python 3.6\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-05-27 19:40+0200\n"
|
||||
"PO-Revision-Date: 2017-05-16 22:18+0200\n"
|
||||
"PO-Revision-Date: 2018-02-07 13:42+0100\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: \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 1.8.11\n"
|
||||
"X-Generator: Poedit 2.0.2\n"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:5
|
||||
msgid "Modules"
|
||||
|
@ -34,12 +34,12 @@ msgid ""
|
|||
msgstr ""
|
||||
"Lorsque vous quittez et entrez à nouveau dans l'interpréteur Python, tout ce "
|
||||
"que vous avez déclaré dans la session précédente est perdu. Afin de rédiger "
|
||||
"des programmes plus longs, vous devriez utiliser un éditeur de texte, "
|
||||
"préparer votre code dans un fichier, et exécuter Python avec ce fichier en "
|
||||
"paramètre. Ça s'appelle créé un *script*. Lorsque votre programme deviendra "
|
||||
"plus long encore, vous pourrez séparer votre code dans plusieurs fichiers, "
|
||||
"et vous trouverez aussi pratique de réutiliser des fonctions écrites pour un "
|
||||
"programme dans un autre sans avoir à les copier."
|
||||
"des programmes plus longs, vous devez utiliser un éditeur de texte, préparer "
|
||||
"votre code dans un fichier et exécuter Python avec ce fichier en paramètre. "
|
||||
"Cela s'appelle créer un *script*. Lorsque votre programme grandit, vous "
|
||||
"pouvez séparer votre code dans plusieurs fichiers. Ainsi, il vous est facile "
|
||||
"de réutiliser des fonctions écrites pour un programme dans un autre sans "
|
||||
"avoir à les copier."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:16
|
||||
msgid ""
|
||||
|
@ -49,12 +49,12 @@ msgid ""
|
|||
"modules or into the *main* module (the collection of variables that you have "
|
||||
"access to in a script executed at the top level and in calculator mode)."
|
||||
msgstr ""
|
||||
"Pour gérer ça, Python à un moyen de rédiger des définitions dans un fichier "
|
||||
"et les utiliser dans un script ou une session interactive. Un tel fichier "
|
||||
"est appelé un *module*, et les définitions d'un module peuvent être "
|
||||
"Pour gérer cela, Python vous permet de placer des définitions dans un "
|
||||
"fichier et de les utiliser dans un script ou une session interactive. Un tel "
|
||||
"fichier est appelé un *module* et les définitions d'un module peuvent être "
|
||||
"importées dans un autre module ou dans le module *main* (qui est le module "
|
||||
"qui contiens vos variables et définitions lors de l'exécution d'un script ou "
|
||||
"en mode interactif)."
|
||||
"qui contient vos variables et définitions lors de l'exécution d'un script au "
|
||||
"niveau le plus haut ou en mode interactif)."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:22
|
||||
msgid ""
|
||||
|
@ -65,19 +65,18 @@ msgid ""
|
|||
"to create a file called :file:`fibo.py` in the current directory with the "
|
||||
"following contents::"
|
||||
msgstr ""
|
||||
"Un module est un fichier contenant des définitions et des instructions. Son "
|
||||
"nom de fichier est le même que son nom, suffixé de :file:`.py`. À "
|
||||
"l'intérieur d'un module, son propre nom est accessible dans la variable "
|
||||
"``__name__``. Par exemple, prenez votre éditeur favori et créez un fichier :"
|
||||
"file:`fibo.py` contenant : ::"
|
||||
"Un module est un fichier contenant des définitions et des instructions. Son "
|
||||
"nom de fichier est le nom du module suffixé de :file:`.py`. À l'intérieur "
|
||||
"d'un module, son propre nom est accessible par la variable ``__name__``. Par "
|
||||
"exemple, prenez votre éditeur favori et créez un fichier :file:`fibo.py` "
|
||||
"dans le répertoire courant qui contient : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:45
|
||||
msgid ""
|
||||
"Now enter the Python interpreter and import this module with the following "
|
||||
"command::"
|
||||
msgstr ""
|
||||
"Maintenant, en étant dans le même dossier, ouvrez un interpréteur et "
|
||||
"importez le module en tapant : ::"
|
||||
"Maintenant, ouvrez un interpréteur et importez le module en tapant : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:50
|
||||
msgid ""
|
||||
|
@ -86,19 +85,19 @@ msgid ""
|
|||
"Using the module name you can access the functions::"
|
||||
msgstr ""
|
||||
"Cela n'importe pas les noms des fonctions définies dans ``fibo`` directement "
|
||||
"dans la table des symboles courante, mais y ajoute simplement ``fibo``. Vous "
|
||||
"pouvez donc appeler les fonctions via le nom du module : ::"
|
||||
"dans la table des symboles courants mais y ajoute simplement ``fibo``. Vous "
|
||||
"pouvez donc appeler les fonctions *via* le nom du module : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:61
|
||||
msgid ""
|
||||
"If you intend to use a function often you can assign it to a local name::"
|
||||
msgstr ""
|
||||
"Si vous avez l'intention d'utiliser une fonction souvent, il est possible de "
|
||||
"Si vous avez l'intention d'utiliser souvent une fonction, il est possible de "
|
||||
"lui assigner un nom local : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:71
|
||||
msgid "More on Modules"
|
||||
msgstr "Les modules en détails"
|
||||
msgstr "Les modules en détail"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:73
|
||||
msgid ""
|
||||
|
@ -108,10 +107,10 @@ msgid ""
|
|||
"[#]_ (They are also run if the file is executed as a script.)"
|
||||
msgstr ""
|
||||
"Un module peut contenir aussi bien des instructions que des déclarations de "
|
||||
"fonctions. Ces instructions permettent d'initialiser le module, et ne sont "
|
||||
"donc exécutées que la première fois que le nom d'un module est trouvé dans "
|
||||
"un ``import``. [#]_ (Elles sont aussi exécutées lorsque le fichier est "
|
||||
"exécuté en temps que script.)"
|
||||
"fonctions. Ces instructions permettent d'initialiser le module. Elles ne "
|
||||
"sont exécutées que la *première* fois que le nom d'un module est trouvé dans "
|
||||
"un ``import`` [#]_ (elles sont aussi exécutées lorsque le fichier est "
|
||||
"exécuté en tant que script)."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:78
|
||||
msgid ""
|
||||
|
@ -122,13 +121,13 @@ msgid ""
|
|||
"know what you are doing you can touch a module's global variables with the "
|
||||
"same notation used to refer to its functions, ``modname.itemname``."
|
||||
msgstr ""
|
||||
"Chaque module a sa propre table de symboles, utilisée comme table de "
|
||||
"Chaque module possède sa propre table de symboles, utilisée comme table de "
|
||||
"symboles globaux par toutes les fonctions définies par le module. Ainsi "
|
||||
"l'auteur d'un module peut utiliser des variables globales dans un module "
|
||||
"sans se soucier de collisions de noms avec des globales définies par "
|
||||
"l'utilisateur du module. D'un autre côté, si vous savez ce que vous faites, "
|
||||
"sans se soucier de collisions de noms avec des variables globales définies "
|
||||
"par l'utilisateur du module. Cependant, si vous savez ce que vous faites, "
|
||||
"vous pouvez modifier une variable globale d'un module avec la même notation "
|
||||
"que pour accéder aux fonctions : ``modname.itemname``."
|
||||
"que pour accéder aux fonctions : ``nommodule.nomelement``."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:85
|
||||
msgid ""
|
||||
|
@ -137,9 +136,9 @@ msgid ""
|
|||
"for that matter). The imported module names are placed in the importing "
|
||||
"module's global symbol table."
|
||||
msgstr ""
|
||||
"Des modules peuvent importer d'autres modules. Il est habituel mais pas "
|
||||
"obligatoire de ranger tous les :keyword:`import` au début du module (ou du "
|
||||
"script). Les noms des module importés sont insérés dans la table des "
|
||||
"Des modules peuvent importer d'autres modules. Il est courant, mais pas "
|
||||
"obligatoire, de ranger tous les :keyword:`import` au début du module (ou du "
|
||||
"script). Les noms des modules importés sont insérés dans la table des "
|
||||
"symboles globaux du module qui importe."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:90
|
||||
|
@ -148,7 +147,7 @@ msgid ""
|
|||
"from a module directly into the importing module's symbol table. For "
|
||||
"example::"
|
||||
msgstr ""
|
||||
"Il existe une variation à l'instruction :keyword:`import` qui importe les "
|
||||
"Il existe une variante de l'instruction :keyword:`import` qui importe les "
|
||||
"noms d'un module directement dans la table de symboles du module qui "
|
||||
"l'importe, par exemple : ::"
|
||||
|
||||
|
@ -158,13 +157,13 @@ msgid ""
|
|||
"the local symbol table (so in the example, ``fibo`` is not defined)."
|
||||
msgstr ""
|
||||
"Cela n'insère pas le nom du module depuis lequel les définitions sont "
|
||||
"récupérées dans la table locale de symboles (dans cet exemple, ``fibo`` "
|
||||
"récupérées dans la table des symboles locaux (dans cet exemple, ``fibo`` "
|
||||
"n'est pas défini)."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:100
|
||||
msgid "There is even a variant to import all names that a module defines::"
|
||||
msgstr ""
|
||||
"Il existe même une variation permettant d'importer tous les noms qu'un "
|
||||
"Il existe même une variante permettant d'importer tous les noms qu'un "
|
||||
"module définit : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:106
|
||||
|
@ -177,7 +176,7 @@ msgstr ""
|
|||
"Tous les noms ne commençant pas par un tiret bas (``_``) sont importés. Dans "
|
||||
"la grande majorité des cas, les développeurs n'utilisent pas cette syntaxe "
|
||||
"puisqu'en important un ensemble indéfini de noms, des noms déjà définis "
|
||||
"peuvent se retrouver cachés."
|
||||
"peuvent se retrouver masqués."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:111
|
||||
msgid ""
|
||||
|
@ -186,9 +185,8 @@ msgid ""
|
|||
"However, it is okay to use it to save typing in interactive sessions."
|
||||
msgstr ""
|
||||
"Notez qu'en général, importer ``*`` d'un module ou d'un paquet est "
|
||||
"déconseillé, en général ça engendre du code difficilement lisible. "
|
||||
"Cependant, c'est acceptable de l'utiliser pour gagner quelques secondes en "
|
||||
"mode interactif."
|
||||
"déconseillé. Souvent, le code devient difficilement lisible. Son utilisation "
|
||||
"en mode interactif est acceptée pour gagner quelques secondes."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:117
|
||||
msgid ""
|
||||
|
@ -198,11 +196,12 @@ msgid ""
|
|||
"use :func:`importlib.reload`, e.g. ``import importlib; importlib."
|
||||
"reload(modulename)``."
|
||||
msgstr ""
|
||||
"Pour des raisons de performance, chaque module n'est importé qu'une fois par "
|
||||
"pour des raisons de performance, chaque module n'est importé qu'une fois par "
|
||||
"session. Si vous changez le code d'un module vous devez donc redémarrer "
|
||||
"l'interpréteur afin d'en voir l'impact. Ou le re-importer explicitement en "
|
||||
"utilisant :func:`importlib.reload`, par exemple : ``import importlib; "
|
||||
"importlib.reload(modulename)``."
|
||||
"l'interpréteur afin d'en voir l'impact ; ou, s'il s'agit simplement d'un "
|
||||
"seul module que vous voulez tester en mode interactif, vous pouvez le "
|
||||
"ré-importer explicitement en utilisant :func:`importlib.reload`, par "
|
||||
"exemple : ``import importlib; importlib.reload(nommodule)``."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:127
|
||||
msgid "Executing modules as scripts"
|
||||
|
@ -218,8 +217,8 @@ msgid ""
|
|||
"with the ``__name__`` set to ``\"__main__\"``. That means that by adding "
|
||||
"this code at the end of your module::"
|
||||
msgstr ""
|
||||
"le code du module sera exécuté comme si vous l'aviez importé, mais son "
|
||||
"``__name__`` vaudra ``\"__main__\"``. Donc en ajoutant ces lignes à la fin "
|
||||
"le code du module est exécuté comme si vous l'aviez importé mais son "
|
||||
"``__name__`` vaut ``\"__main__\"``. Donc, en ajoutant ces lignes à la fin "
|
||||
"du module : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:141
|
||||
|
@ -229,7 +228,7 @@ msgid ""
|
|||
"executed as the \"main\" file:"
|
||||
msgstr ""
|
||||
"vous pouvez rendre le fichier utilisable comme script aussi bien que comme "
|
||||
"module importable, car le code qui parse la ligne de commande n'est lancé "
|
||||
"module importable, car le code qui analyse la ligne de commande n'est lancé "
|
||||
"que si le module est exécuté comme fichier « main » :"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:150
|
||||
|
@ -243,8 +242,8 @@ msgid ""
|
|||
"test suite)."
|
||||
msgstr ""
|
||||
"C'est typiquement utilisé soit pour proposer une interface utilisateur pour "
|
||||
"un module, soit pour lancer les tests sur le module (où exécuter le module "
|
||||
"en temps que script lance les tests)."
|
||||
"un module, soit pour lancer les tests sur le module (exécuter le module en "
|
||||
"tant que script lance les tests)."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:162
|
||||
msgid "The Module Search Path"
|
||||
|
@ -258,18 +257,18 @@ msgid ""
|
|||
"data:`sys.path`. :data:`sys.path` is initialized from these locations:"
|
||||
msgstr ""
|
||||
"Lorsqu'un module nommé par exemple :mod:`spam` est importé, il est d'abord "
|
||||
"recherché parmis les modules natifs, puis s'il n'y est pas trouvé, "
|
||||
"l'interpréteur va chercher un fichier nommé :file:`spam.py` dans une liste "
|
||||
"de dossiers donnés par la variable :data:`sys.path`, :data:`sys.path` est "
|
||||
"initialisée par défaut à : ::"
|
||||
"recherché parmi les modules natifs puis, s'il n'est pas trouvé, "
|
||||
"l'interpréteur cherche un fichier nommé :file:`spam.py` dans une liste de "
|
||||
"dossiers donnée par la variable :data:`sys.path`. Par défaut, "
|
||||
":data:`sys.path` est initialisée à : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:171
|
||||
msgid ""
|
||||
"The directory containing the input script (or the current directory when no "
|
||||
"file is specified)."
|
||||
msgstr ""
|
||||
"Le dossier contenant le script courant (ou le dossier courant si aucun "
|
||||
"script n'est donné)."
|
||||
"le dossier contenant le script courant (ou le dossier courant si aucun "
|
||||
"script n'est donné) ;"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:173
|
||||
msgid ""
|
||||
|
@ -277,11 +276,11 @@ msgid ""
|
|||
"shell variable :envvar:`PATH`)."
|
||||
msgstr ""
|
||||
":envvar:`PYTHONPATH` (une liste de dossiers, utilisant la même syntaxe que "
|
||||
"la variable shell :envvar:`PATH`)."
|
||||
"la variable shell :envvar:`PATH`) ;"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:175
|
||||
msgid "The installation-dependent default."
|
||||
msgstr "La valeur par défaut, dépendante de l'installation."
|
||||
msgstr "la valeur par défaut, dépendante de l'installation."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:178
|
||||
msgid ""
|
||||
|
@ -289,10 +288,10 @@ msgid ""
|
|||
"script is calculated after the symlink is followed. In other words the "
|
||||
"directory containing the symlink is **not** added to the module search path."
|
||||
msgstr ""
|
||||
"Sur les systèmes qui gèrent les liens symboliques, le dossier contenant le "
|
||||
"script courant est résolu après avoir suivi le lien sublimer du script. "
|
||||
"Autrement dit le dossier contenant le lien symbolique n'est **pas** ajouté "
|
||||
"au dossiers de recherche de modules."
|
||||
"sur les systèmes qui gèrent les liens symboliques, le dossier contenant le "
|
||||
"script courant est résolu après avoir suivi le lien symbolique du script. "
|
||||
"Autrement dit, le dossier contenant le lien symbolique n'est **pas** ajouté "
|
||||
"aux dossiers de recherche de modules."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:182
|
||||
msgid ""
|
||||
|
@ -305,9 +304,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Après leur initialisation, les programmes Python peuvent modifier leur :data:"
|
||||
"`sys.path`. Le dossier contenant le script courant est placé au début de la "
|
||||
"liste des dossiers à rechercher, avant les dossiers de bibliothèques, Cela "
|
||||
"liste des dossiers à rechercher, avant les dossiers de bibliothèques. Cela "
|
||||
"signifie qu'un module dans ce dossier, ayant le même nom qu'un module, sera "
|
||||
"chargé à sa place. C'est une erreur typique, à moins que ce soit voulu. "
|
||||
"chargé à sa place. C'est une erreur typique, à moins que ce ne soit voulu. "
|
||||
"Voir :ref:`tut-standardmodules` pour plus d'informations."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:193
|
||||
|
@ -325,12 +324,12 @@ msgid ""
|
|||
"different releases and different versions of Python to coexist."
|
||||
msgstr ""
|
||||
"Pour accélérer le chargement des modules, Python cache une version compilée "
|
||||
"de chaque module, dans un fichier nommé :file:`module(version).pyc` (ou "
|
||||
"de chaque module dans un fichier nommé :file:`module(version).pyc` (ou "
|
||||
"*version* représente le format du fichier compilé, typiquement une version "
|
||||
"de Python) dans le dossier ``__pycache__``. Par exemple avec CPython 3.3 la "
|
||||
"version compilée de spam.py serait ``__pycache__/spam.cpython-33.pyc``. "
|
||||
"Cette règle de nommage permet à des versions compilées par des versions de "
|
||||
"Python différentes de coexister."
|
||||
"de Python) dans le dossier ``__pycache__``. Par exemple, avec CPython 3.3, "
|
||||
"la version compilée de spam.py serait ``__pycache__/spam.cpython-33.pyc``. "
|
||||
"Cette règle de nommage permet à des versions compilées par des versions "
|
||||
"différentes de Python de coexister."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:203
|
||||
msgid ""
|
||||
|
@ -342,9 +341,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Python compare les dates de modification du fichier source et de sa version "
|
||||
"compilée pour voir si le module doit être recompilé. Ce processus est "
|
||||
"entièrement automatique, et les versions compilées sont indépendantes de la "
|
||||
"plateforme, et peuvent donc être partagées entre des systèmes d'architecture "
|
||||
"différente."
|
||||
"entièrement automatique. Par ailleurs, les versions compilées sont "
|
||||
"indépendantes de la plateforme et peuvent donc être partagées entre des "
|
||||
"systèmes d'architectures différentes."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:208
|
||||
msgid ""
|
||||
|
@ -355,13 +354,12 @@ msgid ""
|
|||
"distribution, the compiled module must be in the source directory, and there "
|
||||
"must not be a source module."
|
||||
msgstr ""
|
||||
"Il existe deux circonstances pour lesquelles Python ne vérifie pas le "
|
||||
"cache : Le premier cas lorsque le module est donné par la ligne de commande "
|
||||
"(cas où le module est toujours recompilé, sans même cacher sa version "
|
||||
"compilée), le second cas est lorsque le module n'a pas de source dans ce cas "
|
||||
"Python n'essaye pas de charger la version compilée. Pour gérer un module "
|
||||
"sans source (seulement compilé) le module compilé doit être dans le dossier "
|
||||
"source et sa source ne doit pas être présente."
|
||||
"Il existe deux situations où Python ne vérifie pas le cache : le premier cas "
|
||||
"est lorsque le module est donné par la ligne de commande (cas où le module "
|
||||
"est toujours recompilé, sans même cacher sa version compilée) ; le second "
|
||||
"cas est lorsque le module n'a pas de source. Pour gérer un module sans "
|
||||
"source (où seule la version compilée est fournie), le module compilé doit se "
|
||||
"trouver dans le dossier source et sa source ne doit pas être présente."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:215
|
||||
msgid "Some tips for experts:"
|
||||
|
@ -377,14 +375,14 @@ msgid ""
|
|||
"have an ``opt-`` tag and are usually smaller. Future releases may change "
|
||||
"the effects of optimization."
|
||||
msgstr ""
|
||||
"Vous pouvez utiliser les options :option:`-O` ou :option:`-OO` lors de "
|
||||
"vous pouvez utiliser les options :option:`-O` ou :option:`-OO` lors de "
|
||||
"l'appel à Python pour réduire la taille des modules compilés. L'option ``-"
|
||||
"O`` supprime les instructions ``assert``, et l'option ``-OO`` supprime aussi "
|
||||
"O`` supprime les instructions ``assert`` et l'option ``-OO`` supprime aussi "
|
||||
"les documentations ``__doc__``. Cependant, puisque certains programmes ont "
|
||||
"besoin de ces ``__doc__``, vous ne devriez utiliser ``-OO`` que si vous "
|
||||
"savez ce que vous faites. Les modules \"optimisés\" sont marqués d'un ``opt-"
|
||||
"`` et sont généralement plus petits. Les versions futures de Python "
|
||||
"pourraient changer les effets de l'optimisation."
|
||||
"pourraient changer les effets de l'optimisation ;"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:225
|
||||
msgid ""
|
||||
|
@ -392,25 +390,24 @@ msgid ""
|
|||
"when it is read from a ``.py`` file; the only thing that's faster about ``."
|
||||
"pyc`` files is the speed with which they are loaded."
|
||||
msgstr ""
|
||||
"Un programme ne s'exécute pas plus vite lorsqu'il est lu depuis un ``.pyc``, "
|
||||
"il est cependant chargé plus vite puisque le ``.pyc`` est plut petit que le "
|
||||
"``.py``."
|
||||
"un programme ne s'exécute pas plus vite lorsqu'il est lu depuis un ``.pyc``, "
|
||||
"il est juste chargé plus vite ;"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:229
|
||||
msgid ""
|
||||
"The module :mod:`compileall` can create .pyc files for all modules in a "
|
||||
"directory."
|
||||
msgstr ""
|
||||
"Le module :mod:`compileall` peut créer des fichiers ``.pyc`` pour tous les "
|
||||
"modules d'un dossier."
|
||||
"le module :mod:`compileall` peut créer des fichiers ``.pyc`` pour tous les "
|
||||
"modules d'un dossier ;"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:232
|
||||
msgid ""
|
||||
"There is more detail on this process, including a flow chart of the "
|
||||
"decisions, in PEP 3147."
|
||||
msgstr ""
|
||||
"Voilà plus de détails sur le processus, ainsi qu'un organigramme des "
|
||||
"decisions, dans la PEP 3147."
|
||||
"vous trouvez plus de détails sur ce processus, ainsi qu'un organigramme des "
|
||||
"décisions, dans la PEP 3147."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:239
|
||||
msgid "Standard Modules"
|
||||
|
@ -433,13 +430,13 @@ msgstr ""
|
|||
"Python est accompagné d'une bibliothèque de modules standards, décrits dans "
|
||||
"la documentation de la Bibliothèque Python, plus loin. Certains modules sont "
|
||||
"intégrés dans l'interpréteur, ils exposent des outils qui ne font pas partie "
|
||||
"du langage, mais qui font tout de même partie de l'interpréteur, soit pour "
|
||||
"le côté pratique, soit pour exposer des outils essentiels tels que l'accès "
|
||||
"aux appels systems. La composition de ces modules est configurable à la "
|
||||
"compilation, et dépend aussi de la plateforme ciblée. Par exemple, le "
|
||||
"module :mod:`winreg` n'est proposé que sur les systèmes Windows. Un module "
|
||||
"mérite une attention particulière, le module :mod:`sys`, qui est présent "
|
||||
"dans tous les interpréteurs Python. Les variables ``sys.ps1`` et ``sys.ps2`` "
|
||||
"du langage mais qui font tout de même partie de l'interpréteur, soit pour le "
|
||||
"côté pratique, soit pour exposer des outils essentiels tels que l'accès aux "
|
||||
"appels système. La composition de ces modules est configurable à la "
|
||||
"compilation et dépend aussi de la plateforme cible. Par exemple, le module :"
|
||||
"mod:`winreg` n'est proposé que sur les systèmes Windows. Un module mérite "
|
||||
"une attention particulière, le module :mod:`sys`, qui est présent dans tous "
|
||||
"les interpréteurs Python. Les variables ``sys.ps1`` et ``sys.ps2`` "
|
||||
"définissent les chaînes d'invites principales et secondaires : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:266
|
||||
|
@ -459,11 +456,11 @@ msgid ""
|
|||
"standard list operations::"
|
||||
msgstr ""
|
||||
"La variable ``sys.path`` est une liste de chaînes qui détermine les chemins "
|
||||
"de recherche de modules pour l'interpréteur. Il est initialisé à un chemin "
|
||||
"par défaut pris de la variable d'environnement :envvar:`PYTHONPATH`, ou "
|
||||
"d'une valeur par défaut interne si :envvar:`PYTHONPATH` n'est pas définie. "
|
||||
"``sys.path`` est modifiable en utilisant les opérations habituelles des "
|
||||
"listes : ::"
|
||||
"de recherche de modules pour l'interpréteur. Elle est initialisée à un "
|
||||
"chemin par défaut pris de la variable d'environnement :envvar:`PYTHONPATH` "
|
||||
"ou d'une valeur par défaut interne si :envvar:`PYTHONPATH` n'est pas "
|
||||
"définie. ``sys.path`` est modifiable en utilisant les opérations habituelles "
|
||||
"des listes : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:281
|
||||
msgid "The :func:`dir` Function"
|
||||
|
@ -475,19 +472,20 @@ msgid ""
|
|||
"defines. It returns a sorted list of strings::"
|
||||
msgstr ""
|
||||
"La fonction interne :func:`dir` est utilisée pour trouver quels noms sont "
|
||||
"définies par un module. Elle donne une liste triée de chaînes :;"
|
||||
"définis par un module. Elle donne une liste de chaînes classées par ordre "
|
||||
"lexicographique : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:308
|
||||
msgid ""
|
||||
"Without arguments, :func:`dir` lists the names you have defined currently::"
|
||||
msgstr "Sans paramètres, :func:`dir` listes les noms actuellement définis : ::"
|
||||
msgstr "Sans paramètre, :func:`dir` liste les noms actuellement définis : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:316
|
||||
msgid ""
|
||||
"Note that it lists all types of names: variables, modules, functions, etc."
|
||||
msgstr ""
|
||||
"Notez qu'elle liste tout types de noms : les variables, fonctions, modules, "
|
||||
"etc."
|
||||
"Notez qu'elle liste tous les types de noms : les variables, fonctions, "
|
||||
"modules, etc."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:320
|
||||
msgid ""
|
||||
|
@ -495,8 +493,9 @@ msgid ""
|
|||
"you want a list of those, they are defined in the standard module :mod:"
|
||||
"`builtins`::"
|
||||
msgstr ""
|
||||
":func:`dir` ne liste ni les fonctions primitives ni les variables internes. "
|
||||
"Si vous voulez les lister, ils sont définis dans le module :mod:`builtins` ::"
|
||||
":func:`dir` ne liste ni les fonctions primitives, ni les variables internes. "
|
||||
"Si vous voulez les lister, elles sont définies dans le module "
|
||||
":mod:`builtins` : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:359
|
||||
msgid "Packages"
|
||||
|
@ -513,7 +512,7 @@ msgid ""
|
|||
"from having to worry about each other's module names."
|
||||
msgstr ""
|
||||
"Les paquets sont un moyen de structurer les espaces de noms des modules "
|
||||
"Python en utilisant une notations \"pointée\". Par exemple, le nom de "
|
||||
"Python en utilisant une notation \"pointée\". Par exemple, le nom de "
|
||||
"module :mod:`A.B` désigne le sous-module ``B`` du paquet ``A``. De la même "
|
||||
"manière que l'utilisation des modules évite aux auteurs de différents "
|
||||
"modules d'avoir à se soucier des noms de variables globales des autres, "
|
||||
|
@ -535,26 +534,26 @@ msgid ""
|
|||
"operations. Here's a possible structure for your package (expressed in "
|
||||
"terms of a hierarchical filesystem):"
|
||||
msgstr ""
|
||||
"Imaginez que vous voulez constuire une collections de modules (un \"paquet"
|
||||
"\") pour gérer uniformément les fichiers contenant du son et des données "
|
||||
"Imaginez que vous voulez construire un ensemble de modules (un \"paquet\") "
|
||||
"pour gérer uniformément les fichiers contenant du son et des données "
|
||||
"sonores. Il existe un grand nombre de formats de fichiers pour stocker du "
|
||||
"son (généralement repérés par leur extension, par exemple :file:`.wav`, :"
|
||||
"file:`.aiff`, :file:`.au`), vous aurez donc envie de créer et maintenir un "
|
||||
"son (généralement identifiés par leur extension, par exemple :file:`.wav`, :"
|
||||
"file:`.aiff`, :file:`.au`), vous avez donc besoin de créer et maintenir un "
|
||||
"nombre croissant de modules pour gérer la conversion entre tous ces formats. "
|
||||
"Il existe aussi tout une floppée d'opérations que vous voudriez pouvoir "
|
||||
"faire sur du son (mixer, ajouter de l'écho, égaliser, ajouter un effet "
|
||||
"stéréo articifiel), donc, en plus des modules de conversion, vous allez "
|
||||
"écrire un nombre illimité de modules permettant d'effectuer ces opérations. "
|
||||
"Voici une structure possible pour votre paquet (exprimée comme un système de "
|
||||
"fichier, hierarchiquement) :"
|
||||
"Vous voulez aussi pouvoir appliquer un certain nombre d'opérations sur ces "
|
||||
"sons : mixer, ajouter de l'écho, égaliser, ajouter un effet stéréo "
|
||||
"artificiel, etc. Donc, en plus des modules de conversion, vous allez écrire "
|
||||
"une myriade de modules permettant d'effectuer ces opérations. Voici une "
|
||||
"structure possible pour votre paquet (exprimée sous la forme d'une "
|
||||
"arborescence de fichiers :"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:406
|
||||
msgid ""
|
||||
"When importing the package, Python searches through the directories on ``sys."
|
||||
"path`` looking for the package subdirectory."
|
||||
msgstr ""
|
||||
"Lorsqu'il importe des paquets, Python cherche dans chaque dossiers de ``sys."
|
||||
"path``, à la recherche du dossier du paquet."
|
||||
"Lorsqu'il importe des paquets, Python cherche dans chaque dossier de ``sys."
|
||||
"path`` un sous-dossier du nom du paquet."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:409
|
||||
msgid ""
|
||||
|
@ -567,10 +566,10 @@ msgid ""
|
|||
"described later."
|
||||
msgstr ""
|
||||
"Les fichiers :file:`__init__.py` sont nécessaires pour que Python considère "
|
||||
"les dossiers comme contenant des paquets, ça évite des dossiers ayant des "
|
||||
"noms courants comme ``string`` de cacher des modules qui auraient été "
|
||||
"trouvés plus loin dans les dossiers de recherche. Dans le plus simple des "
|
||||
"cas, :file:`__init__.py` peut être vide, mais il peut exécuter du code "
|
||||
"les dossiers comme contenant des paquets, cela évite que des dossiers ayant "
|
||||
"des noms courants comme ``string`` ne masquent des modules qui auraient été "
|
||||
"trouvés plus tard dans la recherche des dossiers. Dans le plus simple des "
|
||||
"cas, :file:`__init__.py` peut être vide, mais il peut aussi exécuter du code "
|
||||
"d'initialisation pour son paquet ou configurer la variable ``__all__`` "
|
||||
"(documentée plus loin)."
|
||||
|
||||
|
@ -587,8 +586,8 @@ msgid ""
|
|||
"This loads the submodule :mod:`sound.effects.echo`. It must be referenced "
|
||||
"with its full name. ::"
|
||||
msgstr ""
|
||||
"Chargera le sous-module :mod:`sound.effects.echo`. Il dit être référencé par "
|
||||
"son nom complet. ::"
|
||||
"charge le sous-module :mod:`sound.effects.echo`. Il doit alors être "
|
||||
"référencé par son nom complet. ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:426
|
||||
msgid "An alternative way of importing the submodule is::"
|
||||
|
@ -599,15 +598,15 @@ msgid ""
|
|||
"This also loads the submodule :mod:`echo`, and makes it available without "
|
||||
"its package prefix, so it can be used as follows::"
|
||||
msgstr ""
|
||||
"Chargera aussi le sous-module :mod:`echo`, et le rendra disponible dans le "
|
||||
"préfixe du paquet, il peut donc être utilisé comme ça : ::"
|
||||
"charge aussi le sous-module :mod:`echo` et le rend disponible sans avoir à "
|
||||
"indiquer le préfixe du paquet. Il peut donc être utilisé comme ceci : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:435
|
||||
msgid ""
|
||||
"Yet another variation is to import the desired function or variable "
|
||||
"directly::"
|
||||
msgstr ""
|
||||
"Une autre méthode consisterait à importer la fonction ou variable désirée "
|
||||
"Une autre méthode consiste à importer la fonction ou la variable désirée "
|
||||
"directement : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:439
|
||||
|
@ -615,7 +614,7 @@ msgid ""
|
|||
"Again, this loads the submodule :mod:`echo`, but this makes its function :"
|
||||
"func:`echofilter` directly available::"
|
||||
msgstr ""
|
||||
"Le sous-module :mod:`echo` est toujours chargé, mais ici la fonction :func:"
|
||||
"Le sous-module :mod:`echo` est toujours chargé mais ici la fonction :func:"
|
||||
"`echofilter` est disponible directement : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:444
|
||||
|
@ -627,12 +626,12 @@ msgid ""
|
|||
"module and attempts to load it. If it fails to find it, an :exc:"
|
||||
"`ImportError` exception is raised."
|
||||
msgstr ""
|
||||
"Notez que lorsque vous utilisez ``from package import item``, ``item`` peut "
|
||||
"aussi bien être un sous-module, un sous-paquet, ou simplement un nom déclaré "
|
||||
"dans le paquet (une variable, une fonction ou une classe). L'instruction "
|
||||
"``import`` cherche en premier si ``item`` est définit dans le paquet, s'il "
|
||||
"ne l'est pas, elle cherche à charger un module, et si elle n'y arrive pas, "
|
||||
"une exception :exc:`ImportError` est levée."
|
||||
"Notez que lorsque vous utilisez ``from package import element``, ``element`` "
|
||||
"peut aussi bien être un sous-module, un sous-paquet ou simplement un nom "
|
||||
"déclaré dans le paquet (une variable, une fonction ou une classe). "
|
||||
"L'instruction ``import`` cherche en premier si ``element`` est défini dans "
|
||||
"le paquet ; s'il ne l'est pas, elle cherche à charger un module et, si elle "
|
||||
"n'en trouve pas, une exception :exc:`ImportError` est levée."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:451
|
||||
msgid ""
|
||||
|
@ -641,10 +640,11 @@ msgid ""
|
|||
"a package but can't be a class or function or variable defined in the "
|
||||
"previous item."
|
||||
msgstr ""
|
||||
"Au contraire, en utilisant la syntaxe ``import item.item.subitement."
|
||||
"subsubitem``, chaque ``item`` sauf le dernier doivent être des paquets. Le "
|
||||
"dernier ``item`` peut être un module ou un paquet, mais ne peut être ni une "
|
||||
"fonction, ni une classe, ni une variable défini dans l'élément précédent."
|
||||
"Au contraire, en utilisant la syntaxe ``import element.souselement."
|
||||
"soussouselement``, chaque ``element`` sauf le dernier doit être un paquet. "
|
||||
"Le dernier ``element`` peut être un module ou un paquet, mais ne peut être "
|
||||
"ni une fonction, ni une classe, ni une variable définie dans l'élément "
|
||||
"précédent."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:460
|
||||
msgid "Importing \\* From a Package"
|
||||
|
@ -659,11 +659,11 @@ msgid ""
|
|||
"effects that should only happen when the sub-module is explicitly imported."
|
||||
msgstr ""
|
||||
"Qu'arrive-il lorsqu'un utilisateur écrit ``from sound.effects import *`` ? "
|
||||
"Dans l'idéal on pourrait espérer que ça irait chercher tous les sous-modules "
|
||||
"du paquet sur le système de fichiers, et qu'ils seraient tous importés. Ça "
|
||||
"pourrait être long, et importer certains sous-modules pourrait avoir des "
|
||||
"effets secondaires indésirables, du moins, désirés seulement lorsque le sous "
|
||||
"module est importé explicitement."
|
||||
"Idéalement, on pourrait espérer que Python aille chercher tous les sous-modules "
|
||||
"du paquet sur le système de fichiers et qu'ils seraient tous importés. Cela "
|
||||
"pourrait être long et importer certains sous-modules pourrait avoir des "
|
||||
"effets secondaires indésirables ou, du moins, désirés seulement lorsque le "
|
||||
"sous-module est importé explicitement."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:470
|
||||
msgid ""
|
||||
|
@ -679,21 +679,22 @@ msgid ""
|
|||
msgstr ""
|
||||
"La seule solution, pour l'auteur du paquet, est de fournir un index "
|
||||
"explicite du contenu du paquet. L'instruction :keyword:`import` utilise la "
|
||||
"convention suivante: Si le fichier :file:`__init__.py` du paquet définit une "
|
||||
"liste nommée ``__all__``, cette liste sera utilisée comme liste des noms de "
|
||||
"modules devant être importés lorsque ``from package import *`` est utilisé. "
|
||||
"C'est le rôle de l'auteur du paquet de maintenir cette liste à jour lorsque "
|
||||
"de nouvelles version du paquet sont publiées. Un auteur de paquet peut aussi "
|
||||
"décider de ne pas autoriser d'importer ``*`` de leur paquet. Par exemple, le "
|
||||
"fichier :file:`sound/effects/__init__.py` peut contenir le code suivant : ::"
|
||||
"convention suivante : si le fichier :file:`__init__.py` du paquet définit "
|
||||
"une liste nommée ``__all__``, cette liste est utilisée comme liste des noms "
|
||||
"de modules devant être importés lorsque ``from package import *`` est "
|
||||
"utilisé. Il est de la responsabilité de l'auteur du paquet de maintenir "
|
||||
"cette liste à jour lorsque de nouvelles versions du paquet sont publiées. Un "
|
||||
"auteur de paquet peut aussi décider de ne pas autoriser d'importer ``*`` "
|
||||
"pour son paquet. Par exemple, le fichier :file:`sound/effects/__init__.py` "
|
||||
"peut contenir le code suivant : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:482
|
||||
msgid ""
|
||||
"This would mean that ``from sound.effects import *`` would import the three "
|
||||
"named submodules of the :mod:`sound` package."
|
||||
msgstr ""
|
||||
"Cela signifierai que ``from sound.effects import *`` importait les trois "
|
||||
"sous-modules du paquet :mod:`sound`."
|
||||
"Cela signifie que ``from sound.effects import *`` importe les trois sous-"
|
||||
"modules explicitement désignés du paquet :mod:`sound`."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:485
|
||||
msgid ""
|
||||
|
@ -707,13 +708,13 @@ msgid ""
|
|||
"explicitly loaded by previous :keyword:`import` statements. Consider this "
|
||||
"code::"
|
||||
msgstr ""
|
||||
"Si ``__all__`` n'est pas défini, l'instruction ``from sound.effects import "
|
||||
"*`` n'importera *pas* tous les sous-modules du paquet :mod:`sound.effects` "
|
||||
"dans l'espace de nom courant, mais s'assurera seulement que le paquet :mod:"
|
||||
"`sound.effects` à été importé (que tout le code du fichier :file:`__init__."
|
||||
"py` à été executé) et importe ensuite n'importe quels noms définis dans le "
|
||||
"paquet. Cela inclu tous les noms définis (et sous modules chargés "
|
||||
"explicitement) par :file:`__init__.py`. Elle inclu aussi tous les sous-"
|
||||
"Si ``__all__`` n'est pas définie, l'instruction ``from sound.effects import "
|
||||
"*`` n'importe *pas* tous les sous-modules du paquet :mod:`sound.effects` "
|
||||
"dans l'espace de noms courant mais s'assure seulement que le paquet :mod:"
|
||||
"`sound.effects` a été importé (i.e. que tout le code du fichier :file:"
|
||||
"`__init__.py` a été exécuté) et importe ensuite les noms définis dans le "
|
||||
"paquet. Cela inclut tous les noms définis (et sous-modules chargés "
|
||||
"explicitement) par :file:`__init__.py`. Sont aussi inclus tous les sous-"
|
||||
"modules du paquet ayant été chargés explicitement par une instruction :"
|
||||
"keyword:`import`. Typiquement : ::"
|
||||
|
||||
|
@ -725,9 +726,9 @@ msgid ""
|
|||
"when ``__all__`` is defined.)"
|
||||
msgstr ""
|
||||
"Dans cet exemple, les modules :mod:`echo` et :mod:`surround` sont importés "
|
||||
"dans l'espace de noms courant lorsque ``from...import`` est exécuté, parce "
|
||||
"qu'ils sont définis dans le paquet :mod:`sound.effects`. (Cela fonctionne "
|
||||
"lorsque ``__all__`` est défini.)"
|
||||
"dans l'espace de noms courant lorsque ``from...import`` est exécuté parce "
|
||||
"qu'ils sont définis dans le paquet :mod:`sound.effects` (cela fonctionne "
|
||||
"aussi lorsque ``__all__`` est définie)."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:503
|
||||
msgid ""
|
||||
|
@ -738,7 +739,7 @@ msgstr ""
|
|||
"Bien que certains modules ont été pensés pour n'exporter que les noms "
|
||||
"respectant une certaine structure lorsque ``import *`` est utilisé, ``import "
|
||||
"*`` reste considéré comme une mauvaise pratique dans du code à destination "
|
||||
"d'un environnement de production.Q"
|
||||
"d'un environnement de production."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:507
|
||||
msgid ""
|
||||
|
@ -747,10 +748,10 @@ msgid ""
|
|||
"importing module needs to use submodules with the same name from different "
|
||||
"packages."
|
||||
msgstr ""
|
||||
"Rappelez-vous qu'il n'y a rien de mauvais à utiliser ``from Package import "
|
||||
"specific_submodule`` ! C'est d'ailleurs la manière recommandée à moins que "
|
||||
"le module qui fait les imports ai besoin de sous-modules ayant le même nom "
|
||||
"mais provenant se paquets différents."
|
||||
"Rappelez-vous que rien ne vous empêche d'utiliser ``from paquet import "
|
||||
"sous_module_specifique`` ! C'est d'ailleurs la manière recommandée, à moins "
|
||||
"que le module qui fait les imports ait besoin de sous-modules ayant le même "
|
||||
"nom mais provenant de paquets différents."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:514
|
||||
msgid "Intra-package References"
|
||||
|
@ -778,9 +779,9 @@ msgid ""
|
|||
"`surround` module for example, you might use::"
|
||||
msgstr ""
|
||||
"Il est aussi possible d'écrire des imports relatifs de la forme ``from "
|
||||
"module import name``. Ces imports sont préfixés par des points pour indiquer "
|
||||
"leur origine (paquet courant ou parent). Depuis le module :mod:`surround`, "
|
||||
"par exemple vous pourriez faire : ::"
|
||||
"module import name``. Ces imports relatifs sont préfixés par des points pour "
|
||||
"indiquer leur origine (paquet courant ou parent). Depuis le module :mod:"
|
||||
"`surround`, par exemple vous pouvez écrire : ::"
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:531
|
||||
msgid ""
|
||||
|
@ -791,7 +792,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Notez que les imports relatifs se fient au nom du module actuel. Puisque le "
|
||||
"nom du module principal est toujours ``\"__main__\"``, les modules utilisés "
|
||||
"par le module principal d'une application ne peuvent être importées que par "
|
||||
"par le module principal d'une application ne peuvent être importés que par "
|
||||
"des imports absolus."
|
||||
|
||||
#: ../Doc/tutorial/modules.rst:537
|
||||
|
@ -806,9 +807,9 @@ msgid ""
|
|||
"This variable can be modified; doing so affects future searches for modules "
|
||||
"and subpackages contained in the package."
|
||||
msgstr ""
|
||||
"Les paquets exposent un attribut supplémentaire, :attr:`__path__`, contenant "
|
||||
"une liste, initialisée avant l'exécution du fichier :file:`__init__.py`, "
|
||||
"contenant le nom de son dossier dans le système de fichier. Cette liste peut "
|
||||
"Les paquets possèdent un attribut supplémentaire, :attr:`__path__`, qui est "
|
||||
"une liste initialisée avant l'exécution du fichier :file:`__init__.py`, "
|
||||
"contenant le nom de son dossier dans le système de fichiers. Cette liste peut "
|
||||
"être modifiée, altérant ainsi les futures recherches de modules et sous-"
|
||||
"paquets contenus dans le paquet."
|
||||
|
||||
|
@ -830,6 +831,6 @@ msgid ""
|
|||
"execution of a module-level function definition enters the function name in "
|
||||
"the module's global symbol table."
|
||||
msgstr ""
|
||||
"En réalité, la déclaration d'une fonction est elle même une instruction, "
|
||||
"sont l'exécution enregistre le nom de la fonction dans la table des symboles "
|
||||
"En réalité, la déclaration d'une fonction est elle-même une instruction ; "
|
||||
"son exécution enregistre le nom de la fonction dans la table des symboles "
|
||||
"globaux du module."
|
||||
|
|
Loading…
Reference in New Issue
Block a user