Tutorial Modules Review.

This commit is contained in:
Christophe Nanteuil 2018-02-07 19:15:12 +01:00 committed by Julien Palard
parent d71a11b4bb
commit 3c33cb06b2

View File

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