diff --git a/Makefile b/Makefile index 51f0e5f2..e581c68b 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ # from which we generated our po files. We use it here so when we # test build, we're building with the .rst files that generated our # .po files. -CPYTHON_CURRENT_COMMIT := 57100c86baa8451a568348646834380cd425b858 +CPYTHON_CURRENT_COMMIT := 1b37268ef10bd20c30d349b8401c88215c8a6be8 LANGUAGE := fr BRANCH := 3.10 diff --git a/distutils/sourcedist.po b/distutils/sourcedist.po index 287064da..12fb52c4 100644 --- a/distutils/sourcedist.po +++ b/distutils/sourcedist.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-08-24 09:01+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2020-02-04 21:21+0100\n" "Last-Translator: ZepmanBC \n" "Language-Team: FRENCH \n" @@ -110,6 +110,10 @@ msgstr "``bztar``" msgid "bzip2'ed tar file (:file:`.tar.bz2`)" msgstr "Fichier *tar* compressé par *bzip2* (:file:`.tar.bz2`)" +#: distutils/sourcedist.rst:37 distutils/sourcedist.rst:43 +msgid "\\(5)" +msgstr "" + #: distutils/sourcedist.rst:37 msgid "``xztar``" msgstr "``xztar``" @@ -127,8 +131,8 @@ msgid "compressed tar file (:file:`.tar.Z`)" msgstr "Fichier *tar* compressé par *compress* (:file:`.tar.Z`)" #: distutils/sourcedist.rst:40 -msgid "\\(4)" -msgstr "\\(4)" +msgid "(4),(5)" +msgstr "" #: distutils/sourcedist.rst:43 msgid "``tar``" @@ -172,6 +176,12 @@ msgstr "" #: distutils/sourcedist.rst:65 msgid "" +"deprecated by `PEP 527 `_; `PyPI " +"`_ only accepts ``.zip`` and ``.tar.gz`` files." +msgstr "" + +#: distutils/sourcedist.rst:68 +msgid "" "When using any ``tar`` format (``gztar``, ``bztar``, ``xztar``, ``ztar`` or " "``tar``), under Unix you can specify the ``owner`` and ``group`` names that " "will be set for each member of the archive." @@ -181,17 +191,17 @@ msgstr "" "propriétaire et le groupe qui seront appliqué pour chaque fichier de " "l'archive." -#: distutils/sourcedist.rst:69 +#: distutils/sourcedist.rst:72 msgid "For example, if you want all files of the archive to be owned by root::" msgstr "" "Par exemple, si vous voulez que tous les fichiers de l'archive soient détenu " "par *root* ::" -#: distutils/sourcedist.rst:77 +#: distutils/sourcedist.rst:80 msgid "Specifying the files to distribute" msgstr "Spécifier les fichiers à distribuer" -#: distutils/sourcedist.rst:79 +#: distutils/sourcedist.rst:82 msgid "" "If you don't supply an explicit list of files (or instructions on how to " "generate one), the :command:`sdist` command puts a minimal default set into " @@ -201,7 +211,7 @@ msgstr "" "instructions pour la générer), la commande :command:`sdist` en met par " "défaut le minimum dans la distribution source :" -#: distutils/sourcedist.rst:83 +#: distutils/sourcedist.rst:86 msgid "" "all Python source files implied by the ``py_modules`` and ``packages`` " "options" @@ -209,14 +219,14 @@ msgstr "" "tous les fichiers source Python sous-entendus par les options ``py_modules`` " "et ``packages``" -#: distutils/sourcedist.rst:86 +#: distutils/sourcedist.rst:89 msgid "" "all C source files mentioned in the ``ext_modules`` or ``libraries`` options" msgstr "" "tous les fichiers source C mentionnés dans les arguments ``ext_modules`` ou " "``libraries``" -#: distutils/sourcedist.rst:92 +#: distutils/sourcedist.rst:95 msgid "" "scripts identified by the ``scripts`` option See :ref:`distutils-installing-" "scripts`." @@ -224,7 +234,7 @@ msgstr "" "scripts identifiés par l'argument ``scripts``. Voir :ref:`distutils-" "installing-scripts`." -#: distutils/sourcedist.rst:95 +#: distutils/sourcedist.rst:98 msgid "" "anything that looks like a test script: :file:`test/test\\*.py` (currently, " "the Distutils don't do anything with test scripts except include them in " @@ -236,7 +246,7 @@ msgstr "" "inclure dans les distributions sources, mais dans le futur un standard sera " "implémenté pour tester les distributions de module Python)" -#: distutils/sourcedist.rst:100 +#: distutils/sourcedist.rst:103 msgid "" "Any of the standard README files (:file:`README`, :file:`README.txt`, or :" "file:`README.rst`), :file:`setup.py` (or whatever you called your setup " @@ -247,7 +257,7 @@ msgstr "" "script d'installation si vous l'avez appelé autrement) et le fichier :file:" "`setup.cfg`." -#: distutils/sourcedist.rst:104 +#: distutils/sourcedist.rst:107 msgid "" "all files that matches the ``package_data`` metadata. See :ref:`distutils-" "installing-package-data`." @@ -255,7 +265,7 @@ msgstr "" "tous les fichiers associés aux méta-données ``package_data``. Voir :ref:" "`distutils-installing-package-data`." -#: distutils/sourcedist.rst:107 +#: distutils/sourcedist.rst:110 msgid "" "all files that matches the ``data_files`` metadata. See :ref:`distutils-" "additional-files`." @@ -263,7 +273,7 @@ msgstr "" "tous les fichiers associés aux méta-données ``data_files``. Voir :ref:" "`distutils-additional-files`." -#: distutils/sourcedist.rst:110 +#: distutils/sourcedist.rst:113 msgid "" "Sometimes this is enough, but usually you will want to specify additional " "files to distribute. The typical way to do this is to write a *manifest " @@ -283,7 +293,7 @@ msgstr "" "`sdist` traite ce modèle et génère un manifeste à partir de ces instructions " "et de ce qu'elle trouve dans le système de fichiers." -#: distutils/sourcedist.rst:118 +#: distutils/sourcedist.rst:121 msgid "" "If you prefer to roll your own manifest file, the format is simple: one " "filename per line, regular files (or symlinks to them) only. If you do " @@ -296,7 +306,7 @@ msgstr "" "vous devez tout spécifier : les groupes de fichiers par défaut décrits au-" "dessus ne sont pas inclus automatiquement dans ce cas." -#: distutils/sourcedist.rst:123 +#: distutils/sourcedist.rst:126 msgid "" "An existing generated :file:`MANIFEST` will be regenerated without :command:" "`sdist` comparing its modification time to the one of :file:`MANIFEST.in` " @@ -306,7 +316,7 @@ msgstr "" "command:`sdist` ne compare son heure de modification à :file:`MANIFEST.in` " "ou :file:`setup.py`." -#: distutils/sourcedist.rst:128 +#: distutils/sourcedist.rst:131 msgid "" ":file:`MANIFEST` files start with a comment indicating they are generated. " "Files without this comment are not overwritten or removed." @@ -315,7 +325,7 @@ msgstr "" "sont générés. Les fichiers sans ce commentaire ne sont pas réécrits ou " "supprimés." -#: distutils/sourcedist.rst:132 +#: distutils/sourcedist.rst:135 msgid "" ":command:`sdist` will read a :file:`MANIFEST` file if no :file:`MANIFEST.in` " "exists, like it used to do." @@ -323,14 +333,14 @@ msgstr "" ":command:`sdist` lira un ficher :file:`MANIFEST` s'il n'existe pas de :file:" "`MANIFEST.in` , tel qu'il en avait l'habitude." -#: distutils/sourcedist.rst:136 +#: distutils/sourcedist.rst:139 msgid "" ":file:`README.rst` is now included in the list of distutils standard READMEs." msgstr "" "Le fichier :file:`README.rst` est maintenant inclus dans la liste des " "fichiers *README* standards de *distutils*." -#: distutils/sourcedist.rst:140 +#: distutils/sourcedist.rst:143 msgid "" "The manifest template has one command per line, where each command specifies " "a set of files to include or exclude from the source distribution. For an " @@ -340,7 +350,7 @@ msgstr "" "spécifie un ensemble de fichiers à inclure ou à exclure de la distribution " "source. Par exemple, regardons à nouveau le propre manifeste de Distutils :" -#: distutils/sourcedist.rst:150 +#: distutils/sourcedist.rst:153 msgid "" "The meanings should be fairly clear: include all files in the distribution " "root matching :file:`\\*.txt`, all files anywhere under the :file:`examples` " @@ -363,7 +373,7 @@ msgstr "" "inclusions standards). Il existe d'autres commandes dans le langage du " "fichier manifeste, consultez le chapitre :ref:`sdist-cmd`." -#: distutils/sourcedist.rst:160 +#: distutils/sourcedist.rst:163 msgid "" "The order of commands in the manifest template matters: initially, we have " "the list of default files as described above, and each command in the " @@ -377,13 +387,13 @@ msgstr "" "Une fois que le traitement du manifeste modèle est fini, nous enlevons les " "fichiers qui ne doivent pas être inclus dans la distribution source :" -#: distutils/sourcedist.rst:166 +#: distutils/sourcedist.rst:169 msgid "all files in the Distutils \"build\" tree (default :file:`build/`)" msgstr "" "tous les fichiers dans l'arborescence de *build* de Distutils (par défaut :" "file:`build/`)" -#: distutils/sourcedist.rst:168 +#: distutils/sourcedist.rst:171 msgid "" "all files in directories named :file:`RCS`, :file:`CVS`, :file:`.svn`, :file:" "`.hg`, :file:`.git`, :file:`.bzr` or :file:`_darcs`" @@ -391,7 +401,7 @@ msgstr "" "tous les fichiers dans les dossiers nommés :file:`RCS`, :file:`CVS`, :file:`." "svn`, :file:`.hg`, :file:`.git`, :file:`.bzr` ou :file:`_darcs`" -#: distutils/sourcedist.rst:171 +#: distutils/sourcedist.rst:174 msgid "" "Now we have our complete list of files, which is written to the manifest for " "future reference, and then used to build the source distribution archive(s)." @@ -400,7 +410,7 @@ msgstr "" "écrite dans le manifeste pour une utilisation future et sera utilisée pour " "construire la ou les archive(s) de notre distribution source." -#: distutils/sourcedist.rst:174 +#: distutils/sourcedist.rst:177 msgid "" "You can disable the default set of included files with the :option:`!--no-" "defaults` option, and you can disable the standard exclude set with :option:" @@ -410,7 +420,7 @@ msgstr "" "utilisant l'option :option:`!--no-defaults`, ainsi que désactiver les " "exclusions standards avec l'option :option:`!--no-prune`." -#: distutils/sourcedist.rst:178 +#: distutils/sourcedist.rst:181 msgid "" "Following the Distutils' own manifest template, let's trace how the :command:" "`sdist` command builds the list of files to include in the Distutils source " @@ -420,7 +430,7 @@ msgstr "" "`sdist` construit la liste des fichiers à inclure dans la distribution " "source de Distutils." -#: distutils/sourcedist.rst:182 +#: distutils/sourcedist.rst:185 msgid "" "include all Python source files in the :file:`distutils` and :file:" "`distutils/command` subdirectories (because packages corresponding to those " @@ -433,7 +443,7 @@ msgstr "" "``packages`` du script d'installation --- voir le chapitre :ref:`setup-" "script`)" -#: distutils/sourcedist.rst:187 +#: distutils/sourcedist.rst:190 msgid "" "include :file:`README.txt`, :file:`setup.py`, and :file:`setup.cfg` " "(standard files)" @@ -441,11 +451,11 @@ msgstr "" "inclure :file:`README.txt`, :file:`setup.py` et :file:`setup.cfg` (fichiers " "standards)" -#: distutils/sourcedist.rst:190 +#: distutils/sourcedist.rst:193 msgid "include :file:`test/test\\*.py` (standard files)" msgstr "inclure :file:`test/test\\*.py` (fichiers standard)" -#: distutils/sourcedist.rst:192 +#: distutils/sourcedist.rst:195 msgid "" "include :file:`\\*.txt` in the distribution root (this will find :file:" "`README.txt` a second time, but such redundancies are weeded out later)" @@ -454,7 +464,7 @@ msgstr "" "`README.txt` une seconde fois, mais les redondances sont supprimées plus " "tard)" -#: distutils/sourcedist.rst:195 +#: distutils/sourcedist.rst:198 msgid "" "include anything matching :file:`\\*.txt` or :file:`\\*.py` in the sub-tree " "under :file:`examples`," @@ -462,7 +472,7 @@ msgstr "" "inclure tout fichier de la forme :file:`\\*.txt` ou :file:`\\*.py` dans la " "sous-arborescence de :file:`examples`," -#: distutils/sourcedist.rst:198 +#: distutils/sourcedist.rst:201 msgid "" "exclude all files in the sub-trees starting at directories matching :file:" "`examples/sample?/build`\\ ---this may exclude files included by the " @@ -475,7 +485,7 @@ msgstr "" "important que la commande ``prune`` dans le manifeste modèle vienne après la " "commande ``recursive-include``" -#: distutils/sourcedist.rst:203 +#: distutils/sourcedist.rst:206 msgid "" "exclude the entire :file:`build` tree, and any :file:`RCS`, :file:`CVS`, :" "file:`.svn`, :file:`.hg`, :file:`.git`, :file:`.bzr` and :file:`_darcs` " @@ -485,7 +495,7 @@ msgstr "" "`RCS`, :file:`CVS`, :file:`.svn`, :file:`.hg`, :file:`.git`, :file:`.bzr` " "et :file:`_darcs`" -#: distutils/sourcedist.rst:207 +#: distutils/sourcedist.rst:210 msgid "" "Just like in the setup script, file and directory names in the manifest " "template should always be slash-separated; the Distutils will take care of " @@ -498,11 +508,11 @@ msgstr "" "la représentation standard de votre plateforme. De cette manière, le " "manifeste modèle est portable sur tout système d'exploitation." -#: distutils/sourcedist.rst:216 +#: distutils/sourcedist.rst:219 msgid "Manifest-related options" msgstr "Options pour le manifeste" -#: distutils/sourcedist.rst:218 +#: distutils/sourcedist.rst:221 msgid "" "The normal course of operations for the :command:`sdist` command is as " "follows:" @@ -510,7 +520,7 @@ msgstr "" "L'ordre normal des opérations pour la commande :command:`sdist` est le " "suivant :" -#: distutils/sourcedist.rst:220 +#: distutils/sourcedist.rst:223 msgid "" "if the manifest file (:file:`MANIFEST` by default) exists and the first line " "does not have a comment indicating it is generated from :file:`MANIFEST.in`, " @@ -520,7 +530,7 @@ msgstr "" "première ligne n'a pas de commentaire indiquant qu'il a été généré par :file:" "`MANIFEST.in`, alors il est utilisé tel quel, inchangé" -#: distutils/sourcedist.rst:224 +#: distutils/sourcedist.rst:227 msgid "" "if the manifest file doesn't exist or has been previously automatically " "generated, read :file:`MANIFEST.in` and create the manifest" @@ -528,7 +538,7 @@ msgstr "" "si le manifeste n'existe pas ou s'il a été généré automatiquement, lire :" "file:`MANIFEST.in` et créer le manifeste" -#: distutils/sourcedist.rst:227 +#: distutils/sourcedist.rst:230 msgid "" "if neither :file:`MANIFEST` nor :file:`MANIFEST.in` exist, create a manifest " "with just the default file set" @@ -536,7 +546,7 @@ msgstr "" "s'il n'existe ni :file:`MANIFEST`, ni :file:`MANIFEST.in`, alors créer un " "manifeste contenant uniquement le groupe de fichiers par défaut" -#: distutils/sourcedist.rst:230 +#: distutils/sourcedist.rst:233 msgid "" "use the list of files now in :file:`MANIFEST` (either just generated or read " "in) to create the source distribution archive(s)" @@ -544,7 +554,7 @@ msgstr "" "utiliser maintenant la liste de fichiers de :file:`MANIFEST` (qu'il ait été " "généré ou lu) pour créer la ou les archive(s) de la distribution source" -#: distutils/sourcedist.rst:233 +#: distutils/sourcedist.rst:236 msgid "" "There are a couple of options that modify this behaviour. First, use the :" "option:`!--no-defaults` and :option:`!--no-prune` to disable the standard " @@ -554,7 +564,7 @@ msgstr "" "options :option:`!--no-defaults` et :option:`!--no-prune` pour désactiver " "les inclusions et exclusions standards." -#: distutils/sourcedist.rst:237 +#: distutils/sourcedist.rst:240 msgid "" "Second, you might just want to (re)generate the manifest, but not create a " "source distribution::" @@ -562,8 +572,11 @@ msgstr "" "Ensuite, si vous ne voulez que (ré)générer le manifeste, mais pas créer la " "distribution source ::" -#: distutils/sourcedist.rst:242 +#: distutils/sourcedist.rst:245 msgid ":option:`!-o` is a shortcut for :option:`!--manifest-only`." msgstr "" "L'option :option:`!-o` est un raccourci pour l'option :option:`!--manifest-" "only`." + +#~ msgid "\\(4)" +#~ msgstr "\\(4)" diff --git a/howto/annotations.po b/howto/annotations.po index a9d7e538..30cfdf13 100644 --- a/howto/annotations.po +++ b/howto/annotations.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-04 18:14+0100\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-10-17 14:16+0200\n" "Last-Translator: ZepmanBC \n" "Language-Team: FRENCH \n" @@ -315,8 +315,9 @@ msgstr "" "*ne peuvent pas* être évaluées. Par exemple :" #: howto/annotations.rst:159 +#, fuzzy msgid "" -":pep:`604` union types using `|`, before support for this was added to " +":pep:`604` union types using ``|``, before support for this was added to " "Python 3.10." msgstr "" "Les types d'union de style :pep:`604` avec `|`, avant que cette prise en " diff --git a/howto/logging-cookbook.po b/howto/logging-cookbook.po index 4403f783..9d55bfd6 100644 --- a/howto/logging-cookbook.po +++ b/howto/logging-cookbook.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -267,11 +267,25 @@ msgid "" "use your alternative serialization." msgstr "" +#: howto/logging-cookbook.rst:545 +msgid "Running a logging socket listener in production" +msgstr "" + #: howto/logging-cookbook.rst:547 +msgid "" +"To run a logging listener in production, you may need to use a process-" +"management tool such as `Supervisor `_. `Here " +"`_ is a " +"Gist which provides the bare-bones files to run the above functionality " +"using Supervisor: you will need to change the `/path/to/` parts in the Gist " +"to reflect the actual paths you want to use." +msgstr "" + +#: howto/logging-cookbook.rst:558 msgid "Adding contextual information to your logging output" msgstr "" -#: howto/logging-cookbook.rst:549 +#: howto/logging-cookbook.rst:560 msgid "" "Sometimes you want logging output to contain contextual information in " "addition to the parameters passed to the logging call. For example, in a " @@ -287,11 +301,11 @@ msgid "" "`Logger` instances becomes effectively unbounded." msgstr "" -#: howto/logging-cookbook.rst:564 +#: howto/logging-cookbook.rst:575 msgid "Using LoggerAdapters to impart contextual information" msgstr "" -#: howto/logging-cookbook.rst:566 +#: howto/logging-cookbook.rst:577 msgid "" "An easy way in which you can pass contextual information to be output along " "with logging event information is to use the :class:`LoggerAdapter` class. " @@ -302,7 +316,7 @@ msgid "" "types of instances interchangeably." msgstr "" -#: howto/logging-cookbook.rst:574 +#: howto/logging-cookbook.rst:585 msgid "" "When you create an instance of :class:`LoggerAdapter`, you pass it a :class:" "`Logger` instance and a dict-like object which contains your contextual " @@ -313,7 +327,7 @@ msgid "" "of :class:`LoggerAdapter`::" msgstr "" -#: howto/logging-cookbook.rst:590 +#: howto/logging-cookbook.rst:601 msgid "" "The :meth:`~LoggerAdapter.process` method of :class:`LoggerAdapter` is where " "the contextual information is added to the logging output. It's passed the " @@ -326,7 +340,7 @@ msgid "" "be silently overwritten." msgstr "" -#: howto/logging-cookbook.rst:599 +#: howto/logging-cookbook.rst:610 msgid "" "The advantage of using 'extra' is that the values in the dict-like object " "are merged into the :class:`LogRecord` instance's __dict__, allowing you to " @@ -337,21 +351,21 @@ msgid "" "`~LoggerAdapter.process` to do what you need. Here is a simple example::" msgstr "" -#: howto/logging-cookbook.rst:615 +#: howto/logging-cookbook.rst:626 msgid "which you can use like this::" msgstr "" -#: howto/logging-cookbook.rst:620 +#: howto/logging-cookbook.rst:631 msgid "" "Then any events that you log to the adapter will have the value of " "``some_conn_id`` prepended to the log messages." msgstr "" -#: howto/logging-cookbook.rst:624 +#: howto/logging-cookbook.rst:635 msgid "Using objects other than dicts to pass contextual information" msgstr "" -#: howto/logging-cookbook.rst:626 +#: howto/logging-cookbook.rst:637 msgid "" "You don't need to pass an actual dict to a :class:`LoggerAdapter` - you " "could pass an instance of a class which implements ``__getitem__`` and " @@ -360,11 +374,11 @@ msgid "" "would be constant)." msgstr "" -#: howto/logging-cookbook.rst:635 +#: howto/logging-cookbook.rst:646 msgid "Using Filters to impart contextual information" msgstr "" -#: howto/logging-cookbook.rst:637 +#: howto/logging-cookbook.rst:648 msgid "" "You can also add contextual information to log output using a user-defined :" "class:`Filter`. ``Filter`` instances are allowed to modify the " @@ -373,7 +387,7 @@ msgid "" "class:`Formatter`." msgstr "" -#: howto/logging-cookbook.rst:642 +#: howto/logging-cookbook.rst:653 msgid "" "For example in a web application, the request being processed (or at least, " "the interesting parts of it) can be stored in a threadlocal (:class:" @@ -385,15 +399,15 @@ msgid "" "an example script::" msgstr "" -#: howto/logging-cookbook.rst:688 +#: howto/logging-cookbook.rst:699 msgid "which, when run, produces something like:" msgstr "" -#: howto/logging-cookbook.rst:709 +#: howto/logging-cookbook.rst:720 msgid "Logging to a single file from multiple processes" msgstr "" -#: howto/logging-cookbook.rst:711 +#: howto/logging-cookbook.rst:722 msgid "" "Although logging is thread-safe, and logging to a single file from multiple " "threads in a single process *is* supported, logging to a single file from " @@ -409,7 +423,7 @@ msgid "" "you to adapt in your own applications." msgstr "" -#: howto/logging-cookbook.rst:724 +#: howto/logging-cookbook.rst:735 msgid "" "You could also write your own handler which uses the :class:" "`~multiprocessing.Lock` class from the :mod:`multiprocessing` module to " @@ -420,7 +434,7 @@ msgid "" "platforms (see https://bugs.python.org/issue3770)." msgstr "" -#: howto/logging-cookbook.rst:734 +#: howto/logging-cookbook.rst:745 msgid "" "Alternatively, you can use a ``Queue`` and a :class:`QueueHandler` to send " "all logging events to one of the processes in your multi-process " @@ -435,13 +449,13 @@ msgid "" "requirements::" msgstr "" -#: howto/logging-cookbook.rst:850 +#: howto/logging-cookbook.rst:861 msgid "" "A variant of the above script keeps the logging in the main process, in a " "separate thread::" msgstr "" -#: howto/logging-cookbook.rst:945 +#: howto/logging-cookbook.rst:956 msgid "" "This variant shows how you can e.g. apply configuration for particular " "loggers - e.g. the ``foo`` logger has a special handler which stores all " @@ -451,34 +465,50 @@ msgid "" "appropriate destinations." msgstr "" -#: howto/logging-cookbook.rst:952 +#: howto/logging-cookbook.rst:963 msgid "Using concurrent.futures.ProcessPoolExecutor" msgstr "" -#: howto/logging-cookbook.rst:954 +#: howto/logging-cookbook.rst:965 msgid "" "If you want to use :class:`concurrent.futures.ProcessPoolExecutor` to start " "your worker processes, you need to create the queue slightly differently. " "Instead of" msgstr "" -#: howto/logging-cookbook.rst:962 +#: howto/logging-cookbook.rst:973 msgid "you should use" msgstr "" -#: howto/logging-cookbook.rst:968 +#: howto/logging-cookbook.rst:979 msgid "and you can then replace the worker creation from this::" msgstr "" -#: howto/logging-cookbook.rst:979 +#: howto/logging-cookbook.rst:990 msgid "to this (remembering to first import :mod:`concurrent.futures`)::" msgstr "" -#: howto/logging-cookbook.rst:987 +#: howto/logging-cookbook.rst:997 +msgid "Deploying Web applications using Gunicorn and uWSGI" +msgstr "" + +#: howto/logging-cookbook.rst:999 +msgid "" +"When deploying Web applications using `Gunicorn `_ or " +"`uWSGI `_ (or similar), " +"multiple worker processes are created to handle client requests. In such " +"environments, avoid creating file-based handlers directly in your web " +"application. Instead, use a :class:`SocketHandler` to log from the web " +"application to a listener in a separate process. This can be set up using a " +"process management tool such as Supervisor - see `Running a logging socket " +"listener in production`_ for more details." +msgstr "" + +#: howto/logging-cookbook.rst:1009 msgid "Using file rotation" msgstr "" -#: howto/logging-cookbook.rst:992 +#: howto/logging-cookbook.rst:1014 msgid "" "Sometimes you want to let a log file grow to a certain size, then open a new " "file and log to that. You may want to keep a certain number of these files, " @@ -488,13 +518,13 @@ msgid "" "RotatingFileHandler`::" msgstr "" -#: howto/logging-cookbook.rst:1024 +#: howto/logging-cookbook.rst:1046 msgid "" "The result should be 6 separate files, each with part of the log history for " "the application:" msgstr "" -#: howto/logging-cookbook.rst:1036 +#: howto/logging-cookbook.rst:1058 msgid "" "The most current file is always :file:`logging_rotatingfile_example.out`, " "and each time it reaches the size limit it is renamed with the suffix " @@ -502,17 +532,17 @@ msgid "" "(``.1`` becomes ``.2``, etc.) and the ``.6`` file is erased." msgstr "" -#: howto/logging-cookbook.rst:1041 +#: howto/logging-cookbook.rst:1063 msgid "" "Obviously this example sets the log length much too small as an extreme " "example. You would want to set *maxBytes* to an appropriate value." msgstr "" -#: howto/logging-cookbook.rst:1047 +#: howto/logging-cookbook.rst:1069 msgid "Use of alternative formatting styles" msgstr "" -#: howto/logging-cookbook.rst:1049 +#: howto/logging-cookbook.rst:1071 msgid "" "When logging was added to the Python standard library, the only way of " "formatting messages with variable content was to use the %-formatting " @@ -521,7 +551,7 @@ msgid "" "Python 2.6)." msgstr "" -#: howto/logging-cookbook.rst:1055 +#: howto/logging-cookbook.rst:1077 msgid "" "Logging (as of 3.2) provides improved support for these two additional " "formatting styles. The :class:`Formatter` class been enhanced to take an " @@ -534,14 +564,14 @@ msgid "" "session to show the possibilities:" msgstr "" -#: howto/logging-cookbook.rst:1089 +#: howto/logging-cookbook.rst:1111 msgid "" "Note that the formatting of logging messages for final output to logs is " "completely independent of how an individual logging message is constructed. " "That can still use %-formatting, as shown here::" msgstr "" -#: howto/logging-cookbook.rst:1097 +#: howto/logging-cookbook.rst:1119 msgid "" "Logging calls (``logger.debug()``, ``logger.info()`` etc.) only take " "positional parameters for the actual logging message itself, with keyword " @@ -557,7 +587,7 @@ msgid "" "strings." msgstr "" -#: howto/logging-cookbook.rst:1110 +#: howto/logging-cookbook.rst:1132 msgid "" "There is, however, a way that you can use {}- and $- formatting to construct " "your individual log messages. Recall that for a message you can use an " @@ -566,7 +596,7 @@ msgid "" "the following two classes::" msgstr "" -#: howto/logging-cookbook.rst:1134 +#: howto/logging-cookbook.rst:1156 msgid "" "Either of these can be used in place of a format string, to allow {}- or $-" "formatting to be used to build the actual \"message\" part which appears in " @@ -577,21 +607,21 @@ msgid "" "used as a synonym/alias for :func:`gettext.gettext` or its brethren)." msgstr "" -#: howto/logging-cookbook.rst:1142 +#: howto/logging-cookbook.rst:1164 msgid "" "The above classes are not included in Python, though they're easy enough to " "copy and paste into your own code. They can be used as follows (assuming " "that they're declared in a module called ``wherever``):" msgstr "" -#: howto/logging-cookbook.rst:1164 +#: howto/logging-cookbook.rst:1186 msgid "" "While the above examples use ``print()`` to show how the formatting works, " "you would of course use ``logger.debug()`` or similar to actually log using " "this approach." msgstr "" -#: howto/logging-cookbook.rst:1168 +#: howto/logging-cookbook.rst:1190 msgid "" "One thing to note is that you pay no significant performance penalty with " "this approach: the actual formatting happens not when you make the logging " @@ -602,23 +632,23 @@ msgid "" "sugar for a constructor call to one of the XXXMessage classes." msgstr "" -#: howto/logging-cookbook.rst:1176 +#: howto/logging-cookbook.rst:1198 msgid "" "If you prefer, you can use a :class:`LoggerAdapter` to achieve a similar " "effect to the above, as in the following example::" msgstr "" -#: howto/logging-cookbook.rst:1207 +#: howto/logging-cookbook.rst:1229 msgid "" "The above script should log the message ``Hello, world!`` when run with " "Python 3.2 or later." msgstr "" -#: howto/logging-cookbook.rst:1216 +#: howto/logging-cookbook.rst:1238 msgid "Customizing ``LogRecord``" msgstr "" -#: howto/logging-cookbook.rst:1218 +#: howto/logging-cookbook.rst:1240 msgid "" "Every logging event is represented by a :class:`LogRecord` instance. When an " "event is logged and not filtered out by a logger's level, a :class:" @@ -629,13 +659,13 @@ msgid "" "was done:" msgstr "" -#: howto/logging-cookbook.rst:1225 +#: howto/logging-cookbook.rst:1247 msgid "" ":meth:`Logger.makeRecord`, which is called in the normal process of logging " "an event. This invoked :class:`LogRecord` directly to create an instance." msgstr "" -#: howto/logging-cookbook.rst:1228 +#: howto/logging-cookbook.rst:1250 msgid "" ":func:`makeLogRecord`, which is called with a dictionary containing " "attributes to be added to the LogRecord. This is typically invoked when a " @@ -644,27 +674,27 @@ msgid "" "`~handlers.HTTPHandler`)." msgstr "" -#: howto/logging-cookbook.rst:1234 +#: howto/logging-cookbook.rst:1256 msgid "" "This has usually meant that if you need to do anything special with a :class:" "`LogRecord`, you've had to do one of the following." msgstr "" -#: howto/logging-cookbook.rst:1237 +#: howto/logging-cookbook.rst:1259 msgid "" "Create your own :class:`Logger` subclass, which overrides :meth:`Logger." "makeRecord`, and set it using :func:`~logging.setLoggerClass` before any " "loggers that you care about are instantiated." msgstr "" -#: howto/logging-cookbook.rst:1240 +#: howto/logging-cookbook.rst:1262 msgid "" "Add a :class:`Filter` to a logger or handler, which does the necessary " "special manipulation you need when its :meth:`~Filter.filter` method is " "called." msgstr "" -#: howto/logging-cookbook.rst:1244 +#: howto/logging-cookbook.rst:1266 msgid "" "The first approach would be a little unwieldy in the scenario where (say) " "several different libraries wanted to do different things. Each would " @@ -672,7 +702,7 @@ msgid "" "last would win." msgstr "" -#: howto/logging-cookbook.rst:1249 +#: howto/logging-cookbook.rst:1271 msgid "" "The second approach works reasonably well for many cases, but does not allow " "you to e.g. use a specialized subclass of :class:`LogRecord`. Library " @@ -681,7 +711,7 @@ msgid "" "would do simply by adding new packages or modules and doing ::" msgstr "" -#: howto/logging-cookbook.rst:1257 +#: howto/logging-cookbook.rst:1279 msgid "" "at module level). It's probably one too many things to think about. " "Developers could also add the filter to a :class:`~logging.NullHandler` " @@ -691,7 +721,7 @@ msgid "" "developer." msgstr "" -#: howto/logging-cookbook.rst:1263 +#: howto/logging-cookbook.rst:1285 msgid "" "In Python 3.2 and later, :class:`~logging.LogRecord` creation is done " "through a factory, which you can specify. The factory is just a callable you " @@ -701,7 +731,7 @@ msgid "" "`LogRecord` is the default setting for the factory." msgstr "" -#: howto/logging-cookbook.rst:1270 +#: howto/logging-cookbook.rst:1292 msgid "" "This approach allows a custom factory to control all aspects of LogRecord " "creation. For example, you could return a subclass, or just add some " @@ -709,7 +739,7 @@ msgid "" "this::" msgstr "" -#: howto/logging-cookbook.rst:1283 +#: howto/logging-cookbook.rst:1305 msgid "" "This pattern allows different libraries to chain factories together, and as " "long as they don't overwrite each other's attributes or unintentionally " @@ -719,70 +749,70 @@ msgid "" "used when the use of a :class:`Filter` does not provide the desired result." msgstr "" -#: howto/logging-cookbook.rst:1294 +#: howto/logging-cookbook.rst:1316 msgid "Subclassing QueueHandler - a ZeroMQ example" msgstr "" -#: howto/logging-cookbook.rst:1296 +#: howto/logging-cookbook.rst:1318 msgid "" "You can use a :class:`QueueHandler` subclass to send messages to other kinds " "of queues, for example a ZeroMQ 'publish' socket. In the example below,the " "socket is created separately and passed to the handler (as its 'queue')::" msgstr "" -#: howto/logging-cookbook.rst:1315 +#: howto/logging-cookbook.rst:1337 msgid "" "Of course there are other ways of organizing this, for example passing in " "the data needed by the handler to create the socket::" msgstr "" -#: howto/logging-cookbook.rst:1333 +#: howto/logging-cookbook.rst:1355 msgid "Subclassing QueueListener - a ZeroMQ example" msgstr "" -#: howto/logging-cookbook.rst:1335 +#: howto/logging-cookbook.rst:1357 msgid "" "You can also subclass :class:`QueueListener` to get messages from other " "kinds of queues, for example a ZeroMQ 'subscribe' socket. Here's an example::" msgstr "" -#: howto/logging-cookbook.rst:1354 +#: howto/logging-cookbook.rst:1376 msgid "Module :mod:`logging`" msgstr "Module :mod:`logging`" -#: howto/logging-cookbook.rst:1354 +#: howto/logging-cookbook.rst:1376 msgid "API reference for the logging module." msgstr "Référence d'API pour le module de journalisation." -#: howto/logging-cookbook.rst:1357 +#: howto/logging-cookbook.rst:1379 msgid "Module :mod:`logging.config`" msgstr "Module :mod:`logging.config`" -#: howto/logging-cookbook.rst:1357 +#: howto/logging-cookbook.rst:1379 msgid "Configuration API for the logging module." msgstr "API de configuration pour le module de journalisation." -#: howto/logging-cookbook.rst:1360 +#: howto/logging-cookbook.rst:1382 msgid "Module :mod:`logging.handlers`" msgstr "Module :mod:`logging.handlers`" -#: howto/logging-cookbook.rst:1360 +#: howto/logging-cookbook.rst:1382 msgid "Useful handlers included with the logging module." msgstr "Gestionnaires utiles inclus avec le module de journalisation." -#: howto/logging-cookbook.rst:1362 +#: howto/logging-cookbook.rst:1384 msgid ":ref:`A basic logging tutorial `" msgstr "" -#: howto/logging-cookbook.rst:1364 +#: howto/logging-cookbook.rst:1386 msgid ":ref:`A more advanced logging tutorial `" msgstr "" -#: howto/logging-cookbook.rst:1368 +#: howto/logging-cookbook.rst:1390 msgid "An example dictionary-based configuration" msgstr "" -#: howto/logging-cookbook.rst:1370 +#: howto/logging-cookbook.rst:1392 msgid "" "Below is an example of a logging configuration dictionary - it's taken from " "the `documentation on the Django project `_ of the Django documentation." msgstr "" -#: howto/logging-cookbook.rst:1433 +#: howto/logging-cookbook.rst:1455 msgid "Using a rotator and namer to customize log rotation processing" msgstr "" -#: howto/logging-cookbook.rst:1435 +#: howto/logging-cookbook.rst:1457 msgid "" "An example of how you can define a namer and rotator is given in the " "following snippet, which shows zlib-based compression of the log file::" msgstr "" -#: howto/logging-cookbook.rst:1453 +#: howto/logging-cookbook.rst:1475 msgid "" "These are not \"true\" .gz files, as they are bare compressed data, with no " "\"container\" such as you’d find in an actual gzip file. This snippet is " "just for illustration purposes." msgstr "" -#: howto/logging-cookbook.rst:1458 +#: howto/logging-cookbook.rst:1480 msgid "A more elaborate multiprocessing example" msgstr "" -#: howto/logging-cookbook.rst:1460 +#: howto/logging-cookbook.rst:1482 msgid "" "The following working example shows how logging can be used with " "multiprocessing using configuration files. The configurations are fairly " @@ -826,7 +856,7 @@ msgid "" "in a real multiprocessing scenario." msgstr "" -#: howto/logging-cookbook.rst:1465 +#: howto/logging-cookbook.rst:1487 msgid "" "In the example, the main process spawns a listener process and some worker " "processes. Each of the main process, the listener and the workers have three " @@ -839,17 +869,17 @@ msgid "" "own scenario." msgstr "" -#: howto/logging-cookbook.rst:1475 +#: howto/logging-cookbook.rst:1497 msgid "" "Here's the script - the docstrings and the comments hopefully explain how it " "works::" msgstr "" -#: howto/logging-cookbook.rst:1687 +#: howto/logging-cookbook.rst:1709 msgid "Inserting a BOM into messages sent to a SysLogHandler" msgstr "" -#: howto/logging-cookbook.rst:1689 +#: howto/logging-cookbook.rst:1711 msgid "" ":rfc:`5424` requires that a Unicode message be sent to a syslog daemon as a " "set of bytes which have the following structure: an optional pure-ASCII " @@ -858,7 +888,7 @@ msgid "" "<5424#section-6>`.)" msgstr "" -#: howto/logging-cookbook.rst:1695 +#: howto/logging-cookbook.rst:1717 msgid "" "In Python 3.1, code was added to :class:`~logging.handlers.SysLogHandler` to " "insert a BOM into the message, but unfortunately, it was implemented " @@ -866,7 +896,7 @@ msgid "" "hence not allowing any pure-ASCII component to appear before it." msgstr "" -#: howto/logging-cookbook.rst:1701 +#: howto/logging-cookbook.rst:1723 msgid "" "As this behaviour is broken, the incorrect BOM insertion code is being " "removed from Python 3.2.4 and later. However, it is not being replaced, and " @@ -875,33 +905,33 @@ msgid "" "encoded using UTF-8, then you need to do the following:" msgstr "" -#: howto/logging-cookbook.rst:1707 +#: howto/logging-cookbook.rst:1729 msgid "" "Attach a :class:`~logging.Formatter` instance to your :class:`~logging." "handlers.SysLogHandler` instance, with a format string such as::" msgstr "" -#: howto/logging-cookbook.rst:1713 +#: howto/logging-cookbook.rst:1735 msgid "" "The Unicode code point U+FEFF, when encoded using UTF-8, will be encoded as " "a UTF-8 BOM -- the byte-string ``b'\\xef\\xbb\\xbf'``." msgstr "" -#: howto/logging-cookbook.rst:1716 +#: howto/logging-cookbook.rst:1738 msgid "" "Replace the ASCII section with whatever placeholders you like, but make sure " "that the data that appears in there after substitution is always ASCII (that " "way, it will remain unchanged after UTF-8 encoding)." msgstr "" -#: howto/logging-cookbook.rst:1720 +#: howto/logging-cookbook.rst:1742 msgid "" "Replace the Unicode section with whatever placeholders you like; if the data " "which appears there after substitution contains characters outside the ASCII " "range, that's fine -- it will be encoded using UTF-8." msgstr "" -#: howto/logging-cookbook.rst:1724 +#: howto/logging-cookbook.rst:1746 msgid "" "The formatted message *will* be encoded using UTF-8 encoding by " "``SysLogHandler``. If you follow the above rules, you should be able to " @@ -910,11 +940,11 @@ msgid "" "daemon may complain." msgstr "" -#: howto/logging-cookbook.rst:1731 +#: howto/logging-cookbook.rst:1753 msgid "Implementing structured logging" msgstr "" -#: howto/logging-cookbook.rst:1733 +#: howto/logging-cookbook.rst:1755 msgid "" "Although most logging messages are intended for reading by humans, and thus " "not readily machine-parseable, there might be circumstances where you want " @@ -926,31 +956,31 @@ msgid "" "machine-parseable manner::" msgstr "" -#: howto/logging-cookbook.rst:1757 +#: howto/logging-cookbook.rst:1779 msgid "If the above script is run, it prints:" msgstr "" -#: howto/logging-cookbook.rst:1763 howto/logging-cookbook.rst:1812 +#: howto/logging-cookbook.rst:1785 howto/logging-cookbook.rst:1834 msgid "" "Note that the order of items might be different according to the version of " "Python used." msgstr "" -#: howto/logging-cookbook.rst:1766 +#: howto/logging-cookbook.rst:1788 msgid "" "If you need more specialised processing, you can use a custom JSON encoder, " "as in the following complete example::" msgstr "" -#: howto/logging-cookbook.rst:1806 +#: howto/logging-cookbook.rst:1828 msgid "When the above script is run, it prints:" msgstr "" -#: howto/logging-cookbook.rst:1821 +#: howto/logging-cookbook.rst:1843 msgid "Customizing handlers with :func:`dictConfig`" msgstr "" -#: howto/logging-cookbook.rst:1823 +#: howto/logging-cookbook.rst:1845 msgid "" "There are times when you want to customize logging handlers in particular " "ways, and if you use :func:`dictConfig` you may be able to do this without " @@ -960,24 +990,24 @@ msgid "" "customize handler creation using a plain function such as::" msgstr "" -#: howto/logging-cookbook.rst:1837 +#: howto/logging-cookbook.rst:1859 msgid "" "You can then specify, in a logging configuration passed to :func:" "`dictConfig`, that a logging handler be created by calling this function::" msgstr "" -#: howto/logging-cookbook.rst:1870 +#: howto/logging-cookbook.rst:1892 msgid "" "In this example I am setting the ownership using the ``pulse`` user and " "group, just for the purposes of illustration. Putting it together into a " "working script, ``chowntest.py``::" msgstr "" -#: howto/logging-cookbook.rst:1917 +#: howto/logging-cookbook.rst:1939 msgid "To run this, you will probably need to run as ``root``:" msgstr "" -#: howto/logging-cookbook.rst:1927 +#: howto/logging-cookbook.rst:1949 msgid "" "Note that this example uses Python 3.3 because that's where :func:`shutil." "chown` makes an appearance. This approach should work with any Python " @@ -986,17 +1016,17 @@ msgid "" "change using e.g. :func:`os.chown`." msgstr "" -#: howto/logging-cookbook.rst:1933 +#: howto/logging-cookbook.rst:1955 msgid "" "In practice, the handler-creating function may be in a utility module " "somewhere in your project. Instead of the line in the configuration::" msgstr "" -#: howto/logging-cookbook.rst:1938 +#: howto/logging-cookbook.rst:1960 msgid "you could use e.g.::" msgstr "" -#: howto/logging-cookbook.rst:1942 +#: howto/logging-cookbook.rst:1964 msgid "" "where ``project.util`` can be replaced with the actual name of the package " "where the function resides. In the above working script, using ``'ext://" @@ -1004,25 +1034,25 @@ msgid "" "resolved by :func:`dictConfig` from the ``ext://`` specification." msgstr "" -#: howto/logging-cookbook.rst:1947 +#: howto/logging-cookbook.rst:1969 msgid "" "This example hopefully also points the way to how you could implement other " "types of file change - e.g. setting specific POSIX permission bits - in the " "same way, using :func:`os.chmod`." msgstr "" -#: howto/logging-cookbook.rst:1951 +#: howto/logging-cookbook.rst:1973 msgid "" "Of course, the approach could also be extended to types of handler other " "than a :class:`~logging.FileHandler` - for example, one of the rotating file " "handlers, or a different type of handler altogether." msgstr "" -#: howto/logging-cookbook.rst:1961 +#: howto/logging-cookbook.rst:1983 msgid "Using particular formatting styles throughout your application" msgstr "" -#: howto/logging-cookbook.rst:1963 +#: howto/logging-cookbook.rst:1985 msgid "" "In Python 3.2, the :class:`~logging.Formatter` gained a ``style`` keyword " "parameter which, while defaulting to ``%`` for backward compatibility, " @@ -1033,7 +1063,7 @@ msgid "" "is constructed." msgstr "" -#: howto/logging-cookbook.rst:1970 +#: howto/logging-cookbook.rst:1992 msgid "" "Logging calls (:meth:`~Logger.debug`, :meth:`~Logger.info` etc.) only take " "positional parameters for the actual logging message itself, with keyword " @@ -1048,7 +1078,7 @@ msgid "" "calls which are out there in existing code will be using %-format strings." msgstr "" -#: howto/logging-cookbook.rst:1982 +#: howto/logging-cookbook.rst:2004 msgid "" "There have been suggestions to associate format styles with specific " "loggers, but that approach also runs into backward compatibility problems " @@ -1056,7 +1086,7 @@ msgid "" "formatting." msgstr "" -#: howto/logging-cookbook.rst:1986 +#: howto/logging-cookbook.rst:2008 msgid "" "For logging to work interoperably between any third-party libraries and your " "code, decisions about formatting need to be made at the level of the " @@ -1064,11 +1094,11 @@ msgid "" "formatting styles can be accommodated." msgstr "" -#: howto/logging-cookbook.rst:1993 +#: howto/logging-cookbook.rst:2015 msgid "Using LogRecord factories" msgstr "" -#: howto/logging-cookbook.rst:1995 +#: howto/logging-cookbook.rst:2017 msgid "" "In Python 3.2, along with the :class:`~logging.Formatter` changes mentioned " "above, the logging package gained the ability to allow users to set their " @@ -1083,17 +1113,17 @@ msgid "" "implementation does." msgstr "" -#: howto/logging-cookbook.rst:2006 +#: howto/logging-cookbook.rst:2028 msgid "" "Refer to the reference documentation on :func:`setLogRecordFactory` and :" "class:`LogRecord` for more information." msgstr "" -#: howto/logging-cookbook.rst:2011 +#: howto/logging-cookbook.rst:2033 msgid "Using custom message objects" msgstr "" -#: howto/logging-cookbook.rst:2013 +#: howto/logging-cookbook.rst:2035 msgid "" "There is another, perhaps simpler way that you can use {}- and $- formatting " "to construct your individual log messages. You may recall (from :ref:" @@ -1103,7 +1133,7 @@ msgid "" "following two classes::" msgstr "" -#: howto/logging-cookbook.rst:2038 +#: howto/logging-cookbook.rst:2060 msgid "" "Either of these can be used in place of a format string, to allow {}- or $-" "formatting to be used to build the actual \"message\" part which appears in " @@ -1114,17 +1144,17 @@ msgid "" "using ``_`` for localization)." msgstr "" -#: howto/logging-cookbook.rst:2046 +#: howto/logging-cookbook.rst:2068 msgid "" "Examples of this approach are given below. Firstly, formatting with :meth:" "`str.format`::" msgstr "" -#: howto/logging-cookbook.rst:2060 +#: howto/logging-cookbook.rst:2082 msgid "Secondly, formatting with :class:`string.Template`::" msgstr "" -#: howto/logging-cookbook.rst:2067 +#: howto/logging-cookbook.rst:2089 msgid "" "One thing to note is that you pay no significant performance penalty with " "this approach: the actual formatting happens not when you make the logging " @@ -1136,11 +1166,11 @@ msgid "" "above." msgstr "" -#: howto/logging-cookbook.rst:2081 +#: howto/logging-cookbook.rst:2103 msgid "Configuring filters with :func:`dictConfig`" msgstr "" -#: howto/logging-cookbook.rst:2083 +#: howto/logging-cookbook.rst:2105 msgid "" "You *can* configure filters using :func:`~logging.config.dictConfig`, though " "it might not be obvious at first glance how to do it (hence this recipe). " @@ -1155,22 +1185,22 @@ msgid "" "complete example::" msgstr "" -#: howto/logging-cookbook.rst:2136 +#: howto/logging-cookbook.rst:2158 msgid "" "This example shows how you can pass configuration data to the callable which " "constructs the instance, in the form of keyword parameters. When run, the " "above script will print:" msgstr "" -#: howto/logging-cookbook.rst:2144 +#: howto/logging-cookbook.rst:2166 msgid "which shows that the filter is working as configured." msgstr "" -#: howto/logging-cookbook.rst:2146 +#: howto/logging-cookbook.rst:2168 msgid "A couple of extra points to note:" msgstr "" -#: howto/logging-cookbook.rst:2148 +#: howto/logging-cookbook.rst:2170 msgid "" "If you can't refer to the callable directly in the configuration (e.g. if it " "lives in a different module, and you can't import it directly where the " @@ -1180,7 +1210,7 @@ msgid "" "the above example." msgstr "" -#: howto/logging-cookbook.rst:2155 +#: howto/logging-cookbook.rst:2177 msgid "" "As well as for filters, this technique can also be used to configure custom " "handlers and formatters. See :ref:`logging-config-dict-userdef` for more " @@ -1189,11 +1219,11 @@ msgid "" "above." msgstr "" -#: howto/logging-cookbook.rst:2164 +#: howto/logging-cookbook.rst:2186 msgid "Customized exception formatting" msgstr "" -#: howto/logging-cookbook.rst:2166 +#: howto/logging-cookbook.rst:2188 msgid "" "There might be times when you want to do customized exception formatting - " "for argument's sake, let's say you want exactly one line per logged event, " @@ -1201,22 +1231,22 @@ msgid "" "formatter class, as shown in the following example::" msgstr "" -#: howto/logging-cookbook.rst:2207 +#: howto/logging-cookbook.rst:2229 msgid "When run, this produces a file with exactly two lines:" msgstr "" -#: howto/logging-cookbook.rst:2214 +#: howto/logging-cookbook.rst:2236 msgid "" "While the above treatment is simplistic, it points the way to how exception " "information can be formatted to your liking. The :mod:`traceback` module may " "be helpful for more specialized needs." msgstr "" -#: howto/logging-cookbook.rst:2221 +#: howto/logging-cookbook.rst:2243 msgid "Speaking logging messages" msgstr "" -#: howto/logging-cookbook.rst:2223 +#: howto/logging-cookbook.rst:2245 msgid "" "There might be situations when it is desirable to have logging messages " "rendered in an audible rather than a visible format. This is easy to do if " @@ -1233,24 +1263,24 @@ msgid "" "approach, which assumes that the ``espeak`` TTS package is available::" msgstr "" -#: howto/logging-cookbook.rst:2265 +#: howto/logging-cookbook.rst:2287 msgid "" "When run, this script should say \"Hello\" and then \"Goodbye\" in a female " "voice." msgstr "" -#: howto/logging-cookbook.rst:2267 +#: howto/logging-cookbook.rst:2289 msgid "" "The above approach can, of course, be adapted to other TTS systems and even " "other systems altogether which can process messages via external programs " "run from a command line." msgstr "" -#: howto/logging-cookbook.rst:2275 +#: howto/logging-cookbook.rst:2297 msgid "Buffering logging messages and outputting them conditionally" msgstr "" -#: howto/logging-cookbook.rst:2277 +#: howto/logging-cookbook.rst:2299 msgid "" "There might be situations where you want to log messages in a temporary area " "and only output them if a certain condition occurs. For example, you may " @@ -1260,7 +1290,7 @@ msgid "" "debug information to be output as well as the error." msgstr "" -#: howto/logging-cookbook.rst:2284 +#: howto/logging-cookbook.rst:2306 msgid "" "Here is an example which shows how you could do this using a decorator for " "your functions where you want logging to behave this way. It makes use of " @@ -1273,7 +1303,7 @@ msgid "" "subclass of ``MemoryHandler`` if you want custom flushing behavior." msgstr "" -#: howto/logging-cookbook.rst:2294 +#: howto/logging-cookbook.rst:2316 msgid "" "The example script has a simple function, ``foo``, which just cycles through " "all the logging levels, writing to ``sys.stderr`` to say what level it's " @@ -1282,7 +1312,7 @@ msgid "" "levels - otherwise, it only logs at DEBUG, INFO and WARNING levels." msgstr "" -#: howto/logging-cookbook.rst:2300 +#: howto/logging-cookbook.rst:2322 msgid "" "The script just arranges to decorate ``foo`` with a decorator which will do " "the conditional logging that's required. The decorator takes a logger as a " @@ -1294,36 +1324,36 @@ msgid "" "respectively." msgstr "" -#: howto/logging-cookbook.rst:2308 +#: howto/logging-cookbook.rst:2330 msgid "Here's the script::" msgstr "" -#: howto/logging-cookbook.rst:2371 +#: howto/logging-cookbook.rst:2393 msgid "When this script is run, the following output should be observed:" msgstr "" -#: howto/logging-cookbook.rst:2401 +#: howto/logging-cookbook.rst:2423 msgid "" "As you can see, actual logging output only occurs when an event is logged " "whose severity is ERROR or greater, but in that case, any previous events at " "lower severities are also logged." msgstr "" -#: howto/logging-cookbook.rst:2405 +#: howto/logging-cookbook.rst:2427 msgid "You can of course use the conventional means of decoration::" msgstr "" -#: howto/logging-cookbook.rst:2415 +#: howto/logging-cookbook.rst:2437 msgid "Formatting times using UTC (GMT) via configuration" msgstr "" -#: howto/logging-cookbook.rst:2417 +#: howto/logging-cookbook.rst:2439 msgid "" "Sometimes you want to format times using UTC, which can be done using a " "class such as `UTCFormatter`, shown below::" msgstr "" -#: howto/logging-cookbook.rst:2426 +#: howto/logging-cookbook.rst:2448 msgid "" "and you can then use the ``UTCFormatter`` in your code instead of :class:" "`~logging.Formatter`. If you want to do that via configuration, you can use " @@ -1331,21 +1361,21 @@ msgid "" "the following complete example::" msgstr "" -#: howto/logging-cookbook.rst:2469 +#: howto/logging-cookbook.rst:2491 msgid "When this script is run, it should print something like:" msgstr "" -#: howto/logging-cookbook.rst:2476 +#: howto/logging-cookbook.rst:2498 msgid "" "showing how the time is formatted both as local time and UTC, one for each " "handler." msgstr "" -#: howto/logging-cookbook.rst:2483 +#: howto/logging-cookbook.rst:2505 msgid "Using a context manager for selective logging" msgstr "" -#: howto/logging-cookbook.rst:2485 +#: howto/logging-cookbook.rst:2507 msgid "" "There are times when it would be useful to temporarily change the logging " "configuration and revert it back after doing something. For this, a context " @@ -1355,7 +1385,7 @@ msgid "" "scope of the context manager::" msgstr "" -#: howto/logging-cookbook.rst:2518 +#: howto/logging-cookbook.rst:2540 msgid "" "If you specify a level value, the logger's level is set to that value in the " "scope of the with block covered by the context manager. If you specify a " @@ -1364,13 +1394,13 @@ msgid "" "block exit - you could do this if you don't need the handler any more." msgstr "" -#: howto/logging-cookbook.rst:2524 +#: howto/logging-cookbook.rst:2546 msgid "" "To illustrate how it works, we can add the following block of code to the " "above::" msgstr "" -#: howto/logging-cookbook.rst:2542 +#: howto/logging-cookbook.rst:2564 msgid "" "We initially set the logger's level to ``INFO``, so message #1 appears and " "message #2 doesn't. We then change the level to ``DEBUG`` temporarily in the " @@ -1383,56 +1413,56 @@ msgid "" "(like message #1) whereas message #7 doesn't (just like message #2)." msgstr "" -#: howto/logging-cookbook.rst:2552 +#: howto/logging-cookbook.rst:2574 msgid "If we run the resulting script, the result is as follows:" msgstr "" -#: howto/logging-cookbook.rst:2563 +#: howto/logging-cookbook.rst:2585 msgid "" "If we run it again, but pipe ``stderr`` to ``/dev/null``, we see the " "following, which is the only message written to ``stdout``:" msgstr "" -#: howto/logging-cookbook.rst:2571 +#: howto/logging-cookbook.rst:2593 msgid "Once again, but piping ``stdout`` to ``/dev/null``, we get:" msgstr "" -#: howto/logging-cookbook.rst:2581 +#: howto/logging-cookbook.rst:2603 msgid "" "In this case, the message #5 printed to ``stdout`` doesn't appear, as " "expected." msgstr "" -#: howto/logging-cookbook.rst:2583 +#: howto/logging-cookbook.rst:2605 msgid "" "Of course, the approach described here can be generalised, for example to " "attach logging filters temporarily. Note that the above code works in Python " "2 as well as Python 3." msgstr "" -#: howto/logging-cookbook.rst:2591 +#: howto/logging-cookbook.rst:2613 msgid "A CLI application starter template" msgstr "" -#: howto/logging-cookbook.rst:2593 +#: howto/logging-cookbook.rst:2615 msgid "Here's an example which shows how you can:" msgstr "" -#: howto/logging-cookbook.rst:2595 +#: howto/logging-cookbook.rst:2617 msgid "Use a logging level based on command-line arguments" msgstr "" -#: howto/logging-cookbook.rst:2596 +#: howto/logging-cookbook.rst:2618 msgid "" "Dispatch to multiple subcommands in separate files, all logging at the same " "level in a consistent way" msgstr "" -#: howto/logging-cookbook.rst:2598 +#: howto/logging-cookbook.rst:2620 msgid "Make use of simple, minimal configuration" msgstr "" -#: howto/logging-cookbook.rst:2600 +#: howto/logging-cookbook.rst:2622 msgid "" "Suppose we have a command-line application whose job is to stop, start or " "restart some services. This could be organised for the purposes of " @@ -1443,53 +1473,53 @@ msgid "" "``logging.INFO``. Here's one way that ``app.py`` could be written::" msgstr "" -#: howto/logging-cookbook.rst:2649 +#: howto/logging-cookbook.rst:2671 msgid "" "And the ``start``, ``stop`` and ``restart`` commands can be implemented in " "separate modules, like so for starting::" msgstr "" -#: howto/logging-cookbook.rst:2662 +#: howto/logging-cookbook.rst:2684 msgid "and thus for stopping::" msgstr "" -#: howto/logging-cookbook.rst:2683 +#: howto/logging-cookbook.rst:2705 msgid "and similarly for restarting::" msgstr "" -#: howto/logging-cookbook.rst:2704 +#: howto/logging-cookbook.rst:2726 msgid "" "If we run this application with the default log level, we get output like " "this:" msgstr "" -#: howto/logging-cookbook.rst:2717 +#: howto/logging-cookbook.rst:2739 msgid "" "The first word is the logging level, and the second word is the module or " "package name of the place where the event was logged." msgstr "" -#: howto/logging-cookbook.rst:2720 +#: howto/logging-cookbook.rst:2742 msgid "" "If we change the logging level, then we can change the information sent to " "the log. For example, if we want more information:" msgstr "" -#: howto/logging-cookbook.rst:2737 +#: howto/logging-cookbook.rst:2759 msgid "And if we want less:" msgstr "" -#: howto/logging-cookbook.rst:2745 +#: howto/logging-cookbook.rst:2767 msgid "" "In this case, the commands don't print anything to the console, since " "nothing at ``WARNING`` level or above is logged by them." msgstr "" -#: howto/logging-cookbook.rst:2751 +#: howto/logging-cookbook.rst:2773 msgid "A Qt GUI for logging" msgstr "" -#: howto/logging-cookbook.rst:2753 +#: howto/logging-cookbook.rst:2775 msgid "" "A question that comes up from time to time is about how to log to a GUI " "application. The `Qt `_ framework is a popular cross-" @@ -1497,7 +1527,7 @@ msgid "" "project/PySide2/>`_ or `PyQt5 `_ libraries." msgstr "" -#: howto/logging-cookbook.rst:2759 +#: howto/logging-cookbook.rst:2781 msgid "" "The following example shows how to log to a Qt GUI. This introduces a simple " "``QtHandler`` class which takes a callable, which should be a slot in the " @@ -1507,14 +1537,14 @@ msgid "" "logging messages at random levels with random short delays in between)." msgstr "" -#: howto/logging-cookbook.rst:2766 +#: howto/logging-cookbook.rst:2788 msgid "" "The worker thread is implemented using Qt's ``QThread`` class rather than " "the :mod:`threading` module, as there are circumstances where one has to use " "``QThread``, which offers better integration with other ``Qt`` components." msgstr "" -#: howto/logging-cookbook.rst:2770 +#: howto/logging-cookbook.rst:2792 msgid "" "The code should work with recent releases of either ``PySide2`` or " "``PyQt5``. You should be able to adapt the approach to earlier versions of " @@ -1522,11 +1552,11 @@ msgid "" "information." msgstr "" -#: howto/logging-cookbook.rst:2987 +#: howto/logging-cookbook.rst:3009 msgid "Patterns to avoid" msgstr "" -#: howto/logging-cookbook.rst:2989 +#: howto/logging-cookbook.rst:3011 msgid "" "Although the preceding sections have described ways of doing things you " "might need to do or deal with, it is worth mentioning some usage patterns " @@ -1534,11 +1564,11 @@ msgid "" "The following sections are in no particular order." msgstr "" -#: howto/logging-cookbook.rst:2996 +#: howto/logging-cookbook.rst:3018 msgid "Opening the same log file multiple times" msgstr "" -#: howto/logging-cookbook.rst:2998 +#: howto/logging-cookbook.rst:3020 msgid "" "On Windows, you will generally not be able to open the same file multiple " "times as this will lead to a \"file is in use by another process\" error. " @@ -1546,32 +1576,32 @@ msgid "" "file multiple times. This could be done accidentally, for example by:" msgstr "" -#: howto/logging-cookbook.rst:3003 +#: howto/logging-cookbook.rst:3025 msgid "" "Adding a file handler more than once which references the same file (e.g. by " "a copy/paste/forget-to-change error)." msgstr "" -#: howto/logging-cookbook.rst:3006 +#: howto/logging-cookbook.rst:3028 msgid "" "Opening two files that look different, as they have different names, but are " "the same because one is a symbolic link to the other." msgstr "" -#: howto/logging-cookbook.rst:3009 +#: howto/logging-cookbook.rst:3031 msgid "" "Forking a process, following which both parent and child have a reference to " "the same file. This might be through use of the :mod:`multiprocessing` " "module, for example." msgstr "" -#: howto/logging-cookbook.rst:3013 +#: howto/logging-cookbook.rst:3035 msgid "" "Opening a file multiple times might *appear* to work most of the time, but " "can lead to a number of problems in practice:" msgstr "" -#: howto/logging-cookbook.rst:3016 +#: howto/logging-cookbook.rst:3038 msgid "" "Logging output can be garbled because multiple threads or processes try to " "write to the same file. Although logging guards against concurrent use of " @@ -1580,7 +1610,7 @@ msgid "" "different handler instances which happen to point to the same file." msgstr "" -#: howto/logging-cookbook.rst:3022 +#: howto/logging-cookbook.rst:3044 msgid "" "An attempt to delete a file (e.g. during file rotation) silently fails, " "because there is another reference pointing to it. This can lead to " @@ -1588,17 +1618,17 @@ msgid "" "places, or are lost altogether." msgstr "" -#: howto/logging-cookbook.rst:3027 +#: howto/logging-cookbook.rst:3049 msgid "" "Use the techniques outlined in :ref:`multiple-processes` to circumvent such " "issues." msgstr "" -#: howto/logging-cookbook.rst:3031 +#: howto/logging-cookbook.rst:3053 msgid "Using loggers as attributes in a class or passing them as parameters" msgstr "" -#: howto/logging-cookbook.rst:3033 +#: howto/logging-cookbook.rst:3055 msgid "" "While there might be unusual cases where you'll need to do this, in general " "there is no point because loggers are singletons. Code can always access a " @@ -1609,12 +1639,12 @@ msgid "" "module (and not the class) is the unit of software decomposition." msgstr "" -#: howto/logging-cookbook.rst:3043 +#: howto/logging-cookbook.rst:3065 msgid "" "Adding handlers other than :class:`NullHandler` to a logger in a library" msgstr "" -#: howto/logging-cookbook.rst:3045 +#: howto/logging-cookbook.rst:3067 msgid "" "Configuring logging by adding handlers, formatters and filters is the " "responsibility of the application developer, not the library developer. If " @@ -1622,11 +1652,11 @@ msgid "" "your loggers other than a :class:`~logging.NullHandler` instance." msgstr "" -#: howto/logging-cookbook.rst:3052 +#: howto/logging-cookbook.rst:3074 msgid "Creating a lot of loggers" msgstr "" -#: howto/logging-cookbook.rst:3054 +#: howto/logging-cookbook.rst:3076 msgid "" "Loggers are singletons that are never freed during a script execution, and " "so creating lots of loggers will use up memory which can't then be freed. " diff --git a/library/2to3.po b/library/2to3.po index 5bae2df5..aa46413a 100644 --- a/library/2to3.po +++ b/library/2to3.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-04-29 13:57+0200\n" "Last-Translator: Dimitri Merejkowsky \n" "Language-Team: FRENCH \n" @@ -269,11 +269,11 @@ msgstr "" "Remplace les noms de méthodes obsolètes du module :mod:`unittest` par les " "bons." -#: library/2to3.rst:350 +#: library/2to3.rst:351 msgid "From" msgstr "De" -#: library/2to3.rst:350 +#: library/2to3.rst:351 msgid "To" msgstr "À" @@ -558,16 +558,19 @@ msgstr "" "`~iterator.__next__`." #: library/2to3.rst:336 -msgid "Renames :meth:`__nonzero__` to :meth:`~object.__bool__`." +#, fuzzy +msgid "" +"Renames definitions of methods called :meth:`__nonzero__` to :meth:`~object." +"__bool__`." msgstr "Renomme :meth:`__nonzero__` en :meth:`~object.__bool__`." -#: library/2to3.rst:340 +#: library/2to3.rst:341 msgid "Converts octal literals into the new syntax." msgstr "" "Convertit les nombres écrits littéralement en octal dans leur nouvelle " "syntaxe." -#: library/2to3.rst:344 +#: library/2to3.rst:345 msgid "" "Converts calls to various functions in the :mod:`operator` module to other, " "but equivalent, function calls. When needed, the appropriate ``import`` " @@ -579,63 +582,63 @@ msgstr "" "``import`` appropriées sont ajoutées, e.g. ``import collections.abc``. Les " "correspondances suivantes sont appliquées :" -#: library/2to3.rst:352 +#: library/2to3.rst:353 msgid "``operator.isCallable(obj)``" msgstr "``operator.isCallable(obj)``" -#: library/2to3.rst:352 +#: library/2to3.rst:353 msgid "``callable(obj)``" msgstr "``callable(obj)``" -#: library/2to3.rst:353 +#: library/2to3.rst:354 msgid "``operator.sequenceIncludes(obj)``" msgstr "``operator.sequenceIncludes(obj)``" -#: library/2to3.rst:353 +#: library/2to3.rst:354 msgid "``operator.contains(obj)``" msgstr "``operator.contains(obj)``" -#: library/2to3.rst:354 +#: library/2to3.rst:355 msgid "``operator.isSequenceType(obj)``" msgstr "``operator.isSequenceType(obj)``" -#: library/2to3.rst:354 +#: library/2to3.rst:355 msgid "``isinstance(obj, collections.abc.Sequence)``" msgstr "``isinstance(obj, collections.abc.Sequence)``" -#: library/2to3.rst:355 +#: library/2to3.rst:356 msgid "``operator.isMappingType(obj)``" msgstr "``operator.isMappingType(obj)``" -#: library/2to3.rst:355 +#: library/2to3.rst:356 msgid "``isinstance(obj, collections.abc.Mapping)``" msgstr "``isinstance(obj, collections.abc.Mapping)``" -#: library/2to3.rst:356 +#: library/2to3.rst:357 msgid "``operator.isNumberType(obj)``" msgstr "``operator.isNumberType(obj)``" -#: library/2to3.rst:356 +#: library/2to3.rst:357 msgid "``isinstance(obj, numbers.Number)``" msgstr "``isinstance(obj, numbers.Number)``" -#: library/2to3.rst:357 +#: library/2to3.rst:358 msgid "``operator.repeat(obj, n)``" msgstr "``operator.repeat(obj, n)``" -#: library/2to3.rst:357 +#: library/2to3.rst:358 msgid "``operator.mul(obj, n)``" msgstr "``operator.mul(obj, n)``" -#: library/2to3.rst:358 +#: library/2to3.rst:359 msgid "``operator.irepeat(obj, n)``" msgstr "``operator.irepeat(obj, n)``" -#: library/2to3.rst:358 +#: library/2to3.rst:359 msgid "``operator.imul(obj, n)``" msgstr "``operator.imul(obj, n)``" -#: library/2to3.rst:363 +#: library/2to3.rst:364 msgid "" "Add extra parenthesis where they are required in list comprehensions. For " "example, ``[x for x in 1, 2]`` becomes ``[x for x in (1, 2)]``." @@ -644,11 +647,11 @@ msgstr "" "les listes en compréhension. Par exemple, ``[x for x in 1, 2]`` devient " "``[x for x in (1, 2)]``." -#: library/2to3.rst:368 +#: library/2to3.rst:369 msgid "Converts the ``print`` statement to the :func:`print` function." msgstr "Convertit l'instruction ``print`` en fonction :func:`print`." -#: library/2to3.rst:372 +#: library/2to3.rst:373 msgid "" "Converts ``raise E, V`` to ``raise E(V)``, and ``raise E, V, T`` to ``raise " "E(V).with_traceback(T)``. If ``E`` is a tuple, the translation will be " @@ -659,30 +662,30 @@ msgstr "" "incorrecte puisque la substitution de *n*-uplets aux exceptions a été " "supprimée en 3.0." -#: library/2to3.rst:378 +#: library/2to3.rst:379 msgid "Converts :func:`raw_input` to :func:`input`." msgstr "Convertit :func:`raw_input` en :func:`input`." -#: library/2to3.rst:382 +#: library/2to3.rst:383 msgid "Handles the move of :func:`reduce` to :func:`functools.reduce`." msgstr "Gère le déplacement de :func:`reduce` à :func:`functools.reduce`." -#: library/2to3.rst:386 +#: library/2to3.rst:387 msgid "Converts :func:`reload` to :func:`importlib.reload`." msgstr "" "Convertit les appels à :func:`reload` en appels à :func:`importlib.reload`." -#: library/2to3.rst:390 +#: library/2to3.rst:391 msgid "Changes :data:`sys.maxint` to :data:`sys.maxsize`." msgstr "Change :data:`sys.maxint` en :data:`sys.maxsize`." -#: library/2to3.rst:394 +#: library/2to3.rst:395 msgid "Replaces backtick repr with the :func:`repr` function." msgstr "" "Remplace les accents graves utilisés comme ``repr`` par des appels à :func:" "`repr`." -#: library/2to3.rst:398 +#: library/2to3.rst:399 msgid "" "Replaces use of the :class:`set` constructor with set literals. This fixer " "is optional." @@ -690,11 +693,11 @@ msgstr "" "Remplace l'usage du constructeur de :class:`set` par les ensembles " "littéraux. Ce correcteur est optionnel." -#: library/2to3.rst:403 +#: library/2to3.rst:404 msgid "Renames :exc:`StandardError` to :exc:`Exception`." msgstr "Renomme :exc:`StandardError` en :exc:`Exception`." -#: library/2to3.rst:407 +#: library/2to3.rst:408 msgid "" "Changes the deprecated :data:`sys.exc_value`, :data:`sys.exc_type`, :data:" "`sys.exc_traceback` to use :func:`sys.exc_info`." @@ -702,12 +705,12 @@ msgstr "" "Change les :data:`sys.exc_value`, :data:`sys.exc_type`, :data:`sys." "exc_traceback` dépréciés en :func:`sys.exc_info`." -#: library/2to3.rst:412 +#: library/2to3.rst:413 msgid "Fixes the API change in generator's :meth:`throw` method." msgstr "" "Fixe le changement de l'API dans la méthode :meth:`throw` du générateur." -#: library/2to3.rst:416 +#: library/2to3.rst:417 msgid "" "Removes implicit tuple parameter unpacking. This fixer inserts temporary " "variables." @@ -715,7 +718,7 @@ msgstr "" "Supprime la décompression implicite des paramètres d'un *n*-uplet. Ce " "correcteur ajoute des variables temporaires." -#: library/2to3.rst:421 +#: library/2to3.rst:422 msgid "" "Fixes code broken from the removal of some members in the :mod:`types` " "module." @@ -723,11 +726,11 @@ msgstr "" "Fixe le code cassé par la suppression de certains membres du module :mod:" "`types`." -#: library/2to3.rst:426 +#: library/2to3.rst:427 msgid "Renames :class:`unicode` to :class:`str`." msgstr "Renomme :class:`unicode` en :class:`str`." -#: library/2to3.rst:430 +#: library/2to3.rst:431 msgid "" "Handles the rename of :mod:`urllib` and :mod:`urllib2` to the :mod:`urllib` " "package." @@ -735,7 +738,7 @@ msgstr "" "Gère le renommage des paquets :mod:`urllib` et :mod:`urllib2` en :mod:" "`urllib`." -#: library/2to3.rst:435 +#: library/2to3.rst:436 msgid "" "Removes excess whitespace from comma separated items. This fixer is " "optional." @@ -743,7 +746,7 @@ msgstr "" "Supprime l'espace excédentaire des éléments séparés par des virgules. Ce " "correcteur est optionnel." -#: library/2to3.rst:440 +#: library/2to3.rst:441 msgid "" "Renames :func:`xrange` to :func:`range` and wraps existing :func:`range` " "calls with :class:`list`." @@ -751,11 +754,11 @@ msgstr "" "Renomme la fonction :func:`xrange` en :func:`range` et encapsule les appels " "à la fonction :func:`range` avec des appels à :class:`list`." -#: library/2to3.rst:445 +#: library/2to3.rst:446 msgid "Changes ``for x in file.xreadlines()`` to ``for x in file``." msgstr "Change ``for x in file.xreadlines()`` en ``for x in file``." -#: library/2to3.rst:449 +#: library/2to3.rst:450 msgid "" "Wraps :func:`zip` usage in a :class:`list` call. This is disabled when " "``from future_builtins import zip`` appears." @@ -763,15 +766,15 @@ msgstr "" "Encapsule l'usage de :func:`zip` dans un appel à :class:`list`. Ceci est " "désactivé lorsque ``from future_builtins import zip`` apparaît." -#: library/2to3.rst:454 +#: library/2to3.rst:455 msgid ":mod:`lib2to3` - 2to3's library" msgstr ":mod:`lib2to3` — la bibliothèque de *2to3*" -#: library/2to3.rst:463 +#: library/2to3.rst:464 msgid "**Source code:** :source:`Lib/lib2to3/`" msgstr "**Code source:** :source:`Lib/lib2to3/`" -#: library/2to3.rst:476 +#: library/2to3.rst:477 #, fuzzy msgid "" "Python 3.9 switched to a PEG parser (see :pep:`617`) while lib2to3 is using " @@ -791,7 +794,7 @@ msgstr "" "une approche alternative, vous pouvez utiliser des outils tiers tels que " "`LibCST`_ ou `parso`_." -#: library/2to3.rst:479 +#: library/2to3.rst:480 msgid "" "The :mod:`lib2to3` API should be considered unstable and may change " "drastically in the future." diff --git a/library/asyncio-eventloop.po b/library/asyncio-eventloop.po index bbb02562..d6b42a0d 100644 --- a/library/asyncio-eventloop.po +++ b/library/asyncio-eventloop.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-27 10:27+0100\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2019-06-10 15:50+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -101,7 +101,7 @@ msgid "Set *loop* as a current event loop for the current OS thread." msgstr "" #: library/asyncio-eventloop.rst:67 -msgid "Create a new event loop object." +msgid "Create and return a new event loop object." msgstr "" #: library/asyncio-eventloop.rst:69 @@ -247,7 +247,7 @@ msgid "" msgstr "" #: library/asyncio-eventloop.rst:171 library/asyncio-eventloop.rst:1088 -#: library/asyncio-eventloop.rst:1473 +#: library/asyncio-eventloop.rst:1474 msgid "Example::" msgstr "Exemple ::" @@ -1549,39 +1549,39 @@ msgstr "" #: library/asyncio-eventloop.rst:1250 msgid "" -"The default asyncio event loop on **Windows** does not support subprocesses. " -"See :ref:`Subprocess Support on Windows ` for " -"details." +"On Windows, the default event loop :class:`ProactorEventLoop` supports " +"subprocesses, whereas :class:`SelectorEventLoop` does not. See :ref:" +"`Subprocess Support on Windows ` for details." msgstr "" -#: library/asyncio-eventloop.rst:1258 +#: library/asyncio-eventloop.rst:1259 msgid "" "Create a subprocess from one or more string arguments specified by *args*." msgstr "" -#: library/asyncio-eventloop.rst:1261 +#: library/asyncio-eventloop.rst:1262 msgid "*args* must be a list of strings represented by:" msgstr "" -#: library/asyncio-eventloop.rst:1263 +#: library/asyncio-eventloop.rst:1264 #, fuzzy msgid ":class:`str`;" msgstr ":class:`str`" -#: library/asyncio-eventloop.rst:1264 +#: library/asyncio-eventloop.rst:1265 msgid "" "or :class:`bytes`, encoded to the :ref:`filesystem encoding `." msgstr "" -#: library/asyncio-eventloop.rst:1267 +#: library/asyncio-eventloop.rst:1268 msgid "" "The first string specifies the program executable, and the remaining strings " "specify the arguments. Together, string arguments form the ``argv`` of the " "program." msgstr "" -#: library/asyncio-eventloop.rst:1271 +#: library/asyncio-eventloop.rst:1272 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=False`` and the list of strings passed as the first " @@ -1589,133 +1589,133 @@ msgid "" "which is list of strings, *subprocess_exec* takes multiple string arguments." msgstr "" -#: library/asyncio-eventloop.rst:1277 +#: library/asyncio-eventloop.rst:1278 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`asyncio.SubprocessProtocol` class." msgstr "" -#: library/asyncio-eventloop.rst:1280 +#: library/asyncio-eventloop.rst:1281 msgid "Other parameters:" msgstr "Autres paramètres :" -#: library/asyncio-eventloop.rst:1282 +#: library/asyncio-eventloop.rst:1283 msgid "*stdin* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1284 +#: library/asyncio-eventloop.rst:1285 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard input stream using :meth:`~loop.connect_write_pipe`" msgstr "" -#: library/asyncio-eventloop.rst:1287 library/asyncio-eventloop.rst:1299 -#: library/asyncio-eventloop.rst:1311 +#: library/asyncio-eventloop.rst:1288 library/asyncio-eventloop.rst:1300 +#: library/asyncio-eventloop.rst:1312 msgid "" "the :const:`subprocess.PIPE` constant (default) which will create a new pipe " "and connect it," msgstr "" -#: library/asyncio-eventloop.rst:1289 library/asyncio-eventloop.rst:1301 -#: library/asyncio-eventloop.rst:1313 +#: library/asyncio-eventloop.rst:1290 library/asyncio-eventloop.rst:1302 +#: library/asyncio-eventloop.rst:1314 msgid "" "the value ``None`` which will make the subprocess inherit the file " "descriptor from this process" msgstr "" -#: library/asyncio-eventloop.rst:1291 library/asyncio-eventloop.rst:1303 -#: library/asyncio-eventloop.rst:1315 +#: library/asyncio-eventloop.rst:1292 library/asyncio-eventloop.rst:1304 +#: library/asyncio-eventloop.rst:1316 msgid "" "the :const:`subprocess.DEVNULL` constant which indicates that the special :" "data:`os.devnull` file will be used" msgstr "" -#: library/asyncio-eventloop.rst:1294 +#: library/asyncio-eventloop.rst:1295 msgid "*stdout* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1296 +#: library/asyncio-eventloop.rst:1297 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard output stream using :meth:`~loop.connect_write_pipe`" msgstr "" -#: library/asyncio-eventloop.rst:1306 +#: library/asyncio-eventloop.rst:1307 msgid "*stderr* can be any of these:" msgstr "" -#: library/asyncio-eventloop.rst:1308 +#: library/asyncio-eventloop.rst:1309 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard error stream using :meth:`~loop.connect_write_pipe`" msgstr "" -#: library/asyncio-eventloop.rst:1317 +#: library/asyncio-eventloop.rst:1318 msgid "" "the :const:`subprocess.STDOUT` constant which will connect the standard " "error stream to the process' standard output stream" msgstr "" -#: library/asyncio-eventloop.rst:1320 +#: library/asyncio-eventloop.rst:1321 msgid "" "All other keyword arguments are passed to :class:`subprocess.Popen` without " "interpretation, except for *bufsize*, *universal_newlines*, *shell*, *text*, " "*encoding* and *errors*, which should not be specified at all." msgstr "" -#: library/asyncio-eventloop.rst:1325 +#: library/asyncio-eventloop.rst:1326 msgid "" "The ``asyncio`` subprocess API does not support decoding the streams as " "text. :func:`bytes.decode` can be used to convert the bytes returned from " "the stream to text." msgstr "" -#: library/asyncio-eventloop.rst:1329 +#: library/asyncio-eventloop.rst:1330 msgid "" "See the constructor of the :class:`subprocess.Popen` class for documentation " "on other arguments." msgstr "" -#: library/asyncio-eventloop.rst:1332 +#: library/asyncio-eventloop.rst:1333 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`asyncio.SubprocessTransport` base class and *protocol* is an " "object instantiated by the *protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1340 +#: library/asyncio-eventloop.rst:1341 msgid "" "Create a subprocess from *cmd*, which can be a :class:`str` or a :class:" "`bytes` string encoded to the :ref:`filesystem encoding `, using the platform's \"shell\" syntax." msgstr "" -#: library/asyncio-eventloop.rst:1345 +#: library/asyncio-eventloop.rst:1346 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=True``." msgstr "" -#: library/asyncio-eventloop.rst:1348 +#: library/asyncio-eventloop.rst:1349 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`SubprocessProtocol` class." msgstr "" -#: library/asyncio-eventloop.rst:1351 +#: library/asyncio-eventloop.rst:1352 msgid "" "See :meth:`~loop.subprocess_exec` for more details about the remaining " "arguments." msgstr "" -#: library/asyncio-eventloop.rst:1354 +#: library/asyncio-eventloop.rst:1355 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`SubprocessTransport` base class and *protocol* is an object " "instantiated by the *protocol_factory*." msgstr "" -#: library/asyncio-eventloop.rst:1359 +#: library/asyncio-eventloop.rst:1360 msgid "" "It is the application's responsibility to ensure that all whitespace and " "special characters are quoted appropriately to avoid `shell injection " @@ -1725,105 +1725,105 @@ msgid "" "used to construct shell commands." msgstr "" -#: library/asyncio-eventloop.rst:1368 +#: library/asyncio-eventloop.rst:1369 msgid "Callback Handles" msgstr "" -#: library/asyncio-eventloop.rst:1372 +#: library/asyncio-eventloop.rst:1373 msgid "" "A callback wrapper object returned by :meth:`loop.call_soon`, :meth:`loop." "call_soon_threadsafe`." msgstr "" -#: library/asyncio-eventloop.rst:1377 +#: library/asyncio-eventloop.rst:1378 msgid "" "Cancel the callback. If the callback has already been canceled or executed, " "this method has no effect." msgstr "" -#: library/asyncio-eventloop.rst:1382 +#: library/asyncio-eventloop.rst:1383 msgid "Return ``True`` if the callback was cancelled." msgstr "Renvoie ``True`` si la fonction de rappel à été annulé." -#: library/asyncio-eventloop.rst:1388 +#: library/asyncio-eventloop.rst:1389 msgid "" "A callback wrapper object returned by :meth:`loop.call_later`, and :meth:" "`loop.call_at`." msgstr "" -#: library/asyncio-eventloop.rst:1391 +#: library/asyncio-eventloop.rst:1392 msgid "This class is a subclass of :class:`Handle`." msgstr "" -#: library/asyncio-eventloop.rst:1395 +#: library/asyncio-eventloop.rst:1396 msgid "Return a scheduled callback time as :class:`float` seconds." msgstr "" -#: library/asyncio-eventloop.rst:1397 +#: library/asyncio-eventloop.rst:1398 msgid "" "The time is an absolute timestamp, using the same time reference as :meth:" "`loop.time`." msgstr "" -#: library/asyncio-eventloop.rst:1404 +#: library/asyncio-eventloop.rst:1405 msgid "Server Objects" msgstr "Objets Serveur" -#: library/asyncio-eventloop.rst:1406 +#: library/asyncio-eventloop.rst:1407 msgid "" "Server objects are created by :meth:`loop.create_server`, :meth:`loop." "create_unix_server`, :func:`start_server`, and :func:`start_unix_server` " "functions." msgstr "" -#: library/asyncio-eventloop.rst:1410 +#: library/asyncio-eventloop.rst:1411 msgid "Do not instantiate the class directly." msgstr "" -#: library/asyncio-eventloop.rst:1414 +#: library/asyncio-eventloop.rst:1415 msgid "" "*Server* objects are asynchronous context managers. When used in an ``async " "with`` statement, it's guaranteed that the Server object is closed and not " "accepting new connections when the ``async with`` statement is completed::" msgstr "" -#: library/asyncio-eventloop.rst:1427 +#: library/asyncio-eventloop.rst:1428 msgid "Server object is an asynchronous context manager since Python 3.7." msgstr "" -#: library/asyncio-eventloop.rst:1432 +#: library/asyncio-eventloop.rst:1433 msgid "" "Stop serving: close listening sockets and set the :attr:`sockets` attribute " "to ``None``." msgstr "" -#: library/asyncio-eventloop.rst:1435 +#: library/asyncio-eventloop.rst:1436 msgid "" "The sockets that represent existing incoming client connections are left " "open." msgstr "" -#: library/asyncio-eventloop.rst:1438 +#: library/asyncio-eventloop.rst:1439 msgid "" "The server is closed asynchronously, use the :meth:`wait_closed` coroutine " "to wait until the server is closed." msgstr "" -#: library/asyncio-eventloop.rst:1443 +#: library/asyncio-eventloop.rst:1444 msgid "Return the event loop associated with the server object." msgstr "" -#: library/asyncio-eventloop.rst:1449 +#: library/asyncio-eventloop.rst:1450 msgid "Start accepting connections." msgstr "Commence à accepter les connexions." -#: library/asyncio-eventloop.rst:1451 +#: library/asyncio-eventloop.rst:1452 msgid "" "This method is idempotent, so it can be called when the server is already " "being serving." msgstr "" -#: library/asyncio-eventloop.rst:1454 +#: library/asyncio-eventloop.rst:1455 msgid "" "The *start_serving* keyword-only parameter to :meth:`loop.create_server` " "and :meth:`asyncio.start_server` allows creating a Server object that is not " @@ -1832,97 +1832,97 @@ msgid "" "accepting connections." msgstr "" -#: library/asyncio-eventloop.rst:1465 +#: library/asyncio-eventloop.rst:1466 msgid "" "Start accepting connections until the coroutine is cancelled. Cancellation " "of ``serve_forever`` task causes the server to be closed." msgstr "" -#: library/asyncio-eventloop.rst:1469 +#: library/asyncio-eventloop.rst:1470 msgid "" "This method can be called if the server is already accepting connections. " "Only one ``serve_forever`` task can exist per one *Server* object." msgstr "" -#: library/asyncio-eventloop.rst:1491 +#: library/asyncio-eventloop.rst:1492 msgid "Return ``True`` if the server is accepting new connections." msgstr "Donne ``True`` si le serveur accepte de nouvelles connexions." -#: library/asyncio-eventloop.rst:1497 +#: library/asyncio-eventloop.rst:1498 msgid "Wait until the :meth:`close` method completes." msgstr "Attends que la méthode :meth:`close` se termine." -#: library/asyncio-eventloop.rst:1501 +#: library/asyncio-eventloop.rst:1502 msgid "List of :class:`socket.socket` objects the server is listening on." msgstr "" -#: library/asyncio-eventloop.rst:1503 +#: library/asyncio-eventloop.rst:1504 msgid "" "Prior to Python 3.7 ``Server.sockets`` used to return an internal list of " "server sockets directly. In 3.7 a copy of that list is returned." msgstr "" -#: library/asyncio-eventloop.rst:1512 +#: library/asyncio-eventloop.rst:1513 msgid "Event Loop Implementations" msgstr "Implémentations de boucle d'évènements" -#: library/asyncio-eventloop.rst:1514 +#: library/asyncio-eventloop.rst:1515 msgid "" "asyncio ships with two different event loop implementations: :class:" "`SelectorEventLoop` and :class:`ProactorEventLoop`." msgstr "" -#: library/asyncio-eventloop.rst:1517 +#: library/asyncio-eventloop.rst:1518 msgid "" "By default asyncio is configured to use :class:`SelectorEventLoop` on Unix " "and :class:`ProactorEventLoop` on Windows." msgstr "" -#: library/asyncio-eventloop.rst:1523 +#: library/asyncio-eventloop.rst:1524 msgid "An event loop based on the :mod:`selectors` module." msgstr "" -#: library/asyncio-eventloop.rst:1525 +#: library/asyncio-eventloop.rst:1526 msgid "" "Uses the most efficient *selector* available for the given platform. It is " "also possible to manually configure the exact selector implementation to be " "used::" msgstr "" -#: library/asyncio-eventloop.rst:1537 +#: library/asyncio-eventloop.rst:1538 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." -#: library/asyncio-eventloop.rst:1542 +#: library/asyncio-eventloop.rst:1543 msgid "An event loop for Windows that uses \"I/O Completion Ports\" (IOCP)." msgstr "" -#: library/asyncio-eventloop.rst:1545 +#: library/asyncio-eventloop.rst:1546 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: library/asyncio-eventloop.rst:1548 +#: library/asyncio-eventloop.rst:1549 msgid "" "`MSDN documentation on I/O Completion Ports `_." msgstr "" -#: library/asyncio-eventloop.rst:1554 +#: library/asyncio-eventloop.rst:1555 msgid "Abstract base class for asyncio-compliant event loops." msgstr "" -#: library/asyncio-eventloop.rst:1556 +#: library/asyncio-eventloop.rst:1557 msgid "" "The :ref:`Event Loop Methods ` section lists all methods " "that an alternative implementation of ``AbstractEventLoop`` should have " "defined." msgstr "" -#: library/asyncio-eventloop.rst:1562 +#: library/asyncio-eventloop.rst:1563 msgid "Examples" msgstr "Exemples" -#: library/asyncio-eventloop.rst:1564 +#: library/asyncio-eventloop.rst:1565 msgid "" "Note that all examples in this section **purposefully** show how to use the " "low-level event loop APIs, such as :meth:`loop.run_forever` and :meth:`loop." @@ -1930,70 +1930,70 @@ msgid "" "consider using the high-level functions like :func:`asyncio.run`." msgstr "" -#: library/asyncio-eventloop.rst:1574 +#: library/asyncio-eventloop.rst:1575 msgid "Hello World with call_soon()" msgstr "\"Hello World\" avec ``call_soon()``" -#: library/asyncio-eventloop.rst:1576 +#: library/asyncio-eventloop.rst:1577 msgid "" "An example using the :meth:`loop.call_soon` method to schedule a callback. " "The callback displays ``\"Hello World\"`` and then stops the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1600 +#: library/asyncio-eventloop.rst:1601 msgid "" "A similar :ref:`Hello World ` example created with a coroutine " "and the :func:`run` function." msgstr "" -#: library/asyncio-eventloop.rst:1607 +#: library/asyncio-eventloop.rst:1608 msgid "Display the current date with call_later()" msgstr "Afficher la date actuelle avec ``call_later()``" -#: library/asyncio-eventloop.rst:1609 +#: library/asyncio-eventloop.rst:1610 msgid "" "An example of a callback displaying the current date every second. The " "callback uses the :meth:`loop.call_later` method to reschedule itself after " "5 seconds, and then stops the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1637 +#: library/asyncio-eventloop.rst:1638 msgid "" "A similar :ref:`current date ` example created with a " "coroutine and the :func:`run` function." msgstr "" -#: library/asyncio-eventloop.rst:1644 +#: library/asyncio-eventloop.rst:1645 msgid "Watch a file descriptor for read events" msgstr "" -#: library/asyncio-eventloop.rst:1646 +#: library/asyncio-eventloop.rst:1647 msgid "" "Wait until a file descriptor received some data using the :meth:`loop." "add_reader` method and then close the event loop::" msgstr "" -#: library/asyncio-eventloop.rst:1684 +#: library/asyncio-eventloop.rst:1685 msgid "" "A similar :ref:`example ` using " "transports, protocols, and the :meth:`loop.create_connection` method." msgstr "" -#: library/asyncio-eventloop.rst:1688 +#: library/asyncio-eventloop.rst:1689 msgid "" "Another similar :ref:`example ` " "using the high-level :func:`asyncio.open_connection` function and streams." msgstr "" -#: library/asyncio-eventloop.rst:1696 +#: library/asyncio-eventloop.rst:1697 msgid "Set signal handlers for SIGINT and SIGTERM" msgstr "Définit les gestionnaires de signaux pour *SIGINT* et *SIGTERM*" -#: library/asyncio-eventloop.rst:1698 +#: library/asyncio-eventloop.rst:1699 msgid "(This ``signals`` example only works on Unix.)" msgstr "(Cet exemple ne fonctionne que sur Unix.)" -#: library/asyncio-eventloop.rst:1700 +#: library/asyncio-eventloop.rst:1701 msgid "" "Register handlers for signals :py:data:`SIGINT` and :py:data:`SIGTERM` using " "the :meth:`loop.add_signal_handler` method::" diff --git a/library/dataclasses.po b/library/dataclasses.po index df62570a..0b2a8f71 100644 --- a/library/dataclasses.po +++ b/library/dataclasses.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-10-28 11:44+0200\n" "Last-Translator: David GIRAUD \n" "Language-Team: FRENCH \n" @@ -583,11 +583,12 @@ msgstr "" "levée." #: library/dataclasses.rst:324 +#, fuzzy msgid "" "Converts the dataclass ``instance`` to a dict (by using the factory function " "``dict_factory``). Each dataclass is converted to a dict of its fields, as " "``name: value`` pairs. dataclasses, dicts, lists, and tuples are recursed " -"into. For example::" +"into. Other objects are copied with :func:`copy.deepcopy`." msgstr "" "Convertit *instance*, une instance d'une classe de données, en un " "dictionnaire. Le résultat est construit par la fonction *dict_factory*. Les " @@ -596,28 +597,50 @@ msgstr "" "convertir récursivement toutes les instances de classes de données qu'ils " "contiennent. Voici un exemple :" -#: library/dataclasses.rst:358 -msgid "Raises :exc:`TypeError` if ``instance`` is not a dataclass instance." +#: library/dataclasses.rst:330 +msgid "Example of using :func:`asdict` on nested dataclasses::" +msgstr "" + +#: library/dataclasses.rst:367 +msgid "To create a shallow copy, the following workaround may be used::" +msgstr "" + +#: library/dataclasses.rst:351 +#, fuzzy +msgid "" +":func:`asdict` raises :exc:`TypeError` if ``instance`` is not a dataclass " +"instance." msgstr "" "Lève :exc:`TypeError` si *instance* n'est pas une instance d'une classe de " "données." -#: library/dataclasses.rst:348 +#: library/dataclasses.rst:356 +#, fuzzy msgid "" "Converts the dataclass ``instance`` to a tuple (by using the factory " "function ``tuple_factory``). Each dataclass is converted to a tuple of its " -"field values. dataclasses, dicts, lists, and tuples are recursed into." +"field values. dataclasses, dicts, lists, and tuples are recursed into. " +"Other objects are copied with :func:`copy.deepcopy`." msgstr "" "Convertit l'instance d'une classe de données *instance* en un *n*-uplet des " "valeurs de ses champs. Le résultat est construit par la fonction " "*tuple_factory*. Cette fonction agit récursivement sur les dictionnaires, " "listes, *n*-uplets et instances de classes de données." -#: library/dataclasses.rst:353 +#: library/dataclasses.rst:362 msgid "Continuing from the previous example::" msgstr "Pour continuer l'exemple précédent :" -#: library/dataclasses.rst:362 +#: library/dataclasses.rst:371 +#, fuzzy +msgid "" +":func:`astuple` raises :exc:`TypeError` if ``instance`` is not a dataclass " +"instance." +msgstr "" +"Lève :exc:`TypeError` si *instance* n'est pas une instance d'une classe de " +"données." + +#: library/dataclasses.rst:376 msgid "" "Creates a new dataclass with name ``cls_name``, fields as defined in " "``fields``, base classes as given in ``bases``, and initialized with a " @@ -638,7 +661,7 @@ msgstr "" "*march_args*, *kw_only* et *slots*, sont les mêmes que dans :func:" "`dataclass`." -#: library/dataclasses.rst:372 +#: library/dataclasses.rst:386 msgid "" "This function is not strictly required, because any Python mechanism for " "creating a new class with ``__annotations__`` can then apply the :func:" @@ -650,11 +673,11 @@ msgstr "" "``__annotation__`` et de lui appliquer la fonction :func:`dataclass`, qui la " "convertit en une classe de données. Par exemple, ceci :" -#: library/dataclasses.rst:384 +#: library/dataclasses.rst:398 msgid "Is equivalent to::" msgstr "est équivalent à ::" -#: library/dataclasses.rst:397 +#: library/dataclasses.rst:411 msgid "" "Creates a new object of the same type as ``instance``, replacing fields with " "values from ``changes``. If ``instance`` is not a Data Class, raises :exc:" @@ -667,7 +690,7 @@ msgstr "" "est levée. De même, si une clé dans *changes* ne correspond à aucun champ de " "l'instance, :exc:`TypeError` est levée." -#: library/dataclasses.rst:402 +#: library/dataclasses.rst:416 msgid "" "The newly returned object is created by calling the :meth:`__init__` method " "of the dataclass. This ensures that :meth:`__post_init__`, if present, is " @@ -677,7 +700,7 @@ msgstr "" "classe de données, ce qui garantit que :meth:`__post_init__` est appelée (si " "elle existe)." -#: library/dataclasses.rst:406 +#: library/dataclasses.rst:420 msgid "" "Init-only variables without default values, if any exist, must be specified " "on the call to :func:`replace` so that they can be passed to :meth:" @@ -687,7 +710,7 @@ msgstr "" "il faut l'inclure dans l'appel à :func:`replace` afin qu'il soit passé à :" "meth:`__init__` et :meth:`__post_init__`." -#: library/dataclasses.rst:410 +#: library/dataclasses.rst:424 msgid "" "It is an error for ``changes`` to contain any fields that are defined as " "having ``init=False``. A :exc:`ValueError` will be raised in this case." @@ -695,7 +718,7 @@ msgstr "" "Si une clé de *changes* correspond à un champ défini avec ``init=False``, :" "exc:`ValueError` est levée." -#: library/dataclasses.rst:414 +#: library/dataclasses.rst:428 msgid "" "Be forewarned about how ``init=False`` fields work during a call to :func:" "`replace`. They are not copied from the source object, but rather are " @@ -713,7 +736,7 @@ msgstr "" "instances par des constructeurs de classe alternatifs, ou bien une méthode " "personnalisée ``replace()`` (ou un nom similaire)." -#: library/dataclasses.rst:425 +#: library/dataclasses.rst:439 msgid "" "Return ``True`` if its parameter is a dataclass or an instance of one, " "otherwise return ``False``." @@ -721,7 +744,7 @@ msgstr "" "Renvoie ``True`` si l'argument est soit une classe de données, soit une " "instance d'une telle classe. Sinon, renvoie ``False``." -#: library/dataclasses.rst:428 +#: library/dataclasses.rst:442 msgid "" "If you need to know if a class is an instance of a dataclass (and not a " "dataclass itself), then add a further check for ``not isinstance(obj, " @@ -731,13 +754,13 @@ msgstr "" "non pas lui-même une classe de données, ajoutez le test ``not " "isinstance(obj, type)`` ::" -#: library/dataclasses.rst:437 +#: library/dataclasses.rst:451 msgid "A sentinel value signifying a missing default or default_factory." msgstr "" "Une valeur sentinelle pour dénoter l'absence de *default* ou " "*default_factory*." -#: library/dataclasses.rst:441 +#: library/dataclasses.rst:455 msgid "" "A sentinel value used as a type annotation. Any fields after a pseudo-field " "with the type of :const:`KW_ONLY` are marked as keyword-only fields. Note " @@ -756,14 +779,14 @@ msgstr "" "exclusivement nommés doivent être spécifiés par leur nom lors de " "l'instanciation de la classe." -#: library/dataclasses.rst:450 +#: library/dataclasses.rst:464 msgid "" "In this example, the fields ``y`` and ``z`` will be marked as keyword-only " "fields::" msgstr "" "Dans cette exemple ``y`` et ``z`` sont marqués comme exclusivement nommés ::" -#: library/dataclasses.rst:461 +#: library/dataclasses.rst:475 msgid "" "In a single dataclass, it is an error to specify more than one field whose " "type is :const:`KW_ONLY`." @@ -771,7 +794,7 @@ msgstr "" "Une erreur est levée s'il y a plus d'un champ de type :const:`KW_ONLY` dans " "une unique classe de données." -#: library/dataclasses.rst:466 +#: library/dataclasses.rst:480 msgid "" "Raised when an implicitly defined :meth:`__setattr__` or :meth:`__delattr__` " "is called on a dataclass which was defined with ``frozen=True``. It is a " @@ -781,11 +804,11 @@ msgstr "" "`__setattr__` ou :meth:`__delattr__` définie implicitement est appelée dans " "une classe de données définie avec ``frozen=True``." -#: library/dataclasses.rst:471 +#: library/dataclasses.rst:485 msgid "Post-init processing" msgstr "Post-initialisation" -#: library/dataclasses.rst:473 +#: library/dataclasses.rst:487 msgid "" "The generated :meth:`__init__` code will call a method named :meth:" "`__post_init__`, if :meth:`__post_init__` is defined on the class. It will " @@ -802,7 +825,7 @@ msgstr "" "qu'elles ont été fournies à :meth:`__init__`. Si la classe est créée avec " "``init=False``, :meth:`__post_init__` n'est jamais appelée automatiquement." -#: library/dataclasses.rst:481 +#: library/dataclasses.rst:495 msgid "" "Among other uses, this allows for initializing field values that depend on " "one or more other fields. For example::" @@ -810,7 +833,7 @@ msgstr "" "Cette méthode permet, entre autres, d'initialiser des champs qui dépendent " "d'autres champs. Par exemple :" -#: library/dataclasses.rst:493 +#: library/dataclasses.rst:507 msgid "" "The :meth:`__init__` method generated by :func:`dataclass` does not call " "base class :meth:`__init__` methods. If the base class has an :meth:" @@ -822,7 +845,7 @@ msgstr "" "`dataclass`. S'il faut appeler ces méthodes :meth:`__init__`, il est courant " "de le faire dans :meth:`__post_init__` :" -#: library/dataclasses.rst:510 +#: library/dataclasses.rst:524 msgid "" "Note, however, that in general the dataclass-generated :meth:`__init__` " "methods don't need to be called, since the derived dataclass will take care " @@ -833,7 +856,7 @@ msgstr "" "classe de données, car la classe fille initialise elle-même les champs " "apportés par toute classe mère qui est aussi une classe de données." -#: library/dataclasses.rst:514 +#: library/dataclasses.rst:528 msgid "" "See the section below on init-only variables for ways to pass parameters to :" "meth:`__post_init__`. Also see the warning about how :func:`replace` " @@ -844,11 +867,11 @@ msgstr "" "l'avertissement sur le traitement par :func:`replace` des champs définis " "avec ``init=False``." -#: library/dataclasses.rst:519 +#: library/dataclasses.rst:533 msgid "Class variables" msgstr "Variables de classe" -#: library/dataclasses.rst:521 +#: library/dataclasses.rst:535 msgid "" "One of two places where :func:`dataclass` actually inspects the type of a " "field is to determine if a field is a class variable as defined in :pep:" @@ -864,11 +887,11 @@ msgstr "" "complètement ignorés du point de vue des classes de données. Ils " "n'apparaissent pas dans le résultat de :func:`fields`." -#: library/dataclasses.rst:530 +#: library/dataclasses.rst:544 msgid "Init-only variables" msgstr "Variables d'initialisation" -#: library/dataclasses.rst:532 +#: library/dataclasses.rst:546 msgid "" "The other place where :func:`dataclass` inspects a type annotation is to " "determine if a field is an init-only variable. It does this by seeing if " @@ -887,7 +910,7 @@ msgstr "" "Leurs valeurs sont passées à :meth:`__post_init__`, si cette méthode existe. " "C'est la seule manière dont elles sont utilisées." -#: library/dataclasses.rst:542 +#: library/dataclasses.rst:556 msgid "" "For example, suppose a field will be initialized from a database, if a value " "is not provided when creating the class::" @@ -895,7 +918,7 @@ msgstr "" "On peut par exemple imaginer un champ initialisé à partir d'une base de " "données s'il n'a pas reçu de valeur explicite :" -#: library/dataclasses.rst:557 +#: library/dataclasses.rst:571 msgid "" "In this case, :func:`fields` will return :class:`Field` objects for ``i`` " "and ``j``, but not for ``database``." @@ -903,11 +926,11 @@ msgstr "" "Ici, :func:`fields` renvoie des objets :class:`Field` correspondant à ``i`` " "et à ``j``, mais pas à ``database``." -#: library/dataclasses.rst:561 +#: library/dataclasses.rst:575 msgid "Frozen instances" msgstr "Instances figées" -#: library/dataclasses.rst:563 +#: library/dataclasses.rst:577 msgid "" "It is not possible to create truly immutable Python objects. However, by " "passing ``frozen=True`` to the :meth:`dataclass` decorator you can emulate " @@ -921,7 +944,7 @@ msgstr "" "lui fait générer des méthodes :meth:`__setattr__` et :meth:`__delattr__`. " "Celles-ci lèvent systématiquement l'exception :exc:`FrozenInstanceError`." -#: library/dataclasses.rst:569 +#: library/dataclasses.rst:583 msgid "" "There is a tiny performance penalty when using ``frozen=True``: :meth:" "`__init__` cannot use simple assignment to initialize fields, and must use :" @@ -931,11 +954,11 @@ msgstr "" "`__init__` doit passer par :meth:`object.__setattr__` au lieu de simples " "affectations pour initialiser les champs." -#: library/dataclasses.rst:574 +#: library/dataclasses.rst:588 msgid "Inheritance" msgstr "Héritage" -#: library/dataclasses.rst:576 +#: library/dataclasses.rst:590 msgid "" "When the dataclass is being created by the :meth:`dataclass` decorator, it " "looks through all of the class's base classes in reverse MRO (that is, " @@ -955,7 +978,7 @@ msgstr "" "tableau associatif. Puisqu'il est ordonné, les champs des classes filles " "écrasent ceux des classes mères. Voici un exemple :" -#: library/dataclasses.rst:596 +#: library/dataclasses.rst:610 msgid "" "The final list of fields is, in order, ``x``, ``y``, ``z``. The final type " "of ``x`` is ``int``, as specified in class ``C``." @@ -963,16 +986,16 @@ msgstr "" "La liste finale des champs contient, dans l'ordre, ``x``, ``y``, ``z``. Le " "type de ``x`` est ``int``, comme déclaré dans ``C``." -#: library/dataclasses.rst:599 +#: library/dataclasses.rst:613 msgid "The generated :meth:`__init__` method for ``C`` will look like::" msgstr "La méthode :meth:`__init__` générée pour ``C`` ressemble à :" -#: library/dataclasses.rst:604 +#: library/dataclasses.rst:618 msgid "Re-ordering of keyword-only parameters in :meth:`__init__`" msgstr "" "Réarrangement des paramètres exclusivement nommés dans :meth:`__init__`" -#: library/dataclasses.rst:606 +#: library/dataclasses.rst:620 msgid "" "After the parameters needed for :meth:`__init__` are computed, any keyword-" "only parameters are moved to come after all regular (non-keyword-only) " @@ -985,7 +1008,7 @@ msgstr "" "les paramètres exclusivement nommés sont implémentés en Python : ils sont " "après les paramètres non exclusivement nommés." -#: library/dataclasses.rst:612 +#: library/dataclasses.rst:626 msgid "" "In this example, ``Base.y``, ``Base.w``, and ``D.t`` are keyword-only " "fields, and ``Base.x`` and ``D.z`` are regular fields::" @@ -994,11 +1017,11 @@ msgstr "" "exclusivement nommés alors que``Base.x`` et ``D.z`` sont des champs " "normaux ::" -#: library/dataclasses.rst:627 +#: library/dataclasses.rst:641 msgid "The generated :meth:`__init__` method for ``D`` will look like::" msgstr "La méthode :meth:`__init__` générée pour ``D`` ressemble à ::" -#: library/dataclasses.rst:631 +#: library/dataclasses.rst:645 msgid "" "Note that the parameters have been re-ordered from how they appear in the " "list of fields: parameters derived from regular fields are followed by " @@ -1008,7 +1031,7 @@ msgstr "" "la liste des champs : les paramètres provenant des attributs normaux sont " "suivis par les paramètres qui proviennent des attributs exclusivement nommés." -#: library/dataclasses.rst:635 +#: library/dataclasses.rst:649 msgid "" "The relative ordering of keyword-only parameters is maintained in the re-" "ordered :meth:`__init__` parameter list." @@ -1016,11 +1039,11 @@ msgstr "" "L'ordre relatif des paramètres exclusivement nommés est conservé par le " "réarrangement des paramètres d'\\ :meth:`__init__`." -#: library/dataclasses.rst:640 +#: library/dataclasses.rst:654 msgid "Default factory functions" msgstr "Fabriques de valeurs par défaut" -#: library/dataclasses.rst:642 +#: library/dataclasses.rst:656 msgid "" "If a :func:`field` specifies a ``default_factory``, it is called with zero " "arguments when a default value for the field is needed. For example, to " @@ -1030,7 +1053,7 @@ msgstr "" "qui est appelée sans argument pour fournir des valeurs par défaut. Par " "exemple, voici comment donner la valeur par défaut d'une liste vide :" -#: library/dataclasses.rst:648 +#: library/dataclasses.rst:662 msgid "" "If a field is excluded from :meth:`__init__` (using ``init=False``) and the " "field also specifies ``default_factory``, then the default factory function " @@ -1042,11 +1065,11 @@ msgstr "" "chaque nouvelle instance, puisque c'est le seul moyen d'obtenir une valeur à " "laquelle initialiser le champ." -#: library/dataclasses.rst:655 +#: library/dataclasses.rst:669 msgid "Mutable default values" msgstr "Valeurs par défaut muables" -#: library/dataclasses.rst:657 +#: library/dataclasses.rst:671 msgid "" "Python stores default member variable values in class attributes. Consider " "this example, not using dataclasses::" @@ -1054,7 +1077,7 @@ msgstr "" "En Python, les valeurs par défaut des attributs sont stockées dans des " "attributs de la classe. Observez cet exemple, sans classe de données :" -#: library/dataclasses.rst:672 +#: library/dataclasses.rst:686 msgid "" "Note that the two instances of class ``C`` share the same class variable " "``x``, as expected." @@ -1062,15 +1085,15 @@ msgstr "" "Comme attendu, les deux instances de ``C`` partagent le même objet pour " "l'attribut ``x``." -#: library/dataclasses.rst:675 +#: library/dataclasses.rst:689 msgid "Using dataclasses, *if* this code was valid::" msgstr "Avec les classes de données, si ce code était valide :" -#: library/dataclasses.rst:683 +#: library/dataclasses.rst:697 msgid "it would generate code similar to::" msgstr "il générerait un code équivalent à :" -#: library/dataclasses.rst:694 +#: library/dataclasses.rst:708 msgid "" "This has the same issue as the original example using class ``C``. That is, " "two instances of class ``D`` that do not specify a value for ``x`` when " @@ -1092,7 +1115,7 @@ msgstr "" "``set`` est détectée. Cette solution n'est pas parfaite, mais permet " "d'éviter la majorité des erreurs." -#: library/dataclasses.rst:705 +#: library/dataclasses.rst:719 msgid "" "Using default factory functions is a way to create new instances of mutable " "types as default values for fields::" diff --git a/library/datetime.po b/library/datetime.po index 63df7107..d86cda08 100644 --- a/library/datetime.po +++ b/library/datetime.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-10-21 15:04+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-03-20 17:48+0100\n" "Last-Translator: Loc Cosnier \n" "Language-Team: FRENCH \n" @@ -3608,7 +3608,8 @@ msgid "``%f``" msgstr "``%f``" #: library/datetime.rst:2361 -msgid "Microsecond as a decimal number, zero-padded on the left." +#, fuzzy +msgid "Microsecond as a decimal number, zero-padded to 6 digits." msgstr "Microsecondes sur 6 chiffres." #: library/datetime.rst:2361 diff --git a/library/dis.po b/library/dis.po index b8809532..2f9151c1 100644 --- a/library/dis.po +++ b/library/dis.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2019-07-18 21:03+0200\n" "Last-Translator: Aya Keddam \n" "Language-Team: FRENCH \n" @@ -1315,58 +1315,57 @@ msgstr "" #: library/dis.rst:1255 msgid "" -"Pops TOS. If TOS was not ``None``, raises an exception. The ``kind`` operand " -"corresponds to the type of generator or coroutine and determines the error " -"message. The legal kinds are 0 for generator, 1 for coroutine, and 2 for " +"Pops TOS. The ``kind`` operand corresponds to the type of generator or " +"coroutine. The legal kinds are 0 for generator, 1 for coroutine, and 2 for " "async generator." msgstr "" -#: library/dis.rst:1265 +#: library/dis.rst:1264 msgid "" "Lift the top *count* stack items one position up, and move TOS down to " "position *count*." msgstr "" -#: library/dis.rst:1273 +#: library/dis.rst:1272 msgid "" "This is not really an opcode. It identifies the dividing line between " "opcodes which don't use their argument and those that do (``< " "HAVE_ARGUMENT`` and ``>= HAVE_ARGUMENT``, respectively)." msgstr "" -#: library/dis.rst:1277 +#: library/dis.rst:1276 msgid "" "Now every instruction has an argument, but opcodes ``< HAVE_ARGUMENT`` " "ignore it. Before, only opcodes ``>= HAVE_ARGUMENT`` had an argument." msgstr "" -#: library/dis.rst:1285 +#: library/dis.rst:1284 msgid "Opcode collections" msgstr "" -#: library/dis.rst:1287 +#: library/dis.rst:1286 msgid "" "These collections are provided for automatic introspection of bytecode " "instructions:" msgstr "" -#: library/dis.rst:1292 +#: library/dis.rst:1291 msgid "Sequence of operation names, indexable using the bytecode." msgstr "" -#: library/dis.rst:1297 +#: library/dis.rst:1296 msgid "Dictionary mapping operation names to bytecodes." msgstr "" -#: library/dis.rst:1302 +#: library/dis.rst:1301 msgid "Sequence of all compare operation names." msgstr "" -#: library/dis.rst:1307 +#: library/dis.rst:1306 msgid "Sequence of bytecodes that access a constant." msgstr "" -#: library/dis.rst:1312 +#: library/dis.rst:1311 msgid "" "Sequence of bytecodes that access a free variable (note that 'free' in this " "context refers to names in the current scope that are referenced by inner " @@ -1374,22 +1373,22 @@ msgid "" "does *not* include references to global or builtin scopes)." msgstr "" -#: library/dis.rst:1320 +#: library/dis.rst:1319 msgid "Sequence of bytecodes that access an attribute by name." msgstr "" -#: library/dis.rst:1325 +#: library/dis.rst:1324 msgid "Sequence of bytecodes that have a relative jump target." msgstr "" -#: library/dis.rst:1330 +#: library/dis.rst:1329 msgid "Sequence of bytecodes that have an absolute jump target." msgstr "" -#: library/dis.rst:1335 +#: library/dis.rst:1334 msgid "Sequence of bytecodes that access a local variable." msgstr "" -#: library/dis.rst:1340 +#: library/dis.rst:1339 msgid "Sequence of bytecodes of Boolean operations." msgstr "" diff --git a/library/functions.po b/library/functions.po index b915cf6d..73720444 100644 --- a/library/functions.po +++ b/library/functions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-27 10:27+0100\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2020-08-30 23:21+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -1532,11 +1532,11 @@ msgid "" msgstr "" #: library/functions.rst:736 +#, fuzzy msgid "" -"Return a dictionary representing the current global symbol table. This is " -"always the dictionary of the current module (inside a function or method, " -"this is the module where it is defined, not the module from which it is " -"called)." +"Return the dictionary implementing the current module namespace. For code " +"within functions, this is set when the function is defined and remains the " +"same regardless of where the function is called." msgstr "" "Renvoie une représentation de la table de symboles globaux sous forme d'un " "dictionnaire. C'est toujours le dictionnaire du module courant (dans une " diff --git a/library/hashlib.po b/library/hashlib.po index 06f52f0a..5c74d71f 100644 --- a/library/hashlib.po +++ b/library/hashlib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-10-21 15:04+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2020-04-27 22:47+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -667,6 +667,10 @@ msgstr "" "*last_node*: booléen indiquant si le nœud traité est le dernier (`False` " "pour le mode séquentiel)." +#: library/hashlib.rst:None +msgid "Explanation of tree mode parameters." +msgstr "" + #: library/hashlib.rst:396 msgid "" "See section 2.10 in `BLAKE2 specification \n" "Language-Team: FRENCH \n" @@ -177,7 +177,7 @@ msgstr "" #: library/io.rst:134 msgid "" -"When you need to run existing code on Windows that attempts to opens UTF-8 " +"When you need to run existing code on Windows that attempts to open UTF-8 " "files using the default locale encoding, you can enable the UTF-8 mode. See :" "ref:`UTF-8 mode on Windows `." msgstr "" diff --git a/library/json.po b/library/json.po index b14850bb..a93412d9 100644 --- a/library/json.po +++ b/library/json.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-10-21 15:04+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-07-28 18:57+0200\n" "Last-Translator: Caliendo Julien \n" "Language-Team: FRENCH \n" @@ -162,10 +162,11 @@ msgstr "" "sont écrits tels quels." #: library/json.rst:160 +#, fuzzy msgid "" "If *check_circular* is false (default: ``True``), then the circular " "reference check for container types will be skipped and a circular reference " -"will result in an :exc:`OverflowError` (or worse)." +"will result in an :exc:`RecursionError` (or worse)." msgstr "" "Si *check_circular* vaut ``False`` (``True`` par défaut), la vérification " "des références circulaires pour les conteneurs est ignorée, et une référence " @@ -660,10 +661,11 @@ msgstr "" "simplement ignorés." #: library/json.rst:433 +#, fuzzy msgid "" "If *check_circular* is true (the default), then lists, dicts, and custom " "encoded objects will be checked for circular references during encoding to " -"prevent an infinite recursion (which would cause an :exc:`OverflowError`). " +"prevent an infinite recursion (which would cause an :exc:`RecursionError`). " "Otherwise, no such check takes place." msgstr "" "Si *check_circular* vaut ``True`` (valeur par défaut), une vérification a " diff --git a/library/logging.handlers.po b/library/logging.handlers.po index 88e914b8..0d326387 100644 --- a/library/logging.handlers.po +++ b/library/logging.handlers.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2020-12-14 10:12+0100\n" "Last-Translator: Philippe GALVAN \n" "Language-Team: FRENCH \n" @@ -186,7 +186,7 @@ msgstr "" "les erreurs d’encodage." #: library/logging.handlers.rst:105 library/logging.handlers.rst:187 -#: library/logging.handlers.rst:322 library/logging.handlers.rst:428 +#: library/logging.handlers.rst:335 library/logging.handlers.rst:441 msgid "" "As well as string values, :class:`~pathlib.Path` objects are also accepted " "for the *filename* argument." @@ -195,7 +195,7 @@ msgstr "" "que les chaînes de caractères." #: library/logging.handlers.rst:109 library/logging.handlers.rst:191 -#: library/logging.handlers.rst:326 library/logging.handlers.rst:432 +#: library/logging.handlers.rst:339 library/logging.handlers.rst:445 msgid "The *errors* parameter was added." msgstr "Le paramètre *errors* a été ajouté." @@ -377,7 +377,24 @@ msgstr "" "aussi renvoyer toujours la même sortie pour une entrée donnée, autrement le " "comportement du roulement pourrait être différent de celui attendu." -#: library/logging.handlers.rst:239 +#: library/logging.handlers.rst:234 +msgid "" +"It's also worth noting that care should be taken when using a namer to " +"preserve certain attributes in the filename which are used during rotation. " +"For example, :class:`RotatingFileHandler` expects to have a set of log files " +"whose names contain successive integers, so that rotation works as expected, " +"and :class:`TimedRotatingFileHandler` deletes old log files (based on the " +"``backupCount`` parameter passed to the handler's initializer) by " +"determining the oldest files to delete. For this to happen, the filenames " +"should be sortable using the date/time portion of the filename, and a namer " +"needs to respect this. (If a namer is wanted that doesn't respect this " +"scheme, it will need to be used in a subclass of :class:" +"`TimedRotatingFileHandler` which overrides the :meth:" +"`~TimedRotatingFileHandler.getFilesToDelete` method to fit in with the " +"custom naming scheme.)" +msgstr "" + +#: library/logging.handlers.rst:252 msgid "" "If this attribute is set to a callable, the :meth:`rotate` method delegates " "to this callable. The parameters passed to the callable are those passed " @@ -387,16 +404,16 @@ msgstr "" "à la méthode :meth:`rotate`. Les paramètres passés à l’appelable sont ceux " "passés à :meth:`rotate`." -#: library/logging.handlers.rst:247 +#: library/logging.handlers.rst:260 msgid "Modify the filename of a log file when rotating." msgstr "" "Modifie le nom du fichier d’un fichier de journalisation lors du roulement." -#: library/logging.handlers.rst:249 +#: library/logging.handlers.rst:262 msgid "This is provided so that a custom filename can be provided." msgstr "Cette méthode sert à pouvoir produire un nom de fichier personnalisé." -#: library/logging.handlers.rst:251 +#: library/logging.handlers.rst:264 msgid "" "The default implementation calls the 'namer' attribute of the handler, if " "it's callable, passing the default name to it. If the attribute isn't " @@ -406,15 +423,15 @@ msgstr "" "c’est un appelable, lui passant le nom par défaut. Si l’attribut n’est pas " "un appelable (le défaut est ``None``), le nom est renvoyé tel quel." -#: library/logging.handlers.rst:255 +#: library/logging.handlers.rst:268 msgid "The default name for the log file." msgstr "Le nom par défaut du fichier de journalisation." -#: library/logging.handlers.rst:262 +#: library/logging.handlers.rst:275 msgid "When rotating, rotate the current log." msgstr "Lors du roulement, effectue le roulement du journal courant." -#: library/logging.handlers.rst:264 +#: library/logging.handlers.rst:277 msgid "" "The default implementation calls the 'rotator' attribute of the handler, if " "it's callable, passing the source and dest arguments to it. If the attribute " @@ -426,14 +443,14 @@ msgstr "" "l’attribut n’est pas un appelable (le défaut est ``None``), le nom de la " "source est simplement renommé avec la destination." -#: library/logging.handlers.rst:269 +#: library/logging.handlers.rst:282 msgid "" "The source filename. This is normally the base filename, e.g. 'test.log'." msgstr "" "Le nom du fichier source. Il s’agit normalement du nom du fichier, par " "exemple ``\"test.log\"``." -#: library/logging.handlers.rst:271 +#: library/logging.handlers.rst:284 msgid "" "The destination filename. This is normally what the source is rotated to, e." "g. 'test.log.1'." @@ -441,7 +458,7 @@ msgstr "" "Le nom du fichier de destination. Il s’agit normalement du nom donné à la " "source après le roulement, par exemple ``\"test.log.1\"``." -#: library/logging.handlers.rst:276 +#: library/logging.handlers.rst:289 msgid "" "The reason the attributes exist is to save you having to subclass - you can " "use the same callables for instances of :class:`RotatingFileHandler` and :" @@ -457,7 +474,7 @@ msgstr "" "même manière que n’importe quelle exception durant un appel :meth:`emit`, " "c'est-à-dire par la méthode :meth:`handleError` du gestionnaire." -#: library/logging.handlers.rst:283 +#: library/logging.handlers.rst:296 msgid "" "If you need to make more significant changes to rotation processing, you can " "override the methods." @@ -465,15 +482,15 @@ msgstr "" "Si vous avez besoin de faire d’importantes modifications au processus de " "roulement, surchargez les méthodes." -#: library/logging.handlers.rst:286 +#: library/logging.handlers.rst:299 msgid "For an example, see :ref:`cookbook-rotator-namer`." msgstr "Pour un exemple, voir :ref:`cookbook-rotator-namer`." -#: library/logging.handlers.rst:292 +#: library/logging.handlers.rst:305 msgid "RotatingFileHandler" msgstr "Gestionnaire à roulement de fichiers — *RotatingFileHandler*" -#: library/logging.handlers.rst:294 +#: library/logging.handlers.rst:307 msgid "" "The :class:`RotatingFileHandler` class, located in the :mod:`logging." "handlers` module, supports rotation of disk log files." @@ -481,7 +498,7 @@ msgstr "" "La classe :class:`RotatingFileHandler`, située dans le module :mod:`logging." "handlers`, gère le roulement des fichiers de journalisation sur disque." -#: library/logging.handlers.rst:300 +#: library/logging.handlers.rst:313 msgid "" "Returns a new instance of the :class:`RotatingFileHandler` class. The " "specified file is opened and used as the stream for logging. If *mode* is " @@ -500,7 +517,7 @@ msgstr "" "indéfiniment. Si *errors* est spécifié, il détermine comment sont gérées les " "erreurs d’encodage." -#: library/logging.handlers.rst:307 +#: library/logging.handlers.rst:320 msgid "" "You can use the *maxBytes* and *backupCount* values to allow the file to :" "dfn:`rollover` at a predetermined size. When the size is about to be " @@ -535,11 +552,11 @@ msgstr "" "log.1`, :file:`app.log.2`, etc. existent, alors ils sont renommés " "respectivement en :file:`app.log.2`, :file:`app.log.3` etc." -#: library/logging.handlers.rst:331 library/logging.handlers.rst:437 +#: library/logging.handlers.rst:344 library/logging.handlers.rst:450 msgid "Does a rollover, as described above." msgstr "Effectue un roulement, comme décrit au-dessus." -#: library/logging.handlers.rst:336 +#: library/logging.handlers.rst:349 msgid "" "Outputs the record to the file, catering for rollover as described " "previously." @@ -547,12 +564,12 @@ msgstr "" "Écrit l'enregistrement dans le fichier, effectuant un roulement au besoin " "comme décrit précédemment." -#: library/logging.handlers.rst:342 +#: library/logging.handlers.rst:355 msgid "TimedRotatingFileHandler" msgstr "" "Gestionnaire à roulement de fichiers périodique — *TimedRotatingFileHandler*" -#: library/logging.handlers.rst:344 +#: library/logging.handlers.rst:357 msgid "" "The :class:`TimedRotatingFileHandler` class, located in the :mod:`logging." "handlers` module, supports rotation of disk log files at certain timed " @@ -562,7 +579,7 @@ msgstr "" "`logging.handlers`, gère le roulement des fichiers de journalisation sur le " "disque à un intervalle de temps spécifié." -#: library/logging.handlers.rst:351 +#: library/logging.handlers.rst:364 msgid "" "Returns a new instance of the :class:`TimedRotatingFileHandler` class. The " "specified file is opened and used as the stream for logging. On rotating it " @@ -575,7 +592,7 @@ msgstr "" "met également à jour le suffixe du nom du fichier. Le roulement se produit " "sur la base combinée de *when* et *interval*." -#: library/logging.handlers.rst:356 +#: library/logging.handlers.rst:369 msgid "" "You can use the *when* to specify the type of *interval*. The list of " "possible values is below. Note that they are not case sensitive." @@ -583,78 +600,78 @@ msgstr "" "Utilisez le *when* pour spécifier le type de l’*interval*. La liste des " "valeurs possibles est ci-dessous. Notez qu’elles sont sensibles à la casse." -#: library/logging.handlers.rst:360 +#: library/logging.handlers.rst:373 msgid "Value" msgstr "Valeur" -#: library/logging.handlers.rst:360 +#: library/logging.handlers.rst:373 msgid "Type of interval" msgstr "Type d’intervalle" -#: library/logging.handlers.rst:360 +#: library/logging.handlers.rst:373 msgid "If/how *atTime* is used" msgstr "Si/comment *atTime* est utilisé" -#: library/logging.handlers.rst:362 +#: library/logging.handlers.rst:375 msgid "``'S'``" msgstr "``'S'``" -#: library/logging.handlers.rst:362 +#: library/logging.handlers.rst:375 msgid "Seconds" msgstr "Secondes" -#: library/logging.handlers.rst:362 library/logging.handlers.rst:364 -#: library/logging.handlers.rst:366 library/logging.handlers.rst:368 +#: library/logging.handlers.rst:375 library/logging.handlers.rst:377 +#: library/logging.handlers.rst:379 library/logging.handlers.rst:381 msgid "Ignored" msgstr "Ignoré" -#: library/logging.handlers.rst:364 +#: library/logging.handlers.rst:377 msgid "``'M'``" msgstr "``'M'``" -#: library/logging.handlers.rst:364 +#: library/logging.handlers.rst:377 msgid "Minutes" msgstr "Minutes" -#: library/logging.handlers.rst:366 +#: library/logging.handlers.rst:379 msgid "``'H'``" msgstr "``'H'``" -#: library/logging.handlers.rst:366 +#: library/logging.handlers.rst:379 msgid "Hours" msgstr "Heures" -#: library/logging.handlers.rst:368 +#: library/logging.handlers.rst:381 msgid "``'D'``" msgstr "``'D'``" -#: library/logging.handlers.rst:368 +#: library/logging.handlers.rst:381 msgid "Days" msgstr "Jours" -#: library/logging.handlers.rst:370 +#: library/logging.handlers.rst:383 msgid "``'W0'-'W6'``" msgstr "``'W0'-'W6'``" -#: library/logging.handlers.rst:370 +#: library/logging.handlers.rst:383 msgid "Weekday (0=Monday)" msgstr "Jour de la semaine (0=lundi)" -#: library/logging.handlers.rst:370 library/logging.handlers.rst:373 +#: library/logging.handlers.rst:383 library/logging.handlers.rst:386 msgid "Used to compute initial rollover time" msgstr "Utilisé pour calculer le moment du roulement" -#: library/logging.handlers.rst:373 +#: library/logging.handlers.rst:386 msgid "``'midnight'``" msgstr "``'midnight'``" -#: library/logging.handlers.rst:373 +#: library/logging.handlers.rst:386 msgid "Roll over at midnight, if *atTime* not specified, else at time *atTime*" msgstr "" "Roulement du fichier à minuit, si *atTime* n’est pas spécifié, sinon à " "l’heure *atTime*" -#: library/logging.handlers.rst:378 +#: library/logging.handlers.rst:391 msgid "" "When using weekday-based rotation, specify 'W0' for Monday, 'W1' for " "Tuesday, and so on up to 'W6' for Sunday. In this case, the value passed for " @@ -665,7 +682,7 @@ msgstr "" "pour dimanche. Dans ce cas, la valeur indiquée pour *interval* n’est pas " "utilisée." -#: library/logging.handlers.rst:382 +#: library/logging.handlers.rst:395 msgid "" "The system will save old log files by appending extensions to the filename. " "The extensions are date-and-time based, using the strftime format ``%Y-%m-%d_" @@ -676,7 +693,7 @@ msgstr "" "l’heure, en utilisation le format *strftime* ``%Y-%m-%d_%H-%M-%S`` ou le " "début de celui-ci, selon l’intervalle du roulement." -#: library/logging.handlers.rst:387 +#: library/logging.handlers.rst:400 msgid "" "When computing the next rollover time for the first time (when the handler " "is created), the last modification time of an existing log file, or else the " @@ -687,13 +704,13 @@ msgstr "" "existant, ou sinon la date actuelle, est utilisée pour calculer la date du " "prochain roulement." -#: library/logging.handlers.rst:391 +#: library/logging.handlers.rst:404 msgid "" "If the *utc* argument is true, times in UTC will be used; otherwise local " "time is used." msgstr "" -#: library/logging.handlers.rst:394 +#: library/logging.handlers.rst:407 msgid "" "If *backupCount* is nonzero, at most *backupCount* files will be kept, and " "if more would be created when rollover occurs, the oldest one is deleted. " @@ -701,13 +718,13 @@ msgid "" "changing the interval may leave old files lying around." msgstr "" -#: library/logging.handlers.rst:399 +#: library/logging.handlers.rst:412 msgid "" "If *delay* is true, then file opening is deferred until the first call to :" "meth:`emit`." msgstr "" -#: library/logging.handlers.rst:402 +#: library/logging.handlers.rst:415 msgid "" "If *atTime* is not ``None``, it must be a ``datetime.time`` instance which " "specifies the time of day when rollover occurs, for the cases where rollover " @@ -717,13 +734,13 @@ msgid "" "normal interval calculation." msgstr "" -#: library/logging.handlers.rst:409 +#: library/logging.handlers.rst:422 msgid "" "If *errors* is specified, it's used to determine how encoding errors are " "handled." msgstr "" -#: library/logging.handlers.rst:412 +#: library/logging.handlers.rst:425 msgid "" "Calculation of the initial rollover time is done when the handler is " "initialised. Calculation of subsequent rollover times is done only when " @@ -738,44 +755,51 @@ msgid "" "to the minutes where no output (and hence no rollover) occurred." msgstr "" -#: library/logging.handlers.rst:425 +#: library/logging.handlers.rst:438 msgid "*atTime* parameter was added." msgstr "" -#: library/logging.handlers.rst:441 +#: library/logging.handlers.rst:454 msgid "" "Outputs the record to the file, catering for rollover as described above." msgstr "" -#: library/logging.handlers.rst:447 +#: library/logging.handlers.rst:458 +msgid "" +"Returns a list of filenames which should be deleted as part of rollover. " +"These are the absolute paths of the oldest backup log files written by the " +"handler." +msgstr "" + +#: library/logging.handlers.rst:464 msgid "SocketHandler" msgstr "" -#: library/logging.handlers.rst:449 +#: library/logging.handlers.rst:466 msgid "" "The :class:`SocketHandler` class, located in the :mod:`logging.handlers` " "module, sends logging output to a network socket. The base class uses a TCP " "socket." msgstr "" -#: library/logging.handlers.rst:455 +#: library/logging.handlers.rst:472 msgid "" "Returns a new instance of the :class:`SocketHandler` class intended to " "communicate with a remote machine whose address is given by *host* and " "*port*." msgstr "" -#: library/logging.handlers.rst:458 +#: library/logging.handlers.rst:475 msgid "" "If ``port`` is specified as ``None``, a Unix domain socket is created using " "the value in ``host`` - otherwise, a TCP socket is created." msgstr "" -#: library/logging.handlers.rst:464 +#: library/logging.handlers.rst:481 msgid "Closes the socket." msgstr "" -#: library/logging.handlers.rst:469 +#: library/logging.handlers.rst:486 msgid "" "Pickles the record's attribute dictionary and writes it to the socket in " "binary format. If there is an error with the socket, silently drops the " @@ -784,28 +808,28 @@ msgid "" "`~logging.LogRecord`, use the :func:`~logging.makeLogRecord` function." msgstr "" -#: library/logging.handlers.rst:479 +#: library/logging.handlers.rst:496 msgid "" "Handles an error which has occurred during :meth:`emit`. The most likely " "cause is a lost connection. Closes the socket so that we can retry on the " "next event." msgstr "" -#: library/logging.handlers.rst:486 +#: library/logging.handlers.rst:503 msgid "" "This is a factory method which allows subclasses to define the precise type " "of socket they want. The default implementation creates a TCP socket (:const:" "`socket.SOCK_STREAM`)." msgstr "" -#: library/logging.handlers.rst:493 +#: library/logging.handlers.rst:510 msgid "" "Pickles the record's attribute dictionary in binary format with a length " "prefix, and returns it ready for transmission across the socket. The details " "of this operation are equivalent to::" msgstr "" -#: library/logging.handlers.rst:501 +#: library/logging.handlers.rst:518 msgid "" "Note that pickles aren't completely secure. If you are concerned about " "security, you may want to override this method to implement a more secure " @@ -814,20 +838,20 @@ msgid "" "objects on the receiving end." msgstr "" -#: library/logging.handlers.rst:510 +#: library/logging.handlers.rst:527 msgid "" "Send a pickled byte-string *packet* to the socket. The format of the sent " "byte-string is as described in the documentation for :meth:`~SocketHandler." "makePickle`." msgstr "" -#: library/logging.handlers.rst:514 +#: library/logging.handlers.rst:531 msgid "" "This function allows for partial sends, which can happen when the network is " "busy." msgstr "" -#: library/logging.handlers.rst:520 +#: library/logging.handlers.rst:537 msgid "" "Tries to create a socket; on failure, uses an exponential back-off " "algorithm. On initial failure, the handler will drop the message it was " @@ -838,23 +862,23 @@ msgid "" "each time up to a maximum of 30 seconds." msgstr "" -#: library/logging.handlers.rst:528 +#: library/logging.handlers.rst:545 msgid "This behaviour is controlled by the following handler attributes:" msgstr "" -#: library/logging.handlers.rst:530 +#: library/logging.handlers.rst:547 msgid "``retryStart`` (initial delay, defaulting to 1.0 seconds)." msgstr "" -#: library/logging.handlers.rst:531 +#: library/logging.handlers.rst:548 msgid "``retryFactor`` (multiplier, defaulting to 2.0)." msgstr "" -#: library/logging.handlers.rst:532 +#: library/logging.handlers.rst:549 msgid "``retryMax`` (maximum delay, defaulting to 30.0 seconds)." msgstr "" -#: library/logging.handlers.rst:534 +#: library/logging.handlers.rst:551 msgid "" "This means that if the remote listener starts up *after* the handler has " "been used, you could lose messages (since the handler won't even attempt a " @@ -862,31 +886,31 @@ msgid "" "during the delay period)." msgstr "" -#: library/logging.handlers.rst:543 +#: library/logging.handlers.rst:560 msgid "DatagramHandler" msgstr "" -#: library/logging.handlers.rst:545 +#: library/logging.handlers.rst:562 msgid "" "The :class:`DatagramHandler` class, located in the :mod:`logging.handlers` " "module, inherits from :class:`SocketHandler` to support sending logging " "messages over UDP sockets." msgstr "" -#: library/logging.handlers.rst:552 +#: library/logging.handlers.rst:569 msgid "" "Returns a new instance of the :class:`DatagramHandler` class intended to " "communicate with a remote machine whose address is given by *host* and " "*port*." msgstr "" -#: library/logging.handlers.rst:555 +#: library/logging.handlers.rst:572 msgid "" "If ``port`` is specified as ``None``, a Unix domain socket is created using " "the value in ``host`` - otherwise, a UDP socket is created." msgstr "" -#: library/logging.handlers.rst:561 +#: library/logging.handlers.rst:578 msgid "" "Pickles the record's attribute dictionary and writes it to the socket in " "binary format. If there is an error with the socket, silently drops the " @@ -894,29 +918,29 @@ msgid "" "LogRecord`, use the :func:`~logging.makeLogRecord` function." msgstr "" -#: library/logging.handlers.rst:570 +#: library/logging.handlers.rst:587 msgid "" "The factory method of :class:`SocketHandler` is here overridden to create a " "UDP socket (:const:`socket.SOCK_DGRAM`)." msgstr "" -#: library/logging.handlers.rst:576 +#: library/logging.handlers.rst:593 msgid "" "Send a pickled byte-string to a socket. The format of the sent byte-string " "is as described in the documentation for :meth:`SocketHandler.makePickle`." msgstr "" -#: library/logging.handlers.rst:583 +#: library/logging.handlers.rst:600 msgid "SysLogHandler" msgstr "" -#: library/logging.handlers.rst:585 +#: library/logging.handlers.rst:602 msgid "" "The :class:`SysLogHandler` class, located in the :mod:`logging.handlers` " "module, supports sending logging messages to a remote or local Unix syslog." msgstr "" -#: library/logging.handlers.rst:591 +#: library/logging.handlers.rst:608 msgid "" "Returns a new instance of the :class:`SysLogHandler` class intended to " "communicate with a remote Unix machine whose address is given by *address* " @@ -931,7 +955,7 @@ msgid "" "rsyslog), specify a value of :const:`socket.SOCK_STREAM`." msgstr "" -#: library/logging.handlers.rst:603 +#: library/logging.handlers.rst:620 msgid "" "Note that if your server is not listening on UDP port 514, :class:" "`SysLogHandler` may appear not to work. In that case, check what address you " @@ -942,21 +966,21 @@ msgid "" "platforms). On Windows, you pretty much have to use the UDP option." msgstr "" -#: library/logging.handlers.rst:612 +#: library/logging.handlers.rst:629 msgid "*socktype* was added." msgstr "" -#: library/logging.handlers.rst:618 +#: library/logging.handlers.rst:635 msgid "Closes the socket to the remote host." msgstr "" -#: library/logging.handlers.rst:623 +#: library/logging.handlers.rst:640 msgid "" "The record is formatted, and then sent to the syslog server. If exception " "information is present, it is *not* sent to the server." msgstr "" -#: library/logging.handlers.rst:626 +#: library/logging.handlers.rst:643 msgid "" "(See: :issue:`12168`.) In earlier versions, the message sent to the syslog " "daemons was always terminated with a NUL byte, because early versions of " @@ -967,7 +991,7 @@ msgid "" "byte on as part of the message." msgstr "" -#: library/logging.handlers.rst:635 +#: library/logging.handlers.rst:652 msgid "" "To enable easier handling of syslog messages in the face of all these " "differing daemon behaviours, the appending of the NUL byte has been made " @@ -977,7 +1001,7 @@ msgid "" "*not* append the NUL terminator." msgstr "" -#: library/logging.handlers.rst:642 +#: library/logging.handlers.rst:659 msgid "" "(See: :issue:`12419`.) In earlier versions, there was no facility for an " "\"ident\" or \"tag\" prefix to identify the source of the message. This can " @@ -988,260 +1012,260 @@ msgid "" "bytes, and is prepended to the message exactly as is." msgstr "" -#: library/logging.handlers.rst:653 +#: library/logging.handlers.rst:670 msgid "" "Encodes the facility and priority into an integer. You can pass in strings " "or integers - if strings are passed, internal mapping dictionaries are used " "to convert them to integers." msgstr "" -#: library/logging.handlers.rst:657 +#: library/logging.handlers.rst:674 msgid "" "The symbolic ``LOG_`` values are defined in :class:`SysLogHandler` and " "mirror the values defined in the ``sys/syslog.h`` header file." msgstr "" -#: library/logging.handlers.rst:660 +#: library/logging.handlers.rst:677 msgid "**Priorities**" msgstr "" -#: library/logging.handlers.rst:663 library/logging.handlers.rst:685 +#: library/logging.handlers.rst:680 library/logging.handlers.rst:702 msgid "Name (string)" msgstr "" -#: library/logging.handlers.rst:663 library/logging.handlers.rst:685 +#: library/logging.handlers.rst:680 library/logging.handlers.rst:702 msgid "Symbolic value" msgstr "" -#: library/logging.handlers.rst:665 +#: library/logging.handlers.rst:682 msgid "``alert``" msgstr "``alert``" -#: library/logging.handlers.rst:665 +#: library/logging.handlers.rst:682 msgid "LOG_ALERT" msgstr "LOG_ALERT" -#: library/logging.handlers.rst:667 +#: library/logging.handlers.rst:684 msgid "``crit`` or ``critical``" msgstr "``crit`` ou ``critical``" -#: library/logging.handlers.rst:667 +#: library/logging.handlers.rst:684 msgid "LOG_CRIT" msgstr "LOG_CRIT" -#: library/logging.handlers.rst:669 +#: library/logging.handlers.rst:686 msgid "``debug``" msgstr "``debug``" -#: library/logging.handlers.rst:669 +#: library/logging.handlers.rst:686 msgid "LOG_DEBUG" msgstr "LOG_DEBUG" -#: library/logging.handlers.rst:671 +#: library/logging.handlers.rst:688 msgid "``emerg`` or ``panic``" msgstr "``emerg`` ou ``panic``" -#: library/logging.handlers.rst:671 +#: library/logging.handlers.rst:688 msgid "LOG_EMERG" msgstr "LOG_EMERG" -#: library/logging.handlers.rst:673 +#: library/logging.handlers.rst:690 msgid "``err`` or ``error``" msgstr "``err`` ou ``error``" -#: library/logging.handlers.rst:673 +#: library/logging.handlers.rst:690 msgid "LOG_ERR" msgstr "LOG_ERR" -#: library/logging.handlers.rst:675 +#: library/logging.handlers.rst:692 msgid "``info``" msgstr "``info``" -#: library/logging.handlers.rst:675 +#: library/logging.handlers.rst:692 msgid "LOG_INFO" msgstr "LOG_INFO" -#: library/logging.handlers.rst:677 +#: library/logging.handlers.rst:694 msgid "``notice``" msgstr "``notice``" -#: library/logging.handlers.rst:677 +#: library/logging.handlers.rst:694 msgid "LOG_NOTICE" msgstr "LOG_NOTICE" -#: library/logging.handlers.rst:679 +#: library/logging.handlers.rst:696 msgid "``warn`` or ``warning``" msgstr "``warn`` ou ``warning``" -#: library/logging.handlers.rst:679 +#: library/logging.handlers.rst:696 msgid "LOG_WARNING" msgstr "LOG_WARNING" -#: library/logging.handlers.rst:682 +#: library/logging.handlers.rst:699 msgid "**Facilities**" msgstr "" -#: library/logging.handlers.rst:687 +#: library/logging.handlers.rst:704 msgid "``auth``" msgstr "``auth``" -#: library/logging.handlers.rst:687 +#: library/logging.handlers.rst:704 msgid "LOG_AUTH" msgstr "LOG_AUTH" -#: library/logging.handlers.rst:689 +#: library/logging.handlers.rst:706 msgid "``authpriv``" msgstr "``authpriv``" -#: library/logging.handlers.rst:689 +#: library/logging.handlers.rst:706 msgid "LOG_AUTHPRIV" msgstr "LOG_AUTHPRIV" -#: library/logging.handlers.rst:691 +#: library/logging.handlers.rst:708 msgid "``cron``" msgstr "``cron``" -#: library/logging.handlers.rst:691 +#: library/logging.handlers.rst:708 msgid "LOG_CRON" msgstr "LOG_CRON" -#: library/logging.handlers.rst:693 +#: library/logging.handlers.rst:710 msgid "``daemon``" msgstr "``daemon``" -#: library/logging.handlers.rst:693 +#: library/logging.handlers.rst:710 msgid "LOG_DAEMON" msgstr "LOG_DAEMON" -#: library/logging.handlers.rst:695 +#: library/logging.handlers.rst:712 msgid "``ftp``" msgstr "``ftp``" -#: library/logging.handlers.rst:695 +#: library/logging.handlers.rst:712 msgid "LOG_FTP" msgstr "LOG_FTP" -#: library/logging.handlers.rst:697 +#: library/logging.handlers.rst:714 msgid "``kern``" msgstr "``kern``" -#: library/logging.handlers.rst:697 +#: library/logging.handlers.rst:714 msgid "LOG_KERN" msgstr "LOG_KERN" -#: library/logging.handlers.rst:699 +#: library/logging.handlers.rst:716 msgid "``lpr``" msgstr "``lpr``" -#: library/logging.handlers.rst:699 +#: library/logging.handlers.rst:716 msgid "LOG_LPR" msgstr "LOG_LPR" -#: library/logging.handlers.rst:701 +#: library/logging.handlers.rst:718 msgid "``mail``" msgstr "``mail``" -#: library/logging.handlers.rst:701 +#: library/logging.handlers.rst:718 msgid "LOG_MAIL" msgstr "LOG_MAIL" -#: library/logging.handlers.rst:703 +#: library/logging.handlers.rst:720 msgid "``news``" msgstr "``news``" -#: library/logging.handlers.rst:703 +#: library/logging.handlers.rst:720 msgid "LOG_NEWS" msgstr "LOG_NEWS" -#: library/logging.handlers.rst:705 +#: library/logging.handlers.rst:722 msgid "``syslog``" msgstr "``syslog``" -#: library/logging.handlers.rst:705 +#: library/logging.handlers.rst:722 msgid "LOG_SYSLOG" msgstr "LOG_SYSLOG" -#: library/logging.handlers.rst:707 +#: library/logging.handlers.rst:724 msgid "``user``" msgstr "``user``" -#: library/logging.handlers.rst:707 +#: library/logging.handlers.rst:724 msgid "LOG_USER" msgstr "LOG_USER" -#: library/logging.handlers.rst:709 +#: library/logging.handlers.rst:726 msgid "``uucp``" msgstr "``uucp``" -#: library/logging.handlers.rst:709 +#: library/logging.handlers.rst:726 msgid "LOG_UUCP" msgstr "LOG_UUCP" -#: library/logging.handlers.rst:711 +#: library/logging.handlers.rst:728 msgid "``local0``" msgstr "``local0``" -#: library/logging.handlers.rst:711 +#: library/logging.handlers.rst:728 msgid "LOG_LOCAL0" msgstr "LOG_LOCAL0" -#: library/logging.handlers.rst:713 +#: library/logging.handlers.rst:730 msgid "``local1``" msgstr "``local1``" -#: library/logging.handlers.rst:713 +#: library/logging.handlers.rst:730 msgid "LOG_LOCAL1" msgstr "LOG_LOCAL1" -#: library/logging.handlers.rst:715 +#: library/logging.handlers.rst:732 msgid "``local2``" msgstr "``local2``" -#: library/logging.handlers.rst:715 +#: library/logging.handlers.rst:732 msgid "LOG_LOCAL2" msgstr "LOG_LOCAL2" -#: library/logging.handlers.rst:717 +#: library/logging.handlers.rst:734 msgid "``local3``" msgstr "``local3``" -#: library/logging.handlers.rst:717 +#: library/logging.handlers.rst:734 msgid "LOG_LOCAL3" msgstr "LOG_LOCAL3" -#: library/logging.handlers.rst:719 +#: library/logging.handlers.rst:736 msgid "``local4``" msgstr "``local4``" -#: library/logging.handlers.rst:719 +#: library/logging.handlers.rst:736 msgid "LOG_LOCAL4" msgstr "LOG_LOCAL4" -#: library/logging.handlers.rst:721 +#: library/logging.handlers.rst:738 msgid "``local5``" msgstr "``local5``" -#: library/logging.handlers.rst:721 +#: library/logging.handlers.rst:738 msgid "LOG_LOCAL5" msgstr "LOG_LOCAL5" -#: library/logging.handlers.rst:723 +#: library/logging.handlers.rst:740 msgid "``local6``" msgstr "``local6``" -#: library/logging.handlers.rst:723 +#: library/logging.handlers.rst:740 msgid "LOG_LOCAL6" msgstr "LOG_LOCAL6" -#: library/logging.handlers.rst:725 +#: library/logging.handlers.rst:742 msgid "``local7``" msgstr "``local7``" -#: library/logging.handlers.rst:725 +#: library/logging.handlers.rst:742 msgid "LOG_LOCAL7" msgstr "LOG_LOCAL7" -#: library/logging.handlers.rst:730 +#: library/logging.handlers.rst:747 msgid "" "Maps a logging level name to a syslog priority name. You may need to " "override this if you are using custom levels, or if the default algorithm is " @@ -1250,11 +1274,11 @@ msgid "" "all other level names to 'warning'." msgstr "" -#: library/logging.handlers.rst:740 +#: library/logging.handlers.rst:757 msgid "NTEventLogHandler" msgstr "" -#: library/logging.handlers.rst:742 +#: library/logging.handlers.rst:759 msgid "" "The :class:`NTEventLogHandler` class, located in the :mod:`logging.handlers` " "module, supports sending logging messages to a local Windows NT, Windows " @@ -1262,7 +1286,7 @@ msgid "" "Win32 extensions for Python installed." msgstr "" -#: library/logging.handlers.rst:750 +#: library/logging.handlers.rst:767 msgid "" "Returns a new instance of the :class:`NTEventLogHandler` class. The " "*appname* is used to define the application name as it appears in the event " @@ -1278,7 +1302,7 @@ msgid "" "or ``'Security'``, and defaults to ``'Application'``." msgstr "" -#: library/logging.handlers.rst:766 +#: library/logging.handlers.rst:783 msgid "" "At this point, you can remove the application name from the registry as a " "source of event log entries. However, if you do this, you will not be able " @@ -1287,19 +1311,19 @@ msgid "" "not do this." msgstr "" -#: library/logging.handlers.rst:775 +#: library/logging.handlers.rst:792 msgid "" "Determines the message ID, event category and event type, and then logs the " "message in the NT event log." msgstr "" -#: library/logging.handlers.rst:781 +#: library/logging.handlers.rst:798 msgid "" "Returns the event category for the record. Override this if you want to " "specify your own categories. This version returns 0." msgstr "" -#: library/logging.handlers.rst:787 +#: library/logging.handlers.rst:804 msgid "" "Returns the event type for the record. Override this if you want to specify " "your own types. This version does a mapping using the handler's typemap " @@ -1310,7 +1334,7 @@ msgid "" "the handler's *typemap* attribute." msgstr "" -#: library/logging.handlers.rst:798 +#: library/logging.handlers.rst:815 msgid "" "Returns the message ID for the record. If you are using your own messages, " "you could do this by having the *msg* passed to the logger being an ID " @@ -1319,17 +1343,17 @@ msgid "" "message ID in :file:`win32service.pyd`." msgstr "" -#: library/logging.handlers.rst:807 +#: library/logging.handlers.rst:824 msgid "SMTPHandler" msgstr "" -#: library/logging.handlers.rst:809 +#: library/logging.handlers.rst:826 msgid "" "The :class:`SMTPHandler` class, located in the :mod:`logging.handlers` " "module, supports sending logging messages to an email address via SMTP." msgstr "" -#: library/logging.handlers.rst:815 +#: library/logging.handlers.rst:832 msgid "" "Returns a new instance of the :class:`SMTPHandler` class. The instance is " "initialized with the from and to addresses and subject line of the email. " @@ -1340,7 +1364,7 @@ msgid "" "*credentials* argument." msgstr "" -#: library/logging.handlers.rst:822 +#: library/logging.handlers.rst:839 msgid "" "To specify the use of a secure protocol (TLS), pass in a tuple to the " "*secure* argument. This will only be used when authentication credentials " @@ -1350,31 +1374,31 @@ msgid "" "SMTP.starttls` method.)" msgstr "" -#: library/logging.handlers.rst:829 +#: library/logging.handlers.rst:846 msgid "" "A timeout can be specified for communication with the SMTP server using the " "*timeout* argument." msgstr "" -#: library/logging.handlers.rst:832 +#: library/logging.handlers.rst:849 msgid "The *timeout* argument was added." msgstr "" -#: library/logging.handlers.rst:837 +#: library/logging.handlers.rst:854 msgid "Formats the record and sends it to the specified addressees." msgstr "" -#: library/logging.handlers.rst:842 +#: library/logging.handlers.rst:859 msgid "" "If you want to specify a subject line which is record-dependent, override " "this method." msgstr "" -#: library/logging.handlers.rst:848 +#: library/logging.handlers.rst:865 msgid "MemoryHandler" msgstr "" -#: library/logging.handlers.rst:850 +#: library/logging.handlers.rst:867 msgid "" "The :class:`MemoryHandler` class, located in the :mod:`logging.handlers` " "module, supports buffering of logging records in memory, periodically " @@ -1382,7 +1406,7 @@ msgid "" "buffer is full, or when an event of a certain severity or greater is seen." msgstr "" -#: library/logging.handlers.rst:855 +#: library/logging.handlers.rst:872 msgid "" ":class:`MemoryHandler` is a subclass of the more general :class:" "`BufferingHandler`, which is an abstract class. This buffers logging records " @@ -1391,31 +1415,31 @@ msgid "" "should, then :meth:`flush` is expected to do the flushing." msgstr "" -#: library/logging.handlers.rst:864 +#: library/logging.handlers.rst:881 msgid "" "Initializes the handler with a buffer of the specified capacity. Here, " "*capacity* means the number of logging records buffered." msgstr "" -#: library/logging.handlers.rst:870 +#: library/logging.handlers.rst:887 msgid "" "Append the record to the buffer. If :meth:`shouldFlush` returns true, call :" "meth:`flush` to process the buffer." msgstr "" -#: library/logging.handlers.rst:876 +#: library/logging.handlers.rst:893 msgid "" "You can override this to implement custom flushing behavior. This version " "just zaps the buffer to empty." msgstr "" -#: library/logging.handlers.rst:882 +#: library/logging.handlers.rst:899 msgid "" "Return ``True`` if the buffer is up to capacity. This method can be " "overridden to implement custom flushing strategies." msgstr "" -#: library/logging.handlers.rst:888 +#: library/logging.handlers.rst:905 msgid "" "Returns a new instance of the :class:`MemoryHandler` class. The instance is " "initialized with a buffer size of *capacity* (number of records buffered). " @@ -1427,34 +1451,34 @@ msgid "" "the buffer will occur when the handler is closed." msgstr "" -#: library/logging.handlers.rst:897 +#: library/logging.handlers.rst:914 msgid "The *flushOnClose* parameter was added." msgstr "" -#: library/logging.handlers.rst:903 +#: library/logging.handlers.rst:920 msgid "Calls :meth:`flush`, sets the target to ``None`` and clears the buffer." msgstr "" -#: library/logging.handlers.rst:909 +#: library/logging.handlers.rst:926 msgid "" "For a :class:`MemoryHandler`, flushing means just sending the buffered " "records to the target, if there is one. The buffer is also cleared when this " "happens. Override if you want different behavior." msgstr "" -#: library/logging.handlers.rst:916 +#: library/logging.handlers.rst:933 msgid "Sets the target handler for this handler." msgstr "" -#: library/logging.handlers.rst:921 +#: library/logging.handlers.rst:938 msgid "Checks for buffer full or a record at the *flushLevel* or higher." msgstr "" -#: library/logging.handlers.rst:927 +#: library/logging.handlers.rst:944 msgid "HTTPHandler" msgstr "" -#: library/logging.handlers.rst:929 +#: library/logging.handlers.rst:946 #, fuzzy msgid "" "The :class:`HTTPHandler` class, located in the :mod:`logging.handlers` " @@ -1465,7 +1489,7 @@ msgstr "" "`logging.handlers`, gère le roulement des fichiers de journalisation sur le " "disque à un intervalle de temps spécifié." -#: library/logging.handlers.rst:936 +#: library/logging.handlers.rst:953 msgid "" "Returns a new instance of the :class:`HTTPHandler` class. The *host* can be " "of the form ``host:port``, should you need to use a specific port number. " @@ -1479,12 +1503,12 @@ msgid "" "cleartext across the wire." msgstr "" -#: library/logging.handlers.rst:947 +#: library/logging.handlers.rst:964 #, fuzzy msgid "The *context* parameter was added." msgstr "Ajout du paramètre *exit*." -#: library/logging.handlers.rst:952 +#: library/logging.handlers.rst:969 msgid "" "Provides a dictionary, based on ``record``, which is to be URL-encoded and " "sent to the web server. The default implementation just returns ``record." @@ -1493,14 +1517,14 @@ msgid "" "customization of what's sent to the server is required." msgstr "" -#: library/logging.handlers.rst:960 +#: library/logging.handlers.rst:977 msgid "" "Sends the record to the web server as a URL-encoded dictionary. The :meth:" "`mapLogRecord` method is used to convert the record to the dictionary to be " "sent." msgstr "" -#: library/logging.handlers.rst:964 +#: library/logging.handlers.rst:981 msgid "" "Since preparing a record for sending it to a web server is not the same as a " "generic formatting operation, using :meth:`~logging.Handler.setFormatter` to " @@ -1510,18 +1534,18 @@ msgid "" "the dictionary in a form suitable for sending to a web server." msgstr "" -#: library/logging.handlers.rst:977 +#: library/logging.handlers.rst:994 msgid "QueueHandler" msgstr "" -#: library/logging.handlers.rst:981 +#: library/logging.handlers.rst:998 msgid "" "The :class:`QueueHandler` class, located in the :mod:`logging.handlers` " "module, supports sending logging messages to a queue, such as those " "implemented in the :mod:`queue` or :mod:`multiprocessing` modules." msgstr "" -#: library/logging.handlers.rst:985 +#: library/logging.handlers.rst:1002 msgid "" "Along with the :class:`QueueListener` class, :class:`QueueHandler` can be " "used to let handlers do their work on a separate thread from the one which " @@ -1531,7 +1555,7 @@ msgid "" "an email via :class:`SMTPHandler`) are done on a separate thread." msgstr "" -#: library/logging.handlers.rst:994 +#: library/logging.handlers.rst:1011 msgid "" "Returns a new instance of the :class:`QueueHandler` class. The instance is " "initialized with the queue to send messages to. The *queue* can be any queue-" @@ -1541,7 +1565,7 @@ msgid "" "instances for *queue*." msgstr "" -#: library/logging.handlers.rst:1004 +#: library/logging.handlers.rst:1021 msgid "" "Enqueues the result of preparing the LogRecord. Should an exception occur (e." "g. because a bounded queue has filled up), the :meth:`~logging.Handler." @@ -1551,38 +1575,38 @@ msgid "" "raiseExceptions` is ``True``)." msgstr "" -#: library/logging.handlers.rst:1013 +#: library/logging.handlers.rst:1030 msgid "" "Prepares a record for queuing. The object returned by this method is " "enqueued." msgstr "" -#: library/logging.handlers.rst:1016 +#: library/logging.handlers.rst:1033 msgid "" "The base implementation formats the record to merge the message, arguments, " "and exception information, if present. It also removes unpickleable items " "from the record in-place." msgstr "" -#: library/logging.handlers.rst:1020 +#: library/logging.handlers.rst:1037 msgid "" "You might want to override this method if you want to convert the record to " "a dict or JSON string, or send a modified copy of the record while leaving " "the original intact." msgstr "" -#: library/logging.handlers.rst:1026 +#: library/logging.handlers.rst:1043 msgid "" "Enqueues the record on the queue using ``put_nowait()``; you may want to " "override this if you want to use blocking behaviour, or a timeout, or a " "customized queue implementation." msgstr "" -#: library/logging.handlers.rst:1035 +#: library/logging.handlers.rst:1052 msgid "QueueListener" msgstr "" -#: library/logging.handlers.rst:1039 +#: library/logging.handlers.rst:1056 msgid "" "The :class:`QueueListener` class, located in the :mod:`logging.handlers` " "module, supports receiving logging messages from a queue, such as those " @@ -1593,7 +1617,7 @@ msgid "" "works hand-in-hand with :class:`QueueHandler`." msgstr "" -#: library/logging.handlers.rst:1047 +#: library/logging.handlers.rst:1064 msgid "" "Along with the :class:`QueueHandler` class, :class:`QueueListener` can be " "used to let handlers do their work on a separate thread from the one which " @@ -1603,7 +1627,7 @@ msgid "" "an email via :class:`SMTPHandler`) are done on a separate thread." msgstr "" -#: library/logging.handlers.rst:1056 +#: library/logging.handlers.rst:1073 msgid "" "Returns a new instance of the :class:`QueueListener` class. The instance is " "initialized with the queue to send messages to and a list of handlers which " @@ -1614,7 +1638,7 @@ msgid "" "class:`~queue.SimpleQueue` instances for *queue*." msgstr "" -#: library/logging.handlers.rst:1064 +#: library/logging.handlers.rst:1081 msgid "" "If ``respect_handler_level`` is ``True``, a handler's level is respected " "(compared with the level for the message) when deciding whether to pass " @@ -1622,82 +1646,82 @@ msgid "" "versions - to always pass each message to each handler." msgstr "" -#: library/logging.handlers.rst:1069 +#: library/logging.handlers.rst:1086 msgid "The ``respect_handler_level`` argument was added." msgstr "" -#: library/logging.handlers.rst:1074 +#: library/logging.handlers.rst:1091 msgid "Dequeues a record and return it, optionally blocking." msgstr "" -#: library/logging.handlers.rst:1076 +#: library/logging.handlers.rst:1093 msgid "" "The base implementation uses ``get()``. You may want to override this method " "if you want to use timeouts or work with custom queue implementations." msgstr "" -#: library/logging.handlers.rst:1082 +#: library/logging.handlers.rst:1099 msgid "Prepare a record for handling." msgstr "" -#: library/logging.handlers.rst:1084 +#: library/logging.handlers.rst:1101 msgid "" "This implementation just returns the passed-in record. You may want to " "override this method if you need to do any custom marshalling or " "manipulation of the record before passing it to the handlers." msgstr "" -#: library/logging.handlers.rst:1090 +#: library/logging.handlers.rst:1107 msgid "Handle a record." msgstr "" -#: library/logging.handlers.rst:1092 +#: library/logging.handlers.rst:1109 msgid "" "This just loops through the handlers offering them the record to handle. The " "actual object passed to the handlers is that which is returned from :meth:" "`prepare`." msgstr "" -#: library/logging.handlers.rst:1098 +#: library/logging.handlers.rst:1115 msgid "Starts the listener." msgstr "" -#: library/logging.handlers.rst:1100 +#: library/logging.handlers.rst:1117 msgid "" "This starts up a background thread to monitor the queue for LogRecords to " "process." msgstr "" -#: library/logging.handlers.rst:1105 +#: library/logging.handlers.rst:1122 msgid "Stops the listener." msgstr "" -#: library/logging.handlers.rst:1107 +#: library/logging.handlers.rst:1124 msgid "" "This asks the thread to terminate, and then waits for it to do so. Note that " "if you don't call this before your application exits, there may be some " "records still left on the queue, which won't be processed." msgstr "" -#: library/logging.handlers.rst:1113 +#: library/logging.handlers.rst:1130 msgid "" "Writes a sentinel to the queue to tell the listener to quit. This " "implementation uses ``put_nowait()``. You may want to override this method " "if you want to use timeouts or work with custom queue implementations." msgstr "" -#: library/logging.handlers.rst:1124 +#: library/logging.handlers.rst:1141 msgid "Module :mod:`logging`" msgstr "Module :mod:`logging`" -#: library/logging.handlers.rst:1124 +#: library/logging.handlers.rst:1141 msgid "API reference for the logging module." msgstr "Référence d'API pour le module de journalisation." -#: library/logging.handlers.rst:1126 +#: library/logging.handlers.rst:1143 msgid "Module :mod:`logging.config`" msgstr "Module :mod:`logging.config`" -#: library/logging.handlers.rst:1127 +#: library/logging.handlers.rst:1144 msgid "Configuration API for the logging module." msgstr "API de configuration pour le module de journalisation." diff --git a/library/logging.po b/library/logging.po index cd2a9ed3..bae3919a 100644 --- a/library/logging.po +++ b/library/logging.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-10-21 15:04+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-12-16 21:00+0100\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -177,10 +177,23 @@ msgstr "" "transmis aux gestionnaires des enregistreurs parents." #: library/logging.rst:83 +msgid "" +"Spelling it out with an example: If the propagate attribute of the logger " +"named ``A.B.C`` evaluates to true, any event logged to ``A.B.C`` via a " +"method call such as ``logging.getLogger('A.B.C').error(...)`` will [subject " +"to passing that logger's level and filter settings] be passed in turn to any " +"handlers attached to loggers named ``A.B``, ``A`` and the root logger, after " +"first being passed to any handlers attached to ``A.B.C``. If any logger in " +"the chain ``A.B.C``, ``A.B``, ``A`` has its ``propagate`` attribute set to " +"false, then that is the last logger whose handlers are offered the event to " +"handle, and propagation stops at that point." +msgstr "" + +#: library/logging.rst:92 msgid "The constructor sets this attribute to ``True``." msgstr "Le constructeur fixe cet attribut à ``True``." -#: library/logging.rst:85 +#: library/logging.rst:94 msgid "" "If you attach a handler to a logger *and* one or more of its ancestors, it " "may emit the same record multiple times. In general, you should not need to " @@ -201,7 +214,7 @@ msgstr "" "pratique la plus courante est de n'attacher les gestionnaires qu'à " "l'enregistreur racine et à laisser la propagation s'occuper du reste." -#: library/logging.rst:96 +#: library/logging.rst:105 msgid "" "Sets the threshold for this logger to *level*. Logging messages which are " "less severe than *level* will be ignored; logging messages which have " @@ -215,7 +228,7 @@ msgstr "" "les gestionnaires de l'enregistreur, à moins que le niveau d'un gestionnaire " "n'ait été fixé à un niveau de gravité plus élevé que *level*." -#: library/logging.rst:101 +#: library/logging.rst:110 msgid "" "When a logger is created, the level is set to :const:`NOTSET` (which causes " "all messages to be processed when the logger is the root logger, or " @@ -228,7 +241,7 @@ msgstr "" "un enregistreur non racine). Notez que l'enregistreur racine est créé avec " "le niveau :const:`WARNING`." -#: library/logging.rst:106 +#: library/logging.rst:115 msgid "" "The term 'delegation to the parent' means that if a logger has a level of " "NOTSET, its chain of ancestor loggers is traversed until either an ancestor " @@ -239,7 +252,7 @@ msgstr "" "jusqu'à ce qu'un parent ayant un niveau autre que ``NOTSET`` soit trouvé, ou " "que la racine soit atteinte." -#: library/logging.rst:110 +#: library/logging.rst:119 msgid "" "If an ancestor is found with a level other than NOTSET, then that ancestor's " "level is treated as the effective level of the logger where the ancestor " @@ -250,7 +263,7 @@ msgstr "" "recherche du parent a commencé. Ce niveau est utilisé pour déterminer " "comment un événement d'enregistrement est traité." -#: library/logging.rst:114 +#: library/logging.rst:123 msgid "" "If the root is reached, and it has a level of NOTSET, then all messages will " "be processed. Otherwise, the root's level will be used as the effective " @@ -260,11 +273,11 @@ msgstr "" "messages sont traités. Sinon, le niveau de la racine est utilisé comme " "niveau effectif." -#: library/logging.rst:426 +#: library/logging.rst:435 msgid "See :ref:`levels` for a list of levels." msgstr "Voir :ref:`levels` pour la liste des niveaux." -#: library/logging.rst:119 +#: library/logging.rst:128 msgid "" "The *level* parameter now accepts a string representation of the level such " "as 'INFO' as an alternative to the integer constants such as :const:`INFO`. " @@ -279,7 +292,7 @@ msgstr "" "`getEffectiveLevel` et :meth:`isEnabledFor` renvoient et s'attendent à " "recevoir des entiers." -#: library/logging.rst:129 +#: library/logging.rst:138 msgid "" "Indicates if a message of severity *level* would be processed by this " "logger. This method checks first the module-level level set by ``logging." @@ -291,7 +304,7 @@ msgstr "" "``logging.disable(level)`` et ensuite le niveau effectif de l'enregistreur, " "déterminé par :meth:`getEffectiveLevel`." -#: library/logging.rst:137 +#: library/logging.rst:146 msgid "" "Indicates the effective level for this logger. If a value other than :const:" "`NOTSET` has been set using :meth:`setLevel`, it is returned. Otherwise, the " @@ -306,7 +319,7 @@ msgstr "" "valeur renvoyée est un entier, par exemple :const:`logging.DEBUG`, :const:" "`logging.INFO`, etc." -#: library/logging.rst:147 +#: library/logging.rst:156 msgid "" "Returns a logger which is a descendant to this logger, as determined by the " "suffix. Thus, ``logging.getLogger('abc').getChild('def.ghi')`` would return " @@ -321,7 +334,7 @@ msgstr "" "l’enregistreur parent est nommé en utilisant, par exemple, ``__name__`` " "plutôt qu'une chaîne de caractères littérale." -#: library/logging.rst:158 +#: library/logging.rst:167 msgid "" "Logs a message with level :const:`DEBUG` on this logger. The *msg* is the " "message format string, and the *args* are the arguments which are merged " @@ -336,7 +349,7 @@ msgstr "" "mots-clé dans la chaîne et de passer un dictionnaire en argument. Si *args* " "n'est pas fourni, aucun formatage « à la % » n'est appliqué." -#: library/logging.rst:164 +#: library/logging.rst:173 msgid "" "There are four keyword arguments in *kwargs* which are inspected: " "*exc_info*, *stack_info*, *stacklevel* and *extra*." @@ -344,7 +357,7 @@ msgstr "" "Quatre mots-clés de *kwargs* sont analysés : *exc_info*, *stack_info*, " "*stacklevel* et *extra*." -#: library/logging.rst:167 +#: library/logging.rst:176 msgid "" "If *exc_info* does not evaluate as false, it causes exception information to " "be added to the logging message. If an exception tuple (in the format " @@ -359,7 +372,7 @@ msgstr "" "contraire, les informations sur l'exception sont déterminées par un appel à :" "func:`sys.exc_info`." -#: library/logging.rst:977 +#: library/logging.rst:986 msgid "" "The second optional keyword argument is *stack_info*, which defaults to " "``False``. If true, stack information is added to the logging message, " @@ -380,7 +393,7 @@ msgstr "" "portent des informations sur les appels successifs déclenchés par la levée " "d'une exception et la recherche de gestionnaires pour cette exception." -#: library/logging.rst:986 +#: library/logging.rst:995 msgid "" "You can specify *stack_info* independently of *exc_info*, e.g. to just show " "how you got to a certain point in your code, even when no exceptions were " @@ -391,7 +404,7 @@ msgstr "" "si aucune exception n'a été levée. La pile d'appels est alors affichée après " "la ligne d'en-tête suivante :" -#: library/logging.rst:994 +#: library/logging.rst:1003 msgid "" "This mimics the ``Traceback (most recent call last):`` which is used when " "displaying exception frames." @@ -399,7 +412,7 @@ msgstr "" "Elle imite la ligne ``Traceback (most recent call last):`` affichée avec la " "pile d'appels d'une exception." -#: library/logging.rst:192 +#: library/logging.rst:201 msgid "" "The third optional keyword argument is *stacklevel*, which defaults to " "``1``. If greater than 1, the corresponding number of stack frames are " @@ -419,7 +432,7 @@ msgstr "" "de l'utilitaire et de ne traiter que celles de l'appelant. Le nom de ce " "paramètre est le même que son équivalent dans le module :mod:`warnings`." -#: library/logging.rst:200 +#: library/logging.rst:209 msgid "" "The fourth keyword argument is *extra* which can be used to pass a " "dictionary which is used to populate the __dict__ of the :class:`LogRecord` " @@ -433,11 +446,11 @@ msgstr "" "utilisés comme bon vous semble. Ils peuvent ainsi être incorporés aux " "entrées de journalisation. Par exemple ::" -#: library/logging.rst:212 +#: library/logging.rst:221 msgid "would print something like" msgstr "affiche" -#: library/logging.rst:1014 +#: library/logging.rst:1023 msgid "" "The keys in the dictionary passed in *extra* should not clash with the keys " "used by the logging system. (See the :class:`Formatter` documentation for " @@ -448,7 +461,7 @@ msgstr "" "documentation de la classe :class:`Formatter` pour plus de précisions sur " "les clés utilisées par le système de journalisation." -#: library/logging.rst:222 +#: library/logging.rst:231 msgid "" "If you choose to use these attributes in logged messages, you need to " "exercise some care. In the above example, for instance, the :class:" @@ -465,7 +478,7 @@ msgstr "" "message n'est pas enregistré car une exception de formatage de chaîne est " "levée. Il faut alors toujours passer un dictionnaire *extra* avec ces clés." -#: library/logging.rst:1025 +#: library/logging.rst:1034 msgid "" "While this might be annoying, this feature is intended for use in " "specialized circumstances, such as multi-threaded servers where the same " @@ -483,19 +496,19 @@ msgstr "" "clair que les classes :class:`Formatter`\\ s spécialisées doivent être " "utilisées avec des :class:`Handler`\\ s particuliers." -#: library/logging.rst:1032 +#: library/logging.rst:1041 msgid "The *stack_info* parameter was added." msgstr "ajout du paramètre *stack_info*." -#: library/logging.rst:239 +#: library/logging.rst:248 msgid "The *exc_info* parameter can now accept exception instances." msgstr "le paramètre *exc_info* peut être une instance d'exception." -#: library/logging.rst:242 +#: library/logging.rst:251 msgid "The *stacklevel* parameter was added." msgstr "ajout du paramètre *stacklevel*." -#: library/logging.rst:248 +#: library/logging.rst:257 msgid "" "Logs a message with level :const:`INFO` on this logger. The arguments are " "interpreted as for :meth:`debug`." @@ -503,7 +516,7 @@ msgstr "" "Enregistre un message avec le niveau de gravité :const:`INFO`. Les arguments " "ont la même signification que pour :meth:`debug`." -#: library/logging.rst:254 +#: library/logging.rst:263 msgid "" "Logs a message with level :const:`WARNING` on this logger. The arguments are " "interpreted as for :meth:`debug`." @@ -511,7 +524,7 @@ msgstr "" "Enregistre un message avec le niveau de gravité :const:`WARNING`. Les " "arguments ont la même signification que pour :meth:`debug`." -#: library/logging.rst:257 +#: library/logging.rst:266 msgid "" "There is an obsolete method ``warn`` which is functionally identical to " "``warning``. As ``warn`` is deprecated, please do not use it - use " @@ -521,7 +534,7 @@ msgstr "" "``warn`` n'est plus maintenue, prière de ne plus l'utiliser et de la " "remplacer par ``warning``." -#: library/logging.rst:263 +#: library/logging.rst:272 msgid "" "Logs a message with level :const:`ERROR` on this logger. The arguments are " "interpreted as for :meth:`debug`." @@ -529,7 +542,7 @@ msgstr "" "Enregistre un message avec le niveau de gravité :const:`ERROR`. Les " "arguments ont la même signification que pour :meth:`debug`." -#: library/logging.rst:269 +#: library/logging.rst:278 msgid "" "Logs a message with level :const:`CRITICAL` on this logger. The arguments " "are interpreted as for :meth:`debug`." @@ -537,7 +550,7 @@ msgstr "" "Enregistre un message avec le niveau de gravité :const:`CRITICAL`. Les " "arguments ont la même signification que pour :meth:`debug`." -#: library/logging.rst:275 +#: library/logging.rst:284 msgid "" "Logs a message with integer level *level* on this logger. The other " "arguments are interpreted as for :meth:`debug`." @@ -545,7 +558,7 @@ msgstr "" "Enregistre un message avec le niveau de gravité *level*. Les arguments ont " "la même signification que pour :meth:`debug`." -#: library/logging.rst:281 +#: library/logging.rst:290 msgid "" "Logs a message with level :const:`ERROR` on this logger. The arguments are " "interpreted as for :meth:`debug`. Exception info is added to the logging " @@ -556,15 +569,15 @@ msgstr "" "sur l'exception sont ajoutées au message. Cette méthode doit être appelée " "depuis un gestionnaire d'exceptions." -#: library/logging.rst:288 +#: library/logging.rst:297 msgid "Adds the specified filter *filter* to this logger." msgstr "Ajoute le filtre *filter* à l'enregistreur." -#: library/logging.rst:293 +#: library/logging.rst:302 msgid "Removes the specified filter *filter* from this logger." msgstr "Retire le filtre *filter* de cet enregistreur." -#: library/logging.rst:298 +#: library/logging.rst:307 msgid "" "Apply this logger's filters to the record and return ``True`` if the record " "is to be processed. The filters are consulted in turn, until one of them " @@ -579,15 +592,15 @@ msgstr "" "gestionnaires). Si l'un d'entre eux renvoie faux, le traitement de l'entrée " "s'arrête." -#: library/logging.rst:307 +#: library/logging.rst:316 msgid "Adds the specified handler *hdlr* to this logger." msgstr "Ajoute le gestionnaire *hdlr* à l'enregistreur." -#: library/logging.rst:312 +#: library/logging.rst:321 msgid "Removes the specified handler *hdlr* from this logger." msgstr "Retire le gestionnaire *hdlr* de l'enregistreur." -#: library/logging.rst:317 +#: library/logging.rst:326 msgid "" "Finds the caller's source filename and line number. Returns the filename, " "line number, function name and stack information as a 4-element tuple. The " @@ -598,7 +611,7 @@ msgstr "" "fonction et la pile d'appels. La pile vaut ``None`` si *stack_info* n'est " "pas ``True``." -#: library/logging.rst:321 +#: library/logging.rst:330 msgid "" "The *stacklevel* parameter is passed from code calling the :meth:`debug` and " "other APIs. If greater than 1, the excess is used to skip stack frames " @@ -614,7 +627,7 @@ msgstr "" "retirer les informations sur ce code de l'entrée, tout en conservant celles " "sur le code au-dessus du code d'encapsulation." -#: library/logging.rst:331 +#: library/logging.rst:340 msgid "" "Handles a record by passing it to all handlers associated with this logger " "and its ancestors (until a false value of *propagate* is found). This method " @@ -628,7 +641,7 @@ msgstr "" "créées localement. Du filtrage au niveau de l'enregistreur est appliqué en " "appelant :meth:`~Logger.filter`." -#: library/logging.rst:339 +#: library/logging.rst:348 msgid "" "This is a factory method which can be overridden in subclasses to create " "specialized :class:`LogRecord` instances." @@ -636,7 +649,7 @@ msgstr "" "Fabrique qui peut être redéfinie pour créer des instances de :class:" "`LogRecord`." -#: library/logging.rst:344 +#: library/logging.rst:353 msgid "" "Checks to see if this logger has any handlers configured. This is done by " "looking for handlers in this logger and its parents in the logger hierarchy. " @@ -652,15 +665,15 @@ msgstr "" "*propagate* à faux est rencontré ­— cet enregistreur est alors le dernier " "dans lequel la méthode cherche des gestionnaires. " -#: library/logging.rst:353 +#: library/logging.rst:362 msgid "Loggers can now be pickled and unpickled." msgstr "les enregistreurs peuvent être sérialisés et désérialisés." -#: library/logging.rst:359 +#: library/logging.rst:368 msgid "Logging Levels" msgstr "Niveaux de journalisation" -#: library/logging.rst:361 +#: library/logging.rst:370 msgid "" "The numeric values of logging levels are given in the following table. These " "are primarily of interest if you want to define your own levels, and need " @@ -674,67 +687,67 @@ msgstr "" "prédéfinis. Si vous définissez un niveau avec la même valeur numérique, il " "écrase la valeur prédéfinie ; le nom prédéfini est perdu." -#: library/logging.rst:368 +#: library/logging.rst:377 msgid "Level" msgstr "Niveau" -#: library/logging.rst:368 +#: library/logging.rst:377 msgid "Numeric value" msgstr "Valeur numérique" -#: library/logging.rst:370 +#: library/logging.rst:379 msgid "``CRITICAL``" msgstr "``CRITICAL``" -#: library/logging.rst:370 +#: library/logging.rst:379 msgid "50" msgstr "50" -#: library/logging.rst:372 +#: library/logging.rst:381 msgid "``ERROR``" msgstr "``ERROR``" -#: library/logging.rst:372 +#: library/logging.rst:381 msgid "40" msgstr "40" -#: library/logging.rst:374 +#: library/logging.rst:383 msgid "``WARNING``" msgstr "``WARNING``" -#: library/logging.rst:374 +#: library/logging.rst:383 msgid "30" msgstr "30" -#: library/logging.rst:376 +#: library/logging.rst:385 msgid "``INFO``" msgstr "``INFO``" -#: library/logging.rst:376 +#: library/logging.rst:385 msgid "20" msgstr "20" -#: library/logging.rst:378 +#: library/logging.rst:387 msgid "``DEBUG``" msgstr "``DEBUG``" -#: library/logging.rst:378 +#: library/logging.rst:387 msgid "10" msgstr "10" -#: library/logging.rst:380 +#: library/logging.rst:389 msgid "``NOTSET``" msgstr "``NOTSET``" -#: library/logging.rst:380 +#: library/logging.rst:389 msgid "0" msgstr "0" -#: library/logging.rst:387 +#: library/logging.rst:396 msgid "Handler Objects" msgstr "Gestionnaires" -#: library/logging.rst:389 +#: library/logging.rst:398 msgid "" "Handlers have the following attributes and methods. Note that :class:" "`Handler` is never instantiated directly; this class acts as a base for more " @@ -746,7 +759,7 @@ msgstr "" "instanciée directement. Les méthodes :meth:`__init__` des sous-classes " "doivent toutefois appeler :meth:`Handler.__init__`." -#: library/logging.rst:398 +#: library/logging.rst:407 msgid "" "Initializes the :class:`Handler` instance by setting its level, setting the " "list of filters to the empty list and creating a lock (using :meth:" @@ -756,7 +769,7 @@ msgstr "" "initialisant la liste des filtres avec une liste vide et en créant un verrou " "(avec :meth:`createLock`) pour sérialiser l'accès au mécanisme d'E-S." -#: library/logging.rst:405 +#: library/logging.rst:414 msgid "" "Initializes a thread lock which can be used to serialize access to " "underlying I/O functionality which may not be threadsafe." @@ -764,15 +777,15 @@ msgstr "" "Instancie un verrou qui peut être utilisé pour sérialiser l'accès au système " "d'E-S sous-jacent (qui peut ne pas être à fil d'exécution sécurisé)." -#: library/logging.rst:411 +#: library/logging.rst:420 msgid "Acquires the thread lock created with :meth:`createLock`." msgstr "Acquiert le verrou créé par :meth:`createLock`." -#: library/logging.rst:416 +#: library/logging.rst:425 msgid "Releases the thread lock acquired with :meth:`acquire`." msgstr "Relâche le verrou acquis par :meth:`acquire`." -#: library/logging.rst:421 +#: library/logging.rst:430 msgid "" "Sets the threshold for this handler to *level*. Logging messages which are " "less severe than *level* will be ignored. When a handler is created, the " @@ -783,7 +796,7 @@ msgstr "" "fixé à :const:`NOTSET` lors de la création d'un gestionnaire (ce qui " "signifie que tous les messages seront traités)." -#: library/logging.rst:428 +#: library/logging.rst:437 msgid "" "The *level* parameter now accepts a string representation of the level such " "as 'INFO' as an alternative to the integer constants such as :const:`INFO`." @@ -791,19 +804,19 @@ msgstr "" "le paramètre *level* peut être une chaîne de caractères, comme ``'INFO'``, " "en plus d'une constante entière comme :const:`INFO`." -#: library/logging.rst:436 +#: library/logging.rst:445 msgid "Sets the :class:`Formatter` for this handler to *fmt*." msgstr "Définit le :class:`Formatter` du gestionnaire à *fmt*." -#: library/logging.rst:441 +#: library/logging.rst:450 msgid "Adds the specified filter *filter* to this handler." msgstr "Ajoute le filtre *filter* au gestionnaire." -#: library/logging.rst:446 +#: library/logging.rst:455 msgid "Removes the specified filter *filter* from this handler." msgstr "Retire le filtre *filter* du gestionnaire." -#: library/logging.rst:451 +#: library/logging.rst:460 msgid "" "Apply this handler's filters to the record and return ``True`` if the record " "is to be processed. The filters are consulted in turn, until one of them " @@ -816,7 +829,7 @@ msgstr "" "jusqu'à ce que l'un renvoie faux. Si aucun d'entre eux ne renvoie faux, " "l'entrée est enregistrée, sinon le gestionnaire ne traitera pas l'entrée." -#: library/logging.rst:460 +#: library/logging.rst:469 msgid "" "Ensure all logging output has been flushed. This version does nothing and is " "intended to be implemented by subclasses." @@ -824,7 +837,7 @@ msgstr "" "Oblige toutes les entrées à être traitées. Cette fonction ne fait rien de " "spécial et doit être redéfinie par les sous-classes." -#: library/logging.rst:466 +#: library/logging.rst:475 msgid "" "Tidy up any resources used by the handler. This version does no output but " "removes the handler from an internal list of handlers which is closed when :" @@ -836,7 +849,7 @@ msgstr "" "interne des gestionnaires à recycler à l'appel de :func:`shutdown`. Les sous-" "classes doivent appeler cette méthode depuis leur surcharge de :meth:`close`." -#: library/logging.rst:474 +#: library/logging.rst:483 msgid "" "Conditionally emits the specified logging record, depending on filters which " "may have been added to the handler. Wraps the actual emission of the record " @@ -845,7 +858,7 @@ msgstr "" "Traite ou non *record* selon les filtres ajoutés au gestionnaire. Un verrou " "sur l'E-S. est mis en place durant l'écriture effective." -#: library/logging.rst:481 +#: library/logging.rst:490 msgid "" "This method should be called from handlers when an exception is encountered " "during an :meth:`emit` call. If the module-level attribute " @@ -867,7 +880,7 @@ msgstr "" "eu lieu. La valeur par défaut de ``raiseExceptions`` est ``True``, ce qui " "est pratique lors du développement." -#: library/logging.rst:494 +#: library/logging.rst:503 msgid "" "Do formatting for a record - if a formatter is set, use it. Otherwise, use " "the default formatter for the module." @@ -875,7 +888,7 @@ msgstr "" "Formate *record* avec le formateur défini. S'il n'y en a pas, le formateur " "par défaut du module est utilisé." -#: library/logging.rst:500 +#: library/logging.rst:509 msgid "" "Do whatever it takes to actually log the specified logging record. This " "version is intended to be implemented by subclasses and so raises a :exc:" @@ -884,18 +897,18 @@ msgstr "" "Journalise *record* « pour de bon ». Cette version doit être redéfinie par " "les sous-classes et lève donc une :exc:`NotImplementedError`." -#: library/logging.rst:504 +#: library/logging.rst:513 msgid "" "For a list of handlers included as standard, see :mod:`logging.handlers`." msgstr "" "Les gestionnaires de la bibliothèque standard sont répertoriés dans :mod:" "`logging.handlers`." -#: library/logging.rst:509 +#: library/logging.rst:518 msgid "Formatter Objects" msgstr "Formateurs" -#: library/logging.rst:513 +#: library/logging.rst:522 msgid "" ":class:`Formatter` objects have the following attributes and methods. They " "are responsible for converting a :class:`LogRecord` to (usually) a string " @@ -906,7 +919,7 @@ msgid "" "information in the formatted output (such as a timestamp), keep reading." msgstr "" -#: library/logging.rst:521 +#: library/logging.rst:530 msgid "" "A Formatter can be initialized with a format string which makes use of " "knowledge of the :class:`LogRecord` attributes - such as the default value " @@ -916,13 +929,13 @@ msgid "" "ref:`old-string-formatting` for more information on string formatting." msgstr "" -#: library/logging.rst:528 +#: library/logging.rst:537 msgid "" "The useful mapping keys in a :class:`LogRecord` are given in the section on :" "ref:`logrecord-attributes`." msgstr "" -#: library/logging.rst:534 +#: library/logging.rst:543 msgid "" "Returns a new instance of the :class:`Formatter` class. The instance is " "initialized with a format string for the message as a whole, as well as a " @@ -931,7 +944,7 @@ msgid "" "format is used which is described in the :meth:`formatTime` documentation." msgstr "" -#: library/logging.rst:540 +#: library/logging.rst:549 msgid "" "The *style* parameter can be one of '%', '{' or '$' and determines how the " "format string will be merged with its data: using one of %-formatting, :meth:" @@ -941,29 +954,29 @@ msgid "" "for more information on using {- and $-formatting for log messages." msgstr "" -#: library/logging.rst:548 +#: library/logging.rst:557 msgid "" "The *defaults* parameter can be a dictionary with default values to use in " "custom fields. For example: ``logging.Formatter('%(ip)s %(message)s', " "defaults={\"ip\": None})``" msgstr "" -#: library/logging.rst:552 +#: library/logging.rst:561 msgid "The *style* parameter was added." msgstr "Ajout du paramètre *style*." -#: library/logging.rst:555 +#: library/logging.rst:564 msgid "" "The *validate* parameter was added. Incorrect or mismatched style and fmt " "will raise a ``ValueError``. For example: ``logging.Formatter('%(asctime)s - " "%(message)s', style='{')``." msgstr "" -#: library/logging.rst:560 +#: library/logging.rst:569 msgid "The *defaults* parameter was added." msgstr "Ajout du paramètre *defaults*." -#: library/logging.rst:565 +#: library/logging.rst:574 msgid "" "The record's attribute dictionary is used as the operand to a string " "formatting operation. Returns the resulting string. Before formatting the " @@ -982,13 +995,13 @@ msgid "" "recalculates it afresh." msgstr "" -#: library/logging.rst:581 +#: library/logging.rst:590 msgid "" "If stack information is available, it's appended after the exception " "information, using :meth:`formatStack` to transform it if necessary." msgstr "" -#: library/logging.rst:587 +#: library/logging.rst:596 msgid "" "This method should be called from :meth:`format` by a formatter which wants " "to make use of a formatted time. This method can be overridden in formatters " @@ -1001,7 +1014,7 @@ msgid "" "resulting string is returned." msgstr "" -#: library/logging.rst:597 +#: library/logging.rst:606 msgid "" "This function uses a user-configurable function to convert the creation time " "to a tuple. By default, :func:`time.localtime` is used; to change this for a " @@ -1011,7 +1024,7 @@ msgid "" "be shown in GMT, set the ``converter`` attribute in the ``Formatter`` class." msgstr "" -#: library/logging.rst:605 +#: library/logging.rst:614 msgid "" "Previously, the default format was hard-coded as in this example: " "``2010-09-06 22:38:15,292`` where the part before the comma is handled by a " @@ -1026,11 +1039,11 @@ msgid "" "the millisecond value)." msgstr "" -#: library/logging.rst:618 +#: library/logging.rst:627 msgid "The ``default_msec_format`` can be ``None``." msgstr "" -#: library/logging.rst:623 +#: library/logging.rst:632 msgid "" "Formats the specified exception information (a standard exception tuple as " "returned by :func:`sys.exc_info`) as a string. This default implementation " @@ -1038,18 +1051,18 @@ msgid "" "returned." msgstr "" -#: library/logging.rst:630 +#: library/logging.rst:639 msgid "" "Formats the specified stack information (a string as returned by :func:" "`traceback.print_stack`, but with the last newline removed) as a string. " "This default implementation just returns the input value." msgstr "" -#: library/logging.rst:637 +#: library/logging.rst:646 msgid "Filter Objects" msgstr "Filtres" -#: library/logging.rst:639 +#: library/logging.rst:648 msgid "" "``Filters`` can be used by ``Handlers`` and ``Loggers`` for more " "sophisticated filtering than is provided by levels. The base filter class " @@ -1059,7 +1072,7 @@ msgid "" "If initialized with the empty string, all events are passed." msgstr "" -#: library/logging.rst:649 +#: library/logging.rst:658 msgid "" "Returns an instance of the :class:`Filter` class. If *name* is specified, it " "names a logger which, together with its children, will have its events " @@ -1067,13 +1080,13 @@ msgid "" "event." msgstr "" -#: library/logging.rst:656 +#: library/logging.rst:665 msgid "" "Is the specified record to be logged? Returns zero for no, nonzero for yes. " "If deemed appropriate, the record may be modified in-place by this method." msgstr "" -#: library/logging.rst:660 +#: library/logging.rst:669 msgid "" "Note that filters attached to handlers are consulted before an event is " "emitted by the handler, whereas filters attached to loggers are consulted " @@ -1083,13 +1096,13 @@ msgid "" "setting, unless the filter has also been applied to those descendant loggers." msgstr "" -#: library/logging.rst:667 +#: library/logging.rst:676 msgid "" "You don't actually need to subclass ``Filter``: you can pass any instance " "which has a ``filter`` method with the same semantics." msgstr "" -#: library/logging.rst:670 +#: library/logging.rst:679 msgid "" "You don't need to create specialized ``Filter`` classes, or use other " "classes with a ``filter`` method: you can use a function (or other callable) " @@ -1100,7 +1113,7 @@ msgid "" "value should conform to that returned by :meth:`~Filter.filter`." msgstr "" -#: library/logging.rst:680 +#: library/logging.rst:689 msgid "" "Although filters are used primarily to filter records based on more " "sophisticated criteria than levels, they get to see every record which is " @@ -1112,11 +1125,11 @@ msgid "" "contextual information into logs (see :ref:`filters-contextual`)." msgstr "" -#: library/logging.rst:692 +#: library/logging.rst:701 msgid "LogRecord Objects" msgstr "Objets LogRecord" -#: library/logging.rst:694 +#: library/logging.rst:703 msgid "" ":class:`LogRecord` instances are created automatically by the :class:" "`Logger` every time something is logged, and can be created manually via :" @@ -1124,11 +1137,11 @@ msgid "" "wire)." msgstr "" -#: library/logging.rst:702 +#: library/logging.rst:711 msgid "Contains all the information pertinent to the event being logged." msgstr "" -#: library/logging.rst:704 +#: library/logging.rst:713 msgid "" "The primary information is passed in :attr:`msg` and :attr:`args`, which are " "combined using ``msg % args`` to create the :attr:`message` field of the " @@ -1140,58 +1153,58 @@ msgstr "" msgid "Parameters" msgstr "Paramètres :" -#: library/logging.rst:708 +#: library/logging.rst:717 msgid "" "The name of the logger used to log the event represented by this LogRecord. " "Note that this name will always have this value, even though it may be " "emitted by a handler attached to a different (ancestor) logger." msgstr "" -#: library/logging.rst:712 +#: library/logging.rst:721 msgid "" "The numeric level of the logging event (one of DEBUG, INFO etc.) Note that " "this is converted to *two* attributes of the LogRecord: ``levelno`` for the " "numeric value and ``levelname`` for the corresponding level name." msgstr "" -#: library/logging.rst:716 +#: library/logging.rst:725 msgid "The full pathname of the source file where the logging call was made." msgstr "" -#: library/logging.rst:718 +#: library/logging.rst:727 msgid "The line number in the source file where the logging call was made." msgstr "" -#: library/logging.rst:720 +#: library/logging.rst:729 msgid "" "The event description message, possibly a format string with placeholders " "for variable data." msgstr "" -#: library/logging.rst:722 +#: library/logging.rst:731 msgid "" "Variable data to merge into the *msg* argument to obtain the event " "description." msgstr "" -#: library/logging.rst:724 +#: library/logging.rst:733 msgid "" "An exception tuple with the current exception information, or ``None`` if no " "exception information is available." msgstr "" -#: library/logging.rst:726 +#: library/logging.rst:735 msgid "" "The name of the function or method from which the logging call was invoked." msgstr "" -#: library/logging.rst:728 +#: library/logging.rst:737 msgid "" "A text string representing stack information from the base of the stack in " "the current thread, up to the logging call." msgstr "" -#: library/logging.rst:733 +#: library/logging.rst:742 msgid "" "Returns the message for this :class:`LogRecord` instance after merging any " "user-supplied arguments with the message. If the user-supplied message " @@ -1200,7 +1213,7 @@ msgid "" "whose ``__str__`` method can return the actual format string to be used." msgstr "" -#: library/logging.rst:740 +#: library/logging.rst:749 msgid "" "The creation of a :class:`LogRecord` has been made more configurable by " "providing a factory which is used to create the record. The factory can be " @@ -1208,24 +1221,24 @@ msgid "" "this for the factory's signature)." msgstr "" -#: library/logging.rst:746 +#: library/logging.rst:755 msgid "" "This functionality can be used to inject your own values into a :class:" "`LogRecord` at creation time. You can use the following pattern::" msgstr "" -#: library/logging.rst:758 +#: library/logging.rst:767 msgid "" "With this pattern, multiple factories could be chained, and as long as they " "don't overwrite each other's attributes or unintentionally overwrite the " "standard attributes listed above, there should be no surprises." msgstr "" -#: library/logging.rst:767 +#: library/logging.rst:776 msgid "LogRecord attributes" msgstr "" -#: library/logging.rst:769 +#: library/logging.rst:778 msgid "" "The LogRecord has a number of attributes, most of which are derived from the " "parameters to the constructor. (Note that the names do not always correspond " @@ -1236,7 +1249,7 @@ msgid "" "style format string." msgstr "" -#: library/logging.rst:777 +#: library/logging.rst:786 msgid "" "If you are using {}-formatting (:func:`str.format`), you can use ``{attrname}" "`` as the placeholder in the format string. If you are using $-formatting (:" @@ -1244,7 +1257,7 @@ msgid "" "course, replace ``attrname`` with the actual attribute name you want to use." msgstr "" -#: library/logging.rst:783 +#: library/logging.rst:792 msgid "" "In the case of {}-formatting, you can specify formatting flags by placing " "them after the attribute name, separated from it with a colon. For example: " @@ -1253,15 +1266,15 @@ msgid "" "on the options available to you." msgstr "" -#: library/logging.rst:790 +#: library/logging.rst:799 msgid "Attribute name" msgstr "" -#: library/logging.rst:1179 +#: library/logging.rst:1188 msgid "Format" msgstr "Format" -#: library/logging.rst:1179 +#: library/logging.rst:1188 msgid "Description" msgstr "Description" @@ -1269,41 +1282,41 @@ msgstr "Description" msgid "args" msgstr "" -#: library/logging.rst:806 library/logging.rst:852 +#: library/logging.rst:815 library/logging.rst:861 msgid "You shouldn't need to format this yourself." msgstr "" -#: library/logging.rst:792 +#: library/logging.rst:801 msgid "" "The tuple of arguments merged into ``msg`` to produce ``message``, or a dict " "whose values are used for the merge (when there is only one argument, and it " "is a dictionary)." msgstr "" -#: library/logging.rst:797 +#: library/logging.rst:806 msgid "asctime" msgstr "" -#: library/logging.rst:797 +#: library/logging.rst:806 msgid "``%(asctime)s``" msgstr "``%(asctime)s``" -#: library/logging.rst:797 +#: library/logging.rst:806 msgid "" "Human-readable time when the :class:`LogRecord` was created. By default " "this is of the form '2003-07-08 16:49:45,896' (the numbers after the comma " "are millisecond portion of the time)." msgstr "" -#: library/logging.rst:803 +#: library/logging.rst:812 msgid "created" msgstr "created" -#: library/logging.rst:803 +#: library/logging.rst:812 msgid "``%(created)f``" msgstr "``%(created)f``" -#: library/logging.rst:803 +#: library/logging.rst:812 msgid "" "Time when the :class:`LogRecord` was created (as returned by :func:`time." "time`)." @@ -1313,111 +1326,111 @@ msgstr "" msgid "exc_info" msgstr "exc_info" -#: library/logging.rst:806 +#: library/logging.rst:815 msgid "" "Exception tuple (à la ``sys.exc_info``) or, if no exception has occurred, " "``None``." msgstr "" -#: library/logging.rst:809 +#: library/logging.rst:818 msgid "filename" msgstr "filename" -#: library/logging.rst:809 +#: library/logging.rst:818 msgid "``%(filename)s``" msgstr "``%(filename)s``" -#: library/logging.rst:809 +#: library/logging.rst:818 msgid "Filename portion of ``pathname``." msgstr "" -#: library/logging.rst:811 +#: library/logging.rst:820 msgid "funcName" msgstr "funcName" -#: library/logging.rst:811 +#: library/logging.rst:820 msgid "``%(funcName)s``" msgstr "``%(funcName)s``" -#: library/logging.rst:811 +#: library/logging.rst:820 msgid "Name of function containing the logging call." msgstr "" -#: library/logging.rst:813 +#: library/logging.rst:822 msgid "levelname" msgstr "levelname" -#: library/logging.rst:813 +#: library/logging.rst:822 msgid "``%(levelname)s``" msgstr "``%(levelname)s``" -#: library/logging.rst:813 +#: library/logging.rst:822 msgid "" "Text logging level for the message (``'DEBUG'``, ``'INFO'``, ``'WARNING'``, " "``'ERROR'``, ``'CRITICAL'``)." msgstr "" -#: library/logging.rst:817 +#: library/logging.rst:826 msgid "levelno" msgstr "" -#: library/logging.rst:817 +#: library/logging.rst:826 msgid "``%(levelno)s``" msgstr "``%(levelno)s``" -#: library/logging.rst:817 +#: library/logging.rst:826 msgid "" "Numeric logging level for the message (:const:`DEBUG`, :const:`INFO`, :const:" "`WARNING`, :const:`ERROR`, :const:`CRITICAL`)." msgstr "" -#: library/logging.rst:822 +#: library/logging.rst:831 msgid "lineno" msgstr "lineno" -#: library/logging.rst:822 +#: library/logging.rst:831 msgid "``%(lineno)d``" msgstr "``%(lineno)d``" -#: library/logging.rst:822 +#: library/logging.rst:831 msgid "Source line number where the logging call was issued (if available)." msgstr "" -#: library/logging.rst:825 +#: library/logging.rst:834 msgid "message" msgstr "message" -#: library/logging.rst:825 +#: library/logging.rst:834 msgid "``%(message)s``" msgstr "``%(message)s``" -#: library/logging.rst:825 +#: library/logging.rst:834 msgid "" "The logged message, computed as ``msg % args``. This is set when :meth:" "`Formatter.format` is invoked." msgstr "" -#: library/logging.rst:829 +#: library/logging.rst:838 msgid "module" msgstr "module" -#: library/logging.rst:829 +#: library/logging.rst:838 msgid "``%(module)s``" msgstr "``%(module)s``" -#: library/logging.rst:829 +#: library/logging.rst:838 msgid "Module (name portion of ``filename``)." msgstr "" -#: library/logging.rst:831 +#: library/logging.rst:840 msgid "msecs" msgstr "msecs" -#: library/logging.rst:831 +#: library/logging.rst:840 msgid "``%(msecs)d``" msgstr "``%(msecs)d``" -#: library/logging.rst:831 +#: library/logging.rst:840 msgid "" "Millisecond portion of the time when the :class:`LogRecord` was created." msgstr "" @@ -1426,7 +1439,7 @@ msgstr "" msgid "msg" msgstr "" -#: library/logging.rst:834 +#: library/logging.rst:843 msgid "" "The format string passed in the original logging call. Merged with ``args`` " "to produce ``message``, or an arbitrary object (see :ref:`arbitrary-object-" @@ -1437,123 +1450,123 @@ msgstr "" msgid "name" msgstr "" -#: library/logging.rst:839 +#: library/logging.rst:848 msgid "``%(name)s``" msgstr "``%(name)s``" -#: library/logging.rst:839 +#: library/logging.rst:848 msgid "Name of the logger used to log the call." msgstr "" -#: library/logging.rst:841 +#: library/logging.rst:850 msgid "pathname" msgstr "pathname" -#: library/logging.rst:841 +#: library/logging.rst:850 msgid "``%(pathname)s``" msgstr "``%(pathname)s``" -#: library/logging.rst:841 +#: library/logging.rst:850 msgid "" "Full pathname of the source file where the logging call was issued (if " "available)." msgstr "" -#: library/logging.rst:844 +#: library/logging.rst:853 msgid "process" msgstr "process" -#: library/logging.rst:844 +#: library/logging.rst:853 msgid "``%(process)d``" msgstr "``%(process)d``" -#: library/logging.rst:844 +#: library/logging.rst:853 msgid "Process ID (if available)." msgstr "" -#: library/logging.rst:846 +#: library/logging.rst:855 msgid "processName" msgstr "processName" -#: library/logging.rst:846 +#: library/logging.rst:855 msgid "``%(processName)s``" msgstr "``%(processName)s``" -#: library/logging.rst:846 +#: library/logging.rst:855 msgid "Process name (if available)." msgstr "" -#: library/logging.rst:848 +#: library/logging.rst:857 msgid "relativeCreated" msgstr "relativeCreated" -#: library/logging.rst:848 +#: library/logging.rst:857 msgid "``%(relativeCreated)d``" msgstr "``%(relativeCreated)d``" -#: library/logging.rst:848 +#: library/logging.rst:857 msgid "" "Time in milliseconds when the LogRecord was created, relative to the time " "the logging module was loaded." msgstr "" -#: library/logging.rst:852 +#: library/logging.rst:861 msgid "stack_info" msgstr "" -#: library/logging.rst:852 +#: library/logging.rst:861 msgid "" "Stack frame information (where available) from the bottom of the stack in " "the current thread, up to and including the stack frame of the logging call " "which resulted in the creation of this record." msgstr "" -#: library/logging.rst:858 +#: library/logging.rst:867 msgid "thread" msgstr "" -#: library/logging.rst:858 +#: library/logging.rst:867 msgid "``%(thread)d``" msgstr "``%(thread)d``" -#: library/logging.rst:858 +#: library/logging.rst:867 msgid "Thread ID (if available)." msgstr "" -#: library/logging.rst:860 +#: library/logging.rst:869 msgid "threadName" msgstr "" -#: library/logging.rst:860 +#: library/logging.rst:869 msgid "``%(threadName)s``" msgstr "``%(threadName)s``" -#: library/logging.rst:860 +#: library/logging.rst:869 msgid "Thread name (if available)." msgstr "" -#: library/logging.rst:863 +#: library/logging.rst:872 msgid "*processName* was added." msgstr "" -#: library/logging.rst:870 +#: library/logging.rst:879 msgid "LoggerAdapter Objects" msgstr "" -#: library/logging.rst:872 +#: library/logging.rst:881 msgid "" ":class:`LoggerAdapter` instances are used to conveniently pass contextual " "information into logging calls. For a usage example, see the section on :ref:" "`adding contextual information to your logging output `." msgstr "" -#: library/logging.rst:878 +#: library/logging.rst:887 msgid "" "Returns an instance of :class:`LoggerAdapter` initialized with an " "underlying :class:`Logger` instance and a dict-like object." msgstr "" -#: library/logging.rst:883 +#: library/logging.rst:892 msgid "" "Modifies the message and/or keyword arguments passed to a logging call in " "order to insert contextual information. This implementation takes the object " @@ -1562,7 +1575,7 @@ msgid "" "(possibly modified) versions of the arguments passed in." msgstr "" -#: library/logging.rst:889 +#: library/logging.rst:898 msgid "" "In addition to the above, :class:`LoggerAdapter` supports the following " "methods of :class:`Logger`: :meth:`~Logger.debug`, :meth:`~Logger.info`, :" @@ -1574,24 +1587,24 @@ msgid "" "interchangeably." msgstr "" -#: library/logging.rst:898 +#: library/logging.rst:907 msgid "" "The :meth:`~Logger.isEnabledFor`, :meth:`~Logger.getEffectiveLevel`, :meth:" "`~Logger.setLevel` and :meth:`~Logger.hasHandlers` methods were added to :" "class:`LoggerAdapter`. These methods delegate to the underlying logger." msgstr "" -#: library/logging.rst:903 +#: library/logging.rst:912 msgid "" "Attribute :attr:`manager` and method :meth:`_log` were added, which delegate " "to the underlying logger and allow adapters to be nested." msgstr "" -#: library/logging.rst:909 +#: library/logging.rst:918 msgid "Thread Safety" msgstr "" -#: library/logging.rst:911 +#: library/logging.rst:920 msgid "" "The logging module is intended to be thread-safe without any special work " "needing to be done by its clients. It achieves this though using threading " @@ -1600,7 +1613,7 @@ msgid "" "O." msgstr "" -#: library/logging.rst:916 +#: library/logging.rst:925 msgid "" "If you are implementing asynchronous signal handlers using the :mod:`signal` " "module, you may not be able to use logging from within such handlers. This " @@ -1608,17 +1621,17 @@ msgid "" "always re-entrant, and so cannot be invoked from such signal handlers." msgstr "" -#: library/logging.rst:923 +#: library/logging.rst:932 msgid "Module-Level Functions" msgstr "Fonctions de niveau module" -#: library/logging.rst:925 +#: library/logging.rst:934 msgid "" "In addition to the classes described above, there are a number of module-" "level functions." msgstr "" -#: library/logging.rst:931 +#: library/logging.rst:940 msgid "" "Return a logger with the specified name or, if name is ``None``, return a " "logger which is the root logger of the hierarchy. If specified, the name is " @@ -1627,14 +1640,14 @@ msgid "" "logging." msgstr "" -#: library/logging.rst:936 +#: library/logging.rst:945 msgid "" "All calls to this function with a given name return the same logger " "instance. This means that logger instances never need to be passed between " "different parts of an application." msgstr "" -#: library/logging.rst:943 +#: library/logging.rst:952 msgid "" "Return either the standard :class:`Logger` class, or the last class passed " "to :func:`setLoggerClass`. This function may be called from within a new " @@ -1643,24 +1656,24 @@ msgid "" "example::" msgstr "" -#: library/logging.rst:954 +#: library/logging.rst:963 msgid "Return a callable which is used to create a :class:`LogRecord`." msgstr "" -#: library/logging.rst:956 +#: library/logging.rst:965 msgid "" "This function has been provided, along with :func:`setLogRecordFactory`, to " "allow developers more control over how the :class:`LogRecord` representing a " "logging event is constructed." msgstr "" -#: library/logging.rst:961 +#: library/logging.rst:970 msgid "" "See :func:`setLogRecordFactory` for more information about the how the " "factory is called." msgstr "" -#: library/logging.rst:966 +#: library/logging.rst:975 msgid "" "Logs a message with level :const:`DEBUG` on the root logger. The *msg* is " "the message format string, and the *args* are the arguments which are merged " @@ -1669,7 +1682,7 @@ msgid "" "argument.)" msgstr "" -#: library/logging.rst:971 +#: library/logging.rst:980 msgid "" "There are three keyword arguments in *kwargs* which are inspected: " "*exc_info* which, if it does not evaluate as false, causes exception " @@ -1679,7 +1692,7 @@ msgid "" "exception information." msgstr "" -#: library/logging.rst:997 +#: library/logging.rst:1006 msgid "" "The third optional keyword argument is *extra* which can be used to pass a " "dictionary which is used to populate the __dict__ of the LogRecord created " @@ -1688,11 +1701,11 @@ msgid "" "logged messages. For example::" msgstr "" -#: library/logging.rst:1008 +#: library/logging.rst:1017 msgid "would print something like:" msgstr "" -#: library/logging.rst:1018 +#: library/logging.rst:1027 msgid "" "If you choose to use these attributes in logged messages, you need to " "exercise some care. In the above example, for instance, the :class:" @@ -1703,51 +1716,51 @@ msgid "" "dictionary with these keys." msgstr "" -#: library/logging.rst:1037 +#: library/logging.rst:1046 msgid "" "Logs a message with level :const:`INFO` on the root logger. The arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1043 +#: library/logging.rst:1052 msgid "" "Logs a message with level :const:`WARNING` on the root logger. The arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1046 +#: library/logging.rst:1055 msgid "" "There is an obsolete function ``warn`` which is functionally identical to " "``warning``. As ``warn`` is deprecated, please do not use it - use " "``warning`` instead." msgstr "" -#: library/logging.rst:1053 +#: library/logging.rst:1062 msgid "" "Logs a message with level :const:`ERROR` on the root logger. The arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1059 +#: library/logging.rst:1068 msgid "" "Logs a message with level :const:`CRITICAL` on the root logger. The " "arguments are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1065 +#: library/logging.rst:1074 msgid "" "Logs a message with level :const:`ERROR` on the root logger. The arguments " "are interpreted as for :func:`debug`. Exception info is added to the logging " "message. This function should only be called from an exception handler." msgstr "" -#: library/logging.rst:1071 +#: library/logging.rst:1080 msgid "" "Logs a message with level *level* on the root logger. The other arguments " "are interpreted as for :func:`debug`." msgstr "" -#: library/logging.rst:1074 +#: library/logging.rst:1083 msgid "" "The above module-level convenience functions, which delegate to the root " "logger, call :func:`basicConfig` to ensure that at least one handler is " @@ -1760,7 +1773,7 @@ msgid "" "messages for the same event." msgstr "" -#: library/logging.rst:1086 +#: library/logging.rst:1095 msgid "" "Provides an overriding level *level* for all loggers which takes precedence " "over the logger's own level. When the need arises to temporarily throttle " @@ -1774,7 +1787,7 @@ msgid "" "individual loggers." msgstr "" -#: library/logging.rst:1097 +#: library/logging.rst:1106 msgid "" "Note that if you have defined any custom logging level higher than " "``CRITICAL`` (this is not recommended), you won't be able to rely on the " @@ -1782,13 +1795,13 @@ msgid "" "a suitable value." msgstr "" -#: library/logging.rst:1102 +#: library/logging.rst:1111 msgid "" "The *level* parameter was defaulted to level ``CRITICAL``. See :issue:" "`28524` for more information about this change." msgstr "" -#: library/logging.rst:1108 +#: library/logging.rst:1117 msgid "" "Associates level *level* with text *levelName* in an internal dictionary, " "which is used to map numeric levels to a textual representation, for example " @@ -1798,17 +1811,17 @@ msgid "" "and they should increase in increasing order of severity." msgstr "" -#: library/logging.rst:1115 +#: library/logging.rst:1124 msgid "" "If you are thinking of defining your own levels, please see the section on :" "ref:`custom-levels`." msgstr "" -#: library/logging.rst:1120 +#: library/logging.rst:1129 msgid "Returns the textual or numeric representation of logging level *level*." msgstr "" -#: library/logging.rst:1122 +#: library/logging.rst:1131 msgid "" "If *level* is one of the predefined levels :const:`CRITICAL`, :const:" "`ERROR`, :const:`WARNING`, :const:`INFO` or :const:`DEBUG` then you get the " @@ -1818,20 +1831,20 @@ msgid "" "the corresponding string representation is returned." msgstr "" -#: library/logging.rst:1129 +#: library/logging.rst:1138 msgid "" "The *level* parameter also accepts a string representation of the level such " "as 'INFO'. In such cases, this functions returns the corresponding numeric " "value of the level." msgstr "" -#: library/logging.rst:1133 +#: library/logging.rst:1142 msgid "" "If no matching numeric or string value is passed in, the string 'Level %s' % " "level is returned." msgstr "" -#: library/logging.rst:1136 +#: library/logging.rst:1145 msgid "" "Levels are internally integers (as they need to be compared in the logging " "logic). This function is used to convert between an integer level and the " @@ -1840,7 +1853,7 @@ msgid "" "versa." msgstr "" -#: library/logging.rst:1142 +#: library/logging.rst:1151 msgid "" "In Python versions earlier than 3.4, this function could also be passed a " "text level, and would return the corresponding numeric value of the level. " @@ -1848,7 +1861,7 @@ msgid "" "Python 3.4, but reinstated in 3.4.2 due to retain backward compatibility." msgstr "" -#: library/logging.rst:1150 +#: library/logging.rst:1159 msgid "" "Creates and returns a new :class:`LogRecord` instance whose attributes are " "defined by *attrdict*. This function is useful for taking a pickled :class:" @@ -1856,7 +1869,7 @@ msgid "" "as a :class:`LogRecord` instance at the receiving end." msgstr "" -#: library/logging.rst:1158 +#: library/logging.rst:1167 msgid "" "Does basic configuration for the logging system by creating a :class:" "`StreamHandler` with a default :class:`Formatter` and adding it to the root " @@ -1865,13 +1878,13 @@ msgid "" "no handlers are defined for the root logger." msgstr "" -#: library/logging.rst:1164 +#: library/logging.rst:1173 msgid "" "This function does nothing if the root logger already has handlers " "configured, unless the keyword argument *force* is set to ``True``." msgstr "" -#: library/logging.rst:1167 +#: library/logging.rst:1176 msgid "" "This function should be called from the main thread before other threads are " "started. In versions of Python prior to 2.7.1 and 3.2, if this function is " @@ -1880,54 +1893,54 @@ msgid "" "unexpected results such as messages being duplicated in the log." msgstr "" -#: library/logging.rst:1174 +#: library/logging.rst:1183 msgid "The following keyword arguments are supported." msgstr "" -#: library/logging.rst:1181 +#: library/logging.rst:1190 msgid "*filename*" msgstr "*filename*" -#: library/logging.rst:1181 +#: library/logging.rst:1190 msgid "" "Specifies that a :class:`FileHandler` be created, using the specified " "filename, rather than a :class:`StreamHandler`." msgstr "" -#: library/logging.rst:1185 +#: library/logging.rst:1194 msgid "*filemode*" msgstr "*filemode*" -#: library/logging.rst:1185 +#: library/logging.rst:1194 msgid "" "If *filename* is specified, open the file in this :ref:`mode `. " "Defaults to ``'a'``." msgstr "" -#: library/logging.rst:1189 +#: library/logging.rst:1198 msgid "*format*" msgstr "*format*" -#: library/logging.rst:1189 +#: library/logging.rst:1198 msgid "" "Use the specified format string for the handler. Defaults to attributes " "``levelname``, ``name`` and ``message`` separated by colons." msgstr "" -#: library/logging.rst:1194 +#: library/logging.rst:1203 msgid "*datefmt*" msgstr "*datefmt*" -#: library/logging.rst:1194 +#: library/logging.rst:1203 msgid "" "Use the specified date/time format, as accepted by :func:`time.strftime`." msgstr "" -#: library/logging.rst:1197 +#: library/logging.rst:1206 msgid "*style*" msgstr "*style*" -#: library/logging.rst:1197 +#: library/logging.rst:1206 msgid "" "If *format* is specified, use this style for the format string. One of " "``'%'``, ``'{'`` or ``'$'`` for :ref:`printf-style `." msgstr "" -#: library/logging.rst:1208 +#: library/logging.rst:1217 msgid "*stream*" msgstr "*stream*" -#: library/logging.rst:1208 +#: library/logging.rst:1217 msgid "" "Use the specified stream to initialize the :class:`StreamHandler`. Note that " "this argument is incompatible with *filename* - if both are present, a " "``ValueError`` is raised." msgstr "" -#: library/logging.rst:1214 +#: library/logging.rst:1223 msgid "*handlers*" msgstr "*handlers*" -#: library/logging.rst:1214 +#: library/logging.rst:1223 msgid "" "If specified, this should be an iterable of already created handlers to add " "to the root logger. Any handlers which don't already have a formatter set " @@ -1967,34 +1980,34 @@ msgid "" "present, a ``ValueError`` is raised." msgstr "" -#: library/logging.rst:1223 +#: library/logging.rst:1232 #, fuzzy msgid "*force*" msgstr "*format*" -#: library/logging.rst:1223 +#: library/logging.rst:1232 msgid "" "If this keyword argument is specified as true, any existing handlers " "attached to the root logger are removed and closed, before carrying out the " "configuration as specified by the other arguments." msgstr "" -#: library/logging.rst:1229 +#: library/logging.rst:1238 msgid "*encoding*" msgstr "" -#: library/logging.rst:1229 +#: library/logging.rst:1238 msgid "" "If this keyword argument is specified along with *filename*, its value is " "used when the :class:`FileHandler` is created, and thus used when opening " "the output file." msgstr "" -#: library/logging.rst:1234 +#: library/logging.rst:1243 msgid "*errors*" msgstr "" -#: library/logging.rst:1234 +#: library/logging.rst:1243 msgid "" "If this keyword argument is specified along with *filename*, its value is " "used when the :class:`FileHandler` is created, and thus used when opening " @@ -2003,39 +2016,39 @@ msgid "" "`open`, which means that it will be treated the same as passing 'errors'." msgstr "" -#: library/logging.rst:1245 +#: library/logging.rst:1254 msgid "The *style* argument was added." msgstr "" -#: library/logging.rst:1248 +#: library/logging.rst:1257 msgid "" "The *handlers* argument was added. Additional checks were added to catch " "situations where incompatible arguments are specified (e.g. *handlers* " "together with *stream* or *filename*, or *stream* together with *filename*)." msgstr "" -#: library/logging.rst:1254 +#: library/logging.rst:1263 msgid "The *force* argument was added." msgstr "" -#: library/logging.rst:1257 +#: library/logging.rst:1266 msgid "The *encoding* and *errors* arguments were added." msgstr "" -#: library/logging.rst:1262 +#: library/logging.rst:1271 msgid "" "Informs the logging system to perform an orderly shutdown by flushing and " "closing all handlers. This should be called at application exit and no " "further use of the logging system should be made after this call." msgstr "" -#: library/logging.rst:1266 +#: library/logging.rst:1275 msgid "" "When the logging module is imported, it registers this function as an exit " "handler (see :mod:`atexit`), so normally there's no need to do that manually." msgstr "" -#: library/logging.rst:1273 +#: library/logging.rst:1282 msgid "" "Tells the logging system to use the class *klass* when instantiating a " "logger. The class should define :meth:`__init__` such that only a name " @@ -2047,26 +2060,26 @@ msgid "" "loggers." msgstr "" -#: library/logging.rst:1284 +#: library/logging.rst:1293 msgid "Set a callable which is used to create a :class:`LogRecord`." msgstr "" -#: library/logging.rst:1286 +#: library/logging.rst:1295 msgid "The factory callable to be used to instantiate a log record." msgstr "" -#: library/logging.rst:1288 +#: library/logging.rst:1297 msgid "" "This function has been provided, along with :func:`getLogRecordFactory`, to " "allow developers more control over how the :class:`LogRecord` representing a " "logging event is constructed." msgstr "" -#: library/logging.rst:1293 +#: library/logging.rst:1302 msgid "The factory has the following signature:" msgstr "" -#: library/logging.rst:1295 +#: library/logging.rst:1304 msgid "" "``factory(name, level, fn, lno, msg, args, exc_info, func=None, sinfo=None, " "**kwargs)``" @@ -2074,7 +2087,7 @@ msgstr "" "``factory(name, level, fn, lno, msg, args, exc_info, func=None, sinfo=None, " "**kwargs)``" -#: library/logging.rst:1297 +#: library/logging.rst:1306 msgid "The logger name." msgstr "" @@ -2082,7 +2095,7 @@ msgstr "" msgid "level" msgstr "level" -#: library/logging.rst:1298 +#: library/logging.rst:1307 msgid "The logging level (numeric)." msgstr "" @@ -2090,7 +2103,7 @@ msgstr "" msgid "fn" msgstr "fn" -#: library/logging.rst:1299 +#: library/logging.rst:1308 msgid "The full pathname of the file where the logging call was made." msgstr "" @@ -2098,19 +2111,19 @@ msgstr "" msgid "lno" msgstr "lno" -#: library/logging.rst:1300 +#: library/logging.rst:1309 msgid "The line number in the file where the logging call was made." msgstr "" -#: library/logging.rst:1301 +#: library/logging.rst:1310 msgid "The logging message." msgstr "" -#: library/logging.rst:1302 +#: library/logging.rst:1311 msgid "The arguments for the logging message." msgstr "" -#: library/logging.rst:1303 +#: library/logging.rst:1312 msgid "An exception tuple, or ``None``." msgstr "" @@ -2118,7 +2131,7 @@ msgstr "" msgid "func" msgstr "func" -#: library/logging.rst:1304 +#: library/logging.rst:1313 msgid "The name of the function or method which invoked the logging call." msgstr "" @@ -2126,7 +2139,7 @@ msgstr "" msgid "sinfo" msgstr "sinfo" -#: library/logging.rst:1306 +#: library/logging.rst:1315 msgid "" "A stack traceback such as is provided by :func:`traceback.print_stack`, " "showing the call hierarchy." @@ -2136,15 +2149,15 @@ msgstr "" msgid "kwargs" msgstr "" -#: library/logging.rst:1308 +#: library/logging.rst:1317 msgid "Additional keyword arguments." msgstr "" -#: library/logging.rst:1312 +#: library/logging.rst:1321 msgid "Module-Level Attributes" msgstr "" -#: library/logging.rst:1316 +#: library/logging.rst:1325 msgid "" "A \"handler of last resort\" is available through this attribute. This is a :" "class:`StreamHandler` writing to ``sys.stderr`` with a level of ``WARNING``, " @@ -2155,22 +2168,22 @@ msgid "" "reason, ``lastResort`` can be set to ``None``." msgstr "" -#: library/logging.rst:1327 +#: library/logging.rst:1336 msgid "Integration with the warnings module" msgstr "" -#: library/logging.rst:1329 +#: library/logging.rst:1338 msgid "" "The :func:`captureWarnings` function can be used to integrate :mod:`logging` " "with the :mod:`warnings` module." msgstr "" -#: library/logging.rst:1334 +#: library/logging.rst:1343 msgid "" "This function is used to turn the capture of warnings by logging on and off." msgstr "" -#: library/logging.rst:1337 +#: library/logging.rst:1346 msgid "" "If *capture* is ``True``, warnings issued by the :mod:`warnings` module will " "be redirected to the logging system. Specifically, a warning will be " @@ -2179,46 +2192,46 @@ msgid "" "`WARNING`." msgstr "" -#: library/logging.rst:1342 +#: library/logging.rst:1351 msgid "" "If *capture* is ``False``, the redirection of warnings to the logging system " "will stop, and warnings will be redirected to their original destinations (i." "e. those in effect before ``captureWarnings(True)`` was called)." msgstr "" -#: library/logging.rst:1350 +#: library/logging.rst:1359 msgid "Module :mod:`logging.config`" msgstr "Module :mod:`logging.config`" -#: library/logging.rst:1350 +#: library/logging.rst:1359 msgid "Configuration API for the logging module." msgstr "API de configuration pour le module de journalisation." -#: library/logging.rst:1353 +#: library/logging.rst:1362 msgid "Module :mod:`logging.handlers`" msgstr "Module :mod:`logging.handlers`" -#: library/logging.rst:1353 +#: library/logging.rst:1362 msgid "Useful handlers included with the logging module." msgstr "Gestionnaires utiles inclus avec le module de journalisation." -#: library/logging.rst:1357 +#: library/logging.rst:1366 msgid ":pep:`282` - A Logging System" msgstr "" -#: library/logging.rst:1356 +#: library/logging.rst:1365 msgid "" "The proposal which described this feature for inclusion in the Python " "standard library." msgstr "" -#: library/logging.rst:1362 +#: library/logging.rst:1371 msgid "" "`Original Python logging package `_" msgstr "" -#: library/logging.rst:1360 +#: library/logging.rst:1369 msgid "" "This is the original source for the :mod:`logging` package. The version of " "the package available from this site is suitable for use with Python 1.5.2, " diff --git a/library/multiprocessing.po b/library/multiprocessing.po index aed978ed..7279bc85 100644 --- a/library/multiprocessing.po +++ b/library/multiprocessing.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-04 18:14+0100\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-07-16 22:51+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -3173,7 +3173,7 @@ msgstr "" "*processes* est le nombre de processus *workers* à utiliser. Si *processes* " "est ``None``, le nombre renvoyé par :func:`os.cpu_count` est utilisé." -#: library/multiprocessing.rst:2133 library/multiprocessing.rst:2693 +#: library/multiprocessing.rst:2133 library/multiprocessing.rst:2694 msgid "" "If *initializer* is not ``None`` then each worker process will call " "``initializer(*initargs)`` when it starts." @@ -3391,14 +3391,15 @@ msgstr "" "garanti que quand il n'y a qu'un *worker*.)" #: library/multiprocessing.rst:2253 +#, fuzzy msgid "" -"Like :meth:`map` except that the elements of the *iterable* are expected to " -"be iterables that are unpacked as arguments." +"Like :meth:`~multiprocessing.pool.Pool.map` except that the elements of the " +"*iterable* are expected to be iterables that are unpacked as arguments." msgstr "" "Semblable à :meth:`map` à l'exception que les éléments d'*iterable* doivent " "être des itérables qui seront dépaquetés comme arguments pour la fonction." -#: library/multiprocessing.rst:2256 +#: library/multiprocessing.rst:2257 msgid "" "Hence an *iterable* of ``[(1,2), (3, 4)]`` results in ``[func(1,2), " "func(3,4)]``." @@ -3406,7 +3407,7 @@ msgstr "" "Par conséquent un *iterable* ``[(1,2), (3, 4)]`` donnera pour résultat " "``[func(1,2), func(3,4)]``." -#: library/multiprocessing.rst:2263 +#: library/multiprocessing.rst:2264 msgid "" "A combination of :meth:`starmap` and :meth:`map_async` that iterates over " "*iterable* of iterables and calls *func* with the iterables unpacked. " @@ -3416,7 +3417,7 @@ msgstr "" "*iterable* (composé d'itérables) et appelle *func* pour chaque itérable " "dépaqueté. Renvoie l'objet résultat." -#: library/multiprocessing.rst:2271 +#: library/multiprocessing.rst:2272 msgid "" "Prevents any more tasks from being submitted to the pool. Once all the " "tasks have been completed the worker processes will exit." @@ -3424,7 +3425,7 @@ msgstr "" "Empêche de nouvelles tâches d'être envoyées à la *pool*. Les processus " "*workers* se terminent une fois que toutes les tâches ont été complétées." -#: library/multiprocessing.rst:2276 +#: library/multiprocessing.rst:2277 msgid "" "Stops the worker processes immediately without completing outstanding work. " "When the pool object is garbage collected :meth:`terminate` will be called " @@ -3434,7 +3435,7 @@ msgstr "" "courants. Quand l'objet *pool* est collecté par le ramasse-miettes, sa " "méthode :meth:`terminate` est appelée immédiatement." -#: library/multiprocessing.rst:2282 +#: library/multiprocessing.rst:2283 msgid "" "Wait for the worker processes to exit. One must call :meth:`close` or :meth:" "`terminate` before using :meth:`join`." @@ -3442,7 +3443,7 @@ msgstr "" "Attend que les processus *workers* se terminent. Il est nécessaire " "d'appeler :meth:`close` ou :meth:`terminate` avant d'utiliser :meth:`join`." -#: library/multiprocessing.rst:2285 +#: library/multiprocessing.rst:2286 msgid "" "Pool objects now support the context management protocol -- see :ref:" "`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the pool " @@ -3453,7 +3454,7 @@ msgstr "" "__enter__` renvoie l'objet *pool* et :meth:`~contextmanager.__exit__` " "appelle :meth:`terminate`." -#: library/multiprocessing.rst:2293 +#: library/multiprocessing.rst:2294 msgid "" "The class of the result returned by :meth:`Pool.apply_async` and :meth:`Pool." "map_async`." @@ -3461,7 +3462,7 @@ msgstr "" "La classe des résultats renvoyés par :meth:`Pool.apply_async` et :meth:`Pool." "map_async`." -#: library/multiprocessing.rst:2298 +#: library/multiprocessing.rst:2299 msgid "" "Return the result when it arrives. If *timeout* is not ``None`` and the " "result does not arrive within *timeout* seconds then :exc:`multiprocessing." @@ -3473,16 +3474,16 @@ msgstr "" "TimeoutError` est levée. Si l'appel distance lève une exception, alors elle " "est relayée par :meth:`get`." -#: library/multiprocessing.rst:2305 +#: library/multiprocessing.rst:2306 msgid "Wait until the result is available or until *timeout* seconds pass." msgstr "" "Attend que le résultat soit disponible ou que *timeout* secondes s'écoulent." -#: library/multiprocessing.rst:2309 +#: library/multiprocessing.rst:2310 msgid "Return whether the call has completed." msgstr "Renvoie ``True`` ou ``False`` suivant si la tâche est accomplie." -#: library/multiprocessing.rst:2313 +#: library/multiprocessing.rst:2314 msgid "" "Return whether the call completed without raising an exception. Will raise :" "exc:`ValueError` if the result is not ready." @@ -3490,7 +3491,7 @@ msgstr "" "Renvoie ``True`` ou ``False`` suivant si la tâche est accomplie sans lever " "d'exception. Lève une :exc:`ValueError` si le résultat n'est pas prêt." -#: library/multiprocessing.rst:2316 +#: library/multiprocessing.rst:2317 msgid "" "If the result is not ready, :exc:`ValueError` is raised instead of :exc:" "`AssertionError`." @@ -3498,16 +3499,16 @@ msgstr "" "Si le résultat n'est pas prêt, une :exc:`ValueError` est levée au lieu " "d'une :exc:`AssertionError` auparavant." -#: library/multiprocessing.rst:2320 +#: library/multiprocessing.rst:2321 msgid "The following example demonstrates the use of a pool::" msgstr "" "Les exemples suivants présentent l'utilisation d'un pool de *workers* ::" -#: library/multiprocessing.rst:2347 +#: library/multiprocessing.rst:2348 msgid "Listeners and Clients" msgstr "Auditeurs et Clients" -#: library/multiprocessing.rst:2352 +#: library/multiprocessing.rst:2353 msgid "" "Usually message passing between processes is done using queues or by using :" "class:`~Connection` objects returned by :func:`~multiprocessing.Pipe`." @@ -3516,7 +3517,7 @@ msgstr "" "utilisant des files ou des objets :class:`~Connection` renvoyés par :func:" "`~multiprocessing.Pipe`." -#: library/multiprocessing.rst:2356 +#: library/multiprocessing.rst:2357 msgid "" "However, the :mod:`multiprocessing.connection` module allows some extra " "flexibility. It basically gives a high level message oriented API for " @@ -3531,7 +3532,7 @@ msgstr "" "utilisant le module :mod:`hmac`, et pour interroger de multiples connexions " "en même temps." -#: library/multiprocessing.rst:2365 +#: library/multiprocessing.rst:2366 msgid "" "Send a randomly generated message to the other end of the connection and " "wait for a reply." @@ -3539,7 +3540,7 @@ msgstr "" "Envoie un message généré aléatoirement à l'autre extrémité de la connexion " "et attend une réponse." -#: library/multiprocessing.rst:2368 +#: library/multiprocessing.rst:2369 msgid "" "If the reply matches the digest of the message using *authkey* as the key " "then a welcome message is sent to the other end of the connection. " @@ -3550,7 +3551,7 @@ msgstr "" "connexion. Autrement, une :exc:`~multiprocessing.AuthenticationError` est " "levée." -#: library/multiprocessing.rst:2374 +#: library/multiprocessing.rst:2375 msgid "" "Receive a message, calculate the digest of the message using *authkey* as " "the key, and then send the digest back." @@ -3558,7 +3559,7 @@ msgstr "" "Reçoit un message, calcule le condensat du message en utilisant la clé " "*authkey*, et envoie le condensat en réponse." -#: library/multiprocessing.rst:2377 +#: library/multiprocessing.rst:2378 msgid "" "If a welcome message is not received, then :exc:`~multiprocessing." "AuthenticationError` is raised." @@ -3566,7 +3567,7 @@ msgstr "" "Si un message de bienvenue n'est pas reçu, une :exc:`~multiprocessing." "AuthenticationError` est levée." -#: library/multiprocessing.rst:2382 +#: library/multiprocessing.rst:2383 msgid "" "Attempt to set up a connection to the listener which is using address " "*address*, returning a :class:`~Connection`." @@ -3574,7 +3575,7 @@ msgstr "" "Essaie d'établir une connexion avec l'auditeur qui utilise l'adresse " "*address*, renvoie une :class:`~Connection`." -#: library/multiprocessing.rst:2385 +#: library/multiprocessing.rst:2386 msgid "" "The type of the connection is determined by *family* argument, but this can " "generally be omitted since it can usually be inferred from the format of " @@ -3584,7 +3585,7 @@ msgstr "" "généralement être omis puisqu'il peut être inféré depuis le format " "d'*address*. (Voir :ref:`multiprocessing-address-formats`)" -#: library/multiprocessing.rst:2389 library/multiprocessing.rst:2424 +#: library/multiprocessing.rst:2390 library/multiprocessing.rst:2425 msgid "" "If *authkey* is given and not None, it should be a byte string and will be " "used as the secret key for an HMAC-based authentication challenge. No " @@ -3598,7 +3599,7 @@ msgstr "" "``None``. Une :exc:`~multiprocessing.AuthenticationError` est levée si " "l'authentification échoue. Voir :ref:`multiprocessing-auth-keys`." -#: library/multiprocessing.rst:2397 +#: library/multiprocessing.rst:2398 msgid "" "A wrapper for a bound socket or Windows named pipe which is 'listening' for " "connections." @@ -3606,7 +3607,7 @@ msgstr "" "Une enveloppe autour d'un connecteur lié ou un tube nommé sous Windows qui " "écoute pour des connexions." -#: library/multiprocessing.rst:2400 +#: library/multiprocessing.rst:2401 msgid "" "*address* is the address to be used by the bound socket or named pipe of the " "listener object." @@ -3614,7 +3615,7 @@ msgstr "" "*address* est l'adresse à utiliser par le connecteur lié ou le tube nommé de " "l'objet auditeur." -#: library/multiprocessing.rst:2405 +#: library/multiprocessing.rst:2406 msgid "" "If an address of '0.0.0.0' is used, the address will not be a connectable " "end point on Windows. If you require a connectable end-point, you should use " @@ -3624,7 +3625,7 @@ msgstr "" "d'accès connectable sous Windows. Si vous avez besoin d'un point d'accès " "connectable, utilisez '127.0.0.1'." -#: library/multiprocessing.rst:2409 +#: library/multiprocessing.rst:2410 msgid "" "*family* is the type of socket (or named pipe) to use. This can be one of " "the strings ``'AF_INET'`` (for a TCP socket), ``'AF_UNIX'`` (for a Unix " @@ -3648,7 +3649,7 @@ msgstr "" "``'AF_UNIX'`` et qu'*address* est ``None``, le connecteur est créé dans un " "répertoire temporaire privé créé avec :func:`tempfile.mkstemp`." -#: library/multiprocessing.rst:2420 +#: library/multiprocessing.rst:2421 msgid "" "If the listener object uses a socket then *backlog* (1 by default) is passed " "to the :meth:`~socket.socket.listen` method of the socket once it has been " @@ -3658,7 +3659,7 @@ msgstr "" "passé à la méthode :meth:`~socket.socket.listen` du connecteur une fois " "qu'il a été lié." -#: library/multiprocessing.rst:2432 +#: library/multiprocessing.rst:2433 msgid "" "Accept a connection on the bound socket or named pipe of the listener object " "and return a :class:`~Connection` object. If authentication is attempted and " @@ -3669,7 +3670,7 @@ msgstr "" "d'authentification échoue, une :exc:`~multiprocessing.AuthenticationError` " "est levée." -#: library/multiprocessing.rst:2439 +#: library/multiprocessing.rst:2440 msgid "" "Close the bound socket or named pipe of the listener object. This is called " "automatically when the listener is garbage collected. However it is " @@ -3679,16 +3680,16 @@ msgstr "" "appelée automatiquement quand l'auditeur est collecté par le ramasse-" "miettes. Il est cependant conseillé de l'appeler explicitement." -#: library/multiprocessing.rst:2443 +#: library/multiprocessing.rst:2444 msgid "Listener objects have the following read-only properties:" msgstr "" "Les objets auditeurs ont aussi les propriétés en lecture seule suivantes :" -#: library/multiprocessing.rst:2447 +#: library/multiprocessing.rst:2448 msgid "The address which is being used by the Listener object." msgstr "L'adresse utilisée par l'objet auditeur." -#: library/multiprocessing.rst:2451 +#: library/multiprocessing.rst:2452 msgid "" "The address from which the last accepted connection came. If this is " "unavailable then it is ``None``." @@ -3696,7 +3697,7 @@ msgstr "" "L'adresse depuis laquelle a été établie la dernière connexion. ``None`` si " "aucune n'est disponible." -#: library/multiprocessing.rst:2454 +#: library/multiprocessing.rst:2455 msgid "" "Listener objects now support the context management protocol -- see :ref:" "`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the " @@ -3707,7 +3708,7 @@ msgstr "" "renvoie l'objet auditeur, et :meth:`~contextmanager.__exit__` appelle :meth:" "`close`." -#: library/multiprocessing.rst:2461 +#: library/multiprocessing.rst:2462 msgid "" "Wait till an object in *object_list* is ready. Returns the list of those " "objects in *object_list* which are ready. If *timeout* is a float then the " @@ -3721,23 +3722,23 @@ msgstr "" "l'appelle bloquera pour une durée non limitée. Un *timeout* négatif est " "équivalent à un *timeout* nul." -#: library/multiprocessing.rst:2467 +#: library/multiprocessing.rst:2468 msgid "" "For both Unix and Windows, an object can appear in *object_list* if it is" msgstr "" "Pour Unix et Windows, un objet peut apparaître dans *object_list* s'il est" -#: library/multiprocessing.rst:2470 +#: library/multiprocessing.rst:2471 msgid "a readable :class:`~multiprocessing.connection.Connection` object;" msgstr "" "un objet :class:`~multiprocessing.connection.Connection` accessible en " "lecture ;" -#: library/multiprocessing.rst:2471 +#: library/multiprocessing.rst:2472 msgid "a connected and readable :class:`socket.socket` object; or" msgstr "un objet :class:`socket.socket` connecté et accessible en lecture ; ou" -#: library/multiprocessing.rst:2472 +#: library/multiprocessing.rst:2473 msgid "" "the :attr:`~multiprocessing.Process.sentinel` attribute of a :class:" "`~multiprocessing.Process` object." @@ -3745,7 +3746,7 @@ msgstr "" "l'attribut :attr:`~multiprocessing.Process.sentinel` d'un objet :class:" "`~multiprocessing.Process`." -#: library/multiprocessing.rst:2475 +#: library/multiprocessing.rst:2476 msgid "" "A connection or socket object is ready when there is data available to be " "read from it, or the other end has been closed." @@ -3753,7 +3754,7 @@ msgstr "" "Une connexion (*socket* en anglais) est prête quand il y a des données " "disponibles en lecture dessus, ou que l'autre extrémité a été fermée." -#: library/multiprocessing.rst:2478 +#: library/multiprocessing.rst:2479 msgid "" "**Unix**: ``wait(object_list, timeout)`` almost equivalent ``select." "select(object_list, [], [], timeout)``. The difference is that, if :func:" @@ -3766,7 +3767,7 @@ msgstr "" "`OSError` avec un numéro d'erreur ``EINTR``, alors que :func:`wait` ne le " "fera pas." -#: library/multiprocessing.rst:2484 +#: library/multiprocessing.rst:2485 msgid "" "**Windows**: An item in *object_list* must either be an integer handle which " "is waitable (according to the definition used by the documentation of the " @@ -3781,11 +3782,11 @@ msgstr "" "(notez que les identifiants de tubes et de connecteurs **ne sont pas** des " "identifiants *waitables*)." -#: library/multiprocessing.rst:2494 +#: library/multiprocessing.rst:2495 msgid "**Examples**" msgstr "**Exemples**" -#: library/multiprocessing.rst:2496 +#: library/multiprocessing.rst:2497 msgid "" "The following server code creates a listener which uses ``'secret " "password'`` as an authentication key. It then waits for a connection and " @@ -3795,13 +3796,13 @@ msgstr "" "comme clé d'authentification. Il attend ensuite une connexion et envoie les " "données au client ::" -#: library/multiprocessing.rst:2515 +#: library/multiprocessing.rst:2516 msgid "" "The following code connects to the server and receives some data from the " "server::" msgstr "Le code suivant se connecte au serveur et en reçoit des données ::" -#: library/multiprocessing.rst:2532 +#: library/multiprocessing.rst:2533 msgid "" "The following code uses :func:`~multiprocessing.connection.wait` to wait for " "messages from multiple processes at once::" @@ -3809,11 +3810,11 @@ msgstr "" "Le code suivant utilise :func:`~multiprocessing.connection.wait` pour " "attendre des messages depuis plusieurs processus à la fois ::" -#: library/multiprocessing.rst:2571 +#: library/multiprocessing.rst:2572 msgid "Address Formats" msgstr "Formats d'adresses" -#: library/multiprocessing.rst:2573 +#: library/multiprocessing.rst:2574 msgid "" "An ``'AF_INET'`` address is a tuple of the form ``(hostname, port)`` where " "*hostname* is a string and *port* is an integer." @@ -3821,7 +3822,7 @@ msgstr "" "une adresse ``'AF_INET'`` est une paire de la forme ``(hostname, port)`` où " "*hostname* est une chaîne et *port* un entier ;" -#: library/multiprocessing.rst:2576 +#: library/multiprocessing.rst:2577 msgid "" "An ``'AF_UNIX'`` address is a string representing a filename on the " "filesystem." @@ -3829,7 +3830,7 @@ msgstr "" "une adresse ``'AF_UNIX'`` est une chaîne représentant un nom de fichier sur " "le système de fichiers ;" -#: library/multiprocessing.rst:2579 +#: library/multiprocessing.rst:2580 msgid "" "An ``'AF_PIPE'`` address is a string of the form :samp:`r'\\\\\\\\.\\\\pipe\\" "\\{PipeName}'`. To use :func:`Client` to connect to a named pipe on a " @@ -3842,7 +3843,7 @@ msgstr "" "il faut utiliser une adresse de la forme :samp:`r'\\\\\\\\{NomDeLaMachine}\\" "\\pipe\\\\{NomDuTube}'`." -#: library/multiprocessing.rst:2584 +#: library/multiprocessing.rst:2585 msgid "" "Note that any string beginning with two backslashes is assumed by default to " "be an ``'AF_PIPE'`` address rather than an ``'AF_UNIX'`` address." @@ -3851,11 +3852,11 @@ msgstr "" "défaut comme l'adresse d'un ``'AF_PIPE'`` plutôt qu'une adresse " "``'AF_UNIX'``." -#: library/multiprocessing.rst:2591 +#: library/multiprocessing.rst:2592 msgid "Authentication keys" msgstr "Clés d'authentification" -#: library/multiprocessing.rst:2593 +#: library/multiprocessing.rst:2594 msgid "" "When one uses :meth:`Connection.recv `, the data received " "is automatically unpickled. Unfortunately unpickling data from an untrusted " @@ -3868,7 +3869,7 @@ msgstr "" "sécurité. Par conséquent :class:`Listener` et :func:`Client` utilisent le " "module :mod:`hmac` pour fournir une authentification par condensat." -#: library/multiprocessing.rst:2599 +#: library/multiprocessing.rst:2600 msgid "" "An authentication key is a byte string which can be thought of as a " "password: once a connection is established both ends will demand proof that " @@ -3881,7 +3882,7 @@ msgstr "" "(Démontrer que les deux utilisent la même clé n'implique **pas** d'échanger " "la clé sur la connexion.)" -#: library/multiprocessing.rst:2605 +#: library/multiprocessing.rst:2606 msgid "" "If authentication is requested but no authentication key is specified then " "the return value of ``current_process().authkey`` is used (see :class:" @@ -3899,7 +3900,7 @@ msgstr "" "processus partageront une clé d'authentification unique qui peut être " "utilisée pour mettre en place des connexions entre-eux." -#: library/multiprocessing.rst:2613 +#: library/multiprocessing.rst:2614 msgid "" "Suitable authentication keys can also be generated by using :func:`os." "urandom`." @@ -3907,11 +3908,11 @@ msgstr "" "Des clés d'authentification adaptées peuvent aussi être générées par :func:" "`os.urandom`." -#: library/multiprocessing.rst:2617 +#: library/multiprocessing.rst:2618 msgid "Logging" msgstr "Journalisation" -#: library/multiprocessing.rst:2619 +#: library/multiprocessing.rst:2620 msgid "" "Some support for logging is available. Note, however, that the :mod:" "`logging` package does not use process shared locks so it is possible " @@ -3923,7 +3924,7 @@ msgstr "" "processus et il est donc possible (dépendant du type de gestionnaire) que " "les messages de différents processus soient mélangés." -#: library/multiprocessing.rst:2626 +#: library/multiprocessing.rst:2627 msgid "" "Returns the logger used by :mod:`multiprocessing`. If necessary, a new one " "will be created." @@ -3931,7 +3932,7 @@ msgstr "" "Renvoie le journaliseur utilisé par :mod:`multiprocessing`. Si nécessaire, " "un nouveau sera créé." -#: library/multiprocessing.rst:2629 +#: library/multiprocessing.rst:2630 msgid "" "When first created the logger has level :data:`logging.NOTSET` and no " "default handler. Messages sent to this logger will not by default propagate " @@ -3941,7 +3942,7 @@ msgstr "" "et pas de gestionnaire par défaut. Les messages envoyés à ce journaliseur ne " "seront pas propagés par défaut au journaliseur principal." -#: library/multiprocessing.rst:2633 +#: library/multiprocessing.rst:2634 msgid "" "Note that on Windows child processes will only inherit the level of the " "parent process's logger -- any other customization of the logger will not be " @@ -3951,7 +3952,7 @@ msgstr "" "journaliseur du processus parent – toute autre personnalisation du " "journaliseur ne sera pas héritée." -#: library/multiprocessing.rst:2640 +#: library/multiprocessing.rst:2641 #, fuzzy msgid "" "This function performs a call to :func:`get_logger` but in addition to " @@ -3965,22 +3966,22 @@ msgstr "" "qui envoie la sortie sur :data:`sys.stderr` en utilisant le format " "``'[%(levelname)s/%(processName)s] %(message)s'``." -#: library/multiprocessing.rst:2646 +#: library/multiprocessing.rst:2647 msgid "Below is an example session with logging turned on::" msgstr "" "L'exemple ci-dessous présente une session avec la journalisation activée ::" -#: library/multiprocessing.rst:2661 +#: library/multiprocessing.rst:2662 msgid "For a full table of logging levels, see the :mod:`logging` module." msgstr "" "Pour un tableau complet des niveaux de journalisation, voir le module :mod:" "`logging`." -#: library/multiprocessing.rst:2665 +#: library/multiprocessing.rst:2666 msgid "The :mod:`multiprocessing.dummy` module" msgstr "Le module :mod:`multiprocessing.dummy`" -#: library/multiprocessing.rst:2670 +#: library/multiprocessing.rst:2671 msgid "" ":mod:`multiprocessing.dummy` replicates the API of :mod:`multiprocessing` " "but is no more than a wrapper around the :mod:`threading` module." @@ -3988,7 +3989,7 @@ msgstr "" ":mod:`multiprocessing.dummy` réplique toute l'API de :mod:`multiprocessing` " "mais n'est rien de plus qu'une interface autour du module :mod:`threading`." -#: library/multiprocessing.rst:2675 +#: library/multiprocessing.rst:2676 msgid "" "In particular, the ``Pool`` function provided by :mod:`multiprocessing." "dummy` returns an instance of :class:`ThreadPool`, which is a subclass of :" @@ -4000,7 +4001,7 @@ msgstr "" "class:`Pool`. Elle a la même interface, mais elle utilise un pool de fils " "d'exécution plutôt qu'un pool de processus." -#: library/multiprocessing.rst:2683 +#: library/multiprocessing.rst:2684 msgid "" "A thread pool object which controls a pool of worker threads to which jobs " "can be submitted. :class:`ThreadPool` instances are fully interface " @@ -4016,7 +4017,7 @@ msgstr "" "avec un contexte, soit en appelant explicitement :meth:`~multiprocessing." "pool.Pool.close` et :meth:`~multiprocessing.pool.Pool.terminate`." -#: library/multiprocessing.rst:2690 +#: library/multiprocessing.rst:2691 msgid "" "*processes* is the number of worker threads to use. If *processes* is " "``None`` then the number returned by :func:`os.cpu_count` is used." @@ -4024,14 +4025,14 @@ msgstr "" "*processes* est le nombre de fils d'exécution à utiliser. Si *processes* est " "``None``, le nombre renvoyé par :func:`os.cpu_count` est utilisé." -#: library/multiprocessing.rst:2696 +#: library/multiprocessing.rst:2697 msgid "" "Unlike :class:`Pool`, *maxtasksperchild* and *context* cannot be provided." msgstr "" "À la différence de :class:`Pool`, *maxtasksperchild* et *context* ne peuvent " "pas être passés en arguments." -#: library/multiprocessing.rst:2700 +#: library/multiprocessing.rst:2701 msgid "" "A :class:`ThreadPool` shares the same interface as :class:`Pool`, which is " "designed around a pool of processes and predates the introduction of the :" @@ -4048,7 +4049,7 @@ msgstr "" "représenter le statut de tâches asynchrones, :class:`AsyncResult`, qui n'est " "pas géré par les autres modules." -#: library/multiprocessing.rst:2707 +#: library/multiprocessing.rst:2708 msgid "" "Users should generally prefer to use :class:`concurrent.futures." "ThreadPoolExecutor`, which has a simpler interface that was designed around " @@ -4062,11 +4063,11 @@ msgstr "" "`concurrent.futures.Future` qui sont compatibles avec de nombreux modules, " "dont :mod:`asyncio`." -#: library/multiprocessing.rst:2717 +#: library/multiprocessing.rst:2718 msgid "Programming guidelines" msgstr "Lignes directrices de programmation" -#: library/multiprocessing.rst:2719 +#: library/multiprocessing.rst:2720 msgid "" "There are certain guidelines and idioms which should be adhered to when " "using :mod:`multiprocessing`." @@ -4074,19 +4075,19 @@ msgstr "" "Il y a certaines lignes directrices et idiomes à respecter pour utiliser :" "mod:`multiprocessing`." -#: library/multiprocessing.rst:2724 +#: library/multiprocessing.rst:2725 msgid "All start methods" msgstr "Toutes les méthodes de démarrage" -#: library/multiprocessing.rst:2726 +#: library/multiprocessing.rst:2727 msgid "The following applies to all start methods." msgstr "Les règles suivantes s'appliquent aux méthodes de démarrage." -#: library/multiprocessing.rst:2728 +#: library/multiprocessing.rst:2729 msgid "Avoid shared state" msgstr "Éviter les états partagés" -#: library/multiprocessing.rst:2730 +#: library/multiprocessing.rst:2731 msgid "" "As far as possible one should try to avoid shifting large amounts of data " "between processes." @@ -4094,7 +4095,7 @@ msgstr "" "Autant que possible, il faut éviter de transférer de gros volumes de données " "entre les processus." -#: library/multiprocessing.rst:2733 +#: library/multiprocessing.rst:2734 msgid "" "It is probably best to stick to using queues or pipes for communication " "between processes rather than using the lower level synchronization " @@ -4104,21 +4105,21 @@ msgstr "" "pour gérer la communication entre processus plutôt que d'utiliser des " "primitives de synchronisation plus bas-niveau." -#: library/multiprocessing.rst:2737 +#: library/multiprocessing.rst:2738 msgid "Picklability" msgstr "Sérialisation" -#: library/multiprocessing.rst:2739 +#: library/multiprocessing.rst:2740 msgid "Ensure that the arguments to the methods of proxies are picklable." msgstr "" "Assurez-vous que les arguments passés aux méthodes des mandataires soient " "sérialisables (*pickables*)." -#: library/multiprocessing.rst:2741 +#: library/multiprocessing.rst:2742 msgid "Thread safety of proxies" msgstr "Sûreté des mandataires à travers les fils d'exécution" -#: library/multiprocessing.rst:2743 +#: library/multiprocessing.rst:2744 msgid "" "Do not use a proxy object from more than one thread unless you protect it " "with a lock." @@ -4126,18 +4127,18 @@ msgstr "" "N'utilisez pas d'objet mandataire depuis plus d'un fil d'exécution à moins " "que vous ne le protégiez avec un verrou." -#: library/multiprocessing.rst:2746 +#: library/multiprocessing.rst:2747 msgid "" "(There is never a problem with different processes using the *same* proxy.)" msgstr "" "Il n'y a jamais de problème à avoir plusieurs processus qui utilisent un " "*même* mandataire." -#: library/multiprocessing.rst:2748 +#: library/multiprocessing.rst:2749 msgid "Joining zombie processes" msgstr "Attendre les processus zombies" -#: library/multiprocessing.rst:2750 +#: library/multiprocessing.rst:2751 msgid "" "On Unix when a process finishes but has not been joined it becomes a zombie. " "There should never be very many because each time a new process starts (or :" @@ -4156,11 +4157,11 @@ msgstr "" "processus. Toutefois, il est, en règle générale, conseillé d'attendre " "explicitement tous les processus que vous démarrez." -#: library/multiprocessing.rst:2758 +#: library/multiprocessing.rst:2759 msgid "Better to inherit than pickle/unpickle" msgstr "Mieux vaut hériter que sérialiser - désérialiser" -#: library/multiprocessing.rst:2760 +#: library/multiprocessing.rst:2761 msgid "" "When using the *spawn* or *forkserver* start methods many types from :mod:" "`multiprocessing` need to be picklable so that child processes can use " @@ -4177,11 +4178,11 @@ msgstr "" "processus qui nécessite l'accès à une ressource partagée créée autre part " "qu'il en hérite depuis un de ses processus ancêtres." -#: library/multiprocessing.rst:2768 +#: library/multiprocessing.rst:2769 msgid "Avoid terminating processes" msgstr "Éviter de terminer les processus" -#: library/multiprocessing.rst:2770 +#: library/multiprocessing.rst:2771 msgid "" "Using the :meth:`Process.terminate ` " "method to stop a process is liable to cause any shared resources (such as " @@ -4193,7 +4194,7 @@ msgstr "" "indisponible aux autres processus des ressources partagées (comme des " "verrous, sémaphores, tubes et files) actuellement utilisées par le processus." -#: library/multiprocessing.rst:2776 +#: library/multiprocessing.rst:2777 msgid "" "Therefore it is probably best to only consider using :meth:`Process." "terminate ` on processes which never use " @@ -4203,11 +4204,11 @@ msgstr "" "` que sur les processus qui n'utilisent " "jamais de ressources partagées." -#: library/multiprocessing.rst:2780 +#: library/multiprocessing.rst:2781 msgid "Joining processes that use queues" msgstr "Attendre les processus qui utilisent des files" -#: library/multiprocessing.rst:2782 +#: library/multiprocessing.rst:2783 msgid "" "Bear in mind that a process that has put items in a queue will wait before " "terminating until all the buffered items are fed by the \"feeder\" thread to " @@ -4222,7 +4223,7 @@ msgstr "" "` de la queue pour éviter ce " "comportement)." -#: library/multiprocessing.rst:2788 +#: library/multiprocessing.rst:2789 msgid "" "This means that whenever you use a queue you need to make sure that all " "items which have been put on the queue will eventually be removed before the " @@ -4237,11 +4238,11 @@ msgstr "" "termineront. Souvenez-vous aussi que tous les processus non *daemons* sont " "attendus automatiquement." -#: library/multiprocessing.rst:2794 +#: library/multiprocessing.rst:2795 msgid "An example which will deadlock is the following::" msgstr "L'exemple suivant provoque un interblocage ::" -#: library/multiprocessing.rst:2808 +#: library/multiprocessing.rst:2809 msgid "" "A fix here would be to swap the last two lines (or simply remove the ``p." "join()`` line)." @@ -4249,11 +4250,11 @@ msgstr "" "Une solution ici consiste à intervertir les deux dernières lignes (ou " "simplement à supprimer la ligne ``p.join()``)." -#: library/multiprocessing.rst:2811 +#: library/multiprocessing.rst:2812 msgid "Explicitly pass resources to child processes" msgstr "Passer explicitement les ressources aux processus fils" -#: library/multiprocessing.rst:2813 +#: library/multiprocessing.rst:2814 msgid "" "On Unix using the *fork* start method, a child process can make use of a " "shared resource created in a parent process using a global resource. " @@ -4265,7 +4266,7 @@ msgstr "" "utilisant une ressource globale. Cependant, il est préférable de passer " "l'objet en argument au constructeur du processus fils." -#: library/multiprocessing.rst:2818 +#: library/multiprocessing.rst:2819 msgid "" "Apart from making the code (potentially) compatible with Windows and the " "other start methods this also ensures that as long as the child process is " @@ -4280,24 +4281,24 @@ msgstr "" "libérées quand l'objet est collecté par le ramasse-miettes du processus " "parent." -#: library/multiprocessing.rst:2825 +#: library/multiprocessing.rst:2826 msgid "So for instance ::" msgstr "Donc par exemple ::" -#: library/multiprocessing.rst:2837 +#: library/multiprocessing.rst:2838 msgid "should be rewritten as ::" msgstr "devrait être réécrit comme ::" -#: library/multiprocessing.rst:2849 +#: library/multiprocessing.rst:2850 msgid "Beware of replacing :data:`sys.stdin` with a \"file like object\"" msgstr "" "Faire attention à remplacer :data:`sys.stdin` par un objet simili-fichier" -#: library/multiprocessing.rst:2851 +#: library/multiprocessing.rst:2852 msgid ":mod:`multiprocessing` originally unconditionally called::" msgstr "À l'origine, :mod:`multiprocessing` appelait inconditionnellement ::" -#: library/multiprocessing.rst:2855 +#: library/multiprocessing.rst:2856 msgid "" "in the :meth:`multiprocessing.Process._bootstrap` method --- this resulted " "in issues with processes-in-processes. This has been changed to::" @@ -4305,7 +4306,7 @@ msgstr "" "dans la méthode :meth:`multiprocessing.Process._bootstrap` — cela provoquait " "des problèmes avec les processus imbriqués. Cela peut être changé en ::" -#: library/multiprocessing.rst:2861 +#: library/multiprocessing.rst:2862 msgid "" "Which solves the fundamental issue of processes colliding with each other " "resulting in a bad file descriptor error, but introduces a potential danger " @@ -4322,7 +4323,7 @@ msgstr "" "peut amener les données à être transmises à l'objet à plusieurs reprises, " "résultant en une corruption." -#: library/multiprocessing.rst:2868 +#: library/multiprocessing.rst:2869 msgid "" "If you write a file-like object and implement your own caching, you can make " "it fork-safe by storing the pid whenever you append to the cache, and " @@ -4333,28 +4334,28 @@ msgstr "" "que vous ajoutez des données au cache, et annulez le cache quand le *pid* " "change. Par exemple ::" -#: library/multiprocessing.rst:2880 +#: library/multiprocessing.rst:2881 msgid "" "For more information, see :issue:`5155`, :issue:`5313` and :issue:`5331`" msgstr "" "Pour plus d'informations, voir :issue:`5155`, :issue:`5313` et :issue:`5331`" -#: library/multiprocessing.rst:2883 +#: library/multiprocessing.rst:2884 msgid "The *spawn* and *forkserver* start methods" msgstr "Les méthodes de démarrage *spawn* et *forkserver*" -#: library/multiprocessing.rst:2885 +#: library/multiprocessing.rst:2886 msgid "" "There are a few extra restriction which don't apply to the *fork* start " "method." msgstr "" "Certaines restrictions ne s'appliquent pas à la méthode de démarrage *fork*." -#: library/multiprocessing.rst:2888 +#: library/multiprocessing.rst:2889 msgid "More picklability" msgstr "Contraintes supplémentaires sur la sérialisation" -#: library/multiprocessing.rst:2890 +#: library/multiprocessing.rst:2891 msgid "" "Ensure that all arguments to :meth:`Process.__init__` are picklable. Also, " "if you subclass :class:`~multiprocessing.Process` then make sure that " @@ -4367,11 +4368,11 @@ msgstr "" "sérialisables quand la méthode :meth:`Process.start ` est appelée." -#: library/multiprocessing.rst:2895 +#: library/multiprocessing.rst:2896 msgid "Global variables" msgstr "Variables globales" -#: library/multiprocessing.rst:2897 +#: library/multiprocessing.rst:2898 msgid "" "Bear in mind that if code run in a child process tries to access a global " "variable, then the value it sees (if any) may not be the same as the value " @@ -4384,7 +4385,7 @@ msgstr "" "moment même où :meth:`Process.start ` est " "appelée." -#: library/multiprocessing.rst:2902 +#: library/multiprocessing.rst:2903 msgid "" "However, global variables which are just module level constants cause no " "problems." @@ -4392,11 +4393,11 @@ msgstr "" "Cependant, les variables globales qui sont juste des constantes de modules " "ne posent pas de problèmes." -#: library/multiprocessing.rst:2905 +#: library/multiprocessing.rst:2906 msgid "Safe importing of main module" msgstr "Importation sécurisée du module principal" -#: library/multiprocessing.rst:2907 +#: library/multiprocessing.rst:2908 msgid "" "Make sure that the main module can be safely imported by a new Python " "interpreter without causing unintended side effects (such a starting a new " @@ -4406,7 +4407,7 @@ msgstr "" "un nouvel interpréteur Python sans causer d'effets de bord inattendus (comme " "le démarrage d'un nouveau processus)." -#: library/multiprocessing.rst:2911 +#: library/multiprocessing.rst:2912 msgid "" "For example, using the *spawn* or *forkserver* start method running the " "following module would fail with a :exc:`RuntimeError`::" @@ -4414,7 +4415,7 @@ msgstr "" "Par exemple, utiliser la méthode de démarrage *spawn* ou *forkserver* pour " "lancer le module suivant échouerait avec une :exc:`RuntimeError` ::" -#: library/multiprocessing.rst:2923 +#: library/multiprocessing.rst:2924 msgid "" "Instead one should protect the \"entry point\" of the program by using ``if " "__name__ == '__main__':`` as follows::" @@ -4422,7 +4423,7 @@ msgstr "" "Vous devriez plutôt protéger le « point d'entrée » du programme en utilisant " "``if __name__ == '__main__':`` comme suit ::" -#: library/multiprocessing.rst:2937 +#: library/multiprocessing.rst:2938 msgid "" "(The ``freeze_support()`` line can be omitted if the program will be run " "normally instead of frozen.)" @@ -4430,7 +4431,7 @@ msgstr "" "(La ligne ``freeze_support()`` peut être omise si le programme est " "uniquement lancé normalement et pas figé.)" -#: library/multiprocessing.rst:2940 +#: library/multiprocessing.rst:2941 msgid "" "This allows the newly spawned Python interpreter to safely import the module " "and then run the module's ``foo()`` function." @@ -4438,7 +4439,7 @@ msgstr "" "Cela permet aux interpréteurs Python fraîchement instanciés d'importer en " "toute sécurité le module et d'exécution ensuite la fonction ``foo()``." -#: library/multiprocessing.rst:2943 +#: library/multiprocessing.rst:2944 msgid "" "Similar restrictions apply if a pool or manager is created in the main " "module." @@ -4446,21 +4447,21 @@ msgstr "" "Des restrictions similaires s'appliquent si un pool ou un gestionnaire est " "créé dans le module principal." -#: library/multiprocessing.rst:2950 +#: library/multiprocessing.rst:2951 msgid "Examples" msgstr "Exemples" -#: library/multiprocessing.rst:2952 +#: library/multiprocessing.rst:2953 msgid "Demonstration of how to create and use customized managers and proxies:" msgstr "" "Démonstration de comment créer et utiliser des gestionnaires et mandataires " "personnalisés :" -#: library/multiprocessing.rst:2958 +#: library/multiprocessing.rst:2959 msgid "Using :class:`~multiprocessing.pool.Pool`:" msgstr "En utilisant :class:`~multiprocessing.pool.Pool` :" -#: library/multiprocessing.rst:2964 +#: library/multiprocessing.rst:2965 msgid "" "An example showing how to use queues to feed tasks to a collection of worker " "processes and collect the results:" diff --git a/library/statistics.po b/library/statistics.po index bd0aa00e..a9014a5d 100644 --- a/library/statistics.po +++ b/library/statistics.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2020-05-14 16:36+0200\n" "Last-Translator: Nicolas Audebert \n" "Language-Team: FRENCH \n" @@ -293,11 +293,12 @@ msgid "Some examples of use:" msgstr "Exemples d'utilisation :" #: library/statistics.rst:119 +#, fuzzy msgid "" -"The mean is strongly affected by outliers and is not a robust estimator for " -"central location: the mean is not necessarily a typical example of the data " -"points. For more robust measures of central location, see :func:`median` " -"and :func:`mode`." +"The mean is strongly affected by `outliers `_ and is not necessarily a typical example of the data points. For " +"a more robust, although less efficient, measure of `central tendency " +"`_, see :func:`median`." msgstr "" "La moyenne arithmétique est fortement impactée par la présence de valeurs " "aberrantes et n'est pas un estimateur robuste de la tendance centrale : la " @@ -305,7 +306,7 @@ msgstr "" "Voir :func:`median` et :func:`mode` pour des mesures plus robustes de la " "tendance centrale." -#: library/statistics.rst:124 +#: library/statistics.rst:125 msgid "" "The sample mean gives an unbiased estimate of the true population mean, so " "that when taken on average over all the possible samples, ``mean(sample)`` " @@ -319,13 +320,13 @@ msgstr "" "la population entière. Si *data* est une population entière plutôt qu'un " "échantillon, alors ``mean(data)`` équivaut à calculer la véritable moyenne μ." -#: library/statistics.rst:133 +#: library/statistics.rst:134 msgid "Convert *data* to floats and compute the arithmetic mean." msgstr "" "Convertit *data* en nombres à virgule flottante et calcule la moyenne " "arithmétique." -#: library/statistics.rst:135 +#: library/statistics.rst:136 msgid "" "This runs faster than the :func:`mean` function and it always returns a :" "class:`float`. The *data* may be a sequence or iterable. If the input " @@ -335,13 +336,13 @@ msgstr "" "class:`float`. *data* peut être une séquence ou un itérable. Si les données " "d'entrée sont vides, la fonction lève une erreur :exc:`StatisticsError`." -#: library/statistics.rst:149 +#: library/statistics.rst:150 msgid "Convert *data* to floats and compute the geometric mean." msgstr "" "Convertit *data* en nombres à virgule flottante et calcule la moyenne " "géométrique." -#: library/statistics.rst:151 +#: library/statistics.rst:152 msgid "" "The geometric mean indicates the central tendency or typical value of the " "*data* using the product of the values (as opposed to the arithmetic mean " @@ -351,7 +352,7 @@ msgstr "" "*data* en utilisant le produit des valeurs (par opposition à la moyenne " "arithmétique qui utilise la somme)." -#: library/statistics.rst:155 +#: library/statistics.rst:156 msgid "" "Raises a :exc:`StatisticsError` if the input dataset is empty, if it " "contains a zero, or if it contains a negative value. The *data* may be a " @@ -361,7 +362,7 @@ msgstr "" "contiennent un zéro ou une valeur négative. *data* peut être une séquence ou " "un itérable." -#: library/statistics.rst:159 +#: library/statistics.rst:160 msgid "" "No special efforts are made to achieve exact results. (However, this may " "change in the future.)" @@ -369,7 +370,7 @@ msgstr "" "Aucune mesure particulière n'est prise pour garantir que le résultat est " "parfaitement exact (cela peut toutefois changer dans une version future)." -#: library/statistics.rst:172 +#: library/statistics.rst:173 #, fuzzy msgid "" "Return the harmonic mean of *data*, a sequence or iterable of real-valued " @@ -378,7 +379,7 @@ msgstr "" "Renvoie la moyenne harmonique de *data*, une séquence ou un itérable de " "nombres réels." -#: library/statistics.rst:176 +#: library/statistics.rst:177 #, fuzzy msgid "" "The harmonic mean is the reciprocal of the arithmetic :func:`mean` of the " @@ -391,7 +392,7 @@ msgstr "" "et *c* vaut ``3/(1/a + 1/b + 1/c)``. Si une des valeurs est nulle, alors le " "résultat est zéro." -#: library/statistics.rst:181 +#: library/statistics.rst:182 #, fuzzy msgid "" "The harmonic mean is a type of average, a measure of the central location of " @@ -402,7 +403,7 @@ msgstr "" "centrale des données. Elle est généralement appropriée pour calculer des " "moyennes de taux ou de proportions, par exemple des vitesses." -#: library/statistics.rst:185 +#: library/statistics.rst:186 msgid "" "Suppose a car travels 10 km at 40 km/hr, then another 10 km at 60 km/hr. " "What is the average speed?" @@ -410,7 +411,7 @@ msgstr "" "Supposons qu'une voiture parcoure 10 km à 40 km/h puis 10 km à 60 km/h. " "Quelle a été sa vitesse moyenne ?" -#: library/statistics.rst:193 +#: library/statistics.rst:194 #, fuzzy msgid "" "Suppose a car travels 40 km/hr for 5 km, and when traffic clears, speeds-up " @@ -420,7 +421,7 @@ msgstr "" "Supposons qu'une voiture parcoure 10 km à 40 km/h puis 10 km à 60 km/h. " "Quelle a été sa vitesse moyenne ?" -#: library/statistics.rst:202 +#: library/statistics.rst:203 #, fuzzy msgid "" ":exc:`StatisticsError` is raised if *data* is empty, any element is less " @@ -429,7 +430,7 @@ msgstr "" "Une erreur :exc:`StatisticsError` est levée si *data* est vide ou si l'un de " "ses éléments est inférieur à zéro." -#: library/statistics.rst:205 +#: library/statistics.rst:206 msgid "" "The current algorithm has an early-out when it encounters a zero in the " "input. This means that the subsequent inputs are not tested for validity. " @@ -440,11 +441,11 @@ msgstr "" "validité des valeurs suivantes n'est pas testée (ce comportement est " "susceptible de changer dans une version future)." -#: library/statistics.rst:211 +#: library/statistics.rst:212 msgid "Added support for *weights*." msgstr "" -#: library/statistics.rst:216 +#: library/statistics.rst:217 msgid "" "Return the median (middle value) of numeric data, using the common \"mean of " "middle two\" method. If *data* is empty, :exc:`StatisticsError` is raised. " @@ -455,7 +456,7 @@ msgstr "" "`StatisticsError` si *data* est vide. *data* peut être une séquence ou un " "itérable." -#: library/statistics.rst:220 +#: library/statistics.rst:221 msgid "" "The median is a robust measure of central location and is less affected by " "the presence of outliers. When the number of data points is odd, the middle " @@ -465,7 +466,7 @@ msgstr "" "sensible à la présence de valeurs aberrantes que la moyenne. Lorsque le " "nombre d'observations est impair, la valeur du milieu est renvoyée :" -#: library/statistics.rst:229 +#: library/statistics.rst:230 msgid "" "When the number of data points is even, the median is interpolated by taking " "the average of the two middle values:" @@ -473,7 +474,7 @@ msgstr "" "Lorsque le nombre d'observations est pair, la médiane est interpolée en " "calculant la moyenne des deux valeurs du milieu :" -#: library/statistics.rst:237 +#: library/statistics.rst:238 msgid "" "This is suited for when your data is discrete, and you don't mind that the " "median may not be an actual data point." @@ -481,7 +482,7 @@ msgstr "" "Cette approche est adaptée à des données discrètes à condition que vous " "acceptiez que la médiane ne fasse pas nécessairement partie des observations." -#: library/statistics.rst:240 +#: library/statistics.rst:241 msgid "" "If the data is ordinal (supports order operations) but not numeric (doesn't " "support addition), consider using :func:`median_low` or :func:`median_high` " @@ -491,7 +492,7 @@ msgstr "" "numériques (elles ne peuvent être additionnées), utilisez :func:`median_low` " "ou :func:`median_high` à la place." -#: library/statistics.rst:246 +#: library/statistics.rst:247 msgid "" "Return the low median of numeric data. If *data* is empty, :exc:" "`StatisticsError` is raised. *data* can be a sequence or iterable." @@ -500,7 +501,7 @@ msgstr "" "`StatisticsError` si *data* est vide. *data* peut être une séquence ou un " "itérable." -#: library/statistics.rst:249 +#: library/statistics.rst:250 msgid "" "The low median is always a member of the data set. When the number of data " "points is odd, the middle value is returned. When it is even, the smaller " @@ -510,7 +511,7 @@ msgstr "" "Lorsque le nombre d'observations est impair, la valeur du milieu est " "renvoyée. Sinon, la plus petite des deux valeurs du milieu est renvoyée." -#: library/statistics.rst:260 +#: library/statistics.rst:261 msgid "" "Use the low median when your data are discrete and you prefer the median to " "be an actual data point rather than interpolated." @@ -519,7 +520,7 @@ msgstr "" "préférez que la médiane soit une valeur représentée dans vos observations " "plutôt que le résultat d'une interpolation." -#: library/statistics.rst:266 +#: library/statistics.rst:267 msgid "" "Return the high median of data. If *data* is empty, :exc:`StatisticsError` " "is raised. *data* can be a sequence or iterable." @@ -527,7 +528,7 @@ msgstr "" "Renvoie la médiane haute des données. Lève une erreur :exc:`StatisticsError` " "si *data* est vide. *data* peut être une séquence ou un itérable." -#: library/statistics.rst:269 +#: library/statistics.rst:270 msgid "" "The high median is always a member of the data set. When the number of data " "points is odd, the middle value is returned. When it is even, the larger of " @@ -537,7 +538,7 @@ msgstr "" "Lorsque le nombre d'observations est impair, la valeur du milieu est " "renvoyée. Sinon, la plus grande des deux valeurs du milieu est renvoyée." -#: library/statistics.rst:280 +#: library/statistics.rst:281 msgid "" "Use the high median when your data are discrete and you prefer the median to " "be an actual data point rather than interpolated." @@ -546,7 +547,7 @@ msgstr "" "préférez que la médiane soit une valeur représentée dans vos observations " "plutôt que le résultat d'une interpolation." -#: library/statistics.rst:286 +#: library/statistics.rst:287 msgid "" "Return the median of grouped continuous data, calculated as the 50th " "percentile, using interpolation. If *data* is empty, :exc:`StatisticsError` " @@ -556,7 +557,7 @@ msgstr "" "`e` percentile (avec interpolation). Lève une erreur :exc:`StatisticsError` " "si *data* est vide. *data* peut être une séquence ou un itérable." -#: library/statistics.rst:295 +#: library/statistics.rst:296 msgid "" "In the following example, the data are rounded, so that each value " "represents the midpoint of data classes, e.g. 1 is the midpoint of the class " @@ -570,7 +571,7 @@ msgstr "" " 3,5, etc. Compte-tenu des valeurs ci-dessous, la valeur centrale se situe " "quelque part dans le groupe 3,5 - 4,5 et est estimée par interpolation :" -#: library/statistics.rst:306 +#: library/statistics.rst:307 msgid "" "Optional argument *interval* represents the class interval, and defaults to " "1. Changing the class interval naturally will change the interpolation:" @@ -579,7 +580,7 @@ msgstr "" "groupes (par défaut, 1). Changer l'intervalle des groupes change bien sûr " "l'interpolation :" -#: library/statistics.rst:316 +#: library/statistics.rst:317 msgid "" "This function does not check whether the data points are at least *interval* " "apart." @@ -587,7 +588,7 @@ msgstr "" "Cette fonction ne vérifie pas que les valeurs sont bien séparées d'au moins " "une fois *interval*." -#: library/statistics.rst:321 +#: library/statistics.rst:322 msgid "" "Under some circumstances, :func:`median_grouped` may coerce data points to " "floats. This behaviour is likely to change in the future." @@ -596,7 +597,7 @@ msgstr "" "en nombres à virgule flottante. Ce comportement est susceptible de changer " "dans le futur." -#: library/statistics.rst:326 +#: library/statistics.rst:327 msgid "" "\"Statistics for the Behavioral Sciences\", Frederick J Gravetter and Larry " "B Wallnau (8th Edition)." @@ -604,7 +605,7 @@ msgstr "" "*Statistics for the Behavioral Sciences*, Frederick J Gravetter et Larry B " "Wallnau (8\\ :sup:`e` édition, ouvrage en anglais)." -#: library/statistics.rst:329 +#: library/statistics.rst:330 msgid "" "The `SSMEDIAN `_ function in the Gnome Gnumeric " @@ -616,7 +617,7 @@ msgstr "" "`cette discussion `_." -#: library/statistics.rst:337 +#: library/statistics.rst:338 msgid "" "Return the single most common data point from discrete or nominal *data*. " "The mode (when it exists) is the most typical value and serves as a measure " @@ -626,7 +627,7 @@ msgstr "" "nominale). Ce mode, lorsqu'il existe, est la valeur la plus représentative " "des données et est une mesure de la tendance centrale." -#: library/statistics.rst:341 +#: library/statistics.rst:342 msgid "" "If there are multiple modes with the same frequency, returns the first one " "encountered in the *data*. If the smallest or largest of those is desired " @@ -639,7 +640,7 @@ msgstr "" "petit mode ou le plus grand mode. Lève une erreur :exc:`StatisticsError` si " "*data* est vide." -#: library/statistics.rst:346 +#: library/statistics.rst:347 msgid "" "``mode`` assumes discrete data and returns a single value. This is the " "standard treatment of the mode as commonly taught in schools:" @@ -648,7 +649,7 @@ msgstr "" "Il s'agit de la définition usuelle du mode telle qu'enseignée dans à " "l'école :" -#: library/statistics.rst:354 +#: library/statistics.rst:355 msgid "" "The mode is unique in that it is the only statistic in this package that " "also applies to nominal (non-numeric) data:" @@ -656,7 +657,7 @@ msgstr "" "Le mode a la particularité d'être la seule statistique de ce module à " "pouvoir être calculée sur des données nominales (non numériques) :" -#: library/statistics.rst:362 +#: library/statistics.rst:363 msgid "" "Now handles multimodal datasets by returning the first mode encountered. " "Formerly, it raised :exc:`StatisticsError` when more than one mode was found." @@ -665,7 +666,7 @@ msgstr "" "premier mode rencontré. Précédemment, une erreur :exc:`StatisticsError` " "était levée si plusieurs modes étaient trouvés." -#: library/statistics.rst:370 +#: library/statistics.rst:371 msgid "" "Return a list of the most frequently occurring values in the order they were " "first encountered in the *data*. Will return more than one result if there " @@ -675,7 +676,7 @@ msgstr "" "d'apparition dans *data*. Renvoie plusieurs résultats s'il y a plusieurs " "modes ou une liste vide si *data* est vide :" -#: library/statistics.rst:386 +#: library/statistics.rst:387 msgid "" "Return the population standard deviation (the square root of the population " "variance). See :func:`pvariance` for arguments and other details." @@ -684,7 +685,7 @@ msgstr "" "population). Voir :func:`pvariance` pour les arguments et d'autres " "précisions." -#: library/statistics.rst:397 +#: library/statistics.rst:398 msgid "" "Return the population variance of *data*, a non-empty sequence or iterable " "of real-valued numbers. Variance, or second moment about the mean, is a " @@ -698,7 +699,7 @@ msgstr "" "indique une large dispersion des valeurs ; une faible variance indique que " "les valeurs sont resserrées autour de la moyenne." -#: library/statistics.rst:403 +#: library/statistics.rst:404 msgid "" "If the optional second argument *mu* is given, it is typically the mean of " "the *data*. It can also be used to compute the second moment around a point " @@ -711,7 +712,7 @@ msgstr "" "autrement, cela permet de calculer le moment de second ordre autour d'un " "point qui n'est pas la moyenne." -#: library/statistics.rst:408 +#: library/statistics.rst:409 msgid "" "Use this function to calculate the variance from the entire population. To " "estimate the variance from a sample, the :func:`variance` function is " @@ -721,15 +722,15 @@ msgstr "" "complète. Pour estimer la variance à partir d'un échantillon, utilisez " "plutôt :func:`variance` à la place." -#: library/statistics.rst:412 +#: library/statistics.rst:413 msgid "Raises :exc:`StatisticsError` if *data* is empty." msgstr "Lève une erreur :exc:`StatisticsError` si *data* est vide." -#: library/statistics.rst:484 library/statistics.rst:616 +#: library/statistics.rst:485 library/statistics.rst:617 msgid "Examples:" msgstr "Exemples :" -#: library/statistics.rst:422 +#: library/statistics.rst:423 msgid "" "If you have already calculated the mean of your data, you can pass it as the " "optional second argument *mu* to avoid recalculation:" @@ -738,11 +739,11 @@ msgstr "" "comme argument optionnel *mu* lors de l'appel de fonction pour éviter de la " "calculer une nouvelle fois :" -#: library/statistics.rst:431 +#: library/statistics.rst:432 msgid "Decimals and Fractions are supported:" msgstr "La fonction gère les nombres décimaux et les fractions :" -#: library/statistics.rst:445 +#: library/statistics.rst:446 msgid "" "When called with the entire population, this gives the population variance " "σ². When called on a sample instead, this is the biased sample variance s², " @@ -753,7 +754,7 @@ msgstr "" "échantillon, le résultat est alors la variance de l'échantillon s² ou " "variance à N degrés de liberté." -#: library/statistics.rst:449 +#: library/statistics.rst:450 msgid "" "If you somehow know the true population mean μ, you may use this function to " "calculate the variance of a sample, giving the known population mean as the " @@ -768,7 +769,7 @@ msgstr "" "dans la population, le résultat sera une estimation non biaisée de la " "variance de la population." -#: library/statistics.rst:458 +#: library/statistics.rst:459 msgid "" "Return the sample standard deviation (the square root of the sample " "variance). See :func:`variance` for arguments and other details." @@ -776,7 +777,7 @@ msgstr "" "Renvoie l'écart-type de l'échantillon (racine carrée de la variance de " "l'échantillon). Voir :func:`variance` pour les arguments et plus de détails." -#: library/statistics.rst:469 +#: library/statistics.rst:470 msgid "" "Return the sample variance of *data*, an iterable of at least two real-" "valued numbers. Variance, or second moment about the mean, is a measure of " @@ -790,7 +791,7 @@ msgstr "" "les données sont très dispersées ; une variance faible indique que les " "valeurs sont resserrées autour de la moyenne." -#: library/statistics.rst:475 +#: library/statistics.rst:476 msgid "" "If the optional second argument *xbar* is given, it should be the mean of " "*data*. If it is missing or ``None`` (the default), the mean is " @@ -800,7 +801,7 @@ msgstr "" "correspondre à la moyenne de *data*. S'il n'est pas spécifié ou ``None`` " "(par défaut), la moyenne est automatiquement calculée." -#: library/statistics.rst:479 +#: library/statistics.rst:480 msgid "" "Use this function when your data is a sample from a population. To calculate " "the variance from the entire population, see :func:`pvariance`." @@ -809,13 +810,13 @@ msgstr "" "population plus grande. Pour calculer la variance d'une population complète, " "utilisez :func:`pvariance`." -#: library/statistics.rst:482 +#: library/statistics.rst:483 msgid "Raises :exc:`StatisticsError` if *data* has fewer than two values." msgstr "" "Lève une erreur :exc:`StatisticsError` si *data* contient moins de deux " "éléments." -#: library/statistics.rst:492 +#: library/statistics.rst:493 msgid "" "If you have already calculated the mean of your data, you can pass it as the " "optional second argument *xbar* to avoid recalculation:" @@ -824,7 +825,7 @@ msgstr "" "comme argument optionnel *xbar* lors de l'appel de fonction pour éviter de " "la calculer une nouvelle fois :" -#: library/statistics.rst:501 +#: library/statistics.rst:502 msgid "" "This function does not attempt to verify that you have passed the actual " "mean as *xbar*. Using arbitrary values for *xbar* can lead to invalid or " @@ -834,11 +835,11 @@ msgstr "" "correspond bien à la moyenne. Utiliser des valeurs arbitraires pour *xbar* " "produit des résultats impossibles ou incorrects." -#: library/statistics.rst:505 +#: library/statistics.rst:506 msgid "Decimal and Fraction values are supported:" msgstr "La fonction gère les nombres décimaux et les fractions :" -#: library/statistics.rst:519 +#: library/statistics.rst:520 msgid "" "This is the sample variance s² with Bessel's correction, also known as " "variance with N-1 degrees of freedom. Provided that the data points are " @@ -851,7 +852,7 @@ msgstr "" "identiquement distribuées), alors le résultat est une estimation non biaisée " "de la variance." -#: library/statistics.rst:524 +#: library/statistics.rst:525 msgid "" "If you somehow know the actual population mean μ you should pass it to the :" "func:`pvariance` function as the *mu* parameter to get the variance of a " @@ -861,7 +862,7 @@ msgstr "" "devriez la passer à :func:`pvariance` comme paramètre *mu* pour obtenir la " "variance de l'échantillon." -#: library/statistics.rst:530 +#: library/statistics.rst:531 msgid "" "Divide *data* into *n* continuous intervals with equal probability. Returns " "a list of ``n - 1`` cut points separating the intervals." @@ -869,7 +870,7 @@ msgstr "" "Divise *data* en *n* intervalles réels de même probabilité. Renvoie une " "liste de ``n - 1`` valeurs délimitant les intervalles (les quantiles)." -#: library/statistics.rst:533 +#: library/statistics.rst:534 msgid "" "Set *n* to 4 for quartiles (the default). Set *n* to 10 for deciles. Set " "*n* to 100 for percentiles which gives the 99 cuts points that separate " @@ -881,7 +882,7 @@ msgstr "" "99 valeurs qui séparent *data* en 100 groupes de même taille). Lève une " "erreur :exc:`StatisticsError` si *n* est strictement inférieur à 1." -#: library/statistics.rst:538 +#: library/statistics.rst:539 msgid "" "The *data* can be any iterable containing sample data. For meaningful " "results, the number of data points in *data* should be larger than *n*. " @@ -892,7 +893,7 @@ msgstr "" "d'observations dans l'échantillon *data* doit être plus grand que *n*. Lève " "une erreur :exc:`StatisticsError` s'il n'y a pas au moins deux observations." -#: library/statistics.rst:542 +#: library/statistics.rst:543 msgid "" "The cut points are linearly interpolated from the two nearest data points. " "For example, if a cut point falls one-third of the distance between two " @@ -903,7 +904,7 @@ msgstr "" "tiers de la distance entre les deux valeurs de l'échantillon ``100`` et " "``112``, le quantile vaudra ``104``." -#: library/statistics.rst:547 +#: library/statistics.rst:548 msgid "" "The *method* for computing quantiles can be varied depending on whether the " "*data* includes or excludes the lowest and highest possible values from the " @@ -913,7 +914,7 @@ msgstr "" "quantiles et peut être modifié pour spécifier s'il faut inclure ou exclure " "les valeurs basses et hautes de *data* de la population." -#: library/statistics.rst:551 +#: library/statistics.rst:552 msgid "" "The default *method* is \"exclusive\" and is used for data sampled from a " "population that can have more extreme values than found in the samples. The " @@ -931,7 +932,7 @@ msgstr "" "valeurs dans l'échantillon, cette méthode les ordonne et leur associe les " "quantiles suivants : 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%." -#: library/statistics.rst:558 +#: library/statistics.rst:559 msgid "" "Setting the *method* to \"inclusive\" is used for describing population data " "or for samples that are known to include the most extreme values from the " @@ -952,19 +953,19 @@ msgstr "" "l'échantillon, cette méthode les ordonne et leur associe les quantiles " "suivants : 0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%, 100%." -#: library/statistics.rst:582 +#: library/statistics.rst:583 msgid "" "Return the sample covariance of two inputs *x* and *y*. Covariance is a " "measure of the joint variability of two inputs." msgstr "" -#: library/statistics.rst:585 +#: library/statistics.rst:586 msgid "" "Both inputs must be of the same length (no less than two), otherwise :exc:" "`StatisticsError` is raised." msgstr "" -#: library/statistics.rst:606 +#: library/statistics.rst:607 msgid "" "Return the `Pearson's correlation coefficient `_ for two inputs. Pearson's correlation " @@ -974,13 +975,13 @@ msgid "" "linear relationship." msgstr "" -#: library/statistics.rst:613 +#: library/statistics.rst:614 msgid "" "Both inputs must be of the same length (no less than two), and need not to " "be constant, otherwise :exc:`StatisticsError` is raised." msgstr "" -#: library/statistics.rst:631 +#: library/statistics.rst:632 msgid "" "Return the slope and intercept of `simple linear regression `_ parameters estimated using " @@ -989,11 +990,11 @@ msgid "" "this linear function:" msgstr "" -#: library/statistics.rst:637 +#: library/statistics.rst:638 msgid "*y = slope \\* x + intercept + noise*" msgstr "" -#: library/statistics.rst:639 +#: library/statistics.rst:640 msgid "" "where ``slope`` and ``intercept`` are the regression parameters that are " "estimated, and ``noise`` represents the variability of the data that was not " @@ -1001,14 +1002,14 @@ msgid "" "predicted and actual values of the dependent variable)." msgstr "" -#: library/statistics.rst:645 +#: library/statistics.rst:646 msgid "" "Both inputs must be of the same length (no less than two), and the " "independent variable *x* cannot be constant; otherwise a :exc:" "`StatisticsError` is raised." msgstr "" -#: library/statistics.rst:649 +#: library/statistics.rst:650 msgid "" "For example, we can use the `release dates of the Monty Python films " "`_ to predict the " @@ -1016,24 +1017,24 @@ msgid "" "2019 assuming that they had kept the pace." msgstr "" -#: library/statistics.rst:667 +#: library/statistics.rst:668 msgid "Exceptions" msgstr "Exceptions" -#: library/statistics.rst:669 +#: library/statistics.rst:670 msgid "A single exception is defined:" msgstr "Une seule exception est définie :" -#: library/statistics.rst:673 +#: library/statistics.rst:674 msgid "Subclass of :exc:`ValueError` for statistics-related exceptions." msgstr "" "Sous-classe de :exc:`ValueError` pour les exceptions liées aux statistiques." -#: library/statistics.rst:677 +#: library/statistics.rst:678 msgid ":class:`NormalDist` objects" msgstr "Objets :class:`NormalDist`" -#: library/statistics.rst:679 +#: library/statistics.rst:680 msgid "" ":class:`NormalDist` is a tool for creating and manipulating normal " "distributions of a `random variable `_. Cette classe gère la moyenne et l'écart-type d'un ensemble " "d'observations comme une seule entité." -#: library/statistics.rst:685 +#: library/statistics.rst:686 msgid "" "Normal distributions arise from the `Central Limit Theorem `_ and have a wide range of " @@ -1055,7 +1056,7 @@ msgstr "" "statistiques. Leur ubiquité découle du `théorème central limite `." -#: library/statistics.rst:691 +#: library/statistics.rst:692 msgid "" "Returns a new *NormalDist* object where *mu* represents the `arithmetic mean " "`_ and *sigma* represents the " @@ -1065,11 +1066,11 @@ msgstr "" "arithmétique `_ et " "*sigma* `l'écart-type `_." -#: library/statistics.rst:696 +#: library/statistics.rst:697 msgid "If *sigma* is negative, raises :exc:`StatisticsError`." msgstr "Lève une erreur :exc:`StatisticsError` si *sigma* est négatif." -#: library/statistics.rst:700 +#: library/statistics.rst:701 msgid "" "A read-only property for the `arithmetic mean `_ of a normal distribution." @@ -1077,7 +1078,7 @@ msgstr "" "Attribut en lecture seule correspondant à la `moyenne arithmétique `_ d'une loi normale." -#: library/statistics.rst:706 +#: library/statistics.rst:707 msgid "" "A read-only property for the `median `_ of a normal distribution." @@ -1085,7 +1086,7 @@ msgstr "" "Attribut en lecture seule correspondant à la `médiane `_ d'une loi normale." -#: library/statistics.rst:712 +#: library/statistics.rst:713 msgid "" "A read-only property for the `mode `_ of a normal distribution." @@ -1093,7 +1094,7 @@ msgstr "" "Attribut en lecture seule correspondant au `mode `_ d'une loi normale." -#: library/statistics.rst:718 +#: library/statistics.rst:719 msgid "" "A read-only property for the `standard deviation `_ of a normal distribution." @@ -1101,7 +1102,7 @@ msgstr "" "Attribut en lecture seule correspondant à `l'écart-type `_ d'une loi normale." -#: library/statistics.rst:724 +#: library/statistics.rst:725 msgid "" "A read-only property for the `variance `_ of a normal distribution. Equal to the square of the standard " @@ -1111,7 +1112,7 @@ msgstr "" "org/wiki/Variance>`_ d'une loi normale. La variance est égale au carré de " "l'écart-type." -#: library/statistics.rst:730 +#: library/statistics.rst:731 msgid "" "Makes a normal distribution instance with *mu* and *sigma* parameters " "estimated from the *data* using :func:`fmean` and :func:`stdev`." @@ -1119,7 +1120,7 @@ msgstr "" "Crée une instance de loi normale de paramètres *mu* et *sigma* estimés à " "partir de *data* en utilisant :func:`fmean` et :func:`stdev`." -#: library/statistics.rst:733 +#: library/statistics.rst:734 msgid "" "The *data* can be any :term:`iterable` and should consist of values that can " "be converted to type :class:`float`. If *data* does not contain at least " @@ -1132,7 +1133,7 @@ msgstr "" "*data* ne contient pas au moins deux éléments car il faut au moins un point " "pour estimer la moyenne et deux points pour estimer la variance." -#: library/statistics.rst:741 +#: library/statistics.rst:742 msgid "" "Generates *n* random samples for a given mean and standard deviation. " "Returns a :class:`list` of :class:`float` values." @@ -1140,7 +1141,7 @@ msgstr "" "Génère *n* valeurs aléatoires suivant une loi normale de moyenne et écart-" "type connus. Renvoie une :class:`list` de :class:`float`." -#: library/statistics.rst:744 +#: library/statistics.rst:745 msgid "" "If *seed* is given, creates a new instance of the underlying random number " "generator. This is useful for creating reproducible results, even in a " @@ -1151,7 +1152,7 @@ msgstr "" "résultats reproductibles même dans un contexte de parallélisme par fils " "d'exécution." -#: library/statistics.rst:750 +#: library/statistics.rst:751 msgid "" "Using a `probability density function (pdf) `_, compute the relative likelihood that a " @@ -1164,7 +1165,7 @@ msgstr "" "correspond à la limite de la fraction ``P(x <= X < x + dx) / dx`` lorsque " "``dx`` tend vers zéro." -#: library/statistics.rst:756 +#: library/statistics.rst:757 msgid "" "The relative likelihood is computed as the probability of a sample occurring " "in a narrow range divided by the width of the range (hence the word \"density" @@ -1176,7 +1177,7 @@ msgstr "" "l'intervalle (d'où l'appellation « densité »). La vraisemblance étant " "relative aux autres points, sa valeur peut être supérieure à 1,0." -#: library/statistics.rst:763 +#: library/statistics.rst:764 msgid "" "Using a `cumulative distribution function (cdf) `_, compute the probability that a " @@ -1188,7 +1189,7 @@ msgstr "" "org/wiki/Fonction_de_r%C3%A9partition>`_. Mathématiquement, cela correspond " "à ``P(X <= x)``." -#: library/statistics.rst:770 +#: library/statistics.rst:771 msgid "" "Compute the inverse cumulative distribution function, also known as the " "`quantile function `_ or " @@ -1200,7 +1201,7 @@ msgstr "" "quantile `_. " "Mathématiquement, il s'agit de ``x : P(X <= x) = p``." -#: library/statistics.rst:776 +#: library/statistics.rst:777 msgid "" "Finds the value *x* of the random variable *X* such that the probability of " "the variable being less than or equal to that value equals the given " @@ -1210,7 +1211,7 @@ msgstr "" "probabilité que la variable soit inférieure ou égale à cette valeur *x* est " "égale à *p*." -#: library/statistics.rst:782 +#: library/statistics.rst:783 msgid "" "Measures the agreement between two normal probability distributions. Returns " "a value between 0.0 and 1.0 giving `the overlapping area for the two " @@ -1220,7 +1221,7 @@ msgstr "" "entre 0 et 1 indiquant `l'aire du recouvrement de deux densités de " "probabilité `_." -#: library/statistics.rst:789 +#: library/statistics.rst:790 msgid "" "Divide the normal distribution into *n* continuous intervals with equal " "probability. Returns a list of (n - 1) cut points separating the intervals." @@ -1228,7 +1229,7 @@ msgstr "" "Divise la loi normale entre *n* intervalles réels équiprobables. Renvoie une " "liste de ``(n - 1)`` quantiles séparant les intervalles." -#: library/statistics.rst:793 +#: library/statistics.rst:794 msgid "" "Set *n* to 4 for quartiles (the default). Set *n* to 10 for deciles. Set " "*n* to 100 for percentiles which gives the 99 cuts points that separate the " @@ -1238,7 +1239,7 @@ msgstr "" "obtenir les déciles et ``n = 100`` pour obtenir les centiles (ce qui produit " "99 valeurs qui séparent *data* en 100 groupes de même taille)." -#: library/statistics.rst:799 +#: library/statistics.rst:800 msgid "" "Compute the `Standard Score `_ describing *x* in terms of the number of standard " @@ -1246,7 +1247,7 @@ msgid "" "mean) / stdev``." msgstr "" -#: library/statistics.rst:807 +#: library/statistics.rst:808 msgid "" "Instances of :class:`NormalDist` support addition, subtraction, " "multiplication and division by a constant. These operations are used for " @@ -1257,7 +1258,7 @@ msgstr "" "opérations peuvent être utilisées pour la translation ou la mise à " "l'échelle, par exemple :" -#: library/statistics.rst:817 +#: library/statistics.rst:818 msgid "" "Dividing a constant by an instance of :class:`NormalDist` is not supported " "because the result wouldn't be normally distributed." @@ -1265,7 +1266,7 @@ msgstr "" "Diviser une constante par une instance de :class:`NormalDist` n'est pas pris " "en charge car le résultat ne serait pas une loi normale." -#: library/statistics.rst:820 +#: library/statistics.rst:821 msgid "" "Since normal distributions arise from additive effects of independent " "variables, it is possible to `add and subtract two independent normally " @@ -1279,17 +1280,17 @@ msgstr "" "Sum_of_normally_distributed_random_variables>`_ représentées par des " "instances de :class:`NormalDist`. Par exemple :" -#: library/statistics.rst:840 +#: library/statistics.rst:841 msgid ":class:`NormalDist` Examples and Recipes" msgstr "Exemples d'utilisation de :class:`NormalDist`" -#: library/statistics.rst:842 +#: library/statistics.rst:843 msgid ":class:`NormalDist` readily solves classic probability problems." msgstr "" ":class:`NormalDist` permet de résoudre aisément des problèmes probabilistes " "classiques." -#: library/statistics.rst:844 +#: library/statistics.rst:845 msgid "" "For example, given `historical data for SAT exams `_ showing that scores are " @@ -1302,7 +1303,7 @@ msgstr "" "moyenne 1060 et d'écart-type 195, déterminer le pourcentage d'étudiants dont " "les scores se situent entre 1100 et 1200, arrondi à l'entier le plus proche :" -#: library/statistics.rst:857 +#: library/statistics.rst:858 msgid "" "Find the `quartiles `_ and `deciles " "`_ for the SAT scores:" @@ -1310,7 +1311,7 @@ msgstr "" "Déterminer les `quartiles `_ et les " "`déciles `_ des scores SAT :" -#: library/statistics.rst:867 +#: library/statistics.rst:868 msgid "" "To estimate the distribution for a model than isn't easy to solve " "analytically, :class:`NormalDist` can generate input samples for a `Monte " @@ -1321,7 +1322,7 @@ msgstr "" "%C3%A9thode_de_Monte-Carlo>`_ afin d'estimer la distribution d'un modèle " "difficile à résoudre analytiquement :" -#: library/statistics.rst:883 +#: library/statistics.rst:884 msgid "" "Normal distributions can be used to approximate `Binomial distributions " "`_ when the sample " @@ -1332,7 +1333,7 @@ msgstr "" "d'observations est grand et que la probabilité de succès de l'épreuve est " "proche de 50%." -#: library/statistics.rst:888 +#: library/statistics.rst:889 msgid "" "For example, an open source conference has 750 attendees and two rooms with " "a 500 person capacity. There is a talk about Python and another about Ruby. " @@ -1348,11 +1349,11 @@ msgstr "" "les préférences de la population n'ont pas changé, quelle est la probabilité " "que la salle Python reste en-dessous de sa capacité d'accueil ?" -#: library/statistics.rst:919 +#: library/statistics.rst:920 msgid "Normal distributions commonly arise in machine learning problems." msgstr "Les lois normales interviennent souvent en apprentissage automatique." -#: library/statistics.rst:921 +#: library/statistics.rst:922 msgid "" "Wikipedia has a `nice example of a Naive Bayesian Classifier `_. The " @@ -1365,7 +1366,7 @@ msgstr "" "d'une personne à partir de caractéristiques physiques qui suivent une loi " "normale, telles que la hauteur, le poids et la pointure." -#: library/statistics.rst:926 +#: library/statistics.rst:927 msgid "" "We're given a training dataset with measurements for eight people. The " "measurements are assumed to be normally distributed, so we summarize the " @@ -1376,7 +1377,7 @@ msgstr "" "normale. Nous pouvons donc synthétiser les données à l'aide de :class:" "`NormalDist` :" -#: library/statistics.rst:939 +#: library/statistics.rst:940 msgid "" "Next, we encounter a new person whose feature measurements are known but " "whose gender is unknown:" @@ -1384,7 +1385,7 @@ msgstr "" "Ensuite, nous rencontrons un nouvel individu dont nous connaissons les " "proportions mais pas le sexe :" -#: library/statistics.rst:948 +#: library/statistics.rst:949 msgid "" "Starting with a 50% `prior probability `_ of being male or female, we compute the posterior as " @@ -1397,7 +1398,7 @@ msgstr "" "antérieure et de la vraisemblance des différentes mesures étant donné le " "sexe :" -#: library/statistics.rst:963 +#: library/statistics.rst:964 msgid "" "The final prediction goes to the largest posterior. This is known as the " "`maximum a posteriori \n" "Language-Team: FRENCH \n" @@ -127,17 +127,17 @@ msgstr "" msgid "These are the Boolean operations, ordered by ascending priority:" msgstr "Ce sont les opérations booléennes, classées par priorité ascendante :" -#: library/stdtypes.rst:143 library/stdtypes.rst:363 library/stdtypes.rst:882 -#: library/stdtypes.rst:1077 +#: library/stdtypes.rst:143 library/stdtypes.rst:364 library/stdtypes.rst:883 +#: library/stdtypes.rst:1078 msgid "Operation" msgstr "Opération" -#: library/stdtypes.rst:274 library/stdtypes.rst:413 library/stdtypes.rst:1077 +#: library/stdtypes.rst:275 library/stdtypes.rst:414 library/stdtypes.rst:1078 msgid "Result" msgstr "Résultat" -#: library/stdtypes.rst:274 library/stdtypes.rst:882 library/stdtypes.rst:2309 -#: library/stdtypes.rst:3530 +#: library/stdtypes.rst:275 library/stdtypes.rst:883 library/stdtypes.rst:2310 +#: library/stdtypes.rst:3531 msgid "Notes" msgstr "Notes" @@ -149,8 +149,8 @@ msgstr "``x or y``" msgid "if *x* is false, then *y*, else *x*" msgstr "si *x* est faux, alors *y*, sinon *x*" -#: library/stdtypes.rst:284 library/stdtypes.rst:887 library/stdtypes.rst:2315 -#: library/stdtypes.rst:3536 +#: library/stdtypes.rst:285 library/stdtypes.rst:888 library/stdtypes.rst:2316 +#: library/stdtypes.rst:3537 msgid "\\(1)" msgstr "\\(1)" @@ -162,8 +162,8 @@ msgstr "``x and y``" msgid "if *x* is false, then *x*, else *y*" msgstr "si *x* est faux, alors *x*, sinon *y*" -#: library/stdtypes.rst:287 library/stdtypes.rst:1116 library/stdtypes.rst:2321 -#: library/stdtypes.rst:3542 +#: library/stdtypes.rst:288 library/stdtypes.rst:1117 library/stdtypes.rst:2322 +#: library/stdtypes.rst:3543 msgid "\\(2)" msgstr "\\(2)" @@ -175,14 +175,14 @@ msgstr "``not x``" msgid "if *x* is false, then ``True``, else ``False``" msgstr "si *x* est faux, alors ``True``, sinon ``False``" -#: library/stdtypes.rst:896 library/stdtypes.rst:2323 library/stdtypes.rst:2327 -#: library/stdtypes.rst:3544 library/stdtypes.rst:3548 -#: library/stdtypes.rst:3550 +#: library/stdtypes.rst:897 library/stdtypes.rst:2324 library/stdtypes.rst:2328 +#: library/stdtypes.rst:3545 library/stdtypes.rst:3549 +#: library/stdtypes.rst:3551 msgid "\\(3)" msgstr "\\(3)" -#: library/stdtypes.rst:318 library/stdtypes.rst:923 library/stdtypes.rst:2355 -#: library/stdtypes.rst:3580 +#: library/stdtypes.rst:319 library/stdtypes.rst:924 library/stdtypes.rst:2356 +#: library/stdtypes.rst:3581 msgid "Notes:" msgstr "Notes :" @@ -234,8 +234,8 @@ msgstr "" msgid "This table summarizes the comparison operations:" msgstr "Ce tableau résume les opérations de comparaison :" -#: library/stdtypes.rst:2286 library/stdtypes.rst:3507 -#: library/stdtypes.rst:3530 +#: library/stdtypes.rst:2287 library/stdtypes.rst:3508 +#: library/stdtypes.rst:3531 msgid "Meaning" msgstr "Signification" @@ -321,20 +321,23 @@ msgstr "" "l'un des arguments est un nombre complexe." #: library/stdtypes.rst:180 +#, fuzzy msgid "" "Non-identical instances of a class normally compare as non-equal unless the " -"class defines the :meth:`__eq__` method." +"class defines the :meth:`~object.__eq__` method." msgstr "" "Des instances différentes d'une classe sont normalement considérées " "différentes à moins que la classe ne définisse la méthode :meth:`__eq__`." #: library/stdtypes.rst:183 +#, fuzzy msgid "" "Instances of a class cannot be ordered with respect to other instances of " "the same class, or other types of object, unless the class defines enough of " -"the methods :meth:`__lt__`, :meth:`__le__`, :meth:`__gt__`, and :meth:" -"`__ge__` (in general, :meth:`__lt__` and :meth:`__eq__` are sufficient, if " -"you want the conventional meanings of the comparison operators)." +"the methods :meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:`~object." +"__gt__`, and :meth:`~object.__ge__` (in general, :meth:`~object.__lt__` and :" +"meth:`~object.__eq__` are sufficient, if you want the conventional meanings " +"of the comparison operators)." msgstr "" "Les instances d'une classe ne peuvent pas être ordonnées par rapport à " "d'autres instances de la même classe, ou d'autres types d'objets, à moins " @@ -343,7 +346,7 @@ msgstr "" "et :meth:`__eq__` sont suffisantes, si vous voulez les significations " "classiques des opérateurs de comparaison)." -#: library/stdtypes.rst:189 +#: library/stdtypes.rst:190 msgid "" "The behavior of the :keyword:`is` and :keyword:`is not` operators cannot be " "customized; also they can be applied to any two objects and never raise an " @@ -353,7 +356,7 @@ msgstr "" "pas être personnalisé ; aussi ils peuvent être appliqués à deux objets " "quelconques et ne lèvent jamais d'exception." -#: library/stdtypes.rst:197 +#: library/stdtypes.rst:198 msgid "" "Two more operations with the same syntactic priority, :keyword:`in` and :" "keyword:`not in`, are supported by types that are :term:`iterable` or " @@ -363,11 +366,11 @@ msgstr "" "keyword:`not in`, sont pris en charge par les types :term:`itérables " "` ou qui implémentent la méthode :meth:`__contains__`." -#: library/stdtypes.rst:204 +#: library/stdtypes.rst:205 msgid "Numeric Types --- :class:`int`, :class:`float`, :class:`complex`" msgstr "Types numériques — :class:`int`, :class:`float`, :class:`complex`" -#: library/stdtypes.rst:214 +#: library/stdtypes.rst:215 msgid "" "There are three distinct numeric types: :dfn:`integers`, :dfn:`floating " "point numbers`, and :dfn:`complex numbers`. In addition, Booleans are a " @@ -396,7 +399,7 @@ msgstr "" "les rationnels et :mod:`decimal.Decimal` pour les nombres à virgule " "flottante avec une précision définissable par l'utilisateur.)" -#: library/stdtypes.rst:236 +#: library/stdtypes.rst:237 msgid "" "Numbers are created by numeric literals or as the result of built-in " "functions and operators. Unadorned integer literals (including hex, octal " @@ -415,7 +418,7 @@ msgstr "" "pouvez ajouter à un nombre entier ou un à virgule flottante pour obtenir un " "nombre complexe avec une partie réelle et une partie imaginaire." -#: library/stdtypes.rst:261 +#: library/stdtypes.rst:262 msgid "" "Python fully supports mixed arithmetic: when a binary arithmetic operator " "has operands of different numeric types, the operand with the \"narrower\" " @@ -432,7 +435,7 @@ msgstr "" "des nombres de types différents se comporte comme si les valeurs exactes de " "ces nombres étaient comparées. [2]_" -#: library/stdtypes.rst:267 +#: library/stdtypes.rst:268 msgid "" "The constructors :func:`int`, :func:`float`, and :func:`complex` can be used " "to produce numbers of a specific type." @@ -440,7 +443,7 @@ msgstr "" "Les constructeurs :func:`int`, :func:`float`, et :func:`complex` peuvent " "être utilisés pour produire des nombres d'un type numérique spécifique." -#: library/stdtypes.rst:270 +#: library/stdtypes.rst:271 msgid "" "All numeric types (except complex) support the following operations (for " "priorities of the operations, see :ref:`operator-summary`):" @@ -448,123 +451,123 @@ msgstr "" "Tous les types numériques (sauf complexe) gèrent les opérations suivantes " "(pour les priorités des opérations, voir :ref:`operator-summary`) :" -#: library/stdtypes.rst:274 +#: library/stdtypes.rst:275 msgid "Full documentation" msgstr "Documentation complète" -#: library/stdtypes.rst:276 +#: library/stdtypes.rst:277 msgid "``x + y``" msgstr "``x + y``" -#: library/stdtypes.rst:276 +#: library/stdtypes.rst:277 msgid "sum of *x* and *y*" msgstr "somme de *x* et *y*" -#: library/stdtypes.rst:278 +#: library/stdtypes.rst:279 msgid "``x - y``" msgstr "``x - y``" -#: library/stdtypes.rst:278 +#: library/stdtypes.rst:279 msgid "difference of *x* and *y*" msgstr "différence de *x* et *y*" -#: library/stdtypes.rst:280 +#: library/stdtypes.rst:281 msgid "``x * y``" msgstr "``x * y``" -#: library/stdtypes.rst:280 +#: library/stdtypes.rst:281 msgid "product of *x* and *y*" msgstr "produit de *x* et *y*" -#: library/stdtypes.rst:282 +#: library/stdtypes.rst:283 msgid "``x / y``" msgstr "``x / y``" -#: library/stdtypes.rst:282 +#: library/stdtypes.rst:283 msgid "quotient of *x* and *y*" msgstr "quotient de *x* et *y*" -#: library/stdtypes.rst:284 +#: library/stdtypes.rst:285 msgid "``x // y``" msgstr "``x // y``" -#: library/stdtypes.rst:284 +#: library/stdtypes.rst:285 msgid "floored quotient of *x* and *y*" msgstr "quotient entier de *x* et *y*" -#: library/stdtypes.rst:287 +#: library/stdtypes.rst:288 msgid "``x % y``" msgstr "``x % y``" -#: library/stdtypes.rst:287 +#: library/stdtypes.rst:288 msgid "remainder of ``x / y``" msgstr "reste de ``x / y``" -#: library/stdtypes.rst:289 +#: library/stdtypes.rst:290 msgid "``-x``" msgstr "``-x``" -#: library/stdtypes.rst:289 +#: library/stdtypes.rst:290 msgid "*x* negated" msgstr "négatif de *x*" -#: library/stdtypes.rst:291 +#: library/stdtypes.rst:292 msgid "``+x``" msgstr "``+x``" -#: library/stdtypes.rst:291 +#: library/stdtypes.rst:292 msgid "*x* unchanged" msgstr "*x* inchangé" -#: library/stdtypes.rst:293 +#: library/stdtypes.rst:294 msgid "``abs(x)``" msgstr "``abs(x)``" -#: library/stdtypes.rst:293 +#: library/stdtypes.rst:294 msgid "absolute value or magnitude of *x*" msgstr "valeur absolue de *x*" -#: library/stdtypes.rst:293 +#: library/stdtypes.rst:294 msgid ":func:`abs`" msgstr ":func:`abs`" -#: library/stdtypes.rst:296 +#: library/stdtypes.rst:297 msgid "``int(x)``" msgstr "``int(x)``" -#: library/stdtypes.rst:296 +#: library/stdtypes.rst:297 msgid "*x* converted to integer" msgstr "*x* converti en nombre entier" -#: library/stdtypes.rst:296 +#: library/stdtypes.rst:297 msgid "\\(3)\\(6)" msgstr "\\(3)\\(6)" -#: library/stdtypes.rst:296 +#: library/stdtypes.rst:297 msgid ":func:`int`" msgstr ":func:`int`" -#: library/stdtypes.rst:298 +#: library/stdtypes.rst:299 msgid "``float(x)``" msgstr "``float(x)``" -#: library/stdtypes.rst:298 +#: library/stdtypes.rst:299 msgid "*x* converted to floating point" msgstr "*x* converti en nombre à virgule flottante" -#: library/stdtypes.rst:298 +#: library/stdtypes.rst:299 msgid "\\(4)\\(6)" msgstr "\\(4)\\(6)" -#: library/stdtypes.rst:298 +#: library/stdtypes.rst:299 msgid ":func:`float`" msgstr ":func:`float`" -#: library/stdtypes.rst:300 +#: library/stdtypes.rst:301 msgid "``complex(re, im)``" msgstr "``complex(re, im)``" -#: library/stdtypes.rst:300 +#: library/stdtypes.rst:301 msgid "" "a complex number with real part *re*, imaginary part *im*. *im* defaults to " "zero." @@ -572,56 +575,56 @@ msgstr "" "un nombre complexe avec *re* pour partie réelle et *im* pour partie " "imaginaire. *im* vaut zéro par défaut." -#: library/stdtypes.rst:1109 library/stdtypes.rst:3567 +#: library/stdtypes.rst:1110 library/stdtypes.rst:3568 msgid "\\(6)" msgstr "\\(6)" -#: library/stdtypes.rst:300 +#: library/stdtypes.rst:301 msgid ":func:`complex`" msgstr ":func:`complex`" -#: library/stdtypes.rst:304 +#: library/stdtypes.rst:305 msgid "``c.conjugate()``" msgstr "``c.conjugate()``" -#: library/stdtypes.rst:304 +#: library/stdtypes.rst:305 msgid "conjugate of the complex number *c*" msgstr "conjugué du nombre complexe *c*" -#: library/stdtypes.rst:307 +#: library/stdtypes.rst:308 msgid "``divmod(x, y)``" msgstr "``divmod(x, y)``" -#: library/stdtypes.rst:307 +#: library/stdtypes.rst:308 msgid "the pair ``(x // y, x % y)``" msgstr "la paire ``(x // y, x % y)``" -#: library/stdtypes.rst:307 +#: library/stdtypes.rst:308 msgid ":func:`divmod`" msgstr ":func:`divmod`" -#: library/stdtypes.rst:309 +#: library/stdtypes.rst:310 msgid "``pow(x, y)``" msgstr "``pow(x, y)``" -#: library/stdtypes.rst:311 +#: library/stdtypes.rst:312 msgid "*x* to the power *y*" msgstr "*x* à la puissance *y*" -#: library/stdtypes.rst:311 library/stdtypes.rst:1101 library/stdtypes.rst:2345 -#: library/stdtypes.rst:3563 library/stdtypes.rst:3570 +#: library/stdtypes.rst:312 library/stdtypes.rst:1102 library/stdtypes.rst:2346 +#: library/stdtypes.rst:3564 library/stdtypes.rst:3571 msgid "\\(5)" msgstr "\\(5)" -#: library/stdtypes.rst:309 +#: library/stdtypes.rst:310 msgid ":func:`pow`" msgstr ":func:`pow`" -#: library/stdtypes.rst:311 +#: library/stdtypes.rst:312 msgid "``x ** y``" msgstr "``x ** y``" -#: library/stdtypes.rst:321 +#: library/stdtypes.rst:322 msgid "" "Also referred to as integer division. The resultant value is a whole " "integer, though the result's type is not necessarily int. The result is " @@ -634,7 +637,7 @@ msgstr "" "``(-1)//2`` vaut ``-1``, ``1//(-2)`` vaut ``-1``, et ``(-1)//(-2)`` vaut " "``0``." -#: library/stdtypes.rst:327 +#: library/stdtypes.rst:328 msgid "" "Not for complex numbers. Instead convert to floats using :func:`abs` if " "appropriate." @@ -642,7 +645,7 @@ msgstr "" "Pas pour les nombres complexes. Convertissez-les plutôt en nombres flottants " "à l'aide de :func:`abs` si c'est approprié." -#: library/stdtypes.rst:339 +#: library/stdtypes.rst:340 msgid "" "Conversion from floating point to integer may round or truncate as in C; see " "functions :func:`math.floor` and :func:`math.ceil` for well-defined " @@ -652,7 +655,7 @@ msgstr "" "en C ; voir les fonctions :func:`math.floor` et :func:`math.ceil` pour des " "conversions bien définies." -#: library/stdtypes.rst:344 +#: library/stdtypes.rst:345 msgid "" "float also accepts the strings \"nan\" and \"inf\" with an optional prefix " "\"+\" or \"-\" for Not a Number (NaN) and positive or negative infinity." @@ -660,7 +663,7 @@ msgstr "" "*float* accepte aussi les chaînes *nan* et *inf* avec un préfixe optionnel ``" "+`` ou ``-`` pour *Not a Number* (*NaN*) et les infinis positif ou négatif." -#: library/stdtypes.rst:348 +#: library/stdtypes.rst:349 msgid "" "Python defines ``pow(0, 0)`` and ``0 ** 0`` to be ``1``, as is common for " "programming languages." @@ -668,7 +671,7 @@ msgstr "" "Python définit ``pow(0, 0)`` et ``0 ** 0`` valant ``1``, puisque c'est " "courant pour les langages de programmation, et logique." -#: library/stdtypes.rst:352 +#: library/stdtypes.rst:353 msgid "" "The numeric literals accepted include the digits ``0`` to ``9`` or any " "Unicode equivalent (code points with the ``Nd`` property)." @@ -676,7 +679,7 @@ msgstr "" "Les littéraux numériques acceptés comprennent les chiffres ``0`` à ``9`` ou " "tout équivalent Unicode (caractères avec la propriété ``Nd``)." -#: library/stdtypes.rst:355 +#: library/stdtypes.rst:356 #, fuzzy msgid "" "See https://www.unicode.org/Public/13.0.0/ucd/extracted/DerivedNumericType." @@ -685,7 +688,7 @@ msgstr "" "Voir http://www.unicode.org/Public/12.1.0/ucd/extracted/DerivedNumericType." "txt pour une liste complète des caractères avec la propriété ``Nd``." -#: library/stdtypes.rst:359 +#: library/stdtypes.rst:360 msgid "" "All :class:`numbers.Real` types (:class:`int` and :class:`float`) also " "include the following operations:" @@ -693,19 +696,19 @@ msgstr "" "Tous types :class:`numbers.Real` (:class:`int` et :class:`float`) " "comprennent également les opérations suivantes :" -#: library/stdtypes.rst:365 +#: library/stdtypes.rst:366 msgid ":func:`math.trunc(\\ x) `" msgstr ":func:`math.trunc(\\ x) `" -#: library/stdtypes.rst:365 +#: library/stdtypes.rst:366 msgid "*x* truncated to :class:`~numbers.Integral`" msgstr "*x* tronqué à l':class:`~numbers.Integral`" -#: library/stdtypes.rst:368 +#: library/stdtypes.rst:369 msgid ":func:`round(x[, n]) `" msgstr ":func:`round(x[, n]) `" -#: library/stdtypes.rst:368 +#: library/stdtypes.rst:369 msgid "" "*x* rounded to *n* digits, rounding half to even. If *n* is omitted, it " "defaults to 0." @@ -713,23 +716,23 @@ msgstr "" "*x* arrondi à *n* chiffres, arrondissant la moitié au pair. Si *n* est omis, " "la valeur par défaut à 0." -#: library/stdtypes.rst:372 +#: library/stdtypes.rst:373 msgid ":func:`math.floor(\\ x) `" msgstr ":func:`math.floor(\\ x) `" -#: library/stdtypes.rst:372 +#: library/stdtypes.rst:373 msgid "the greatest :class:`~numbers.Integral` <= *x*" msgstr "le plus grand :class:`~numbers.Integral` <= *x*" -#: library/stdtypes.rst:375 +#: library/stdtypes.rst:376 msgid ":func:`math.ceil(x) `" msgstr ":func:`math.ceil(x) `" -#: library/stdtypes.rst:375 +#: library/stdtypes.rst:376 msgid "the least :class:`~numbers.Integral` >= *x*" msgstr "le plus petit :class:`~numbers.Integral` >= *x*" -#: library/stdtypes.rst:379 +#: library/stdtypes.rst:380 msgid "" "For additional numeric operations see the :mod:`math` and :mod:`cmath` " "modules." @@ -737,11 +740,11 @@ msgstr "" "Pour d'autres opérations numériques voir les modules :mod:`math` et :mod:" "`cmath`." -#: library/stdtypes.rst:388 +#: library/stdtypes.rst:389 msgid "Bitwise Operations on Integer Types" msgstr "Opérations sur les bits des nombres entiers" -#: library/stdtypes.rst:402 +#: library/stdtypes.rst:403 msgid "" "Bitwise operations only make sense for integers. The result of bitwise " "operations is calculated as though carried out in two's complement with an " @@ -751,7 +754,7 @@ msgstr "" "résultat d'une opération bit à bit est calculé comme si elle était effectuée " "en complément à deux avec un nombre infini de bits de signe." -#: library/stdtypes.rst:406 +#: library/stdtypes.rst:407 msgid "" "The priorities of the binary bitwise operations are all lower than the " "numeric operations and higher than the comparisons; the unary operation " @@ -763,81 +766,81 @@ msgstr "" "l'opération unaire ``~`` a la même priorité que les autres opérations " "numériques unaires (``+`` et ``-``)." -#: library/stdtypes.rst:410 +#: library/stdtypes.rst:411 msgid "This table lists the bitwise operations sorted in ascending priority:" msgstr "" "Ce tableau répertorie les opérations binaires triées par priorité " "ascendante :" -#: library/stdtypes.rst:415 +#: library/stdtypes.rst:416 msgid "``x | y``" msgstr "``x | y``" -#: library/stdtypes.rst:415 +#: library/stdtypes.rst:416 msgid "bitwise :dfn:`or` of *x* and *y*" msgstr ":dfn:`ou ` binaire de *x* et *y*" -#: library/stdtypes.rst:418 library/stdtypes.rst:1122 library/stdtypes.rst:2335 -#: library/stdtypes.rst:3556 +#: library/stdtypes.rst:419 library/stdtypes.rst:1123 library/stdtypes.rst:2336 +#: library/stdtypes.rst:3557 msgid "\\(4)" msgstr "\\(4)" -#: library/stdtypes.rst:418 +#: library/stdtypes.rst:419 msgid "``x ^ y``" msgstr "``x ^ y``" -#: library/stdtypes.rst:418 +#: library/stdtypes.rst:419 msgid "bitwise :dfn:`exclusive or` of *x* and *y*" msgstr ":dfn:`ou ` exclusive binaire de *x* et *y*" -#: library/stdtypes.rst:421 +#: library/stdtypes.rst:422 msgid "``x & y``" msgstr "``x & y``" -#: library/stdtypes.rst:421 +#: library/stdtypes.rst:422 msgid "bitwise :dfn:`and` of *x* and *y*" msgstr ":dfn:`et binaire ` de *x* et *y*" -#: library/stdtypes.rst:424 +#: library/stdtypes.rst:425 msgid "``x << n``" msgstr "``x << n``" -#: library/stdtypes.rst:424 +#: library/stdtypes.rst:425 msgid "*x* shifted left by *n* bits" msgstr "*x* décalé vers la gauche de *n* bits" -#: library/stdtypes.rst:424 +#: library/stdtypes.rst:425 msgid "(1)(2)" msgstr "(1)(2)" -#: library/stdtypes.rst:426 +#: library/stdtypes.rst:427 msgid "``x >> n``" msgstr "``x >> n``" -#: library/stdtypes.rst:426 +#: library/stdtypes.rst:427 msgid "*x* shifted right by *n* bits" msgstr "*x* décalé vers la droite de *n* bits" -#: library/stdtypes.rst:426 +#: library/stdtypes.rst:427 msgid "(1)(3)" msgstr "(1)(3)" -#: library/stdtypes.rst:428 +#: library/stdtypes.rst:429 msgid "``~x``" msgstr "``~x``" -#: library/stdtypes.rst:428 +#: library/stdtypes.rst:429 msgid "the bits of *x* inverted" msgstr "les bits de *x*, inversés" -#: library/stdtypes.rst:434 +#: library/stdtypes.rst:435 msgid "" "Negative shift counts are illegal and cause a :exc:`ValueError` to be raised." msgstr "" "Des valeurs de décalage négatives sont illégales et provoquent une " "exception :exc:`ValueError`." -#: library/stdtypes.rst:437 +#: library/stdtypes.rst:438 #, fuzzy msgid "" "A left shift by *n* bits is equivalent to multiplication by ``pow(2, n)``." @@ -845,7 +848,7 @@ msgstr "" "Un décalage à gauche de *n* bits est équivalent à la multiplication par " "``pow(2, n)`` sans vérification de débordement." -#: library/stdtypes.rst:440 +#: library/stdtypes.rst:441 #, fuzzy msgid "" "A right shift by *n* bits is equivalent to floor division by ``pow(2, n)``." @@ -853,7 +856,7 @@ msgstr "" "Un décalage à droite de *n* les bits est équivalent à la division par " "``pow(2, n)`` sans vérification de débordement." -#: library/stdtypes.rst:443 +#: library/stdtypes.rst:444 msgid "" "Performing these calculations with at least one extra sign extension bit in " "a finite two's complement representation (a working bit-width of ``1 + max(x." @@ -866,11 +869,11 @@ msgstr "" "bit_length()`` ou plus) est suffisante pour obtenir le même résultat que " "s'il y avait un nombre infini de bits de signe." -#: library/stdtypes.rst:450 +#: library/stdtypes.rst:451 msgid "Additional Methods on Integer Types" msgstr "Méthodes supplémentaires sur les entiers" -#: library/stdtypes.rst:452 +#: library/stdtypes.rst:453 msgid "" "The int type implements the :class:`numbers.Integral` :term:`abstract base " "class`. In addition, it provides a few more methods:" @@ -879,7 +882,7 @@ msgstr "" "class>` :class:`numbers.Integral`. Il fournit aussi quelques autres " "méthodes :" -#: library/stdtypes.rst:457 +#: library/stdtypes.rst:458 msgid "" "Return the number of bits necessary to represent an integer in binary, " "excluding the sign and leading zeros::" @@ -887,7 +890,7 @@ msgstr "" "Renvoie le nombre de bits nécessaires pour représenter un nombre entier en " "binaire, à l'exclusion du signe et des zéros non significatifs ::" -#: library/stdtypes.rst:466 +#: library/stdtypes.rst:467 msgid "" "More precisely, if ``x`` is nonzero, then ``x.bit_length()`` is the unique " "positive integer ``k`` such that ``2**(k-1) <= abs(x) < 2**k``. " @@ -901,21 +904,21 @@ msgstr "" "correctement arrondi, ``k = 1 + int(log(abs(x), 2))``. Si ``x`` est nul, " "alors ``x.bit_length()`` donne ``0``." -#: library/stdtypes.rst:495 +#: library/stdtypes.rst:496 msgid "Equivalent to::" msgstr "Équivalent à ::" -#: library/stdtypes.rst:483 +#: library/stdtypes.rst:484 msgid "" "Return the number of ones in the binary representation of the absolute value " "of the integer. This is also known as the population count. Example::" msgstr "" -#: library/stdtypes.rst:504 +#: library/stdtypes.rst:505 msgid "Return an array of bytes representing an integer." msgstr "Renvoie un tableau d'octets représentant un nombre entier." -#: library/stdtypes.rst:516 +#: library/stdtypes.rst:517 msgid "" "The integer is represented using *length* bytes. An :exc:`OverflowError` is " "raised if the integer is not representable with the given number of bytes." @@ -924,7 +927,7 @@ msgstr "" "`OverflowError` est levée s'il n'est pas possible de représenter l'entier " "avec le nombre d'octets donnés." -#: library/stdtypes.rst:552 +#: library/stdtypes.rst:553 msgid "" "The *byteorder* argument determines the byte order used to represent the " "integer. If *byteorder* is ``\"big\"``, the most significant byte is at the " @@ -940,7 +943,7 @@ msgstr "" "demander l'ordre natif des octets du système hôte, donnez :data:`sys." "byteorder` comme *byteorder*." -#: library/stdtypes.rst:527 +#: library/stdtypes.rst:528 msgid "" "The *signed* argument determines whether two's complement is used to " "represent the integer. If *signed* is ``False`` and a negative integer is " @@ -952,11 +955,11 @@ msgstr "" "négatif est donné, une exception :exc:`OverflowError` est levée. La valeur " "par défaut pour *signed* est ``False``." -#: library/stdtypes.rst:536 +#: library/stdtypes.rst:537 msgid "Return the integer represented by the given array of bytes." msgstr "Donne le nombre entier représenté par le tableau d'octets fourni." -#: library/stdtypes.rst:549 +#: library/stdtypes.rst:550 msgid "" "The argument *bytes* must either be a :term:`bytes-like object` or an " "iterable producing bytes." @@ -964,7 +967,7 @@ msgstr "" "L'argument *bytes* doit être soit un :term:`bytes-like object` soit un " "itérable produisant des *bytes*." -#: library/stdtypes.rst:559 +#: library/stdtypes.rst:560 msgid "" "The *signed* argument indicates whether two's complement is used to " "represent the integer." @@ -972,7 +975,7 @@ msgstr "" "L'argument *signed* indique si le complément à deux est utilisé pour " "représenter le nombre entier." -#: library/stdtypes.rst:566 +#: library/stdtypes.rst:567 msgid "" "Return a pair of integers whose ratio is exactly equal to the original " "integer and with a positive denominator. The integer ratio of integers " @@ -984,11 +987,11 @@ msgstr "" "entier (tous les nombres entiers) est cet entier au numérateur et ``1`` " "comme dénominateur." -#: library/stdtypes.rst:574 +#: library/stdtypes.rst:575 msgid "Additional Methods on Float" msgstr "Méthodes supplémentaires sur les nombres à virgule flottante" -#: library/stdtypes.rst:576 +#: library/stdtypes.rst:577 msgid "" "The float type implements the :class:`numbers.Real` :term:`abstract base " "class`. float also has the following additional methods." @@ -996,7 +999,7 @@ msgstr "" "Le type *float* implémente la :term:`classe de base abstraite ` :class:`numbers.Real` et a également les méthodes suivantes." -#: library/stdtypes.rst:581 +#: library/stdtypes.rst:582 msgid "" "Return a pair of integers whose ratio is exactly equal to the original float " "and with a positive denominator. Raises :exc:`OverflowError` on infinities " @@ -1006,7 +1009,7 @@ msgstr "" "nombre d'origine et avec un dénominateur positif. Lève :exc:`OverflowError` " "avec un infini et :exc:`ValueError` avec un NaN." -#: library/stdtypes.rst:588 +#: library/stdtypes.rst:589 msgid "" "Return ``True`` if the float instance is finite with integral value, and " "``False`` otherwise::" @@ -1014,7 +1017,7 @@ msgstr "" "Donne ``True`` si l'instance de *float* est finie avec une valeur entière, " "et ``False`` autrement ::" -#: library/stdtypes.rst:596 +#: library/stdtypes.rst:597 msgid "" "Two methods support conversion to and from hexadecimal strings. Since " "Python's floats are stored internally as binary numbers, converting a float " @@ -1031,7 +1034,7 @@ msgstr "" "nombres à virgule flottante. Cela peut être utile lors du débogage, et dans " "un travail numérique." -#: library/stdtypes.rst:607 +#: library/stdtypes.rst:608 msgid "" "Return a representation of a floating-point number as a hexadecimal string. " "For finite floating-point numbers, this representation will always include a " @@ -1042,7 +1045,7 @@ msgstr "" "représentation comprendra toujours un préfixe ``0x``, un suffixe ``p``, et " "un exposant." -#: library/stdtypes.rst:615 +#: library/stdtypes.rst:616 msgid "" "Class method to return the float represented by a hexadecimal string *s*. " "The string *s* may have leading and trailing whitespace." @@ -1051,7 +1054,7 @@ msgstr "" "caractères hexadécimale *s*. La chaîne *s* peut contenir des espaces avant " "et après le chiffre." -#: library/stdtypes.rst:620 +#: library/stdtypes.rst:621 msgid "" "Note that :meth:`float.hex` is an instance method, while :meth:`float." "fromhex` is a class method." @@ -1059,11 +1062,11 @@ msgstr "" "Notez que :meth:`float.hex` est une méthode d'instance, alors que :meth:" "`float.fromhex` est une méthode de classe." -#: library/stdtypes.rst:623 +#: library/stdtypes.rst:624 msgid "A hexadecimal string takes the form::" msgstr "Une chaîne hexadécimale prend la forme ::" -#: library/stdtypes.rst:627 +#: library/stdtypes.rst:628 msgid "" "where the optional ``sign`` may by either ``+`` or ``-``, ``integer`` and " "``fraction`` are strings of hexadecimal digits, and ``exponent`` is a " @@ -1087,7 +1090,7 @@ msgstr "" "chaînes hexadécimales produites en C via un format ``%a`` ou Java via " "``Double.toHexString`` sont acceptées par :meth:`float.fromhex`." -#: library/stdtypes.rst:640 +#: library/stdtypes.rst:641 msgid "" "Note that the exponent is written in decimal rather than hexadecimal, and " "that it gives the power of 2 by which to multiply the coefficient. For " @@ -1099,7 +1102,7 @@ msgstr "" "la chaîne hexadécimale ``0x3.a7p10`` représente le nombre à virgule " "flottante ``(3 + 10./16 + 7./16**2) *2.0**10``, ou ``3740.0`` ::" -#: library/stdtypes.rst:650 +#: library/stdtypes.rst:651 msgid "" "Applying the reverse conversion to ``3740.0`` gives a different hexadecimal " "string representing the same number::" @@ -1107,24 +1110,25 @@ msgstr "" "L'application de la conversion inverse à ``3740.0`` donne une chaîne " "hexadécimale différente représentant le même nombre ::" -#: library/stdtypes.rst:660 +#: library/stdtypes.rst:661 msgid "Hashing of numeric types" msgstr "Hachage des types numériques" -#: library/stdtypes.rst:662 +#: library/stdtypes.rst:663 +#, fuzzy msgid "" "For numbers ``x`` and ``y``, possibly of different types, it's a requirement " -"that ``hash(x) == hash(y)`` whenever ``x == y`` (see the :meth:`__hash__` " -"method documentation for more details). For ease of implementation and " -"efficiency across a variety of numeric types (including :class:`int`, :class:" -"`float`, :class:`decimal.Decimal` and :class:`fractions.Fraction`) Python's " -"hash for numeric types is based on a single mathematical function that's " -"defined for any rational number, and hence applies to all instances of :" -"class:`int` and :class:`fractions.Fraction`, and all finite instances of :" -"class:`float` and :class:`decimal.Decimal`. Essentially, this function is " -"given by reduction modulo ``P`` for a fixed prime ``P``. The value of ``P`` " -"is made available to Python as the :attr:`modulus` attribute of :data:`sys." -"hash_info`." +"that ``hash(x) == hash(y)`` whenever ``x == y`` (see the :meth:`~object." +"__hash__` method documentation for more details). For ease of " +"implementation and efficiency across a variety of numeric types (including :" +"class:`int`, :class:`float`, :class:`decimal.Decimal` and :class:`fractions." +"Fraction`) Python's hash for numeric types is based on a single mathematical " +"function that's defined for any rational number, and hence applies to all " +"instances of :class:`int` and :class:`fractions.Fraction`, and all finite " +"instances of :class:`float` and :class:`decimal.Decimal`. Essentially, this " +"function is given by reduction modulo ``P`` for a fixed prime ``P``. The " +"value of ``P`` is made available to Python as the :attr:`modulus` attribute " +"of :data:`sys.hash_info`." msgstr "" "Pour deux nombres égaux ``x`` et ``y`` (``x == y``), pouvant être de " "différents types, il est une requis que ``hash(x) == hash(y)`` (voir la " @@ -1139,7 +1143,7 @@ msgstr "" "réduction modulo ``P`` pour un nombre ``P`` premier fixe. La valeur de ``P`` " "est disponible comme attribut :attr:`modulus` de :data:`sys.hash_info`." -#: library/stdtypes.rst:677 +#: library/stdtypes.rst:678 msgid "" "Currently, the prime used is ``P = 2**31 - 1`` on machines with 32-bit C " "longs and ``P = 2**61 - 1`` on machines with 64-bit C longs." @@ -1148,11 +1152,11 @@ msgstr "" "dont les *longs* en C sont de 32 bits ``P = 2 ** 61 - 1`` sur des machines " "dont les *longs* en C font 64 bits." -#: library/stdtypes.rst:680 +#: library/stdtypes.rst:681 msgid "Here are the rules in detail:" msgstr "Voici les règles en détail :" -#: library/stdtypes.rst:682 +#: library/stdtypes.rst:683 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is not divisible " "by ``P``, define ``hash(x)`` as ``m * invmod(n, P) % P``, where ``invmod(n, " @@ -1162,7 +1166,7 @@ msgstr "" "divisible par ``P``, définir ``hash(x)`` comme ``m * invmod(n, P) % P``, où " "``invmod(n, P)`` donne l'inverse de ``n`` modulo ``P``." -#: library/stdtypes.rst:686 +#: library/stdtypes.rst:687 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is divisible by " "``P`` (but ``m`` is not) then ``n`` has no inverse modulo ``P`` and the rule " @@ -1174,7 +1178,7 @@ msgstr "" "``P`` et la règle ci-dessus n'est pas applicable ; dans ce cas définir " "``hash(x)`` comme étant la valeur de la constante ``sys.hash_info.inf``." -#: library/stdtypes.rst:691 +#: library/stdtypes.rst:692 msgid "" "If ``x = m / n`` is a negative rational number define ``hash(x)`` as ``-" "hash(-x)``. If the resulting hash is ``-1``, replace it with ``-2``." @@ -1182,7 +1186,7 @@ msgstr "" "Si ``x = m / n`` est un nombre rationnel négatif définir ``hash(x)`` comme " "``-hash(-x)``. Si le résultat est ``-1``, le remplacer par ``-2``." -#: library/stdtypes.rst:695 +#: library/stdtypes.rst:696 #, fuzzy msgid "" "The particular values ``sys.hash_info.inf`` and ``-sys.hash_info.inf`` are " @@ -1194,7 +1198,7 @@ msgstr "" "positif, l'infini négatif, ou *nans* (respectivement). (Tous les *nans* " "hachables ont la même valeur de hachage.)" -#: library/stdtypes.rst:699 +#: library/stdtypes.rst:700 msgid "" "For a :class:`complex` number ``z``, the hash values of the real and " "imaginary parts are combined by computing ``hash(z.real) + sys.hash_info." @@ -1209,7 +1213,7 @@ msgstr "" "2**(sys.hash_info.width - 1))``. Encore une fois, si le résultat est ``-1``, " "il est remplacé par ``-2``." -#: library/stdtypes.rst:707 +#: library/stdtypes.rst:708 msgid "" "To clarify the above rules, here's some example Python code, equivalent to " "the built-in hash, for computing the hash of a rational number, :class:" @@ -1219,11 +1223,11 @@ msgstr "" "Python, équivalent à la fonction de hachage native, pour calculer le hachage " "d'un nombre rationnel, d'un :class:`float`, ou d'un :class:`complex` ::" -#: library/stdtypes.rst:762 +#: library/stdtypes.rst:763 msgid "Iterator Types" msgstr "Les types itérateurs" -#: library/stdtypes.rst:770 +#: library/stdtypes.rst:771 msgid "" "Python supports a concept of iteration over containers. This is implemented " "using two distinct methods; these are used to allow user-defined classes to " @@ -1235,7 +1239,7 @@ msgstr "" "par l'utilisateur de devenir itérables. Les séquences, décrites plus bas en " "détail, supportent toujours les méthodes d'itération." -#: library/stdtypes.rst:775 +#: library/stdtypes.rst:776 #, fuzzy msgid "" "One method needs to be defined for container objects to provide :term:" @@ -1244,7 +1248,7 @@ msgstr "" "Une méthode doit être définie afin que les objets conteneurs supportent " "l'itération :" -#: library/stdtypes.rst:782 +#: library/stdtypes.rst:783 #, fuzzy msgid "" "Return an :term:`iterator` object. The object is required to support the " @@ -1265,7 +1269,7 @@ msgstr "" "correspond à l'attribut :c:member:`~PyTypeObject.tp_iter` de la structure du " "type des objets Python dans l'API Python/C." -#: library/stdtypes.rst:791 +#: library/stdtypes.rst:792 msgid "" "The iterator objects themselves are required to support the following two " "methods, which together form the :dfn:`iterator protocol`:" @@ -1273,7 +1277,7 @@ msgstr "" "Les itérateurs eux-mêmes doivent implémenter les deux méthodes suivantes, " "qui forment ensemble le :dfn:`protocole d'itérateur ` :" -#: library/stdtypes.rst:797 +#: library/stdtypes.rst:798 #, fuzzy msgid "" "Return the :term:`iterator` object itself. This is required to allow both " @@ -1287,7 +1291,7 @@ msgstr "" "l'attribut :c:member:`~PyTypeObject.tp_iter` de la structure des types des " "objets Python dans l'API Python/C." -#: library/stdtypes.rst:806 +#: library/stdtypes.rst:807 #, fuzzy msgid "" "Return the next item from the :term:`iterator`. If there are no further " @@ -1300,7 +1304,7 @@ msgstr "" "l'attribut :c:member:`PyTypeObject.tp_iternext` de la structure du type des " "objets Python dans l'API Python/C." -#: library/stdtypes.rst:811 +#: library/stdtypes.rst:812 msgid "" "Python defines several iterator objects to support iteration over general " "and specific sequence types, dictionaries, and other more specialized " @@ -1312,7 +1316,7 @@ msgstr "" "plus spécialisées. Les types spécifiques ne sont pas importants au-delà de " "leur implémentation du protocole d'itération." -#: library/stdtypes.rst:816 +#: library/stdtypes.rst:817 msgid "" "Once an iterator's :meth:`~iterator.__next__` method raises :exc:" "`StopIteration`, it must continue to do so on subsequent calls. " @@ -1323,11 +1327,11 @@ msgstr "" "Implémentations qui ne respectent pas cette propriété sont considérées " "cassées." -#: library/stdtypes.rst:824 +#: library/stdtypes.rst:825 msgid "Generator Types" msgstr "Types générateurs" -#: library/stdtypes.rst:826 +#: library/stdtypes.rst:827 msgid "" "Python's :term:`generator`\\s provide a convenient way to implement the " "iterator protocol. If a container object's :meth:`__iter__` method is " @@ -1344,11 +1348,11 @@ msgstr "" "générateurs peuvent être trouvés dans :ref:`la documentation de l'expression " "yield `." -#: library/stdtypes.rst:838 +#: library/stdtypes.rst:839 msgid "Sequence Types --- :class:`list`, :class:`tuple`, :class:`range`" msgstr "Types séquentiels — :class:`list`, :class:`tuple`, :class:`range`" -#: library/stdtypes.rst:840 +#: library/stdtypes.rst:841 msgid "" "There are three basic sequence types: lists, tuples, and range objects. " "Additional sequence types tailored for processing of :ref:`binary data " @@ -1361,11 +1365,11 @@ msgstr "" "` et :ref:`chaînes de caractères ` sont décrits dans des " "sections dédiées." -#: library/stdtypes.rst:849 +#: library/stdtypes.rst:850 msgid "Common Sequence Operations" msgstr "Opérations communes sur les séquences" -#: library/stdtypes.rst:853 +#: library/stdtypes.rst:854 msgid "" "The operations in the following table are supported by most sequence types, " "both mutable and immutable. The :class:`collections.abc.Sequence` ABC is " @@ -1377,7 +1381,7 @@ msgstr "" "class:`collections.abc.Sequence` est fournie pour aider à implémenter " "correctement ces opérations sur les types séquentiels personnalisés." -#: library/stdtypes.rst:858 +#: library/stdtypes.rst:859 msgid "" "This table lists the sequence operations sorted in ascending priority. In " "the table, *s* and *t* are sequences of the same type, *n*, *i*, *j* and *k* " @@ -1389,7 +1393,7 @@ msgstr "" "*n*, *i*, *j* et *k* sont des nombres entiers et *x* est un objet arbitraire " "qui répond à toutes les restrictions de type et de valeur imposée par *s*." -#: library/stdtypes.rst:863 +#: library/stdtypes.rst:864 msgid "" "The ``in`` and ``not in`` operations have the same priorities as the " "comparison operations. The ``+`` (concatenation) and ``*`` (repetition) " @@ -1401,107 +1405,107 @@ msgstr "" "(répétition) ont la même priorité que les opérations numériques " "correspondantes. [3]_" -#: library/stdtypes.rst:884 +#: library/stdtypes.rst:885 msgid "``x in s``" msgstr "``x in s``" -#: library/stdtypes.rst:884 +#: library/stdtypes.rst:885 msgid "``True`` if an item of *s* is equal to *x*, else ``False``" msgstr "``True`` si un élément de *s* est égal à *x*, sinon ``False``" -#: library/stdtypes.rst:887 +#: library/stdtypes.rst:888 msgid "``x not in s``" msgstr "``x not in s``" -#: library/stdtypes.rst:887 +#: library/stdtypes.rst:888 msgid "``False`` if an item of *s* is equal to *x*, else ``True``" msgstr "``False`` si un élément de *s* est égal à *x*, sinon ``True``" -#: library/stdtypes.rst:890 +#: library/stdtypes.rst:891 msgid "``s + t``" msgstr "``s + t``" -#: library/stdtypes.rst:890 +#: library/stdtypes.rst:891 msgid "the concatenation of *s* and *t*" msgstr "la concaténation de *s* et *t*" -#: library/stdtypes.rst:890 +#: library/stdtypes.rst:891 msgid "(6)(7)" msgstr "(6)(7)" -#: library/stdtypes.rst:893 +#: library/stdtypes.rst:894 msgid "``s * n`` or ``n * s``" msgstr "``s * n`` or ``n * s``" -#: library/stdtypes.rst:893 +#: library/stdtypes.rst:894 msgid "equivalent to adding *s* to itself *n* times" msgstr "équivalent à ajouter *s* *n* fois à lui même" -#: library/stdtypes.rst:893 +#: library/stdtypes.rst:894 msgid "(2)(7)" msgstr "(2)(7)" -#: library/stdtypes.rst:896 +#: library/stdtypes.rst:897 msgid "``s[i]``" msgstr "``s[i]``" -#: library/stdtypes.rst:896 +#: library/stdtypes.rst:897 msgid "*i*\\ th item of *s*, origin 0" msgstr "*i*\\ :sup:`e` élément de *s* en commençant par 0" -#: library/stdtypes.rst:898 +#: library/stdtypes.rst:899 msgid "``s[i:j]``" msgstr "``s[i:j]``" -#: library/stdtypes.rst:898 +#: library/stdtypes.rst:899 msgid "slice of *s* from *i* to *j*" msgstr "tranche (*slice*) de *s* de *i* à *j*" -#: library/stdtypes.rst:898 +#: library/stdtypes.rst:899 msgid "(3)(4)" msgstr "(3)(4)" -#: library/stdtypes.rst:900 +#: library/stdtypes.rst:901 msgid "``s[i:j:k]``" msgstr "``s[i:j:k]``" -#: library/stdtypes.rst:900 +#: library/stdtypes.rst:901 msgid "slice of *s* from *i* to *j* with step *k*" msgstr "tranche (*slice*) de *s* de *i* à *j* avec un pas de *k*" -#: library/stdtypes.rst:900 +#: library/stdtypes.rst:901 msgid "(3)(5)" msgstr "(3)(5)" -#: library/stdtypes.rst:903 +#: library/stdtypes.rst:904 msgid "``len(s)``" msgstr "``len(s)``" -#: library/stdtypes.rst:903 +#: library/stdtypes.rst:904 msgid "length of *s*" msgstr "longueur de *s*" -#: library/stdtypes.rst:905 +#: library/stdtypes.rst:906 msgid "``min(s)``" msgstr "``min(s)``" -#: library/stdtypes.rst:905 +#: library/stdtypes.rst:906 msgid "smallest item of *s*" msgstr "plus petit élément de *s*" -#: library/stdtypes.rst:907 +#: library/stdtypes.rst:908 msgid "``max(s)``" msgstr "``max(s)``" -#: library/stdtypes.rst:907 +#: library/stdtypes.rst:908 msgid "largest item of *s*" msgstr "plus grand élément de *s*" -#: library/stdtypes.rst:909 +#: library/stdtypes.rst:910 msgid "``s.index(x[, i[, j]])``" msgstr "``s.index(x[, i[, j]])``" -#: library/stdtypes.rst:909 +#: library/stdtypes.rst:910 msgid "" "index of the first occurrence of *x* in *s* (at or after index *i* and " "before index *j*)" @@ -1509,19 +1513,19 @@ msgstr "" "indice de la première occurrence de *x* dans *s* (à ou après l'indice *i* et " "avant indice *j*)" -#: library/stdtypes.rst:3538 +#: library/stdtypes.rst:3539 msgid "\\(8)" msgstr "\\(8)" -#: library/stdtypes.rst:913 +#: library/stdtypes.rst:914 msgid "``s.count(x)``" msgstr "``s.count(x)``" -#: library/stdtypes.rst:913 +#: library/stdtypes.rst:914 msgid "total number of occurrences of *x* in *s*" msgstr "nombre total d'occurrences de *x* dans *s*" -#: library/stdtypes.rst:917 +#: library/stdtypes.rst:918 msgid "" "Sequences of the same type also support comparisons. In particular, tuples " "and lists are compared lexicographically by comparing corresponding " @@ -1537,7 +1541,7 @@ msgstr "" "longueur. (Pour plus de détails voir :ref:`comparisons` dans la référence du " "langage.)" -#: library/stdtypes.rst:926 +#: library/stdtypes.rst:927 msgid "" "While the ``in`` and ``not in`` operations are used only for simple " "containment testing in the general case, some specialised sequences (such " @@ -1549,7 +1553,7 @@ msgstr "" "spécialisées (telles que :class:`str`, :class:`bytes` et :class:`bytearray`) " "les utilisent aussi pour tester l'existence de sous-séquences ::" -#: library/stdtypes.rst:935 +#: library/stdtypes.rst:936 msgid "" "Values of *n* less than ``0`` are treated as ``0`` (which yields an empty " "sequence of the same type as *s*). Note that items in the sequence *s* are " @@ -1561,7 +1565,7 @@ msgstr "" "ne sont pas copiés ; ils sont référencés plusieurs fois. Cela hante souvent " "de nouveaux développeurs Python, typiquement ::" -#: library/stdtypes.rst:947 +#: library/stdtypes.rst:948 msgid "" "What has happened is that ``[[]]`` is a one-element list containing an empty " "list, so all three elements of ``[[]] * 3`` are references to this single " @@ -1574,7 +1578,7 @@ msgstr "" "modifie cette liste unique. Vous pouvez créer une liste des différentes " "listes de cette façon ::" -#: library/stdtypes.rst:959 +#: library/stdtypes.rst:960 msgid "" "Further explanation is available in the FAQ entry :ref:`faq-multidimensional-" "list`." @@ -1582,7 +1586,7 @@ msgstr "" "De plus amples explications sont disponibles dans la FAQ à la question :ref:" "`faq-multidimensional-list`." -#: library/stdtypes.rst:963 +#: library/stdtypes.rst:964 msgid "" "If *i* or *j* is negative, the index is relative to the end of sequence *s*: " "``len(s) + i`` or ``len(s) + j`` is substituted. But note that ``-0`` is " @@ -1592,7 +1596,7 @@ msgstr "" "*s* : ``len(s) + i`` ou ``len(s) + j`` est substitué. Mais notez que ``-0`` " "est toujours ``0``." -#: library/stdtypes.rst:968 +#: library/stdtypes.rst:969 msgid "" "The slice of *s* from *i* to *j* is defined as the sequence of items with " "index *k* such that ``i <= k < j``. If *i* or *j* is greater than " @@ -1606,7 +1610,7 @@ msgstr "" "utilisé. Si *j* est omis ou ``None``, ``len(s)`` est utilisé. Si *i* est " "supérieure ou égale à *j*, la tranche est vide." -#: library/stdtypes.rst:975 +#: library/stdtypes.rst:976 msgid "" "The slice of *s* from *i* to *j* with step *k* is defined as the sequence of " "items with index ``x = i + n*k`` such that ``0 <= n < (j-i)/k``. In other " @@ -1629,7 +1633,7 @@ msgstr "" "Remarquez, *k* ne peut pas valoir zéro. Si *k* est ``None``, il est traité " "comme ``1``." -#: library/stdtypes.rst:986 +#: library/stdtypes.rst:987 msgid "" "Concatenating immutable sequences always results in a new object. This " "means that building up a sequence by repeated concatenation will have a " @@ -1642,7 +1646,7 @@ msgstr "" "totale. Pour obtenir un temps d'exécution linéaire, vous devez utiliser " "l'une des alternatives suivantes :" -#: library/stdtypes.rst:991 +#: library/stdtypes.rst:992 msgid "" "if concatenating :class:`str` objects, you can build a list and use :meth:" "`str.join` at the end or else write to an :class:`io.StringIO` instance and " @@ -1652,7 +1656,7 @@ msgstr "" "utiliser :meth:`str.join` à la fin, ou bien écrire dans une instance de :" "class:`io.StringIO` et récupérer sa valeur lorsque vous avez terminé" -#: library/stdtypes.rst:995 +#: library/stdtypes.rst:996 msgid "" "if concatenating :class:`bytes` objects, you can similarly use :meth:`bytes." "join` or :class:`io.BytesIO`, or you can do in-place concatenation with a :" @@ -1664,18 +1668,18 @@ msgstr "" "sur place avec un objet :class:`bytearray`. Les objets :class:`bytearray` " "sont muables et ont un mécanisme de sur-allocation efficace" -#: library/stdtypes.rst:1000 +#: library/stdtypes.rst:1001 msgid "if concatenating :class:`tuple` objects, extend a :class:`list` instead" msgstr "" "si vous concaténez des :class:`tuple`, utilisez plutôt *extend* sur une :" "class:`list`" -#: library/stdtypes.rst:1002 +#: library/stdtypes.rst:1003 msgid "for other types, investigate the relevant class documentation" msgstr "" "pour d'autres types, cherchez dans la documentation de la classe concernée" -#: library/stdtypes.rst:1006 +#: library/stdtypes.rst:1007 msgid "" "Some sequence types (such as :class:`range`) only support item sequences " "that follow specific patterns, and hence don't support sequence " @@ -1685,7 +1689,7 @@ msgstr "" "séquences qui suivent des modèles spécifiques, et donc ne prennent pas en " "charge la concaténation ou la répétition." -#: library/stdtypes.rst:1011 +#: library/stdtypes.rst:1012 msgid "" "``index`` raises :exc:`ValueError` when *x* is not found in *s*. Not all " "implementations support passing the additional arguments *i* and *j*. These " @@ -1702,11 +1706,11 @@ msgstr "" "l'indice renvoyé alors relatif au début de la séquence plutôt qu'au début de " "la tranche." -#: library/stdtypes.rst:1022 +#: library/stdtypes.rst:1023 msgid "Immutable Sequence Types" msgstr "Types de séquences immuables" -#: library/stdtypes.rst:1029 +#: library/stdtypes.rst:1030 msgid "" "The only operation that immutable sequence types generally implement that is " "not also implemented by mutable sequence types is support for the :func:" @@ -1716,7 +1720,7 @@ msgstr "" "n'est pas implémentée par les types de séquences muables est le support de " "la fonction native :func:`hash`." -#: library/stdtypes.rst:1033 +#: library/stdtypes.rst:1034 msgid "" "This support allows immutable sequences, such as :class:`tuple` instances, " "to be used as :class:`dict` keys and stored in :class:`set` and :class:" @@ -1726,7 +1730,7 @@ msgstr "" "instances de :class:`tuple`, en tant que clés de :class:`dict` et stockées " "dans les instances de :class:`set` et :class:`frozenset`." -#: library/stdtypes.rst:1037 +#: library/stdtypes.rst:1038 msgid "" "Attempting to hash an immutable sequence that contains unhashable values " "will result in :exc:`TypeError`." @@ -1734,11 +1738,11 @@ msgstr "" "Essayer de hacher une séquence immuable qui contient des valeurs non-" "hachables lèvera une :exc:`TypeError`." -#: library/stdtypes.rst:1044 +#: library/stdtypes.rst:1045 msgid "Mutable Sequence Types" msgstr "Types de séquences muables" -#: library/stdtypes.rst:1051 +#: library/stdtypes.rst:1052 msgid "" "The operations in the following table are defined on mutable sequence types. " "The :class:`collections.abc.MutableSequence` ABC is provided to make it " @@ -1749,7 +1753,7 @@ msgstr "" "MutableSequence` est prévue pour faciliter l'implémentation correcte de ces " "opérations sur les types de séquence personnalisées." -#: library/stdtypes.rst:1055 +#: library/stdtypes.rst:1056 msgid "" "In the table *s* is an instance of a mutable sequence type, *t* is any " "iterable object and *x* is an arbitrary object that meets any type and value " @@ -1762,132 +1766,132 @@ msgstr "" "`bytearray` accepte uniquement des nombres entiers qui répondent à la " "restriction de la valeur ``0 <= x <= 255``)." -#: library/stdtypes.rst:1079 +#: library/stdtypes.rst:1080 msgid "``s[i] = x``" msgstr "``s[i] = x``" -#: library/stdtypes.rst:1079 +#: library/stdtypes.rst:1080 msgid "item *i* of *s* is replaced by *x*" msgstr "élément *i* de *s* est remplacé par *x*" -#: library/stdtypes.rst:1082 +#: library/stdtypes.rst:1083 msgid "``s[i:j] = t``" msgstr "``s[i:j] = t``" -#: library/stdtypes.rst:1082 +#: library/stdtypes.rst:1083 msgid "" "slice of *s* from *i* to *j* is replaced by the contents of the iterable *t*" msgstr "" "tranche de *s* de *i* à *j* est remplacée par le contenu de l'itérable *t*" -#: library/stdtypes.rst:1086 +#: library/stdtypes.rst:1087 msgid "``del s[i:j]``" msgstr "``del s[i:j]``" -#: library/stdtypes.rst:1086 +#: library/stdtypes.rst:1087 msgid "same as ``s[i:j] = []``" msgstr "identique à ``s[i:j] = []``" -#: library/stdtypes.rst:1088 +#: library/stdtypes.rst:1089 msgid "``s[i:j:k] = t``" msgstr "``s[i:j:k] = t``" -#: library/stdtypes.rst:1088 +#: library/stdtypes.rst:1089 msgid "the elements of ``s[i:j:k]`` are replaced by those of *t*" msgstr "les éléments de ``s[i:j:k]`` sont remplacés par ceux de *t*" -#: library/stdtypes.rst:1091 +#: library/stdtypes.rst:1092 msgid "``del s[i:j:k]``" msgstr "``del s[i:j:k]``" -#: library/stdtypes.rst:1091 +#: library/stdtypes.rst:1092 msgid "removes the elements of ``s[i:j:k]`` from the list" msgstr "supprime les éléments de ``s[i:j:k]`` de la liste" -#: library/stdtypes.rst:1094 +#: library/stdtypes.rst:1095 msgid "``s.append(x)``" msgstr "``s.append(x)``" -#: library/stdtypes.rst:1094 +#: library/stdtypes.rst:1095 msgid "" "appends *x* to the end of the sequence (same as ``s[len(s):len(s)] = [x]``)" msgstr "" "ajoute *x* à la fin de la séquence (identique à ``s[len(s):len(s)] = [x]``)" -#: library/stdtypes.rst:1098 +#: library/stdtypes.rst:1099 msgid "``s.clear()``" msgstr "``s.clear()``" -#: library/stdtypes.rst:1098 +#: library/stdtypes.rst:1099 msgid "removes all items from *s* (same as ``del s[:]``)" msgstr "supprime tous les éléments de *s* (identique à ``del s[:]``)" -#: library/stdtypes.rst:1101 +#: library/stdtypes.rst:1102 msgid "``s.copy()``" msgstr "``s.copy()``" -#: library/stdtypes.rst:1101 +#: library/stdtypes.rst:1102 msgid "creates a shallow copy of *s* (same as ``s[:]``)" msgstr "crée une copie superficielle de *s* (identique à ``s[:]``)" -#: library/stdtypes.rst:1104 +#: library/stdtypes.rst:1105 msgid "``s.extend(t)`` or ``s += t``" msgstr "``s.extend(t)`` or ``s += t``" -#: library/stdtypes.rst:1104 +#: library/stdtypes.rst:1105 msgid "" "extends *s* with the contents of *t* (for the most part the same as " "``s[len(s):len(s)] = t``)" msgstr "étend *s* avec le contenu de *t* (proche de ``s[len(s):len(s)] = t``)" -#: library/stdtypes.rst:1109 +#: library/stdtypes.rst:1110 msgid "``s *= n``" msgstr "``s *= n``" -#: library/stdtypes.rst:1109 +#: library/stdtypes.rst:1110 msgid "updates *s* with its contents repeated *n* times" msgstr "met à jour *s* avec son contenu répété *n* fois" -#: library/stdtypes.rst:1112 +#: library/stdtypes.rst:1113 msgid "``s.insert(i, x)``" msgstr "``s.insert(i, x)``" -#: library/stdtypes.rst:1112 +#: library/stdtypes.rst:1113 msgid "" "inserts *x* into *s* at the index given by *i* (same as ``s[i:i] = [x]``)" msgstr "" "insère *x* dans *s* à l'index donné par *i* (identique à ``s[i:i] = [x]``)" -#: library/stdtypes.rst:1116 +#: library/stdtypes.rst:1117 #, fuzzy msgid "``s.pop()`` or ``s.pop(i)``" msgstr "``s.extend(t)`` or ``s += t``" -#: library/stdtypes.rst:1116 +#: library/stdtypes.rst:1117 msgid "retrieves the item at *i* and also removes it from *s*" msgstr "récupère l'élément à *i* et le supprime de *s*" -#: library/stdtypes.rst:1119 +#: library/stdtypes.rst:1120 msgid "``s.remove(x)``" msgstr "``s.remove(x)``" -#: library/stdtypes.rst:1119 +#: library/stdtypes.rst:1120 msgid "remove the first item from *s* where ``s[i]`` is equal to *x*" msgstr "supprime le premier élément de *s* pour lequel ``s[i]`` est égal à *x*" -#: library/stdtypes.rst:1122 +#: library/stdtypes.rst:1123 msgid "``s.reverse()``" msgstr "``s.reverse()``" -#: library/stdtypes.rst:1122 +#: library/stdtypes.rst:1123 msgid "reverses the items of *s* in place" msgstr "inverse sur place les éléments de *s*" -#: library/stdtypes.rst:1130 +#: library/stdtypes.rst:1131 msgid "*t* must have the same length as the slice it is replacing." msgstr "*t* doit avoir la même longueur que la tranche qu'il remplace." -#: library/stdtypes.rst:1133 +#: library/stdtypes.rst:1134 msgid "" "The optional argument *i* defaults to ``-1``, so that by default the last " "item is removed and returned." @@ -1895,13 +1899,13 @@ msgstr "" "L'argument optionnel *i* vaut ``-1`` par défaut, afin que, par défaut, le " "dernier élément soit retiré et renvoyé." -#: library/stdtypes.rst:1137 +#: library/stdtypes.rst:1138 msgid ":meth:`remove` raises :exc:`ValueError` when *x* is not found in *s*." msgstr "" ":meth:`remove` lève une exception :exc:`ValueError` si *x* ne se trouve pas " "dans *s*." -#: library/stdtypes.rst:1140 +#: library/stdtypes.rst:1141 msgid "" "The :meth:`reverse` method modifies the sequence in place for economy of " "space when reversing a large sequence. To remind users that it operates by " @@ -1912,7 +1916,7 @@ msgstr "" "utilisateurs qu'elle a un effet de bord, elle ne renvoie pas la séquence " "inversée." -#: library/stdtypes.rst:1145 +#: library/stdtypes.rst:1146 msgid "" ":meth:`clear` and :meth:`!copy` are included for consistency with the " "interfaces of mutable containers that don't support slicing operations (such " @@ -1927,11 +1931,11 @@ msgstr "" "MutableSequence`, mais la plupart des classes implémentées gérant des " "séquences la proposent." -#: library/stdtypes.rst:1151 +#: library/stdtypes.rst:1152 msgid ":meth:`clear` and :meth:`!copy` methods." msgstr "méthodes :meth:`clear` et :meth:`!copy`." -#: library/stdtypes.rst:1155 +#: library/stdtypes.rst:1156 msgid "" "The value *n* is an integer, or an object implementing :meth:`~object." "__index__`. Zero and negative values of *n* clear the sequence. Items in " @@ -1944,11 +1948,11 @@ msgstr "" "référencés plusieurs fois, comme expliqué pour ``s * n`` dans :ref:`typesseq-" "common`." -#: library/stdtypes.rst:1164 +#: library/stdtypes.rst:1165 msgid "Lists" msgstr "Listes" -#: library/stdtypes.rst:1168 +#: library/stdtypes.rst:1169 msgid "" "Lists are mutable sequences, typically used to store collections of " "homogeneous items (where the precise degree of similarity will vary by " @@ -1958,32 +1962,32 @@ msgstr "" "des collections d'éléments homogènes (où le degré de similitude variera " "selon l'usage)." -#: library/stdtypes.rst:1174 +#: library/stdtypes.rst:1175 msgid "Lists may be constructed in several ways:" msgstr "Les listes peuvent être construites de différentes manières :" -#: library/stdtypes.rst:1176 +#: library/stdtypes.rst:1177 msgid "Using a pair of square brackets to denote the empty list: ``[]``" msgstr "" "En utilisant une paire de crochets pour indiquer une liste vide : ``[]``" -#: library/stdtypes.rst:1177 +#: library/stdtypes.rst:1178 msgid "" "Using square brackets, separating items with commas: ``[a]``, ``[a, b, c]``" msgstr "" "Au moyen de crochets, séparant les éléments par des virgules : ``[a]``, " "``[a, b, c]``" -#: library/stdtypes.rst:1178 +#: library/stdtypes.rst:1179 msgid "Using a list comprehension: ``[x for x in iterable]``" msgstr "En utilisant une liste en compréhension : ``[x for x in iterable]``" -#: library/stdtypes.rst:1179 +#: library/stdtypes.rst:1180 msgid "Using the type constructor: ``list()`` or ``list(iterable)``" msgstr "" "En utilisant le constructeur du type : ``list()`` ou ``list(iterable)``" -#: library/stdtypes.rst:1181 +#: library/stdtypes.rst:1182 msgid "" "The constructor builds a list whose items are the same and in the same order " "as *iterable*'s items. *iterable* may be either a sequence, a container " @@ -2001,7 +2005,7 @@ msgstr "" "``list( (1, 2, 3) )`` renvoie ``[1, 2, 3]``. Si aucun argument est donné, le " "constructeur crée une nouvelle liste vide, ``[]``." -#: library/stdtypes.rst:1190 +#: library/stdtypes.rst:1191 msgid "" "Many other operations also produce lists, including the :func:`sorted` built-" "in." @@ -2009,7 +2013,7 @@ msgstr "" "De nombreuses autres opérations produisent des listes, tel que la fonction " "native :func:`sorted`." -#: library/stdtypes.rst:1193 +#: library/stdtypes.rst:1194 msgid "" "Lists implement all of the :ref:`common ` and :ref:`mutable " "` sequence operations. Lists also provide the following " @@ -2019,7 +2023,7 @@ msgstr "" "` et :ref:`muables `. Les listes " "fournissent également la méthode supplémentaire suivante :" -#: library/stdtypes.rst:1199 +#: library/stdtypes.rst:1200 msgid "" "This method sorts the list in place, using only ``<`` comparisons between " "items. Exceptions are not suppressed - if any comparison operations fail, " @@ -2031,7 +2035,7 @@ msgstr "" "si n'importe quelle opération de comparaison échoue, le tri échouera (et la " "liste sera probablement laissée dans un état partiellement modifié)." -#: library/stdtypes.rst:1204 +#: library/stdtypes.rst:1205 msgid "" ":meth:`sort` accepts two arguments that can only be passed by keyword (:ref:" "`keyword-only arguments `):" @@ -2039,7 +2043,7 @@ msgstr "" ":meth:`sort` accepte deux arguments qui ne peuvent être fournis que par mot-" "clé (:ref:`keyword-only arguments `):" -#: library/stdtypes.rst:1207 +#: library/stdtypes.rst:1208 msgid "" "*key* specifies a function of one argument that is used to extract a " "comparison key from each list element (for example, ``key=str.lower``). The " @@ -2054,7 +2058,7 @@ msgstr "" "``None``, signifie que les éléments sont triés directement sans en calculer " "une valeur \"clé\" séparée." -#: library/stdtypes.rst:1214 +#: library/stdtypes.rst:1215 msgid "" "The :func:`functools.cmp_to_key` utility is available to convert a 2.x style " "*cmp* function to a *key* function." @@ -2062,7 +2066,7 @@ msgstr "" "La fonction utilitaire :func:`functools.cmp_to_key` est disponible pour " "convertir une fonction *cmp* du style 2.x à une fonction *key*." -#: library/stdtypes.rst:1217 +#: library/stdtypes.rst:1218 msgid "" "*reverse* is a boolean value. If set to ``True``, then the list elements " "are sorted as if each comparison were reversed." @@ -2070,7 +2074,7 @@ msgstr "" "*reverse*, une valeur booléenne. Si elle est ``True``, la liste d'éléments " "est triée comme si toutes les comparaisons étaient inversées." -#: library/stdtypes.rst:1220 +#: library/stdtypes.rst:1221 msgid "" "This method modifies the sequence in place for economy of space when sorting " "a large sequence. To remind users that it operates by side effect, it does " @@ -2082,7 +2086,7 @@ msgstr "" "bord, elle ne renvoie pas la séquence triée (utilisez :func:`sorted` pour " "demander explicitement une nouvelle instance de liste triée)." -#: library/stdtypes.rst:1225 +#: library/stdtypes.rst:1226 msgid "" "The :meth:`sort` method is guaranteed to be stable. A sort is stable if it " "guarantees not to change the relative order of elements that compare equal " @@ -2094,13 +2098,13 @@ msgstr "" "trier en plusieurs passes (par exemple, trier par département, puis par " "niveau de salaire)." -#: library/stdtypes.rst:1230 +#: library/stdtypes.rst:1231 msgid "" "For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." msgstr "" "Pour des exemples de tris et un bref tutoriel, consultez :ref:`sortinghowto`." -#: library/stdtypes.rst:1234 +#: library/stdtypes.rst:1235 msgid "" "While a list is being sorted, the effect of attempting to mutate, or even " "inspect, the list is undefined. The C implementation of Python makes the " @@ -2112,11 +2116,11 @@ msgstr "" "liste comme vide pour la durée du traitement, et lève :exc:`ValueError` si " "elle détecte que la liste a été modifiée au cours du tri." -#: library/stdtypes.rst:1243 +#: library/stdtypes.rst:1244 msgid "Tuples" msgstr "Tuples" -#: library/stdtypes.rst:1247 +#: library/stdtypes.rst:1248 msgid "" "Tuples are immutable sequences, typically used to store collections of " "heterogeneous data (such as the 2-tuples produced by the :func:`enumerate` " @@ -2131,34 +2135,34 @@ msgstr "" "et immuable de données est nécessaire (pour, par exemple, les stocker dans " "un :class:`set` ou un :class:`dict`)." -#: library/stdtypes.rst:1255 +#: library/stdtypes.rst:1256 msgid "Tuples may be constructed in a number of ways:" msgstr "Les *n*-uplets peuvent être construits de différentes façons :" -#: library/stdtypes.rst:1257 +#: library/stdtypes.rst:1258 msgid "Using a pair of parentheses to denote the empty tuple: ``()``" msgstr "" "En utilisant une paire de parenthèses pour désigner le *n*-uplet vide : " "``()``" -#: library/stdtypes.rst:1258 +#: library/stdtypes.rst:1259 msgid "Using a trailing comma for a singleton tuple: ``a,`` or ``(a,)``" msgstr "" "En utilisant une virgule, pour créer un *n*-uplet d'un élément : ``a,`` ou " "``(a,)``" -#: library/stdtypes.rst:1259 +#: library/stdtypes.rst:1260 msgid "Separating items with commas: ``a, b, c`` or ``(a, b, c)``" msgstr "" "En séparant les éléments avec des virgules : ``a, b, c`` ou ``(a, b, c)``" -#: library/stdtypes.rst:1260 +#: library/stdtypes.rst:1261 msgid "Using the :func:`tuple` built-in: ``tuple()`` or ``tuple(iterable)``" msgstr "" "En utilisant la fonction native :func:`tuple` : ``tuple()`` ou " "``tuple(iterable)``" -#: library/stdtypes.rst:1262 +#: library/stdtypes.rst:1263 msgid "" "The constructor builds a tuple whose items are the same and in the same " "order as *iterable*'s items. *iterable* may be either a sequence, a " @@ -2176,7 +2180,7 @@ msgstr "" "3] )`` renvoie ``(1, 2, 3)``. Si aucun argument est donné, le constructeur " "crée un nouveau *n*-uplet vide, ``()``." -#: library/stdtypes.rst:1270 +#: library/stdtypes.rst:1271 msgid "" "Note that it is actually the comma which makes a tuple, not the parentheses. " "The parentheses are optional, except in the empty tuple case, or when they " @@ -2191,7 +2195,7 @@ msgstr "" "arguments, alors que ``f((a, b, c))`` est un appel de fonction avec un " "triplet comme unique argument." -#: library/stdtypes.rst:1276 +#: library/stdtypes.rst:1277 msgid "" "Tuples implement all of the :ref:`common ` sequence " "operations." @@ -2199,7 +2203,7 @@ msgstr "" "Les *n*-uplets implémentent toutes les opérations :ref:`communes ` des séquences." -#: library/stdtypes.rst:1279 +#: library/stdtypes.rst:1280 msgid "" "For heterogeneous collections of data where access by name is clearer than " "access by index, :func:`collections.namedtuple` may be a more appropriate " @@ -2209,11 +2213,11 @@ msgstr "" "clair que l'accès par index, :func:`collections.namedtuple` peut être un " "choix plus approprié qu'un simple *n*-uplet." -#: library/stdtypes.rst:1287 +#: library/stdtypes.rst:1288 msgid "Ranges" msgstr "*Ranges*" -#: library/stdtypes.rst:1291 +#: library/stdtypes.rst:1292 msgid "" "The :class:`range` type represents an immutable sequence of numbers and is " "commonly used for looping a specific number of times in :keyword:`for` loops." @@ -2222,13 +2226,14 @@ msgstr "" "couramment utilisé pour itérer un certain nombre de fois dans les boucles :" "keyword:`for`." -#: library/stdtypes.rst:1298 +#: library/stdtypes.rst:1299 +#, fuzzy msgid "" "The arguments to the range constructor must be integers (either built-in :" -"class:`int` or any object that implements the ``__index__`` special " -"method). If the *step* argument is omitted, it defaults to ``1``. If the " -"*start* argument is omitted, it defaults to ``0``. If *step* is zero, :exc:" -"`ValueError` is raised." +"class:`int` or any object that implements the :meth:`~object.__index__` " +"special method). If the *step* argument is omitted, it defaults to ``1``. " +"If the *start* argument is omitted, it defaults to ``0``. If *step* is " +"zero, :exc:`ValueError` is raised." msgstr "" "Les arguments du constructeur de *range* doivent être des entiers (des :" "class:`int` ou tout autre objet qui implémente la méthode spéciale " @@ -2236,7 +2241,7 @@ msgstr "" "valeur par défaut de l'argument *start* est ``0``. Si *step* est égal à " "zéro, une exception :exc:`ValueError` est levée." -#: library/stdtypes.rst:1304 +#: library/stdtypes.rst:1305 msgid "" "For a positive *step*, the contents of a range ``r`` are determined by the " "formula ``r[i] = start + step*i`` where ``i >= 0`` and ``r[i] < stop``." @@ -2244,7 +2249,7 @@ msgstr "" "Pour un *step* positif, le contenu d'un *range* ``r`` est déterminé par la " "formule ``r[i] = start + step*i`` où ``i >= 0`` et ``r[i] < stop``." -#: library/stdtypes.rst:1308 +#: library/stdtypes.rst:1309 msgid "" "For a negative *step*, the contents of the range are still determined by the " "formula ``r[i] = start + step*i``, but the constraints are ``i >= 0`` and " @@ -2254,7 +2259,7 @@ msgstr "" "formule ``r[i] = start + step*i``, mais les contraintes sont ``i >= 0`` et " "``r[i] > stop``." -#: library/stdtypes.rst:1312 +#: library/stdtypes.rst:1313 msgid "" "A range object will be empty if ``r[0]`` does not meet the value constraint. " "Ranges do support negative indices, but these are interpreted as indexing " @@ -2265,7 +2270,7 @@ msgstr "" "sont interprétées comme une indexation de la fin de la séquence déterminée " "par les indices positifs." -#: library/stdtypes.rst:1317 +#: library/stdtypes.rst:1318 msgid "" "Ranges containing absolute values larger than :data:`sys.maxsize` are " "permitted but some features (such as :func:`len`) may raise :exc:" @@ -2275,11 +2280,11 @@ msgstr "" "maxsize` sont permises, mais certaines fonctionnalités (comme :func:`len`) " "peuvent lever :exc:`OverflowError`." -#: library/stdtypes.rst:1321 +#: library/stdtypes.rst:1322 msgid "Range examples::" msgstr "Exemples avec *range* ::" -#: library/stdtypes.rst:1338 +#: library/stdtypes.rst:1339 msgid "" "Ranges implement all of the :ref:`common ` sequence " "operations except concatenation and repetition (due to the fact that range " @@ -2292,25 +2297,25 @@ msgstr "" "strict et que la répétition et la concaténation les feraient dévier de ce " "motif)." -#: library/stdtypes.rst:1345 +#: library/stdtypes.rst:1346 msgid "" "The value of the *start* parameter (or ``0`` if the parameter was not " "supplied)" msgstr "" "La valeur du paramètre *start* (ou ``0`` si le paramètre n'a pas été fourni)" -#: library/stdtypes.rst:1350 +#: library/stdtypes.rst:1351 msgid "The value of the *stop* parameter" msgstr "La valeur du paramètre *stop*" -#: library/stdtypes.rst:1354 +#: library/stdtypes.rst:1355 msgid "" "The value of the *step* parameter (or ``1`` if the parameter was not " "supplied)" msgstr "" "La valeur du paramètre *step* (ou ``1`` si le paramètre n'a pas été fourni)" -#: library/stdtypes.rst:1357 +#: library/stdtypes.rst:1358 msgid "" "The advantage of the :class:`range` type over a regular :class:`list` or :" "class:`tuple` is that a :class:`range` object will always take the same " @@ -2324,7 +2329,7 @@ msgstr "" "(car elle ne stocke que les valeurs ``start``, ``stop`` et ``step`` , le " "calcul des éléments individuels et les sous-intervalles au besoin)." -#: library/stdtypes.rst:1363 +#: library/stdtypes.rst:1364 msgid "" "Range objects implement the :class:`collections.abc.Sequence` ABC, and " "provide features such as containment tests, element index lookup, slicing " @@ -2335,7 +2340,7 @@ msgstr "" "(avec *in*), de recherche par index, le tranchage et ils gèrent les indices " "négatifs (voir :ref:`typesseq`):" -#: library/stdtypes.rst:1383 +#: library/stdtypes.rst:1384 msgid "" "Testing range objects for equality with ``==`` and ``!=`` compares them as " "sequences. That is, two range objects are considered equal if they " @@ -2351,7 +2356,7 @@ msgstr "" "et :attr:`~range.step` différents, par exemple ``range(0) == range(2, 1, " "3)`` ou ``range(0, 3, 2) == range(0, 4, 2)``.)" -#: library/stdtypes.rst:1390 +#: library/stdtypes.rst:1391 msgid "" "Implement the Sequence ABC. Support slicing and negative indices. Test :" "class:`int` objects for membership in constant time instead of iterating " @@ -2361,7 +2366,7 @@ msgstr "" "les indices négatifs. Tester l'appartenance d'un :class:`int` en temps " "constant au lieu d'itérer tous les éléments." -#: library/stdtypes.rst:1396 +#: library/stdtypes.rst:1397 msgid "" "Define '==' and '!=' to compare range objects based on the sequence of " "values they define (instead of comparing based on object identity)." @@ -2370,7 +2375,7 @@ msgstr "" "qu'ils définissent (au lieu d'une comparaison fondée sur l'identité de " "l'objet)." -#: library/stdtypes.rst:1401 +#: library/stdtypes.rst:1402 msgid "" "The :attr:`~range.start`, :attr:`~range.stop` and :attr:`~range.step` " "attributes." @@ -2378,7 +2383,7 @@ msgstr "" "Les attributs :attr:`~range.start`, :attr:`~range.stop` et :attr:`~range." "step`." -#: library/stdtypes.rst:1407 +#: library/stdtypes.rst:1408 msgid "" "The `linspace recipe `_ shows " "how to implement a lazy version of range suitable for floating point " @@ -2388,11 +2393,11 @@ msgstr "" "comment implémenter une version paresseuse de *range* adaptée aux nombres à " "virgule flottante." -#: library/stdtypes.rst:1419 +#: library/stdtypes.rst:1420 msgid "Text Sequence Type --- :class:`str`" msgstr "Type Séquence de Texte — :class:`str`" -#: library/stdtypes.rst:1421 +#: library/stdtypes.rst:1422 msgid "" "Textual data in Python is handled with :class:`str` objects, or :dfn:" "`strings`. Strings are immutable :ref:`sequences ` of Unicode code " @@ -2403,15 +2408,16 @@ msgstr "" "immuables de points de code Unicode. Les chaînes littérales peuvent être " "écrites de différentes manières :" -#: library/stdtypes.rst:1426 +#: library/stdtypes.rst:1427 msgid "Single quotes: ``'allows embedded \"double\" quotes'``" msgstr "Les guillemets simples : ``'autorisent les \"guillemets\"'``" -#: library/stdtypes.rst:1427 -msgid "Double quotes: ``\"allows embedded 'single' quotes\"``." +#: library/stdtypes.rst:1428 +#, fuzzy +msgid "Double quotes: ``\"allows embedded 'single' quotes\"``" msgstr "Les guillemets : ``\"autorisent les guillemets 'simples'\"``." -#: library/stdtypes.rst:1428 +#: library/stdtypes.rst:1429 msgid "" "Triple quoted: ``'''Three single quotes'''``, ``\"\"\"Three double quotes" "\"\"\"``" @@ -2419,7 +2425,7 @@ msgstr "" "Guillemets triples : ``'''Trois guillemets simples'''``, ``\"\"\"Trois " "guillemets\"\"\"``" -#: library/stdtypes.rst:1430 +#: library/stdtypes.rst:1431 msgid "" "Triple quoted strings may span multiple lines - all associated whitespace " "will be included in the string literal." @@ -2427,7 +2433,7 @@ msgstr "" "Les chaînes entre triple guillemets peuvent couvrir plusieurs lignes, tous " "les espaces associés seront inclus dans la chaîne littérale." -#: library/stdtypes.rst:1433 +#: library/stdtypes.rst:1434 msgid "" "String literals that are part of a single expression and have only " "whitespace between them will be implicitly converted to a single string " @@ -2437,7 +2443,7 @@ msgstr "" "seulement des espaces entre elles sont implicitement converties en une seule " "chaîne littérale. Autrement dit, ``(\"spam \" \"eggs\") == \"spam eggs\"``." -#: library/stdtypes.rst:1437 +#: library/stdtypes.rst:1438 msgid "" "See :ref:`strings` for more about the various forms of string literal, " "including supported escape sequences, and the ``r`` (\"raw\") prefix that " @@ -2448,7 +2454,7 @@ msgstr "" "et le préfixe ``r`` (*raw* (brut)) qui désactive la plupart des traitements " "de séquence d'échappement." -#: library/stdtypes.rst:1441 +#: library/stdtypes.rst:1442 msgid "" "Strings may also be created from other objects using the :class:`str` " "constructor." @@ -2456,7 +2462,7 @@ msgstr "" "Les chaînes peuvent également être créés à partir d'autres objets à l'aide " "du constructeur :class:`str`." -#: library/stdtypes.rst:1444 +#: library/stdtypes.rst:1445 msgid "" "Since there is no separate \"character\" type, indexing a string produces " "strings of length 1. That is, for a non-empty string *s*, ``s[0] == s[0:1]``." @@ -2465,7 +2471,7 @@ msgstr "" "produit des chaînes de longueur 1. Autrement dit, pour une chaîne non vide " "*s*, ``s[0] == s[0:1]``." -#: library/stdtypes.rst:1450 +#: library/stdtypes.rst:1451 msgid "" "There is also no mutable string type, but :meth:`str.join` or :class:`io." "StringIO` can be used to efficiently construct strings from multiple " @@ -2475,7 +2481,7 @@ msgstr "" "StringIO` peuvent être utilisées pour construire efficacement des chaînes à " "partir de plusieurs fragments." -#: library/stdtypes.rst:1454 +#: library/stdtypes.rst:1455 msgid "" "For backwards compatibility with the Python 2 series, the ``u`` prefix is " "once again permitted on string literals. It has no effect on the meaning of " @@ -2485,7 +2491,7 @@ msgstr "" "est à nouveau autorisé sur les chaînes littérales. Elle n'a aucun effet sur " "le sens des chaînes littérales et ne peut être combiné avec le préfixe ``r``." -#: library/stdtypes.rst:1466 +#: library/stdtypes.rst:1467 msgid "" "Return a :ref:`string ` version of *object*. If *object* is not " "provided, returns the empty string. Otherwise, the behavior of ``str()`` " @@ -2495,7 +2501,7 @@ msgstr "" "n'est pas fourni, renvoie une chaîne vide. Sinon, le comportement de " "``str()`` dépend de si *encoding* ou *errors* sont donnés, voir l'exemple." -#: library/stdtypes.rst:1470 +#: library/stdtypes.rst:1471 msgid "" "If neither *encoding* nor *errors* is given, ``str(object)`` returns :meth:" "`object.__str__() `, which is the \"informal\" or nicely " @@ -2509,7 +2515,7 @@ msgstr "" "chaîne elle-même. Si *object* n'a pas de méthode :meth:`~object.__str__`, :" "func:`str` utilise :meth:`repr(object) `." -#: library/stdtypes.rst:1481 +#: library/stdtypes.rst:1482 msgid "" "If at least one of *encoding* or *errors* is given, *object* should be a :" "term:`bytes-like object` (e.g. :class:`bytes` or :class:`bytearray`). In " @@ -2529,7 +2535,7 @@ msgstr "" "`binaryseq` et :ref:`bufferobjects` pour plus d'informations sur les " "*buffers*." -#: library/stdtypes.rst:1490 +#: library/stdtypes.rst:1491 msgid "" "Passing a :class:`bytes` object to :func:`str` without the *encoding* or " "*errors* arguments falls under the first case of returning the informal " @@ -2541,7 +2547,7 @@ msgstr "" "informelle de la chaîne est renvoyé (voir aussi l'option :option:`-b` de " "Python). Par exemple ::" -#: library/stdtypes.rst:1498 +#: library/stdtypes.rst:1499 msgid "" "For more information on the ``str`` class and its methods, see :ref:" "`textseq` and the :ref:`string-methods` section below. To output formatted " @@ -2553,11 +2559,11 @@ msgstr "" "de caractères, voir les sections :ref:`f-strings` et :ref:`formatstrings`. " "La section :ref:`stringservices` contient aussi des informations." -#: library/stdtypes.rst:1510 +#: library/stdtypes.rst:1511 msgid "String Methods" msgstr "Méthodes de chaînes de caractères" -#: library/stdtypes.rst:1515 +#: library/stdtypes.rst:1516 msgid "" "Strings implement all of the :ref:`common ` sequence " "operations, along with the additional methods described below." @@ -2565,7 +2571,7 @@ msgstr "" "Les chaînes implémentent toutes les opérations :ref:`communes des séquences " "`, ainsi que les autres méthodes décrites ci-dessous." -#: library/stdtypes.rst:1518 +#: library/stdtypes.rst:1519 msgid "" "Strings also support two styles of string formatting, one providing a large " "degree of flexibility and customization (see :meth:`str.format`, :ref:" @@ -2581,7 +2587,7 @@ msgstr "" "difficile à utiliser correctement, mais il est souvent plus rapide pour les " "cas, il peut gérer (:ref:`old-string-formatting`)." -#: library/stdtypes.rst:1525 +#: library/stdtypes.rst:1526 msgid "" "The :ref:`textservices` section of the standard library covers a number of " "other modules that provide various text related utilities (including regular " @@ -2591,7 +2597,7 @@ msgstr "" "nombre d'autres modules qui fournissent différents services relatifs au " "texte (y compris les expressions régulières dans le module :mod:`re`)." -#: library/stdtypes.rst:1531 +#: library/stdtypes.rst:1532 msgid "" "Return a copy of the string with its first character capitalized and the " "rest lowercased." @@ -2599,7 +2605,7 @@ msgstr "" "Renvoie une copie de la chaîne avec son premier caractère en majuscule et le " "reste en minuscule." -#: library/stdtypes.rst:1534 +#: library/stdtypes.rst:1535 msgid "" "The first character is now put into titlecase rather than uppercase. This " "means that characters like digraphs will only have their first letter " @@ -2609,7 +2615,7 @@ msgstr "" "majuscule. Cela veut dire que les caractères comme les digrammes auront " "seulement leur première lettre en majuscule, au lieu du caractère en entier." -#: library/stdtypes.rst:1541 +#: library/stdtypes.rst:1542 msgid "" "Return a casefolded copy of the string. Casefolded strings may be used for " "caseless matching." @@ -2617,7 +2623,7 @@ msgstr "" "Renvoie une copie *casefolded* de la chaîne. Les chaînes *casefolded* " "peuvent être utilisées dans des comparaison insensibles à la casse." -#: library/stdtypes.rst:1544 +#: library/stdtypes.rst:1545 msgid "" "Casefolding is similar to lowercasing but more aggressive because it is " "intended to remove all case distinctions in a string. For example, the " @@ -2631,7 +2637,7 @@ msgstr "" "Comme il est déjà minuscule, :meth:`lower` ferait rien à ``'ß'``; :meth:" "`casefold` le convertit en ``\"ss\"``." -#: library/stdtypes.rst:1550 +#: library/stdtypes.rst:1551 msgid "" "The casefolding algorithm is described in section 3.13 of the Unicode " "Standard." @@ -2639,7 +2645,7 @@ msgstr "" "L'algorithme de *casefolding* est décrit dans la section 3.13 de la norme " "Unicode." -#: library/stdtypes.rst:1558 +#: library/stdtypes.rst:1559 msgid "" "Return centered in a string of length *width*. Padding is done using the " "specified *fillchar* (default is an ASCII space). The original string is " @@ -2650,7 +2656,7 @@ msgstr "" "ASCII). La chaîne d'origine est renvoyée si *width* est inférieur ou égale à " "``len(s)``." -#: library/stdtypes.rst:1566 +#: library/stdtypes.rst:1567 msgid "" "Return the number of non-overlapping occurrences of substring *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -2660,7 +2666,7 @@ msgstr "" "[*start*, *end*]. Les arguments facultatifs *start* et *end* sont " "interprétés comme pour des *slices*." -#: library/stdtypes.rst:1573 +#: library/stdtypes.rst:1574 msgid "" "Return an encoded version of the string as a bytes object. Default encoding " "is ``'utf-8'``. *errors* may be given to set a different error handling " @@ -2681,24 +2687,24 @@ msgstr "" "`error-handlers`. Pour une liste des encodages possibles, voir la section :" "ref:`standard-encodings`." -#: library/stdtypes.rst:1582 +#: library/stdtypes.rst:1583 msgid "" "By default, the *errors* argument is not checked for best performances, but " "only used at the first encoding error. Enable the :ref:`Python Development " "Mode `, or use a :ref:`debug build ` to check *errors*." msgstr "" -#: library/stdtypes.rst:1587 +#: library/stdtypes.rst:1588 msgid "Support for keyword arguments added." msgstr "Gestion des arguments par mot clef." -#: library/stdtypes.rst:2726 +#: library/stdtypes.rst:2727 msgid "" "The *errors* is now checked in development mode and in :ref:`debug mode " "`." msgstr "" -#: library/stdtypes.rst:1597 +#: library/stdtypes.rst:1598 msgid "" "Return ``True`` if the string ends with the specified *suffix*, otherwise " "return ``False``. *suffix* can also be a tuple of suffixes to look for. " @@ -2711,7 +2717,7 @@ msgstr "" "position. Si l'argument optionnel *end* est fourni, la comparaison s'arrête " "à cette position." -#: library/stdtypes.rst:1605 +#: library/stdtypes.rst:1606 msgid "" "Return a copy of the string where all tab characters are replaced by one or " "more spaces, depending on the current column and the given tab size. Tab " @@ -2741,7 +2747,7 @@ msgstr "" "et la colonne en cours est incrémentée de un indépendamment de la façon dont " "le caractère est représenté lors de l'affichage." -#: library/stdtypes.rst:1626 +#: library/stdtypes.rst:1627 msgid "" "Return the lowest index in the string where substring *sub* is found within " "the slice ``s[start:end]``. Optional arguments *start* and *end* are " @@ -2752,7 +2758,7 @@ msgstr "" "interprétés comme dans la notation des *slice*. Donne ``-1`` si *sub* n'est " "pas trouvé." -#: library/stdtypes.rst:1632 +#: library/stdtypes.rst:1633 msgid "" "The :meth:`~str.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -2762,7 +2768,7 @@ msgstr "" "de connaître la position de *sub*. Pour vérifier si *sub* est une sous " "chaine ou non, utilisez l'opérateur :keyword:`in` ::" -#: library/stdtypes.rst:1642 +#: library/stdtypes.rst:1643 msgid "" "Perform a string formatting operation. The string on which this method is " "called can contain literal text or replacement fields delimited by braces " @@ -2778,7 +2784,7 @@ msgstr "" "clé. Renvoie une copie de la chaîne où chaque champ de remplacement est " "remplacé par la valeur de chaîne de l'argument correspondant." -#: library/stdtypes.rst:1652 +#: library/stdtypes.rst:1653 msgid "" "See :ref:`formatstrings` for a description of the various formatting options " "that can be specified in format strings." @@ -2786,7 +2792,7 @@ msgstr "" "Voir :ref:`formatstrings` pour une description des options de formatage qui " "peuvent être spécifiées dans les chaînes de format." -#: library/stdtypes.rst:1656 +#: library/stdtypes.rst:1657 msgid "" "When formatting a number (:class:`int`, :class:`float`, :class:`complex`, :" "class:`decimal.Decimal` and subclasses) with the ``n`` type (ex: ``'{:n}'." @@ -2805,7 +2811,7 @@ msgstr "" "est différent de ``LC_CTYPE``. Ce changement temporaire affecte les autres " "fils d'exécution." -#: library/stdtypes.rst:1665 +#: library/stdtypes.rst:1666 msgid "" "When formatting a number with the ``n`` type, the function sets temporarily " "the ``LC_CTYPE`` locale to the ``LC_NUMERIC`` locale in some cases." @@ -2814,7 +2820,7 @@ msgstr "" "temporairement ``LC_CTYPE`` par la valeur de ``LC_NUMERIC`` dans certains " "cas." -#: library/stdtypes.rst:1673 +#: library/stdtypes.rst:1674 msgid "" "Similar to ``str.format(**mapping)``, except that ``mapping`` is used " "directly and not copied to a :class:`dict`. This is useful if for example " @@ -2824,7 +2830,7 @@ msgstr "" "directement et non copié dans un :class:`dict`. C'est utile si, par exemple " "``mapping`` est une sous-classe de ``dict`` :" -#: library/stdtypes.rst:1689 +#: library/stdtypes.rst:1690 msgid "" "Like :meth:`~str.find`, but raise :exc:`ValueError` when the substring is " "not found." @@ -2832,7 +2838,7 @@ msgstr "" "Comme :meth:`~str.find`, mais lève une :exc:`ValueError` lorsque la chaîne " "est introuvable." -#: library/stdtypes.rst:1695 +#: library/stdtypes.rst:1696 msgid "" "Return ``True`` if all characters in the string are alphanumeric and there " "is at least one character, ``False`` otherwise. A character ``c`` is " @@ -2844,7 +2850,7 @@ msgstr "" "alphanumérique si l'un des tests suivants renvoie ``True`` : ``c." "isalpha()``, ``c.isdecimal()``, ``c.isdigit()`` ou ``c.isnumeric()``." -#: library/stdtypes.rst:1703 +#: library/stdtypes.rst:1704 msgid "" "Return ``True`` if all characters in the string are alphabetic and there is " "at least one character, ``False`` otherwise. Alphabetic characters are " @@ -2860,7 +2866,7 @@ msgstr "" "\"Lu\", \"Ll\" ou \"Lo\" comme catégorie générale. Notez que ceci est " "différent de la propriété *Alphabetic* définie dans la norme Unicode." -#: library/stdtypes.rst:1712 +#: library/stdtypes.rst:1713 msgid "" "Return ``True`` if the string is empty or all characters in the string are " "ASCII, ``False`` otherwise. ASCII characters have code points in the range U" @@ -2870,7 +2876,7 @@ msgstr "" "ASCII, ``False`` sinon. Les caractères ASCII ont un code dans l'intervalle ``" "\"U+0000\"``\\ ---\\ ``\"U+007F\"``." -#: library/stdtypes.rst:1721 +#: library/stdtypes.rst:1722 msgid "" "Return ``True`` if all characters in the string are decimal characters and " "there is at least one character, ``False`` otherwise. Decimal characters are " @@ -2884,7 +2890,7 @@ msgstr "" "en base 10, tels que U+0660, ARABIC-INDIC DIGIT ZERO. Spécifiquement, un " "caractère décimal est un caractère dans la catégorie Unicode générale \"Nd\"." -#: library/stdtypes.rst:1731 +#: library/stdtypes.rst:1732 msgid "" "Return ``True`` if all characters in the string are digits and there is at " "least one character, ``False`` otherwise. Digits include decimal characters " @@ -2902,7 +2908,7 @@ msgstr "" "chiffre est un caractère dont la valeur de la propriété *Numeric_Type* est " "*Digit* ou *Decimal*." -#: library/stdtypes.rst:1741 +#: library/stdtypes.rst:1742 msgid "" "Return ``True`` if the string is a valid identifier according to the " "language definition, section :ref:`identifiers`." @@ -2910,7 +2916,7 @@ msgstr "" "Renvoie ``True`` si la chaîne est un identifiant valide selon la définition " "du langage, section :ref:`identifiers`." -#: library/stdtypes.rst:1744 +#: library/stdtypes.rst:1745 msgid "" "Call :func:`keyword.iskeyword` to test whether string ``s`` is a reserved " "identifier, such as :keyword:`def` and :keyword:`class`." @@ -2918,11 +2924,11 @@ msgstr "" "Utilisez :func:`keyword.iskeyword` pour savoir si la chaîne ``s`` est un " "identifiant réservé, tels que :keyword:`def` et :keyword:`class`." -#: library/stdtypes.rst:1747 +#: library/stdtypes.rst:1748 msgid "Example: ::" msgstr "Par exemple ::" -#: library/stdtypes.rst:1760 +#: library/stdtypes.rst:1761 msgid "" "Return ``True`` if all cased characters [4]_ in the string are lowercase and " "there is at least one cased character, ``False`` otherwise." @@ -2931,7 +2937,7 @@ msgstr "" "sont en minuscules et qu'elle contient au moins un caractère capitalisable. " "Renvoie ``False`` dans le cas contraire." -#: library/stdtypes.rst:1766 +#: library/stdtypes.rst:1767 msgid "" "Return ``True`` if all characters in the string are numeric characters, and " "there is at least one character, ``False`` otherwise. Numeric characters " @@ -2948,7 +2954,7 @@ msgstr "" "les priorités *Numeric_Type=Digit*, *Numeric_Type=Decimal*, ou " "*Numeric_Type=Numeric*." -#: library/stdtypes.rst:1776 +#: library/stdtypes.rst:1777 msgid "" "Return ``True`` if all characters in the string are printable or the string " "is empty, ``False`` otherwise. Nonprintable characters are those characters " @@ -2967,7 +2973,7 @@ msgstr "" "`repr` est invoquée sur une chaîne. Ça n'a aucune incidence sur le " "traitement des chaînes écrites sur :data:`sys.stdout` ou :data:`sys.stderr`.)" -#: library/stdtypes.rst:1787 +#: library/stdtypes.rst:1788 msgid "" "Return ``True`` if there are only whitespace characters in the string and " "there is at least one character, ``False`` otherwise." @@ -2976,7 +2982,7 @@ msgstr "" "et qu'il y a au moins un autre caractère. Renvoie ``False`` dans le cas " "contraire." -#: library/stdtypes.rst:1790 +#: library/stdtypes.rst:1791 msgid "" "A character is *whitespace* if in the Unicode character database (see :mod:" "`unicodedata`), either its general category is ``Zs`` (\"Separator, space" @@ -2987,7 +2993,7 @@ msgstr "" "`unicodedata`) sa catégorie générale est ``Zs`` (« séparateur, espace »), ou " "sa classe bidirectionnelle est une de ``WS``, ``B``, ou ``S``." -#: library/stdtypes.rst:1798 +#: library/stdtypes.rst:1799 msgid "" "Return ``True`` if the string is a titlecased string and there is at least " "one character, for example uppercase characters may only follow uncased " @@ -3000,7 +3006,7 @@ msgstr "" "minuscules ne peuvent suivre que des caractères capitalisables. Renvoie " "``False`` dans le cas contraire." -#: library/stdtypes.rst:1805 +#: library/stdtypes.rst:1806 msgid "" "Return ``True`` if all cased characters [4]_ in the string are uppercase and " "there is at least one cased character, ``False`` otherwise." @@ -3009,7 +3015,7 @@ msgstr "" "la chaîne sont en majuscules et il y a au moins un caractère différentiable " "sur la casse, sinon ``False``." -#: library/stdtypes.rst:1821 +#: library/stdtypes.rst:1822 msgid "" "Return a string which is the concatenation of the strings in *iterable*. A :" "exc:`TypeError` will be raised if there are any non-string values in " @@ -3021,7 +3027,7 @@ msgstr "" "pas une chaîne, y compris pour les objets :class:`bytes`. Le séparateur " "entre les éléments est la chaîne fournissant cette méthode." -#: library/stdtypes.rst:1829 +#: library/stdtypes.rst:1830 msgid "" "Return the string left justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3032,7 +3038,7 @@ msgstr "" "ASCII). La chaîne d'origine est renvoyée si *width* est inférieur ou égale à " "``len(s)``." -#: library/stdtypes.rst:1836 +#: library/stdtypes.rst:1837 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "lowercase." @@ -3040,7 +3046,7 @@ msgstr "" "Renvoie une copie de la chaîne avec tous les caractères capitalisables [4]_ " "convertis en minuscules." -#: library/stdtypes.rst:1839 +#: library/stdtypes.rst:1840 msgid "" "The lowercasing algorithm used is described in section 3.13 of the Unicode " "Standard." @@ -3048,7 +3054,7 @@ msgstr "" "L'algorithme de mise en minuscules utilisé est décrit dans la section 3.13 " "de la norme Unicode." -#: library/stdtypes.rst:1845 +#: library/stdtypes.rst:1846 msgid "" "Return a copy of the string with leading characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3062,13 +3068,13 @@ msgstr "" "des espaces. L'argument *chars* n'est pas un préfixe, toutes les " "combinaisons de ses valeurs sont supprimées ::" -#: library/stdtypes.rst:1855 +#: library/stdtypes.rst:1856 msgid "" "See :meth:`str.removeprefix` for a method that will remove a single prefix " "string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:1866 +#: library/stdtypes.rst:1867 msgid "" "This static method returns a translation table usable for :meth:`str." "translate`." @@ -3076,7 +3082,7 @@ msgstr "" "Cette méthode statique renvoie une table de traduction utilisable pour :meth:" "`str.translate`." -#: library/stdtypes.rst:1868 +#: library/stdtypes.rst:1869 msgid "" "If there is only one argument, it must be a dictionary mapping Unicode " "ordinals (integers) or characters (strings of length 1) to Unicode ordinals, " @@ -3087,7 +3093,7 @@ msgstr "" "correspondre des points de code Unicode (nombres entiers) ou des caractères " "(chaînes de longueur 1) à des points de code Unicode." -#: library/stdtypes.rst:1873 +#: library/stdtypes.rst:1874 msgid "" "If there are two arguments, they must be strings of equal length, and in the " "resulting dictionary, each character in x will be mapped to the character at " @@ -3100,7 +3106,7 @@ msgstr "" "argument est fourni, ce doit être une chaîne dont chaque caractère " "correspondra à ``None`` dans le résultat." -#: library/stdtypes.rst:1881 +#: library/stdtypes.rst:1882 msgid "" "Split the string at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3112,7 +3118,7 @@ msgstr "" "partie après le séparateur. Si le séparateur n'est pas trouvé, le triplet " "contiendra la chaîne elle-même, suivie de deux chaînes vides." -#: library/stdtypes.rst:1889 +#: library/stdtypes.rst:1890 msgid "" "If the string starts with the *prefix* string, return " "``string[len(prefix):]``. Otherwise, return a copy of the original string::" @@ -3120,7 +3126,7 @@ msgstr "" "Si la chaîne de caractères commence par la chaîne *prefix*, renvoie " "``string[len(prefix):]``. Sinon, renvoie une copie de la chaîne originale ::" -#: library/stdtypes.rst:1903 +#: library/stdtypes.rst:1904 msgid "" "If the string ends with the *suffix* string and that *suffix* is not empty, " "return ``string[:-len(suffix)]``. Otherwise, return a copy of the original " @@ -3130,7 +3136,7 @@ msgstr "" "*suffix* n'est pas vide, renvoie ``string[:-len(suffix)]``. Sinon, renvoie " "une copie de la chaîne originale ::" -#: library/stdtypes.rst:1917 +#: library/stdtypes.rst:1918 msgid "" "Return a copy of the string with all occurrences of substring *old* replaced " "by *new*. If the optional argument *count* is given, only the first *count* " @@ -3140,7 +3146,7 @@ msgstr "" "chaîne *old* sont remplacés par *new*. Si l'argument optionnel *count* est " "donné, seules les *count* premières occurrences sont remplacées." -#: library/stdtypes.rst:1924 +#: library/stdtypes.rst:1925 msgid "" "Return the highest index in the string where substring *sub* is found, such " "that *sub* is contained within ``s[start:end]``. Optional arguments *start* " @@ -3151,7 +3157,7 @@ msgstr "" "arguments facultatifs *start* et *end* sont interprétés comme dans la " "notation des *slices*. Donne ``-1`` en cas d'échec." -#: library/stdtypes.rst:1931 +#: library/stdtypes.rst:1932 msgid "" "Like :meth:`rfind` but raises :exc:`ValueError` when the substring *sub* is " "not found." @@ -3159,7 +3165,7 @@ msgstr "" "Comme :meth:`rfind` mais lève une exception :exc:`ValueError` lorsque la " "sous-chaîne *sub* est introuvable." -#: library/stdtypes.rst:1937 +#: library/stdtypes.rst:1938 msgid "" "Return the string right justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3170,7 +3176,7 @@ msgstr "" "défaut est un espace ASCII). La chaîne d'origine est renvoyée si *width* est " "inférieure ou égale à ``len(s)``." -#: library/stdtypes.rst:1944 +#: library/stdtypes.rst:1945 msgid "" "Split the string at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3182,7 +3188,7 @@ msgstr "" "partie après le séparateur. Si le séparateur n'est pas trouvé, le triplet " "contiendra deux chaînes vides, puis par la chaîne elle-même." -#: library/stdtypes.rst:1952 +#: library/stdtypes.rst:1953 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done, the " @@ -3197,7 +3203,7 @@ msgstr "" "par la droite, :meth:`rsplit` se comporte comme :meth:`split` qui est décrit " "en détail ci-dessous." -#: library/stdtypes.rst:1961 +#: library/stdtypes.rst:1962 msgid "" "Return a copy of the string with trailing characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3211,13 +3217,13 @@ msgstr "" "L'argument *chars* n'est pas un suffixe : toutes les combinaisons de ses " "valeurs sont retirées ::" -#: library/stdtypes.rst:1971 +#: library/stdtypes.rst:1972 msgid "" "See :meth:`str.removesuffix` for a method that will remove a single suffix " "string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:1981 +#: library/stdtypes.rst:1982 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done (thus, " @@ -3231,7 +3237,7 @@ msgstr "" "+1``). Si *maxsplit* n'est pas fourni, ou vaut ``-1``, le nombre de découpes " "n'est pas limité (Toutes les découpes possibles sont faites)." -#: library/stdtypes.rst:1987 +#: library/stdtypes.rst:1988 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty strings (for example, ``'1,,2'.split(',')`` returns " @@ -3245,15 +3251,15 @@ msgstr "" "(par exemple, ``'1<>2<>3'.split('<>')`` renvoie ``['1', '2', '3']``). " "Découper une chaîne vide en spécifiant *sep* donne ``['']``." -#: library/stdtypes.rst:2009 library/stdtypes.rst:2129 -#: library/stdtypes.rst:3042 library/stdtypes.rst:3149 -#: library/stdtypes.rst:3190 library/stdtypes.rst:3232 -#: library/stdtypes.rst:3264 library/stdtypes.rst:3314 -#: library/stdtypes.rst:3383 library/stdtypes.rst:3407 +#: library/stdtypes.rst:2010 library/stdtypes.rst:2130 +#: library/stdtypes.rst:3043 library/stdtypes.rst:3150 +#: library/stdtypes.rst:3191 library/stdtypes.rst:3233 +#: library/stdtypes.rst:3265 library/stdtypes.rst:3315 +#: library/stdtypes.rst:3384 library/stdtypes.rst:3408 msgid "For example::" msgstr "Par exemple ::" -#: library/stdtypes.rst:2002 +#: library/stdtypes.rst:2003 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive whitespace are regarded as a single separator, " @@ -3269,7 +3275,7 @@ msgstr "" "diviser une chaîne vide ou une chaîne composée d'espaces avec un séparateur " "``None`` renvoie ``[]``." -#: library/stdtypes.rst:2024 +#: library/stdtypes.rst:2025 msgid "" "Return a list of the lines in the string, breaking at line boundaries. Line " "breaks are not included in the resulting list unless *keepends* is given and " @@ -3279,7 +3285,7 @@ msgstr "" "niveau des limites des lignes. Les sauts de ligne ne sont pas inclus dans la " "liste des résultats, sauf si *keepends* est donné, et est vrai." -#: library/stdtypes.rst:2028 +#: library/stdtypes.rst:2029 msgid "" "This method splits on the following line boundaries. In particular, the " "boundaries are a superset of :term:`universal newlines`." @@ -3287,107 +3293,107 @@ msgstr "" "Cette méthode découpe sur les limites de ligne suivantes. Ces limites sont " "un sur ensemble de :term:`universal newlines`." -#: library/stdtypes.rst:2032 +#: library/stdtypes.rst:2033 msgid "Representation" msgstr "Représentation" -#: library/stdtypes.rst:2032 +#: library/stdtypes.rst:2033 msgid "Description" msgstr "Description" -#: library/stdtypes.rst:2034 +#: library/stdtypes.rst:2035 msgid "``\\n``" msgstr "``\\n``" -#: library/stdtypes.rst:2034 +#: library/stdtypes.rst:2035 msgid "Line Feed" msgstr "Saut de ligne" -#: library/stdtypes.rst:2036 +#: library/stdtypes.rst:2037 msgid "``\\r``" msgstr "``\\r``" -#: library/stdtypes.rst:2036 +#: library/stdtypes.rst:2037 msgid "Carriage Return" msgstr "Retour chariot" -#: library/stdtypes.rst:2038 +#: library/stdtypes.rst:2039 msgid "``\\r\\n``" msgstr "``\\r\\n``" -#: library/stdtypes.rst:2038 +#: library/stdtypes.rst:2039 msgid "Carriage Return + Line Feed" msgstr "Retour chariot + saut de ligne" -#: library/stdtypes.rst:2040 +#: library/stdtypes.rst:2041 msgid "``\\v`` or ``\\x0b``" msgstr "``\\v`` or ``\\x0b``" -#: library/stdtypes.rst:2040 +#: library/stdtypes.rst:2041 msgid "Line Tabulation" msgstr "Tabulation verticale" -#: library/stdtypes.rst:2042 +#: library/stdtypes.rst:2043 msgid "``\\f`` or ``\\x0c``" msgstr "``\\f`` or ``\\x0c``" -#: library/stdtypes.rst:2042 +#: library/stdtypes.rst:2043 msgid "Form Feed" msgstr "Saut de page" -#: library/stdtypes.rst:2044 +#: library/stdtypes.rst:2045 msgid "``\\x1c``" msgstr "``\\x1c``" -#: library/stdtypes.rst:2044 +#: library/stdtypes.rst:2045 msgid "File Separator" msgstr "Séparateur de fichiers" -#: library/stdtypes.rst:2046 +#: library/stdtypes.rst:2047 msgid "``\\x1d``" msgstr "``\\x1d``" -#: library/stdtypes.rst:2046 +#: library/stdtypes.rst:2047 msgid "Group Separator" msgstr "Séparateur de groupes" -#: library/stdtypes.rst:2048 +#: library/stdtypes.rst:2049 msgid "``\\x1e``" msgstr "``\\x1e``" -#: library/stdtypes.rst:2048 +#: library/stdtypes.rst:2049 msgid "Record Separator" msgstr "Séparateur d'enregistrements" -#: library/stdtypes.rst:2050 +#: library/stdtypes.rst:2051 msgid "``\\x85``" msgstr "``\\x85``" -#: library/stdtypes.rst:2050 +#: library/stdtypes.rst:2051 msgid "Next Line (C1 Control Code)" msgstr "Ligne suivante (code de contrôle *C1*)" -#: library/stdtypes.rst:2052 +#: library/stdtypes.rst:2053 msgid "``\\u2028``" msgstr "``\\u2028``" -#: library/stdtypes.rst:2052 +#: library/stdtypes.rst:2053 msgid "Line Separator" msgstr "Séparateur de ligne" -#: library/stdtypes.rst:2054 +#: library/stdtypes.rst:2055 msgid "``\\u2029``" msgstr "``\\u2029``" -#: library/stdtypes.rst:2054 +#: library/stdtypes.rst:2055 msgid "Paragraph Separator" msgstr "Séparateur de paragraphe" -#: library/stdtypes.rst:2059 +#: library/stdtypes.rst:2060 msgid "``\\v`` and ``\\f`` added to list of line boundaries." msgstr "``\\v`` et ``\\f`` ajoutés à la liste des limites de lignes." -#: library/stdtypes.rst:2068 +#: library/stdtypes.rst:2069 msgid "" "Unlike :meth:`~str.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -3397,11 +3403,11 @@ msgstr "" "renvoie une liste vide pour la chaîne vide, et un saut de ligne à la fin ne " "se traduit pas par une ligne supplémentaire ::" -#: library/stdtypes.rst:2077 +#: library/stdtypes.rst:2078 msgid "For comparison, ``split('\\n')`` gives::" msgstr "À titre de comparaison, ``split('\\n')`` donne ::" -#: library/stdtypes.rst:2087 +#: library/stdtypes.rst:2088 msgid "" "Return ``True`` if string starts with the *prefix*, otherwise return " "``False``. *prefix* can also be a tuple of prefixes to look for. With " @@ -3413,7 +3419,7 @@ msgstr "" "*start* est donné, la comparaison commence à cette position, et lorsque " "*end* est donné, la comparaison s'arrête à celle ci." -#: library/stdtypes.rst:2095 +#: library/stdtypes.rst:2096 msgid "" "Return a copy of the string with the leading and trailing characters " "removed. The *chars* argument is a string specifying the set of characters " @@ -3427,7 +3433,7 @@ msgstr "" "L'argument *chars* est pas un préfixe ni un suffixe, toutes les combinaisons " "de ses valeurs sont supprimées ::" -#: library/stdtypes.rst:2106 +#: library/stdtypes.rst:2107 msgid "" "The outermost leading and trailing *chars* argument values are stripped from " "the string. Characters are removed from the leading end until reaching a " @@ -3439,7 +3445,7 @@ msgstr "" "figurant pas dans le jeu de caractères dans *chars*. La même opération à " "lieu par la droite. Par exemple ::" -#: library/stdtypes.rst:2119 +#: library/stdtypes.rst:2120 msgid "" "Return a copy of the string with uppercase characters converted to lowercase " "and vice versa. Note that it is not necessarily true that ``s.swapcase()." @@ -3449,7 +3455,7 @@ msgstr "" "convertis en minuscules et vice versa. Notez qu'il est pas nécessairement " "vrai que ``s.swapcase().swapcase() == s``." -#: library/stdtypes.rst:2126 +#: library/stdtypes.rst:2127 msgid "" "Return a titlecased version of the string where words start with an " "uppercase character and the remaining characters are lowercase." @@ -3457,7 +3463,7 @@ msgstr "" "Renvoie une version en initiales majuscules de la chaîne où les mots " "commencent par une capitale et les caractères restants sont en minuscules." -#: library/stdtypes.rst:3351 +#: library/stdtypes.rst:3352 msgid "" "The algorithm uses a simple language-independent definition of a word as " "groups of consecutive letters. The definition works in many contexts but it " @@ -3470,14 +3476,14 @@ msgstr "" "apostrophes (typiquement de la forme possessive en Anglais) forment les " "limites de mot, ce qui n'est pas toujours le résultat souhaité ::" -#: library/stdtypes.rst:3359 +#: library/stdtypes.rst:3360 msgid "" "A workaround for apostrophes can be constructed using regular expressions::" msgstr "" "Une solution pour contourner le problème des apostrophes peut être obtenue " "en utilisant des expressions rationnelles ::" -#: library/stdtypes.rst:2156 +#: library/stdtypes.rst:2157 msgid "" "Return a copy of the string in which each character has been mapped through " "the given translation table. The table must be an object that implements " @@ -3497,7 +3503,7 @@ msgstr "" "pour supprimer le caractère de la chaîne de renvoyée soit lever une " "exception :exc:`LookupError` pour ne pas changer le caractère." -#: library/stdtypes.rst:2165 +#: library/stdtypes.rst:2166 msgid "" "You can use :meth:`str.maketrans` to create a translation map from character-" "to-character mappings in different formats." @@ -3505,7 +3511,7 @@ msgstr "" "Vous pouvez utiliser :meth:`str.maketrans` pour créer une table de " "correspondances de caractères dans différents formats." -#: library/stdtypes.rst:2168 +#: library/stdtypes.rst:2169 msgid "" "See also the :mod:`codecs` module for a more flexible approach to custom " "character mappings." @@ -3513,7 +3519,7 @@ msgstr "" "Voir aussi le module :mod:`codecs` pour une approche plus souple de " "changements de caractères par correspondance." -#: library/stdtypes.rst:2174 +#: library/stdtypes.rst:2175 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "uppercase. Note that ``s.upper().isupper()`` might be ``False`` if ``s`` " @@ -3527,7 +3533,7 @@ msgstr "" "catégorie Unicode d'un caractère du résultat n'est pas \"Lu\" (*Letter*, " "*uppercase*), mais par exemple \"Lt\" (*Letter*, *titlecase*)." -#: library/stdtypes.rst:2180 +#: library/stdtypes.rst:2181 msgid "" "The uppercasing algorithm used is described in section 3.13 of the Unicode " "Standard." @@ -3535,7 +3541,7 @@ msgstr "" "L'algorithme de capitalisation utilisé est décrit dans la section 3.13 de la " "norme Unicode." -#: library/stdtypes.rst:2186 +#: library/stdtypes.rst:2187 msgid "" "Return a copy of the string left filled with ASCII ``'0'`` digits to make a " "string of length *width*. A leading sign prefix (``'+'``/``'-'``) is handled " @@ -3548,11 +3554,11 @@ msgstr "" "rembourrage *après* le caractère désigne plutôt qu'avant. La chaîne " "d'origine est renvoyée si *width* est inférieur ou égale à ``len(s)``." -#: library/stdtypes.rst:2204 +#: library/stdtypes.rst:2205 msgid "``printf``-style String Formatting" msgstr "Formatage de chaines à la ``printf``" -#: library/stdtypes.rst:2217 +#: library/stdtypes.rst:2218 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -3570,7 +3576,7 @@ msgstr "" "ces alternatives apporte son lot d'avantages et inconvénients en matière de " "simplicité, de flexibilité et/ou de généralisation possible." -#: library/stdtypes.rst:2225 +#: library/stdtypes.rst:2226 msgid "" "String objects have one unique built-in operation: the ``%`` operator " "(modulo). This is also known as the string *formatting* or *interpolation* " @@ -3586,7 +3592,7 @@ msgstr "" "plusieurs éléments de *values*. L'effet est similaire à la fonction :c:func:" "`sprintf` du langage C." -#: library/stdtypes.rst:2231 +#: library/stdtypes.rst:2232 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -3598,7 +3604,7 @@ msgstr "" "nombre d'éléments spécifiés par la chaîne de format, ou un seul objet de " "correspondances ( *mapping object*, par exemple, un dictionnaire)." -#: library/stdtypes.rst:3462 +#: library/stdtypes.rst:3463 msgid "" "A conversion specifier contains two or more characters and has the following " "components, which must occur in this order:" @@ -3606,11 +3612,11 @@ msgstr "" "Un indicateur de conversion contient deux ou plusieurs caractères et " "comporte les éléments suivants, qui doivent apparaître dans cet ordre :" -#: library/stdtypes.rst:3465 +#: library/stdtypes.rst:3466 msgid "The ``'%'`` character, which marks the start of the specifier." msgstr "Le caractère ``'%'``, qui marque le début du marqueur." -#: library/stdtypes.rst:3467 +#: library/stdtypes.rst:3468 msgid "" "Mapping key (optional), consisting of a parenthesised sequence of characters " "(for example, ``(somename)``)." @@ -3618,7 +3624,7 @@ msgstr "" "La clé de correspondance (facultative), composée d'une suite de caractères " "entre parenthèse (par exemple, ``(somename)``)." -#: library/stdtypes.rst:3470 +#: library/stdtypes.rst:3471 msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." @@ -3626,7 +3632,7 @@ msgstr "" "Des options de conversion, facultatives, qui affectent le résultat de " "certains types de conversion." -#: library/stdtypes.rst:3473 +#: library/stdtypes.rst:3474 msgid "" "Minimum field width (optional). If specified as an ``'*'`` (asterisk), the " "actual width is read from the next element of the tuple in *values*, and the " @@ -3636,7 +3642,7 @@ msgstr "" "est lue de l'élément suivant du *n*-uplet *values*, et l'objet à convertir " "vient après la largeur de champ minimale et la précision facultative." -#: library/stdtypes.rst:3477 +#: library/stdtypes.rst:3478 msgid "" "Precision (optional), given as a ``'.'`` (dot) followed by the precision. " "If specified as ``'*'`` (an asterisk), the actual precision is read from the " @@ -3648,15 +3654,15 @@ msgstr "" "lue à partir de l'élément suivant du *n*-uplet *values* et la valeur à " "convertir vient ensuite." -#: library/stdtypes.rst:3482 +#: library/stdtypes.rst:3483 msgid "Length modifier (optional)." msgstr "Modificateur de longueur (facultatif)." -#: library/stdtypes.rst:3484 +#: library/stdtypes.rst:3485 msgid "Conversion type." msgstr "Type de conversion." -#: library/stdtypes.rst:2265 +#: library/stdtypes.rst:2266 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the string *must* include a parenthesised mapping key into that " @@ -3669,7 +3675,7 @@ msgstr "" "caractère ``'%'``. La clé indique quelle valeur du dictionnaire doit être " "formatée. Par exemple :" -#: library/stdtypes.rst:3495 +#: library/stdtypes.rst:3496 msgid "" "In this case no ``*`` specifiers may occur in a format (since they require a " "sequential parameter list)." @@ -3677,36 +3683,36 @@ msgstr "" "Dans ce cas, aucune ``*`` ne peuvent se trouver dans le format (car ces " "``*`` nécessitent une liste (accès séquentiel) de paramètres)." -#: library/stdtypes.rst:3498 +#: library/stdtypes.rst:3499 msgid "The conversion flag characters are:" msgstr "Les caractères indicateurs de conversion sont :" -#: library/stdtypes.rst:3507 +#: library/stdtypes.rst:3508 msgid "Flag" msgstr "Option" -#: library/stdtypes.rst:3509 +#: library/stdtypes.rst:3510 msgid "``'#'``" msgstr "``'#'``" -#: library/stdtypes.rst:3509 +#: library/stdtypes.rst:3510 msgid "" "The value conversion will use the \"alternate form\" (where defined below)." msgstr "La conversion utilisera la \"forme alternative\" (définie ci-dessous)." -#: library/stdtypes.rst:3512 +#: library/stdtypes.rst:3513 msgid "``'0'``" msgstr "``'0'``" -#: library/stdtypes.rst:3512 +#: library/stdtypes.rst:3513 msgid "The conversion will be zero padded for numeric values." msgstr "Les valeurs numériques converties seront complétée de zéros." -#: library/stdtypes.rst:3514 +#: library/stdtypes.rst:3515 msgid "``'-'``" msgstr "``'-'``" -#: library/stdtypes.rst:3514 +#: library/stdtypes.rst:3515 msgid "" "The converted value is left adjusted (overrides the ``'0'`` conversion if " "both are given)." @@ -3714,11 +3720,11 @@ msgstr "" "La valeur convertie est ajustée à gauche (remplace la conversion ``'0'`` si " "les deux sont données)." -#: library/stdtypes.rst:3517 +#: library/stdtypes.rst:3518 msgid "``' '``" msgstr "``' '``" -#: library/stdtypes.rst:3517 +#: library/stdtypes.rst:3518 msgid "" "(a space) A blank should be left before a positive number (or empty string) " "produced by a signed conversion." @@ -3726,11 +3732,11 @@ msgstr "" "(un espace) Un espace doit être laissé avant un nombre positif (ou chaîne " "vide) produite par la conversion d'une valeur signée." -#: library/stdtypes.rst:3520 +#: library/stdtypes.rst:3521 msgid "``'+'``" msgstr "``'+'``" -#: library/stdtypes.rst:3520 +#: library/stdtypes.rst:3521 msgid "" "A sign character (``'+'`` or ``'-'``) will precede the conversion (overrides " "a \"space\" flag)." @@ -3738,7 +3744,7 @@ msgstr "" "Un caractère de signe (``'+'`` ou ``'-'``) précède la valeur convertie " "(remplace le marqueur \"espace\")." -#: library/stdtypes.rst:3524 +#: library/stdtypes.rst:3525 msgid "" "A length modifier (``h``, ``l``, or ``L``) may be present, but is ignored as " "it is not necessary for Python -- so e.g. ``%ld`` is identical to ``%d``." @@ -3747,91 +3753,91 @@ msgstr "" "est ignoré car il est pas nécessaire pour Python, donc par exemple ``%ld`` " "est identique à ``%d``." -#: library/stdtypes.rst:3527 +#: library/stdtypes.rst:3528 msgid "The conversion types are:" msgstr "Les types utilisables dans les conversion sont :" -#: library/stdtypes.rst:3530 +#: library/stdtypes.rst:3531 msgid "Conversion" msgstr "Conversion" -#: library/stdtypes.rst:3532 +#: library/stdtypes.rst:3533 msgid "``'d'``" msgstr "``'d'``" -#: library/stdtypes.rst:2313 library/stdtypes.rst:3534 +#: library/stdtypes.rst:2314 library/stdtypes.rst:3535 msgid "Signed integer decimal." msgstr "Entier décimal signé." -#: library/stdtypes.rst:3534 +#: library/stdtypes.rst:3535 msgid "``'i'``" msgstr "``'i'``" -#: library/stdtypes.rst:3536 +#: library/stdtypes.rst:3537 msgid "``'o'``" msgstr "``'o'``" -#: library/stdtypes.rst:3536 +#: library/stdtypes.rst:3537 msgid "Signed octal value." msgstr "Valeur octale signée." -#: library/stdtypes.rst:3538 +#: library/stdtypes.rst:3539 msgid "``'u'``" msgstr "``'u'``" -#: library/stdtypes.rst:3538 +#: library/stdtypes.rst:3539 msgid "Obsolete type -- it is identical to ``'d'``." msgstr "Type obsolète — identique à ``'d'``." -#: library/stdtypes.rst:3540 +#: library/stdtypes.rst:3541 msgid "``'x'``" msgstr "``'x'``" -#: library/stdtypes.rst:3540 +#: library/stdtypes.rst:3541 msgid "Signed hexadecimal (lowercase)." msgstr "Hexadécimal signé (en minuscules)." -#: library/stdtypes.rst:3542 +#: library/stdtypes.rst:3543 msgid "``'X'``" msgstr "``'X'``" -#: library/stdtypes.rst:3542 +#: library/stdtypes.rst:3543 msgid "Signed hexadecimal (uppercase)." msgstr "Hexadécimal signé (capitales)." -#: library/stdtypes.rst:3544 +#: library/stdtypes.rst:3545 msgid "``'e'``" msgstr "``'e'``" -#: library/stdtypes.rst:3544 +#: library/stdtypes.rst:3545 msgid "Floating point exponential format (lowercase)." msgstr "Format exponentiel pour un *float* (minuscule)." -#: library/stdtypes.rst:3546 +#: library/stdtypes.rst:3547 msgid "``'E'``" msgstr "``'E'``" -#: library/stdtypes.rst:3546 +#: library/stdtypes.rst:3547 msgid "Floating point exponential format (uppercase)." msgstr "Format exponentiel pour un *float* (en capitales)." -#: library/stdtypes.rst:3548 +#: library/stdtypes.rst:3549 msgid "``'f'``" msgstr "``'f'``" -#: library/stdtypes.rst:2329 library/stdtypes.rst:3550 +#: library/stdtypes.rst:2330 library/stdtypes.rst:3551 msgid "Floating point decimal format." msgstr "Format décimal pour un *float*." -#: library/stdtypes.rst:3550 +#: library/stdtypes.rst:3551 msgid "``'F'``" msgstr "``'F'``" -#: library/stdtypes.rst:3552 +#: library/stdtypes.rst:3553 msgid "``'g'``" msgstr "``'g'``" -#: library/stdtypes.rst:3552 +#: library/stdtypes.rst:3553 msgid "" "Floating point format. Uses lowercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -3840,11 +3846,11 @@ msgstr "" "inférieur à ``-4`` ou pas plus petit que la précision, sinon le format " "décimal." -#: library/stdtypes.rst:3556 +#: library/stdtypes.rst:3557 msgid "``'G'``" msgstr "``'G'``" -#: library/stdtypes.rst:3556 +#: library/stdtypes.rst:3557 msgid "" "Floating point format. Uses uppercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -3853,51 +3859,51 @@ msgstr "" "inférieur à ``-4`` ou pas plus petit que la précision, sinon le format " "décimal." -#: library/stdtypes.rst:3560 +#: library/stdtypes.rst:3561 msgid "``'c'``" msgstr "``'c'``" -#: library/stdtypes.rst:2339 +#: library/stdtypes.rst:2340 msgid "Single character (accepts integer or single character string)." msgstr "" "Un seul caractère (accepte des entiers ou une chaîne d'un seul caractère)." -#: library/stdtypes.rst:3573 +#: library/stdtypes.rst:3574 msgid "``'r'``" msgstr "``'r'``" -#: library/stdtypes.rst:2342 +#: library/stdtypes.rst:2343 msgid "String (converts any Python object using :func:`repr`)." msgstr "String (convertit n'importe quel objet Python avec :func:`repr`)." -#: library/stdtypes.rst:3567 +#: library/stdtypes.rst:3568 msgid "``'s'``" msgstr "``'s'``" -#: library/stdtypes.rst:2345 +#: library/stdtypes.rst:2346 msgid "String (converts any Python object using :func:`str`)." msgstr "String (convertit n'importe quel objet Python avec :func:`str`)." -#: library/stdtypes.rst:3570 +#: library/stdtypes.rst:3571 msgid "``'a'``" msgstr "``'a'``" -#: library/stdtypes.rst:2348 +#: library/stdtypes.rst:2349 msgid "String (converts any Python object using :func:`ascii`)." msgstr "" "String (convertit n'importe quel objet Python en utilisant :func:`ascii`)." -#: library/stdtypes.rst:3576 +#: library/stdtypes.rst:3577 msgid "``'%'``" msgstr "``'%'``" -#: library/stdtypes.rst:3576 +#: library/stdtypes.rst:3577 msgid "No argument is converted, results in a ``'%'`` character in the result." msgstr "" "Aucun argument n'est converti, donne un caractère de ``'%'`` dans le " "résultat." -#: library/stdtypes.rst:3583 +#: library/stdtypes.rst:3584 msgid "" "The alternate form causes a leading octal specifier (``'0o'``) to be " "inserted before the first digit." @@ -3905,7 +3911,7 @@ msgstr "" "La forme alternative entraîne l'insertion d'un préfixe octal (``'0o'``) " "avant le premier chiffre." -#: library/stdtypes.rst:3587 +#: library/stdtypes.rst:3588 msgid "" "The alternate form causes a leading ``'0x'`` or ``'0X'`` (depending on " "whether the ``'x'`` or ``'X'`` format was used) to be inserted before the " @@ -3915,7 +3921,7 @@ msgstr "" "(respectivement pour les formats ``'x'`` et ``'X'``) avant le premier " "chiffre." -#: library/stdtypes.rst:3591 +#: library/stdtypes.rst:3592 msgid "" "The alternate form causes the result to always contain a decimal point, even " "if no digits follow it." @@ -3923,14 +3929,14 @@ msgstr "" "La forme alternative implique la présence d'un point décimal, même si aucun " "chiffre ne le suit." -#: library/stdtypes.rst:3594 +#: library/stdtypes.rst:3595 msgid "" "The precision determines the number of digits after the decimal point and " "defaults to 6." msgstr "" "La précision détermine le nombre de chiffres après la virgule, 6 par défaut." -#: library/stdtypes.rst:3598 +#: library/stdtypes.rst:3599 msgid "" "The alternate form causes the result to always contain a decimal point, and " "trailing zeroes are not removed as they would otherwise be." @@ -3938,7 +3944,7 @@ msgstr "" "La forme alternative implique la présence d'un point décimal et les zéros " "non significatifs sont conservés (ils ne le seraient pas autrement)." -#: library/stdtypes.rst:3601 +#: library/stdtypes.rst:3602 msgid "" "The precision determines the number of significant digits before and after " "the decimal point and defaults to 6." @@ -3946,15 +3952,15 @@ msgstr "" "La précision détermine le nombre de chiffres significatifs avant et après la " "virgule. 6 par défaut." -#: library/stdtypes.rst:3605 +#: library/stdtypes.rst:3606 msgid "If precision is ``N``, the output is truncated to ``N`` characters." msgstr "Si la précision est ``N``, la sortie est tronquée à ``N`` caractères." -#: library/stdtypes.rst:3614 +#: library/stdtypes.rst:3615 msgid "See :pep:`237`." msgstr "Voir la :pep:`237`." -#: library/stdtypes.rst:2385 +#: library/stdtypes.rst:2386 msgid "" "Since Python strings have an explicit length, ``%s`` conversions do not " "assume that ``'\\0'`` is the end of the string." @@ -3962,7 +3968,7 @@ msgstr "" "Puisque les chaînes Python ont une longueur explicite, les conversions ``" "%s`` ne considèrent pas ``'\\0'`` comme la fin de la chaîne." -#: library/stdtypes.rst:2390 +#: library/stdtypes.rst:2391 msgid "" "``%f`` conversions for numbers whose absolute value is over 1e50 are no " "longer replaced by ``%g`` conversions." @@ -3970,7 +3976,7 @@ msgstr "" "Les conversions ``%f`` pour nombres dont la valeur absolue est supérieure à " "``1e50`` ne sont plus remplacés par des conversions ``%g``." -#: library/stdtypes.rst:2401 +#: library/stdtypes.rst:2402 msgid "" "Binary Sequence Types --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" @@ -3978,7 +3984,7 @@ msgstr "" "Séquences Binaires --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" -#: library/stdtypes.rst:2409 +#: library/stdtypes.rst:2410 msgid "" "The core built-in types for manipulating binary data are :class:`bytes` and :" "class:`bytearray`. They are supported by :class:`memoryview` which uses the :" @@ -3990,7 +3996,7 @@ msgstr "" "qui utilise le :ref:`buffer protocol ` pour accéder à la " "mémoire d'autres objets binaires sans avoir besoin d'en faire une copie." -#: library/stdtypes.rst:2414 +#: library/stdtypes.rst:2415 msgid "" "The :mod:`array` module supports efficient storage of basic data types like " "32-bit integers and IEEE754 double-precision floating values." @@ -3998,11 +4004,11 @@ msgstr "" "Le module :mod:`array` permet le stockage efficace de types basiques comme " "les entiers de 32 bits et les *float* double précision IEEE754." -#: library/stdtypes.rst:2420 +#: library/stdtypes.rst:2421 msgid "Bytes Objects" msgstr "Objets *bytes*" -#: library/stdtypes.rst:2424 +#: library/stdtypes.rst:2425 msgid "" "Bytes objects are immutable sequences of single bytes. Since many major " "binary protocols are based on the ASCII text encoding, bytes objects offer " @@ -4014,7 +4020,7 @@ msgstr "" "méthodes qui ne sont valables que lors de la manipulation de données ASCII " "et sont étroitement liés aux objets *str* dans bien d'autres aspects." -#: library/stdtypes.rst:2431 +#: library/stdtypes.rst:2432 msgid "" "Firstly, the syntax for bytes literals is largely the same as that for " "string literals, except that a ``b`` prefix is added:" @@ -4022,24 +4028,25 @@ msgstr "" "Tout d'abord, la syntaxe des *bytes* littéraux est en grande partie la même " "que pour les chaînes littérales, en dehors du préfixe ``b`` :" -#: library/stdtypes.rst:2434 +#: library/stdtypes.rst:2435 msgid "Single quotes: ``b'still allows embedded \"double\" quotes'``" msgstr "" "Les guillemets simples : ``b'autorisent aussi les guillemets \"doubles\"'``" -#: library/stdtypes.rst:2435 -msgid "Double quotes: ``b\"still allows embedded 'single' quotes\"``." +#: library/stdtypes.rst:2436 +#, fuzzy +msgid "Double quotes: ``b\"still allows embedded 'single' quotes\"``" msgstr "" "Les guillemets doubles : ``b\"permettent aussi les guillemets 'simples'\"``." -#: library/stdtypes.rst:2436 +#: library/stdtypes.rst:2437 msgid "" "Triple quoted: ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes\"\"\"``" msgstr "" "Les guillemets triples : ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes" "\"\"\"``" -#: library/stdtypes.rst:2438 +#: library/stdtypes.rst:2439 msgid "" "Only ASCII characters are permitted in bytes literals (regardless of the " "declared source code encoding). Any binary values over 127 must be entered " @@ -4050,7 +4057,7 @@ msgstr "" "delà de 127 doivent être entrées dans littéraux de *bytes* en utilisant une " "séquence d'échappement appropriée." -#: library/stdtypes.rst:2442 +#: library/stdtypes.rst:2443 msgid "" "As with string literals, bytes literals may also use a ``r`` prefix to " "disable processing of escape sequences. See :ref:`strings` for more about " @@ -4062,7 +4069,7 @@ msgstr "" "différentes formes littérales de *bytes*, y compris les séquences " "d'échappement supportées." -#: library/stdtypes.rst:2446 +#: library/stdtypes.rst:2447 msgid "" "While bytes literals and representations are based on ASCII text, bytes " "objects actually behave like immutable sequences of integers, with each " @@ -4085,7 +4092,7 @@ msgstr "" "sur des données binaires qui ne sont pas compatibles ASCII conduit " "généralement à leur corruption)." -#: library/stdtypes.rst:2456 +#: library/stdtypes.rst:2457 msgid "" "In addition to the literal forms, bytes objects can be created in a number " "of other ways:" @@ -4093,26 +4100,26 @@ msgstr "" "En plus des formes littérales, des objets *bytes* peuvent être créés par de " "nombreux moyens :" -#: library/stdtypes.rst:2459 +#: library/stdtypes.rst:2460 msgid "A zero-filled bytes object of a specified length: ``bytes(10)``" msgstr "" "Un objet *bytes* rempli de zéros d'une longueur spécifiée : ``bytes(10)``" -#: library/stdtypes.rst:2460 +#: library/stdtypes.rst:2461 msgid "From an iterable of integers: ``bytes(range(20))``" msgstr "D'un itérable d'entiers : ``bytes(range(20))``" -#: library/stdtypes.rst:2461 +#: library/stdtypes.rst:2462 msgid "Copying existing binary data via the buffer protocol: ``bytes(obj)``" msgstr "" "Copier des données binaires existantes via le *buffer protocol* : " "``bytes(obj)``" -#: library/stdtypes.rst:2463 +#: library/stdtypes.rst:2464 msgid "Also see the :ref:`bytes ` built-in." msgstr "Voir aussi la fonction native :ref:`bytes `." -#: library/stdtypes.rst:2465 +#: library/stdtypes.rst:2466 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4124,7 +4131,7 @@ msgstr "" "données binaires. Par conséquent, le type *bytes* a une méthode de classe " "pour lire des données dans ce format :" -#: library/stdtypes.rst:2471 +#: library/stdtypes.rst:2472 msgid "" "This :class:`bytes` class method returns a bytes object, decoding the given " "string object. The string must contain two hexadecimal digits per byte, " @@ -4134,7 +4141,7 @@ msgstr "" "la chaîne donnée. La chaîne doit contenir deux chiffres hexadécimaux par " "octet, les espaces ASCII sont ignorés." -#: library/stdtypes.rst:2478 +#: library/stdtypes.rst:2479 msgid "" ":meth:`bytes.fromhex` now skips all ASCII whitespace in the string, not just " "spaces." @@ -4142,7 +4149,7 @@ msgstr "" ":meth:`bytes.fromhex` saute maintenant dans la chaîne tous les caractères " "ASCII \"blancs\", pas seulement les espaces." -#: library/stdtypes.rst:2482 +#: library/stdtypes.rst:2483 msgid "" "A reverse conversion function exists to transform a bytes object into its " "hexadecimal representation." @@ -4150,7 +4157,7 @@ msgstr "" "Une fonction de conversion inverse existe pour transformer un objet *bytes* " "en sa représentation hexadécimale." -#: library/stdtypes.rst:2581 +#: library/stdtypes.rst:2582 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the instance." @@ -4158,7 +4165,7 @@ msgstr "" "Renvoie une chaîne contenant deux chiffres hexadécimaux pour chaque octet du " "*byte*." -#: library/stdtypes.rst:2493 +#: library/stdtypes.rst:2494 msgid "" "If you want to make the hex string easier to read, you can specify a single " "character separator *sep* parameter to include in the output. By default " @@ -4173,7 +4180,7 @@ msgstr "" "Les valeurs positives calculent la position du séparateur en partant de la " "droite, les valeurs négatives de la gauche." -#: library/stdtypes.rst:2509 +#: library/stdtypes.rst:2510 msgid "" ":meth:`bytes.hex` now supports optional *sep* and *bytes_per_sep* parameters " "to insert separators between bytes in the hex output." @@ -4182,7 +4189,7 @@ msgstr "" "et *bytes_per_sep* pour insérer des séparateurs entre les octets dans la " "sortie hexadécimale." -#: library/stdtypes.rst:2513 +#: library/stdtypes.rst:2514 msgid "" "Since bytes objects are sequences of integers (akin to a tuple), for a bytes " "object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be a bytes " @@ -4194,7 +4201,7 @@ msgstr "" "que``b[0:1]`` sera un objet *bytes* de longueur 1. (Cela contraste avec les " "chaînes, où l'indexation et le *slicing* donne une chaîne de longueur 1)" -#: library/stdtypes.rst:2518 +#: library/stdtypes.rst:2519 msgid "" "The representation of bytes objects uses the literal format (``b'...'``) " "since it is often more useful than e.g. ``bytes([46, 46, 46])``. You can " @@ -4204,7 +4211,7 @@ msgstr "" "est souvent plus utile que par exemple ``bytes([46, 46, 46])``. Vous pouvez " "toujours convertir un *bytes* en liste d'entiers en utilisant ``list(b)``." -#: library/stdtypes.rst:2523 +#: library/stdtypes.rst:2524 msgid "" "For Python 2.x users: In the Python 2.x series, a variety of implicit " "conversions between 8-bit strings (the closest thing 2.x offers to a built-" @@ -4225,11 +4232,11 @@ msgstr "" "conversions entre les données binaires et texte Unicode doivent être " "explicites, et les *bytes* sont toujours différents des chaînes." -#: library/stdtypes.rst:2536 +#: library/stdtypes.rst:2537 msgid "Bytearray Objects" msgstr "Objets *bytearray*" -#: library/stdtypes.rst:2540 +#: library/stdtypes.rst:2541 msgid "" ":class:`bytearray` objects are a mutable counterpart to :class:`bytes` " "objects." @@ -4237,7 +4244,7 @@ msgstr "" "Les objets :class:`bytearray` sont l'équivalent muable des objets :class:" "`bytes`." -#: library/stdtypes.rst:2545 +#: library/stdtypes.rst:2546 msgid "" "There is no dedicated literal syntax for bytearray objects, instead they are " "always created by calling the constructor:" @@ -4245,27 +4252,27 @@ msgstr "" "Il n'y a pas de syntaxe littérale dédiée aux *bytearray*, ils sont toujours " "créés en appelant le constructeur :" -#: library/stdtypes.rst:2548 +#: library/stdtypes.rst:2549 msgid "Creating an empty instance: ``bytearray()``" msgstr "Créer une instance vide: ``bytearray()``" -#: library/stdtypes.rst:2549 +#: library/stdtypes.rst:2550 msgid "Creating a zero-filled instance with a given length: ``bytearray(10)``" msgstr "" "Créer une instance remplie de zéros d'une longueur donnée : ``bytearray(10)``" -#: library/stdtypes.rst:2550 +#: library/stdtypes.rst:2551 msgid "From an iterable of integers: ``bytearray(range(20))``" msgstr "À partir d'un itérable d'entiers : ``bytearray(range(20))``" -#: library/stdtypes.rst:2551 +#: library/stdtypes.rst:2552 msgid "" "Copying existing binary data via the buffer protocol: ``bytearray(b'Hi!')``" msgstr "" "Copie des données binaires existantes via le *buffer protocol* : " "``bytearray(b'Hi!')``" -#: library/stdtypes.rst:2553 +#: library/stdtypes.rst:2554 msgid "" "As bytearray objects are mutable, they support the :ref:`mutable ` sequence operations in addition to the common bytes and bytearray " @@ -4275,11 +4282,11 @@ msgstr "" "séquence :ref:`muables ` en plus des opérations communes " "de *bytes* et *bytearray* décrites dans :ref:`bytes-methods`." -#: library/stdtypes.rst:2557 +#: library/stdtypes.rst:2558 msgid "Also see the :ref:`bytearray ` built-in." msgstr "Voir aussi la fonction native :ref:`bytearray `." -#: library/stdtypes.rst:2559 +#: library/stdtypes.rst:2560 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4291,7 +4298,7 @@ msgstr "" "données binaires. Par conséquent, le type *bytearray* a une méthode de " "classe pour lire les données dans ce format :" -#: library/stdtypes.rst:2565 +#: library/stdtypes.rst:2566 msgid "" "This :class:`bytearray` class method returns bytearray object, decoding the " "given string object. The string must contain two hexadecimal digits per " @@ -4301,7 +4308,7 @@ msgstr "" "décodant la chaîne donnée. La chaîne doit contenir deux chiffres " "hexadécimaux par octet, les espaces ASCII sont ignorés." -#: library/stdtypes.rst:2572 +#: library/stdtypes.rst:2573 msgid "" ":meth:`bytearray.fromhex` now skips all ASCII whitespace in the string, not " "just spaces." @@ -4309,7 +4316,7 @@ msgstr "" ":meth:`bytearray.fromhex` saute maintenant tous les caractères \"blancs\" " "ASCII dans la chaîne, pas seulement les espaces." -#: library/stdtypes.rst:2576 +#: library/stdtypes.rst:2577 msgid "" "A reverse conversion function exists to transform a bytearray object into " "its hexadecimal representation." @@ -4317,7 +4324,7 @@ msgstr "" "Une fonction de conversion inverse existe pour transformer un objet " "*bytearray* en sa représentation hexadécimale." -#: library/stdtypes.rst:2589 +#: library/stdtypes.rst:2590 #, fuzzy msgid "" "Similar to :meth:`bytes.hex`, :meth:`bytearray.hex` now supports optional " @@ -4328,7 +4335,7 @@ msgstr "" "et *bytes_per_sep* pour insérer des séparateurs entre les octets dans la " "sortie hexadécimale." -#: library/stdtypes.rst:2594 +#: library/stdtypes.rst:2595 msgid "" "Since bytearray objects are sequences of integers (akin to a list), for a " "bytearray object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be " @@ -4341,7 +4348,7 @@ msgstr "" "chaînes de texte, où l'indexation et le *slicing* produit une chaîne de " "longueur 1)" -#: library/stdtypes.rst:2599 +#: library/stdtypes.rst:2600 msgid "" "The representation of bytearray objects uses the bytes literal format " "(``bytearray(b'...')``) since it is often more useful than e.g. " @@ -4353,11 +4360,11 @@ msgstr "" "exemple ``bytearray([46, 46, 46])``. Vous pouvez toujours convertir un objet " "*bytearray* en une liste de nombres entiers en utilisant ``list(b)``." -#: library/stdtypes.rst:2608 +#: library/stdtypes.rst:2609 msgid "Bytes and Bytearray Operations" msgstr "Opérations sur les *bytes* et *bytearray*" -#: library/stdtypes.rst:2613 +#: library/stdtypes.rst:2614 msgid "" "Both bytes and bytearray objects support the :ref:`common ` " "sequence operations. They interoperate not just with operands of the same " @@ -4372,7 +4379,7 @@ msgstr "" "opérations sans provoquer d'erreurs. Cependant, le type du résultat peut " "dépendre de l'ordre des opérandes." -#: library/stdtypes.rst:2621 +#: library/stdtypes.rst:2622 msgid "" "The methods on bytes and bytearray objects don't accept strings as their " "arguments, just as the methods on strings don't accept bytes as their " @@ -4382,11 +4389,11 @@ msgstr "" "comme arguments, tout comme les méthodes sur les chaînes n'acceptent pas les " "*bytes* comme arguments. Par exemple, vous devez écrire ::" -#: library/stdtypes.rst:2628 +#: library/stdtypes.rst:2629 msgid "and::" msgstr "et ::" -#: library/stdtypes.rst:2633 +#: library/stdtypes.rst:2634 msgid "" "Some bytes and bytearray operations assume the use of ASCII compatible " "binary formats, and hence should be avoided when working with arbitrary " @@ -4397,7 +4404,7 @@ msgstr "" "travaillez avec des données binaires arbitraires. Ces restrictions sont " "couvertes ci-dessous." -#: library/stdtypes.rst:2638 +#: library/stdtypes.rst:2639 msgid "" "Using these ASCII based operations to manipulate binary data that is not " "stored in an ASCII based format may lead to data corruption." @@ -4405,7 +4412,7 @@ msgstr "" "Utiliser ces opérations basées sur l'ASCII pour manipuler des données " "binaires qui ne sont pas au format ASCII peut les corrompre." -#: library/stdtypes.rst:2641 +#: library/stdtypes.rst:2642 msgid "" "The following methods on bytes and bytearray objects can be used with " "arbitrary binary data." @@ -4413,7 +4420,7 @@ msgstr "" "Les méthodes suivantes sur les *bytes* et *bytearray* peuvent être utilisées " "avec des données binaires arbitraires." -#: library/stdtypes.rst:2647 +#: library/stdtypes.rst:2648 msgid "" "Return the number of non-overlapping occurrences of subsequence *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -4423,8 +4430,8 @@ msgstr "" "séquence *sub* dans l'intervalle [*start*, *end*]. Les arguments facultatifs " "*start* et *end* sont interprétés comme pour un *slice*." -#: library/stdtypes.rst:2750 library/stdtypes.rst:2838 -#: library/stdtypes.rst:2851 +#: library/stdtypes.rst:2751 library/stdtypes.rst:2839 +#: library/stdtypes.rst:2852 msgid "" "The subsequence to search for may be any :term:`bytes-like object` or an " "integer in the range 0 to 255." @@ -4432,31 +4439,31 @@ msgstr "" "La sous-séquence à rechercher peut être un quelconque :term:`bytes-like " "object` ou un nombre entier compris entre 0 et 255." -#: library/stdtypes.rst:2762 library/stdtypes.rst:2841 -#: library/stdtypes.rst:2854 +#: library/stdtypes.rst:2763 library/stdtypes.rst:2842 +#: library/stdtypes.rst:2855 msgid "Also accept an integer in the range 0 to 255 as the subsequence." msgstr "" "Accepte aussi un nombre entier compris entre 0 et 255 comme sous-séquence." -#: library/stdtypes.rst:2661 +#: library/stdtypes.rst:2662 msgid "" "If the binary data starts with the *prefix* string, return " "``bytes[len(prefix):]``. Otherwise, return a copy of the original binary " "data::" msgstr "" -#: library/stdtypes.rst:2670 +#: library/stdtypes.rst:2671 #, fuzzy msgid "The *prefix* may be any :term:`bytes-like object`." msgstr "" "Le préfixe(s) à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2696 library/stdtypes.rst:2919 -#: library/stdtypes.rst:2964 library/stdtypes.rst:3020 -#: library/stdtypes.rst:3108 library/stdtypes.rst:3275 -#: library/stdtypes.rst:3373 library/stdtypes.rst:3416 -#: library/stdtypes.rst:3618 +#: library/stdtypes.rst:2697 library/stdtypes.rst:2920 +#: library/stdtypes.rst:2965 library/stdtypes.rst:3021 +#: library/stdtypes.rst:3109 library/stdtypes.rst:3276 +#: library/stdtypes.rst:3374 library/stdtypes.rst:3417 +#: library/stdtypes.rst:3619 msgid "" "The bytearray version of this method does *not* operate in place - it always " "produces a new object, even if no changes were made." @@ -4465,21 +4472,21 @@ msgstr "" "produit toujours un nouvel objet, même si aucune modification n'a été " "effectuée." -#: library/stdtypes.rst:2683 +#: library/stdtypes.rst:2684 msgid "" "If the binary data ends with the *suffix* string and that *suffix* is not " "empty, return ``bytes[:-len(suffix)]``. Otherwise, return a copy of the " "original binary data::" msgstr "" -#: library/stdtypes.rst:2692 +#: library/stdtypes.rst:2693 #, fuzzy msgid "The *suffix* may be any :term:`bytes-like object`." msgstr "" "Les suffixes à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2705 +#: library/stdtypes.rst:2706 msgid "" "Return a string decoded from the given bytes. Default encoding is " "``'utf-8'``. *errors* may be given to set a different error handling " @@ -4498,14 +4505,14 @@ msgstr "" "register_error`, voir la section :ref:`error-handlers`. Pour une liste des " "encodages possibles, voir la section :ref:`standard-encodings`." -#: library/stdtypes.rst:2713 +#: library/stdtypes.rst:2714 msgid "" "By default, the *errors* argument is not checked for best performances, but " "only used at the first decoding error. Enable the :ref:`Python Development " "Mode `, or use a :ref:`debug build ` to check *errors*." msgstr "" -#: library/stdtypes.rst:2719 +#: library/stdtypes.rst:2720 msgid "" "Passing the *encoding* argument to :class:`str` allows decoding any :term:" "`bytes-like object` directly, without needing to make a temporary bytes or " @@ -4515,11 +4522,11 @@ msgstr "" "`bytes-like object` directement, sans avoir besoin d'utiliser un *bytes* ou " "*bytearray* temporaire." -#: library/stdtypes.rst:2723 +#: library/stdtypes.rst:2724 msgid "Added support for keyword arguments." msgstr "Gère les arguments nommés." -#: library/stdtypes.rst:2734 +#: library/stdtypes.rst:2735 msgid "" "Return ``True`` if the binary data ends with the specified *suffix*, " "otherwise return ``False``. *suffix* can also be a tuple of suffixes to " @@ -4532,13 +4539,13 @@ msgstr "" "position. Avec l'argument optionnel *end*, la comparaison s'arrête à cette " "position." -#: library/stdtypes.rst:2739 +#: library/stdtypes.rst:2740 msgid "The suffix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Les suffixes à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2745 +#: library/stdtypes.rst:2746 msgid "" "Return the lowest index in the data where the subsequence *sub* is found, " "such that *sub* is contained in the slice ``s[start:end]``. Optional " @@ -4550,7 +4557,7 @@ msgstr "" "facultatifs *start* et *end* sont interprétés comme dans la notation des " "*slices*. Donne ``-1`` si *sub* n'est pas trouvé." -#: library/stdtypes.rst:2755 +#: library/stdtypes.rst:2756 msgid "" "The :meth:`~bytes.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -4560,7 +4567,7 @@ msgstr "" "de connaître la position de *sub*. Pour vérifier si *sub* est présent ou " "non, utilisez l'opérateur :keyword:`in` ::" -#: library/stdtypes.rst:2769 +#: library/stdtypes.rst:2770 msgid "" "Like :meth:`~bytes.find`, but raise :exc:`ValueError` when the subsequence " "is not found." @@ -4568,7 +4575,7 @@ msgstr "" "Comme :meth:`~bytes.find`, mais lève une :exc:`ValueError` lorsque la " "séquence est introuvable." -#: library/stdtypes.rst:2782 +#: library/stdtypes.rst:2783 msgid "" "Return a bytes or bytearray object which is the concatenation of the binary " "data sequences in *iterable*. A :exc:`TypeError` will be raised if there " @@ -4584,7 +4591,7 @@ msgstr "" "éléments est le contenu du *bytes* ou du *bytearray* depuis lequel cette " "méthode est appelée." -#: library/stdtypes.rst:2793 +#: library/stdtypes.rst:2794 msgid "" "This static method returns a translation table usable for :meth:`bytes." "translate` that will map each character in *from* into the character at the " @@ -4597,7 +4604,7 @@ msgstr "" "être des :term:`bytes-like objects ` et avoir la même " "longueur." -#: library/stdtypes.rst:2804 +#: library/stdtypes.rst:2805 msgid "" "Split the sequence at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -4611,11 +4618,11 @@ msgstr "" "est pas trouvé, le triplet renvoyé contiendra une copie de la séquence " "d'origine, suivi de deux *bytes* ou *bytearray* vides." -#: library/stdtypes.rst:2868 +#: library/stdtypes.rst:2869 msgid "The separator to search for may be any :term:`bytes-like object`." msgstr "Le séparateur à rechercher peut être tout :term:`bytes-like object`." -#: library/stdtypes.rst:2817 +#: library/stdtypes.rst:2818 msgid "" "Return a copy of the sequence with all occurrences of subsequence *old* " "replaced by *new*. If the optional argument *count* is given, only the " @@ -4625,7 +4632,7 @@ msgstr "" "séquence *old* sont remplacées par *new*. Si l'argument optionnel *count* " "est donné, seules les *count* premières occurrences de sont remplacés." -#: library/stdtypes.rst:2821 +#: library/stdtypes.rst:2822 msgid "" "The subsequence to search for and its replacement may be any :term:`bytes-" "like object`." @@ -4633,7 +4640,7 @@ msgstr "" "La sous-séquence à rechercher et son remplacement peuvent être n'importe " "quel :term:`bytes-like object`." -#: library/stdtypes.rst:2833 +#: library/stdtypes.rst:2834 msgid "" "Return the highest index in the sequence where the subsequence *sub* is " "found, such that *sub* is contained within ``s[start:end]``. Optional " @@ -4645,7 +4652,7 @@ msgstr "" "sont interprétés comme dans la notation des *slices*. Donne ``-1`` si *sub* " "n'est pas trouvable." -#: library/stdtypes.rst:2848 +#: library/stdtypes.rst:2849 msgid "" "Like :meth:`~bytes.rfind` but raises :exc:`ValueError` when the subsequence " "*sub* is not found." @@ -4653,7 +4660,7 @@ msgstr "" "Semblable à :meth:`~bytes.rfind` mais lève une :exc:`ValueError` lorsque " "*sub* est introuvable." -#: library/stdtypes.rst:2861 +#: library/stdtypes.rst:2862 msgid "" "Split the sequence at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -4667,7 +4674,7 @@ msgstr "" "Si le séparateur n'est pas trouvé, le triplet contiendra deux *bytes* ou " "*bytesarray* vides suivi d’une copie de la séquence d'origine." -#: library/stdtypes.rst:2874 +#: library/stdtypes.rst:2875 msgid "" "Return ``True`` if the binary data starts with the specified *prefix*, " "otherwise return ``False``. *prefix* can also be a tuple of prefixes to " @@ -4679,13 +4686,13 @@ msgstr "" "rechercher. Avec l'argument *start* la recherche commence à cette position. " "Avec l'argument *end* option, la recherche s'arrête à cette position." -#: library/stdtypes.rst:2879 +#: library/stdtypes.rst:2880 msgid "The prefix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Le préfixe(s) à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: library/stdtypes.rst:2885 +#: library/stdtypes.rst:2886 msgid "" "Return a copy of the bytes or bytearray object where all bytes occurring in " "the optional argument *delete* are removed, and the remaining bytes have " @@ -4696,25 +4703,25 @@ msgstr "" "*delete* sont supprimés, et les octets restants changés par la table de " "correspondance donnée, qui doit être un objet *bytes* d'une longueur de 256." -#: library/stdtypes.rst:2890 +#: library/stdtypes.rst:2891 msgid "" "You can use the :func:`bytes.maketrans` method to create a translation table." msgstr "" "Vous pouvez utiliser la méthode :func:`bytes.maketrans` pour créer une table " "de correspondance." -#: library/stdtypes.rst:2893 +#: library/stdtypes.rst:2894 msgid "" "Set the *table* argument to ``None`` for translations that only delete " "characters::" msgstr "" "Donnez ``None`` comme *table* pour seulement supprimer des caractères ::" -#: library/stdtypes.rst:2899 +#: library/stdtypes.rst:2900 msgid "*delete* is now supported as a keyword argument." msgstr "*delete* est maintenant accepté comme argument nommé." -#: library/stdtypes.rst:2903 +#: library/stdtypes.rst:2904 msgid "" "The following methods on bytes and bytearray objects have default behaviours " "that assume the use of ASCII compatible binary formats, but can still be " @@ -4728,7 +4735,7 @@ msgstr "" "appropriés. Notez que toutes les méthodes de *bytearray* de cette section " "ne travaillent jamais sur l'objet lui même, mais renvoient un nouvel objet." -#: library/stdtypes.rst:2912 +#: library/stdtypes.rst:2913 msgid "" "Return a copy of the object centered in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4740,7 +4747,7 @@ msgstr "" "espace ASCII). Pour les objets :class:`bytes`, la séquence initiale est " "renvoyée si *width* est inférieur ou égal à ``len(s)``." -#: library/stdtypes.rst:2926 +#: library/stdtypes.rst:2927 msgid "" "Return a copy of the object left justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4752,7 +4759,7 @@ msgstr "" "espace ASCII). Pour les objets :class:`bytes`, la séquence initiale est " "renvoyée si *width* est inférieure ou égale à ``len(s)``." -#: library/stdtypes.rst:2940 +#: library/stdtypes.rst:2941 msgid "" "Return a copy of the sequence with specified leading bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4769,14 +4776,14 @@ msgstr "" "*chars* n’est pas un préfixe, toutes les combinaisons de ses valeurs sont " "supprimées ::" -#: library/stdtypes.rst:2952 +#: library/stdtypes.rst:2953 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removeprefix` for a method that will remove a " "single prefix string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:2971 +#: library/stdtypes.rst:2972 msgid "" "Return a copy of the object right justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4788,7 +4795,7 @@ msgstr "" "défaut est un espace ASCII). Pour les objets :class:`bytes`, la séquence " "d'origine est renvoyée si *width* est inférieure ou égale à ``len(s)``." -#: library/stdtypes.rst:2985 +#: library/stdtypes.rst:2986 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given, at most *maxsplit* splits are " @@ -4805,7 +4812,7 @@ msgstr "" "meth:`rsplit` se comporte comme :meth:`split` qui est décrit en détail ci-" "dessous." -#: library/stdtypes.rst:2996 +#: library/stdtypes.rst:2997 msgid "" "Return a copy of the sequence with specified trailing bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4820,14 +4827,14 @@ msgstr "" "supprimés. L'argument *chars* n'est pas un suffixe : toutes les combinaisons " "de ses valeurs sont retirées ::" -#: library/stdtypes.rst:3008 +#: library/stdtypes.rst:3009 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removesuffix` for a method that will remove a " "single suffix string rather than all of a set of characters. For example::" msgstr "" -#: library/stdtypes.rst:3027 +#: library/stdtypes.rst:3028 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given and non-negative, at most " @@ -4841,7 +4848,7 @@ msgstr "" "éléments), Si *maxsplit* n'est pas spécifié ou faut ``-1``, il n'y a aucune " "limite au nombre de découpes (elles sont toutes effectuées)." -#: library/stdtypes.rst:3033 +#: library/stdtypes.rst:3034 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty subsequences (for example, ``b'1,,2'.split(b',')`` " @@ -4859,7 +4866,7 @@ msgstr "" "``[b'']`` ou ``[bytearray(b'')]`` en fonction du type de l'objet découpé. " "L'argument *sep* peut être n'importe quel :term:`bytes-like object`." -#: library/stdtypes.rst:3051 +#: library/stdtypes.rst:3052 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive ASCII whitespace are regarded as a single " @@ -4875,7 +4882,7 @@ msgstr "" "diviser une séquence vide ou une séquence composée d'espaces ASCII avec un " "séparateur ``None`` renvoie ``[]``." -#: library/stdtypes.rst:3072 +#: library/stdtypes.rst:3073 msgid "" "Return a copy of the sequence with specified leading and trailing bytes " "removed. The *chars* argument is a binary sequence specifying the set of " @@ -4891,14 +4898,14 @@ msgstr "" "espaces ASCII sont supprimés. L'argument *chars* n'est ni un préfixe ni un " "suffixe, toutes les combinaisons de ses valeurs sont supprimées ::" -#: library/stdtypes.rst:3085 +#: library/stdtypes.rst:3086 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`." msgstr "" "La séquence de valeurs à supprimer peut être tout :term:`bytes-like object`." -#: library/stdtypes.rst:3094 +#: library/stdtypes.rst:3095 msgid "" "The following methods on bytes and bytearray objects assume the use of ASCII " "compatible binary formats and should not be applied to arbitrary binary " @@ -4911,7 +4918,7 @@ msgstr "" "que toutes les méthodes de *bytearray* de cette section *ne modifient pas* " "les octets, ils produisent de nouveaux objets." -#: library/stdtypes.rst:3102 +#: library/stdtypes.rst:3103 msgid "" "Return a copy of the sequence with each byte interpreted as an ASCII " "character, and the first byte capitalized and the rest lowercased. Non-ASCII " @@ -4921,7 +4928,7 @@ msgstr "" "caractère ASCII, le premier octet en capitale et le reste en minuscules. Les " "octets non ASCII ne sont pas modifiés." -#: library/stdtypes.rst:3115 +#: library/stdtypes.rst:3116 msgid "" "Return a copy of the sequence where all ASCII tab characters are replaced by " "one or more ASCII spaces, depending on the current column and the given tab " @@ -4952,7 +4959,7 @@ msgstr "" "cours est incrémentée de un indépendamment de la façon dont l'octet est " "représenté lors de l’affichage ::" -#: library/stdtypes.rst:3143 +#: library/stdtypes.rst:3144 msgid "" "Return ``True`` if all bytes in the sequence are alphabetical ASCII " "characters or ASCII decimal digits and the sequence is not empty, ``False`` " @@ -4967,7 +4974,7 @@ msgstr "" "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'`` et les " "chiffres : ``b'0123456789'``." -#: library/stdtypes.rst:3160 +#: library/stdtypes.rst:3161 msgid "" "Return ``True`` if all bytes in the sequence are alphabetic ASCII characters " "and the sequence is not empty, ``False`` otherwise. Alphabetic ASCII " @@ -4979,7 +4986,7 @@ msgstr "" "caractères ASCII alphabétiques sont : " "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: library/stdtypes.rst:3176 +#: library/stdtypes.rst:3177 msgid "" "Return ``True`` if the sequence is empty or all bytes in the sequence are " "ASCII, ``False`` otherwise. ASCII bytes are in the range 0-0x7F." @@ -4988,7 +4995,7 @@ msgstr "" "octets ASCII, renvoie ``False`` dans le cas contraire. Les octets ASCII dans " "l'intervalle ``0``---``0x7F``." -#: library/stdtypes.rst:3186 +#: library/stdtypes.rst:3187 msgid "" "Return ``True`` if all bytes in the sequence are ASCII decimal digits and " "the sequence is not empty, ``False`` otherwise. ASCII decimal digits are " @@ -4998,7 +5005,7 @@ msgstr "" "et que la séquence n'est pas vide, sinon ``False``. Les chiffres ASCII sont " "ceux dans la séquence d'octets ``b'0123456789'``." -#: library/stdtypes.rst:3201 +#: library/stdtypes.rst:3202 msgid "" "Return ``True`` if there is at least one lowercase ASCII character in the " "sequence and no uppercase ASCII characters, ``False`` otherwise." @@ -5006,8 +5013,8 @@ msgstr "" "Renvoie ``True`` s'il y a au moins un caractère ASCII minuscule dans la " "séquence et aucune capitale, sinon ``False``." -#: library/stdtypes.rst:3253 library/stdtypes.rst:3319 -#: library/stdtypes.rst:3388 +#: library/stdtypes.rst:3254 library/stdtypes.rst:3320 +#: library/stdtypes.rst:3389 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -5016,7 +5023,7 @@ msgstr "" "Les caractères ASCII minuscules sont ``b'abcdefghijklmnopqrstuvwxyz'``. Les " "capitales ASCII sont ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: library/stdtypes.rst:3219 +#: library/stdtypes.rst:3220 msgid "" "Return ``True`` if all bytes in the sequence are ASCII whitespace and the " "sequence is not empty, ``False`` otherwise. ASCII whitespace characters are " @@ -5028,7 +5035,7 @@ msgstr "" "\\t\\n\\r\\x0b\\f'`` (espace, tabulation, saut de ligne, retour chariot, " "tabulation verticale, saut de page)." -#: library/stdtypes.rst:3228 +#: library/stdtypes.rst:3229 msgid "" "Return ``True`` if the sequence is ASCII titlecase and the sequence is not " "empty, ``False`` otherwise. See :meth:`bytes.title` for more details on the " @@ -5038,7 +5045,7 @@ msgstr "" "vide, sinon ``False``. Voir :meth:`bytes.title` pour plus de détails sur la " "définition de *titlecase*." -#: library/stdtypes.rst:3243 +#: library/stdtypes.rst:3244 msgid "" "Return ``True`` if there is at least one uppercase alphabetic ASCII " "character in the sequence and no lowercase ASCII characters, ``False`` " @@ -5047,7 +5054,7 @@ msgstr "" "Renvoie ``True`` s'il y a au moins un caractère alphabétique majuscule ASCII " "dans la séquence et aucun caractère ASCII minuscule, sinon ``False``." -#: library/stdtypes.rst:3261 +#: library/stdtypes.rst:3262 msgid "" "Return a copy of the sequence with all the uppercase ASCII characters " "converted to their corresponding lowercase counterpart." @@ -5055,7 +5062,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII en " "majuscules sont convertis en leur équivalent en minuscules." -#: library/stdtypes.rst:3286 +#: library/stdtypes.rst:3287 msgid "" "Return a list of the lines in the binary sequence, breaking at ASCII line " "boundaries. This method uses the :term:`universal newlines` approach to " @@ -5067,7 +5074,7 @@ msgstr "" "newlines` pour découper les lignes. Les fins de ligne ne sont pas inclus " "dans la liste des résultats, sauf si *keepends* est donné et vrai." -#: library/stdtypes.rst:3298 +#: library/stdtypes.rst:3299 msgid "" "Unlike :meth:`~bytes.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -5077,7 +5084,7 @@ msgstr "" "cette méthode renvoie une liste vide pour la chaîne vide, et un saut de " "ligne à la fin ne se traduit pas par une ligne supplémentaire ::" -#: library/stdtypes.rst:3311 +#: library/stdtypes.rst:3312 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart and vice-versa." @@ -5085,7 +5092,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII minuscules " "sont convertis en majuscules et vice-versa." -#: library/stdtypes.rst:3323 +#: library/stdtypes.rst:3324 msgid "" "Unlike :func:`str.swapcase()`, it is always the case that ``bin.swapcase()." "swapcase() == bin`` for the binary versions. Case conversions are " @@ -5096,7 +5103,7 @@ msgstr "" "bin`` est toujours vrai. Les conversions majuscule/minuscule en ASCII étant " "toujours symétrique, ce qui n'est pas toujours vrai avec Unicode." -#: library/stdtypes.rst:3337 +#: library/stdtypes.rst:3338 msgid "" "Return a titlecased version of the binary sequence where words start with an " "uppercase ASCII character and the remaining characters are lowercase. " @@ -5106,7 +5113,7 @@ msgstr "" "commencent par un caractère ASCII majuscule et les caractères restants sont " "en minuscules. Les octets non capitalisables ne sont pas modifiés." -#: library/stdtypes.rst:3346 +#: library/stdtypes.rst:3347 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -5117,7 +5124,7 @@ msgstr "" "caractères ASCII majuscules sont ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``. Aucun " "autre octet n'est capitalisable." -#: library/stdtypes.rst:3380 +#: library/stdtypes.rst:3381 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart." @@ -5125,7 +5132,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII minuscules " "sont convertis en leur équivalent majuscule." -#: library/stdtypes.rst:3401 +#: library/stdtypes.rst:3402 msgid "" "Return a copy of the sequence left filled with ASCII ``b'0'`` digits to make " "a sequence of length *width*. A leading sign prefix (``b'+'``/ ``b'-'``) is " @@ -5140,11 +5147,11 @@ msgstr "" "séquence d'origine est renvoyée si *width* est inférieur ou égale à " "``len(seq)``." -#: library/stdtypes.rst:3423 +#: library/stdtypes.rst:3424 msgid "``printf``-style Bytes Formatting" msgstr "Formatage de *bytes* a la ``printf``" -#: library/stdtypes.rst:3440 +#: library/stdtypes.rst:3441 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -5157,7 +5164,7 @@ msgstr "" "correctement). Si la valeur à afficher peut être un *n*-uplet ou un " "dictionnaire, mettez le a l'intérieur d'un autre *n*-uplet." -#: library/stdtypes.rst:3445 +#: library/stdtypes.rst:3446 msgid "" "Bytes objects (``bytes``/``bytearray``) have one unique built-in operation: " "the ``%`` operator (modulo). This is also known as the bytes *formatting* or " @@ -5173,7 +5180,7 @@ msgstr "" "plus de *values*. L'effet est similaire à la fonction :c:func:`sprintf` du " "langage C." -#: library/stdtypes.rst:3452 +#: library/stdtypes.rst:3453 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -5185,7 +5192,7 @@ msgstr "" "nombre d'éléments spécifiés dans le format en *bytes*, ou un seul objet de " "correspondances ( *mapping object*, par exemple, un dictionnaire)." -#: library/stdtypes.rst:3486 +#: library/stdtypes.rst:3487 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the bytes object *must* include a parenthesised mapping key into " @@ -5198,15 +5205,15 @@ msgstr "" "caractère ``'%'``. La clé indique quelle valeur du dictionnaire doit être " "formatée. Par exemple :" -#: library/stdtypes.rst:3560 +#: library/stdtypes.rst:3561 msgid "Single byte (accepts integer or single byte objects)." msgstr "Octet simple (Accepte un nombre entier ou un seul objet *byte*)." -#: library/stdtypes.rst:3563 +#: library/stdtypes.rst:3564 msgid "``'b'``" msgstr "``'b'``" -#: library/stdtypes.rst:3563 +#: library/stdtypes.rst:3564 msgid "" "Bytes (any object that follows the :ref:`buffer protocol ` or " "has :meth:`__bytes__`)." @@ -5214,7 +5221,7 @@ msgstr "" "*Bytes* (tout objet respectant le :ref:`buffer protocol ` ou " "ayant la méthode :meth:`__bytes__`)." -#: library/stdtypes.rst:3567 +#: library/stdtypes.rst:3568 msgid "" "``'s'`` is an alias for ``'b'`` and should only be used for Python2/3 code " "bases." @@ -5222,7 +5229,7 @@ msgstr "" "``'s'`` est un alias de ``'b'`` et ne devrait être utilisé que pour du code " "Python2/3." -#: library/stdtypes.rst:3570 +#: library/stdtypes.rst:3571 msgid "" "Bytes (converts any Python object using ``repr(obj)." "encode('ascii','backslashreplace)``)." @@ -5230,7 +5237,7 @@ msgstr "" "*Bytes* (convertis n'importe quel objet Python en utilisant ``repr(obj)." "encode('ascii', 'backslashreplace)``)." -#: library/stdtypes.rst:3573 +#: library/stdtypes.rst:3574 msgid "" "``'r'`` is an alias for ``'a'`` and should only be used for Python2/3 code " "bases." @@ -5238,27 +5245,27 @@ msgstr "" "``'r'`` est un alias de ``'a'`` et ne devrait être utilise que dans du code " "Python2/3." -#: library/stdtypes.rst:3573 +#: library/stdtypes.rst:3574 msgid "\\(7)" msgstr "\\(7)" -#: library/stdtypes.rst:3608 +#: library/stdtypes.rst:3609 msgid "``b'%s'`` is deprecated, but will not be removed during the 3.x series." msgstr "``b'%s'`` est obsolète, mais ne sera pas retiré des version 3.x." -#: library/stdtypes.rst:3611 +#: library/stdtypes.rst:3612 msgid "``b'%r'`` is deprecated, but will not be removed during the 3.x series." msgstr "``b'%r'`` est obsolète mais ne sera pas retiré dans Python 3.x." -#: library/stdtypes.rst:3623 +#: library/stdtypes.rst:3624 msgid ":pep:`461` - Adding % formatting to bytes and bytearray" msgstr ":pep:`461` -- Ajout du formatage via % aux *bytes* et *bytesarray*" -#: library/stdtypes.rst:3630 +#: library/stdtypes.rst:3631 msgid "Memory Views" msgstr "Vues de mémoires" -#: library/stdtypes.rst:3632 +#: library/stdtypes.rst:3633 msgid "" ":class:`memoryview` objects allow Python code to access the internal data of " "an object that supports the :ref:`buffer protocol ` without " @@ -5268,7 +5275,7 @@ msgstr "" "données internes d'un objet prenant en charge le :ref:`buffer protocol " "`." -#: library/stdtypes.rst:3638 +#: library/stdtypes.rst:3639 #, fuzzy msgid "" "Create a :class:`memoryview` that references *object*. *object* must " @@ -5279,7 +5286,7 @@ msgstr "" "le *buffer protocol*. Les objets natifs prenant en charge le *buffer " "protocol* sont :class:`bytes` et :class:`bytearray`." -#: library/stdtypes.rst:3642 +#: library/stdtypes.rst:3643 #, fuzzy msgid "" "A :class:`memoryview` has the notion of an *element*, which is the atomic " @@ -5293,7 +5300,7 @@ msgstr "" "d'autres types tels que :class:`array.array` les éléments peuvent être plus " "grands." -#: library/stdtypes.rst:3647 +#: library/stdtypes.rst:3648 msgid "" "``len(view)`` is equal to the length of :class:`~memoryview.tolist`. If " "``view.ndim = 0``, the length is 1. If ``view.ndim = 1``, the length is " @@ -5309,7 +5316,7 @@ msgstr "" "L'attribut :class:`~memoryview.itemsize` vous donnera la taille en octets " "d'un élément." -#: library/stdtypes.rst:3654 +#: library/stdtypes.rst:3655 msgid "" "A :class:`memoryview` supports slicing and indexing to expose its data. One-" "dimensional slicing will result in a subview::" @@ -5317,7 +5324,7 @@ msgstr "" "Une :class:`memoryview` autorise le découpage et l'indiçage de ses données. " "Découper sur une dimension donnera une sous-vue ::" -#: library/stdtypes.rst:3667 +#: library/stdtypes.rst:3668 msgid "" "If :class:`~memoryview.format` is one of the native format specifiers from " "the :mod:`struct` module, indexing with an integer or a tuple of integers is " @@ -5336,11 +5343,11 @@ msgstr "" "Les *memoryviews* à zéro dimension peuvent être indexées avec un *n*-uplet " "vide." -#: library/stdtypes.rst:3676 +#: library/stdtypes.rst:3677 msgid "Here is an example with a non-byte format::" msgstr "Voici un exemple avec un autre format que *byte* ::" -#: library/stdtypes.rst:3688 +#: library/stdtypes.rst:3689 msgid "" "If the underlying object is writable, the memoryview supports one-" "dimensional slice assignment. Resizing is not allowed::" @@ -5349,7 +5356,7 @@ msgstr "" "autorisera les assignations de tranches à une dimension. Redimensionner " "n'est cependant pas autorisé ::" -#: library/stdtypes.rst:3709 +#: library/stdtypes.rst:3710 msgid "" "One-dimensional memoryviews of hashable (read-only) types with formats 'B', " "'b' or 'c' are also hashable. The hash is defined as ``hash(m) == hash(m." @@ -5359,7 +5366,7 @@ msgstr "" "les formats 'B', 'b', ou 'c' sont aussi hachables. La fonction de hachage " "est définie tel que ``hash(m) == hash(m.tobytes())`` ::" -#: library/stdtypes.rst:3721 +#: library/stdtypes.rst:3722 msgid "" "One-dimensional memoryviews can now be sliced. One-dimensional memoryviews " "with formats 'B', 'b' or 'c' are now hashable." @@ -5368,7 +5375,7 @@ msgstr "" "*memoryviews* à une dimension avec les formats 'B', 'b', ou 'c' sont " "maintenant hachables." -#: library/stdtypes.rst:3725 +#: library/stdtypes.rst:3726 msgid "" "memoryview is now registered automatically with :class:`collections.abc." "Sequence`" @@ -5376,16 +5383,16 @@ msgstr "" "*memoryview* est maintenant enregistrée automatiquement avec :class:" "`collections.abc.Sequence`" -#: library/stdtypes.rst:3729 +#: library/stdtypes.rst:3730 msgid "memoryviews can now be indexed with tuple of integers." msgstr "" "les *memoryviews* peut maintenant être indexées par un *n*-uplet d'entiers." -#: library/stdtypes.rst:3732 +#: library/stdtypes.rst:3733 msgid ":class:`memoryview` has several methods:" msgstr "La :class:`memoryview` dispose de plusieurs méthodes :" -#: library/stdtypes.rst:3736 +#: library/stdtypes.rst:3737 msgid "" "A memoryview and a :pep:`3118` exporter are equal if their shapes are " "equivalent and if all corresponding values are equal when the operands' " @@ -5396,7 +5403,7 @@ msgstr "" "égales, le format respectifs des opérandes étant interprétés en utilisant la " "syntaxe de :mod:`struct`." -#: library/stdtypes.rst:3740 +#: library/stdtypes.rst:3741 msgid "" "For the subset of :mod:`struct` format strings currently supported by :meth:" "`tolist`, ``v`` and ``w`` are equal if ``v.tolist() == w.tolist()``::" @@ -5404,7 +5411,7 @@ msgstr "" "Pour le sous-ensemble des formats de :mod:`struct` supportés par :meth:" "`tolist`, ``v`` et ``w`` sont égaux si ``v.tolist() ==w.tolist()`` ::" -#: library/stdtypes.rst:3759 +#: library/stdtypes.rst:3760 msgid "" "If either format string is not supported by the :mod:`struct` module, then " "the objects will always compare as unequal (even if the format strings and " @@ -5414,7 +5421,7 @@ msgstr "" "objets seront toujours considérés différents (même si les formats et les " "valeurs contenues sont identiques) ::" -#: library/stdtypes.rst:3775 +#: library/stdtypes.rst:3776 msgid "" "Note that, as with floating point numbers, ``v is w`` does *not* imply ``v " "== w`` for memoryview objects." @@ -5422,7 +5429,7 @@ msgstr "" "Notez que pour les *memoryview*, comme pour les nombres à virgule flottante, " "``v is w`` *n'implique pas* ``v == w``." -#: library/stdtypes.rst:3778 +#: library/stdtypes.rst:3779 msgid "" "Previous versions compared the raw memory disregarding the item format and " "the logical array structure." @@ -5430,7 +5437,7 @@ msgstr "" "Les versions précédentes comparaient la mémoire brute sans tenir compte du " "format de l'objet ni de sa structure logique." -#: library/stdtypes.rst:3784 +#: library/stdtypes.rst:3785 msgid "" "Return the data in the buffer as a bytestring. This is equivalent to " "calling the :class:`bytes` constructor on the memoryview. ::" @@ -5438,7 +5445,7 @@ msgstr "" "Renvoie les données du *buffer* sous forme de *bytes*. Cela équivaut à " "appeler le constructeur :class:`bytes` sur le *memoryview*. ::" -#: library/stdtypes.rst:3793 +#: library/stdtypes.rst:3794 msgid "" "For non-contiguous arrays the result is equal to the flattened list " "representation with all elements converted to bytes. :meth:`tobytes` " @@ -5450,7 +5457,7 @@ msgstr "" "`tobytes` supporte toutes les chaînes de format, y compris celles qui ne " "sont pas connues du module :mod:`struct`." -#: library/stdtypes.rst:3798 +#: library/stdtypes.rst:3799 msgid "" "*order* can be {'C', 'F', 'A'}. When *order* is 'C' or 'F', the data of the " "original array is converted to C or Fortran order. For contiguous views, 'A' " @@ -5465,7 +5472,7 @@ msgstr "" "contiguës, les données sont d'abord converties en C. `order=None` est " "identique à `order='C'`." -#: library/stdtypes.rst:3807 +#: library/stdtypes.rst:3808 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the buffer. ::" @@ -5473,7 +5480,7 @@ msgstr "" "Renvoie une chaîne contenant deux chiffres hexadécimaux pour chaque octet de " "la mémoire. ::" -#: library/stdtypes.rst:3816 +#: library/stdtypes.rst:3817 #, fuzzy msgid "" "Similar to :meth:`bytes.hex`, :meth:`memoryview.hex` now supports optional " @@ -5484,12 +5491,12 @@ msgstr "" "et *bytes_per_sep* pour insérer des séparateurs entre les octets dans la " "sortie hexadécimale." -#: library/stdtypes.rst:3823 +#: library/stdtypes.rst:3824 msgid "Return the data in the buffer as a list of elements. ::" msgstr "" "Renvoie les données de la mémoire sous la forme d'une liste d'éléments. ::" -#: library/stdtypes.rst:3833 +#: library/stdtypes.rst:3834 msgid "" ":meth:`tolist` now supports all single character native formats in :mod:" "`struct` module syntax as well as multi-dimensional representations." @@ -5497,7 +5504,7 @@ msgstr "" ":meth:`tolist` prend désormais en charge tous les formats d'un caractère du " "module :mod:`struct` ainsi que des représentations multidimensionnelles." -#: library/stdtypes.rst:3840 +#: library/stdtypes.rst:3841 msgid "" "Return a readonly version of the memoryview object. The original memoryview " "object is unchanged. ::" @@ -5505,7 +5512,7 @@ msgstr "" "Renvoie une version en lecture seule de l'objet *memoryview*. Cet objet " "original *memoryview* est inchangé. ::" -#: library/stdtypes.rst:3859 +#: library/stdtypes.rst:3860 msgid "" "Release the underlying buffer exposed by the memoryview object. Many " "objects take special actions when a view is held on them (for example, a :" @@ -5520,7 +5527,7 @@ msgstr "" "lever ces restrictions (et en libérer les ressources liées) aussi tôt que " "possible." -#: library/stdtypes.rst:3865 +#: library/stdtypes.rst:3866 msgid "" "After this method has been called, any further operation on the view raises " "a :class:`ValueError` (except :meth:`release()` itself which can be called " @@ -5530,7 +5537,7 @@ msgstr "" "*view* lève une :class:`ValueError` (sauf :meth:`release()` elle-même qui " "peut être appelée plusieurs fois) ::" -#: library/stdtypes.rst:3876 +#: library/stdtypes.rst:3877 msgid "" "The context management protocol can be used for a similar effect, using the " "``with`` statement::" @@ -5538,7 +5545,7 @@ msgstr "" "Le protocole de gestion de contexte peut être utilisé pour obtenir un effet " "similaire, via l'instruction ``with`` ::" -#: library/stdtypes.rst:3892 +#: library/stdtypes.rst:3893 msgid "" "Cast a memoryview to a new format or shape. *shape* defaults to " "``[byte_length//new_itemsize]``, which means that the result view will be " @@ -5552,7 +5559,7 @@ msgstr "" "mais la mémoire elle-même n'est pas copiée. Les changements supportés sont " "une dimension vers C-:term:`contiguous` et *C-contiguous* vers une dimension." -#: library/stdtypes.rst:3898 +#: library/stdtypes.rst:3899 msgid "" "The destination format is restricted to a single element native format in :" "mod:`struct` syntax. One of the formats must be a byte format ('B', 'b' or " @@ -5563,37 +5570,37 @@ msgstr "" "'c'). La longueur du résultat en octets doit être la même que la longueur " "initiale." -#: library/stdtypes.rst:3903 +#: library/stdtypes.rst:3904 msgid "Cast 1D/long to 1D/unsigned bytes::" msgstr "Transforme *1D/long* en *1D/unsigned bytes* ::" -#: library/stdtypes.rst:3926 +#: library/stdtypes.rst:3927 msgid "Cast 1D/unsigned bytes to 1D/char::" msgstr "Transforme *1D/unsigned bytes* en *1D/char* ::" -#: library/stdtypes.rst:3939 +#: library/stdtypes.rst:3940 msgid "Cast 1D/bytes to 3D/ints to 1D/signed char::" msgstr "Transforme *1D/bytes* en *3D/ints* en *1D/signed char* ::" -#: library/stdtypes.rst:3965 +#: library/stdtypes.rst:3966 msgid "Cast 1D/unsigned long to 2D/unsigned long::" msgstr "Transforme *1D/unsigned char* en *2D/unsigned long* ::" -#: library/stdtypes.rst:3979 +#: library/stdtypes.rst:3980 msgid "The source format is no longer restricted when casting to a byte view." msgstr "" "Le format de la source n'est plus restreint lors de la transformation vers " "une vue d'octets." -#: library/stdtypes.rst:3982 +#: library/stdtypes.rst:3983 msgid "There are also several readonly attributes available:" msgstr "Plusieurs attributs en lecture seule sont également disponibles :" -#: library/stdtypes.rst:3986 +#: library/stdtypes.rst:3987 msgid "The underlying object of the memoryview::" msgstr "L'objet sous-jacent de la *memoryview* ::" -#: library/stdtypes.rst:3997 +#: library/stdtypes.rst:3998 msgid "" "``nbytes == product(shape) * itemsize == len(m.tobytes())``. This is the " "amount of space in bytes that the array would use in a contiguous " @@ -5603,15 +5610,15 @@ msgstr "" "l'espace que la liste utiliserait en octets, dans une représentation " "contiguë. Ce n'est pas nécessairement égale à ``len(m)`` ::" -#: library/stdtypes.rst:4016 +#: library/stdtypes.rst:4017 msgid "Multi-dimensional arrays::" msgstr "Tableaux multidimensionnels ::" -#: library/stdtypes.rst:4033 +#: library/stdtypes.rst:4034 msgid "A bool indicating whether the memory is read only." msgstr "Un booléen indiquant si la mémoire est en lecture seule." -#: library/stdtypes.rst:4037 +#: library/stdtypes.rst:4038 msgid "" "A string containing the format (in :mod:`struct` module style) for each " "element in the view. A memoryview can be created from exporters with " @@ -5623,7 +5630,7 @@ msgstr "" "de formats arbitraires, mais certaines méthodes (comme :meth:`tolist`) sont " "limitées aux formats natifs à un seul élément." -#: library/stdtypes.rst:4042 +#: library/stdtypes.rst:4043 msgid "" "format ``'B'`` is now handled according to the struct module syntax. This " "means that ``memoryview(b'abc')[0] == b'abc'[0] == 97``." @@ -5631,11 +5638,11 @@ msgstr "" "le format ``'B'`` est maintenant traité selon la syntaxe du module *struct*. " "Cela signifie que ``memoryview(b'abc')[0] == b'abc'[0] == 97``." -#: library/stdtypes.rst:4048 +#: library/stdtypes.rst:4049 msgid "The size in bytes of each element of the memoryview::" msgstr "La taille en octets de chaque élément d'une *memoryview* ::" -#: library/stdtypes.rst:4061 +#: library/stdtypes.rst:4062 msgid "" "An integer indicating how many dimensions of a multi-dimensional array the " "memory represents." @@ -5643,7 +5650,7 @@ msgstr "" "Un nombre entier indiquant le nombre de dimensions d'un tableau multi-" "dimensionnel représenté par la *memoryview*." -#: library/stdtypes.rst:4066 +#: library/stdtypes.rst:4067 msgid "" "A tuple of integers the length of :attr:`ndim` giving the shape of the " "memory as an N-dimensional array." @@ -5651,11 +5658,11 @@ msgstr "" "Un *n*-uplet d'entiers de longueur :attr:`ndim` donnant la forme de la " "*memoryview* sous forme d'un tableau à N dimensions." -#: library/stdtypes.rst:4077 +#: library/stdtypes.rst:4078 msgid "An empty tuple instead of ``None`` when ndim = 0." msgstr "Un *n*-uplet vide au lieu de ``None`` lorsque *ndim = 0*." -#: library/stdtypes.rst:4074 +#: library/stdtypes.rst:4075 msgid "" "A tuple of integers the length of :attr:`ndim` giving the size in bytes to " "access each element for each dimension of the array." @@ -5663,29 +5670,29 @@ msgstr "" "Un *n*-uplet d'entiers de longueur :attr:`ndim` donnant la taille en octets " "permettant d'accéder à chaque dimensions du tableau." -#: library/stdtypes.rst:4082 +#: library/stdtypes.rst:4083 msgid "Used internally for PIL-style arrays. The value is informational only." msgstr "" "Détail de l'implémentation des *PIL-style arrays*. La valeur n'est donné " "qu'a titre d'information." -#: library/stdtypes.rst:4086 +#: library/stdtypes.rst:4087 msgid "A bool indicating whether the memory is C-:term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est C-:term:`contiguous`." -#: library/stdtypes.rst:4092 +#: library/stdtypes.rst:4093 msgid "A bool indicating whether the memory is Fortran :term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est Fortran :term:`contiguous`." -#: library/stdtypes.rst:4098 +#: library/stdtypes.rst:4099 msgid "A bool indicating whether the memory is :term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est :term:`contiguous`." -#: library/stdtypes.rst:4106 +#: library/stdtypes.rst:4107 msgid "Set Types --- :class:`set`, :class:`frozenset`" msgstr "Types d'ensembles — :class:`set`, :class:`frozenset`" -#: library/stdtypes.rst:4110 +#: library/stdtypes.rst:4111 msgid "" "A :dfn:`set` object is an unordered collection of distinct :term:`hashable` " "objects. Common uses include membership testing, removing duplicates from a " @@ -5701,7 +5708,7 @@ msgstr "" "(Pour les autres conteneurs, voir les classes natives :class:`dict`, :class:" "`list`, et :class:`tuple`, ainsi que le module :mod:`collections`.)" -#: library/stdtypes.rst:4117 +#: library/stdtypes.rst:4118 msgid "" "Like other collections, sets support ``x in set``, ``len(set)``, and ``for x " "in set``. Being an unordered collection, sets do not record element " @@ -5714,7 +5721,7 @@ msgstr "" "d'insertion. En conséquence, les *sets* n'autorisent ni l'indexation, ni le " "découpage, ou tout autre comportement de séquence." -#: library/stdtypes.rst:4122 +#: library/stdtypes.rst:4123 msgid "" "There are currently two built-in set types, :class:`set` and :class:" "`frozenset`. The :class:`set` type is mutable --- the contents can be " @@ -5734,7 +5741,7 @@ msgstr "" "--- son contenu ne peut être modifié après sa création, il peut ainsi être " "utilisé comme clef de dictionnaire ou élément d'un autre *set*." -#: library/stdtypes.rst:4130 +#: library/stdtypes.rst:4131 msgid "" "Non-empty sets (not frozensets) can be created by placing a comma-separated " "list of elements within braces, for example: ``{'jack', 'sjoerd'}``, in " @@ -5744,11 +5751,11 @@ msgstr "" "d'éléments séparés par des virgules et entre accolades, par exemple : " "``{'jack', 'sjoerd'}``, en plus du constructeur de la classe :class:`set`." -#: library/stdtypes.rst:4134 +#: library/stdtypes.rst:4135 msgid "The constructors for both classes work the same:" msgstr "Les constructeurs des deux classes fonctionnent pareil :" -#: library/stdtypes.rst:4139 +#: library/stdtypes.rst:4140 msgid "" "Return a new set or frozenset object whose elements are taken from " "*iterable*. The elements of a set must be :term:`hashable`. To represent " @@ -5761,23 +5768,23 @@ msgstr "" "class:`frozenset`. Si *iterable* n'est pas spécifié, un nouveau *set* vide " "est renvoyé." -#: library/stdtypes.rst:4145 +#: library/stdtypes.rst:4146 #, fuzzy msgid "Sets can be created by several means:" msgstr "Les listes peuvent être construites de différentes manières :" -#: library/stdtypes.rst:4147 +#: library/stdtypes.rst:4148 msgid "" "Use a comma-separated list of elements within braces: ``{'jack', 'sjoerd'}``" msgstr "" -#: library/stdtypes.rst:4148 +#: library/stdtypes.rst:4149 #, fuzzy msgid "" "Use a set comprehension: ``{c for c in 'abracadabra' if c not in 'abc'}``" msgstr "En utilisant une liste en compréhension : ``[x for x in iterable]``" -#: library/stdtypes.rst:4149 +#: library/stdtypes.rst:4150 #, fuzzy msgid "" "Use the type constructor: ``set()``, ``set('foobar')``, ``set(['a', 'b', " @@ -5785,7 +5792,7 @@ msgid "" msgstr "" "En utilisant le constructeur du type : ``list()`` ou ``list(iterable)``" -#: library/stdtypes.rst:4151 +#: library/stdtypes.rst:4152 msgid "" "Instances of :class:`set` and :class:`frozenset` provide the following " "operations:" @@ -5793,19 +5800,19 @@ msgstr "" "Les instances de :class:`set` et :class:`frozenset` fournissent les " "opérations suivantes :" -#: library/stdtypes.rst:4156 +#: library/stdtypes.rst:4157 msgid "Return the number of elements in set *s* (cardinality of *s*)." msgstr "Donne le nombre d'éléments dans le *set* *s* (cardinalité de *s*)." -#: library/stdtypes.rst:4160 +#: library/stdtypes.rst:4161 msgid "Test *x* for membership in *s*." msgstr "Test d'appartenance de *x* dans *s*." -#: library/stdtypes.rst:4164 +#: library/stdtypes.rst:4165 msgid "Test *x* for non-membership in *s*." msgstr "Test de non-appartenance de *x* dans *s*." -#: library/stdtypes.rst:4168 +#: library/stdtypes.rst:4169 msgid "" "Return ``True`` if the set has no elements in common with *other*. Sets are " "disjoint if and only if their intersection is the empty set." @@ -5814,11 +5821,11 @@ msgstr "" "Les ensembles sont disjoints si et seulement si leurs intersection est un " "ensemble vide." -#: library/stdtypes.rst:4174 +#: library/stdtypes.rst:4175 msgid "Test whether every element in the set is in *other*." msgstr "Teste si tous les éléments du set sont dans *other*." -#: library/stdtypes.rst:4178 +#: library/stdtypes.rst:4179 msgid "" "Test whether the set is a proper subset of *other*, that is, ``set <= other " "and set != other``." @@ -5826,11 +5833,11 @@ msgstr "" "Teste si l'ensemble est un sous-ensemble de *other*, c'est-à-dire, ``set <= " "other and set != other``." -#: library/stdtypes.rst:4184 +#: library/stdtypes.rst:4185 msgid "Test whether every element in *other* is in the set." msgstr "Teste si tous les éléments de *other* sont dans l'ensemble." -#: library/stdtypes.rst:4188 +#: library/stdtypes.rst:4189 msgid "" "Test whether the set is a proper superset of *other*, that is, ``set >= " "other and set != other``." @@ -5838,36 +5845,36 @@ msgstr "" "Teste si l'ensemble est un sur-ensemble de *other*, c'est-à-dire, ``set >= " "other and set != other``." -#: library/stdtypes.rst:4194 +#: library/stdtypes.rst:4195 msgid "Return a new set with elements from the set and all others." msgstr "" "Renvoie un nouvel ensemble dont les éléments viennent de l'ensemble et de " "tous les autres." -#: library/stdtypes.rst:4199 +#: library/stdtypes.rst:4200 msgid "Return a new set with elements common to the set and all others." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont commun à l'ensemble et à " "tous les autres." -#: library/stdtypes.rst:4204 +#: library/stdtypes.rst:4205 msgid "Return a new set with elements in the set that are not in the others." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont dans l'ensemble mais ne " "sont dans aucun des autres." -#: library/stdtypes.rst:4209 +#: library/stdtypes.rst:4210 msgid "" "Return a new set with elements in either the set or *other* but not both." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont soit dans l'ensemble, soit " "dans les autres, mais pas dans les deux." -#: library/stdtypes.rst:4213 +#: library/stdtypes.rst:4214 msgid "Return a shallow copy of the set." msgstr "Renvoie une copie de surface du dictionnaire." -#: library/stdtypes.rst:4216 +#: library/stdtypes.rst:4217 #, fuzzy msgid "" "Note, the non-operator versions of :meth:`union`, :meth:`intersection`, :" @@ -5885,7 +5892,7 @@ msgstr "" "typiques d'erreurs, en faveur d'une construction plus lisible : ``set('abc')." "intersection('cbs')``." -#: library/stdtypes.rst:4223 +#: library/stdtypes.rst:4224 msgid "" "Both :class:`set` and :class:`frozenset` support set to set comparisons. Two " "sets are equal if and only if every element of each set is contained in the " @@ -5903,7 +5910,7 @@ msgstr "" "autre ensemble si et seulement si le premier est un sur-ensemble du second " "(est un sur-ensemble mais n'est pas égal)." -#: library/stdtypes.rst:4230 +#: library/stdtypes.rst:4231 msgid "" "Instances of :class:`set` are compared to instances of :class:`frozenset` " "based on their members. For example, ``set('abc') == frozenset('abc')`` " @@ -5914,7 +5921,7 @@ msgstr "" "frozenset('abc')`` envoie ``True``, ainsi que ``set('abc') in " "set([frozenset('abc')])``." -#: library/stdtypes.rst:4234 +#: library/stdtypes.rst:4235 msgid "" "The subset and equality comparisons do not generalize to a total ordering " "function. For example, any two nonempty disjoint sets are not equal and are " @@ -5926,7 +5933,7 @@ msgstr "" "vides ne sont ni égaux et ni des sous-ensembles l'un de l'autre, donc toutes " "ces comparaisons donnent ``False`` : ``ab``." -#: library/stdtypes.rst:4239 +#: library/stdtypes.rst:4240 msgid "" "Since sets only define partial ordering (subset relationships), the output " "of the :meth:`list.sort` method is undefined for lists of sets." @@ -5935,13 +5942,13 @@ msgstr "" "de sous-ensembles), la sortie de la méthode :meth:`list.sort` n'est pas " "définie pour des listes d'ensembles." -#: library/stdtypes.rst:4242 +#: library/stdtypes.rst:4243 msgid "Set elements, like dictionary keys, must be :term:`hashable`." msgstr "" "Les éléments des *sets*, comme les clefs de dictionnaires, doivent être :" "term:`hashable`." -#: library/stdtypes.rst:4244 +#: library/stdtypes.rst:4245 msgid "" "Binary operations that mix :class:`set` instances with :class:`frozenset` " "return the type of the first operand. For example: ``frozenset('ab') | " @@ -5951,7 +5958,7 @@ msgstr "" "`frozenset` renvoient le type de la première opérande. Par exemple : " "``frozenset('ab') | set('bc')`` renvoie une instance de :class:`frozenset`." -#: library/stdtypes.rst:4248 +#: library/stdtypes.rst:4249 msgid "" "The following table lists operations available for :class:`set` that do not " "apply to immutable instances of :class:`frozenset`:" @@ -5959,32 +5966,32 @@ msgstr "" "La table suivante liste les opérations disponibles pour les :class:`set` " "mais qui ne s'appliquent pas aux instances de :class:`frozenset` :" -#: library/stdtypes.rst:4254 +#: library/stdtypes.rst:4255 msgid "Update the set, adding elements from all others." msgstr "Met à jour l'ensemble, ajoutant les éléments de tous les autres." -#: library/stdtypes.rst:4259 +#: library/stdtypes.rst:4260 msgid "Update the set, keeping only elements found in it and all others." msgstr "" "Met à jour l'ensemble, ne gardant que les éléments trouvés dans tous les " "autres." -#: library/stdtypes.rst:4264 +#: library/stdtypes.rst:4265 msgid "Update the set, removing elements found in others." msgstr "Met à jour l'ensemble, retirant les éléments trouvés dans les autres." -#: library/stdtypes.rst:4269 +#: library/stdtypes.rst:4270 msgid "" "Update the set, keeping only elements found in either set, but not in both." msgstr "" "Met à jour le set, ne gardant que les éléments trouvés dans un des ensembles " "mais pas dans les deux." -#: library/stdtypes.rst:4273 +#: library/stdtypes.rst:4274 msgid "Add element *elem* to the set." msgstr "Ajoute l'élément *elem* au set." -#: library/stdtypes.rst:4277 +#: library/stdtypes.rst:4278 msgid "" "Remove element *elem* from the set. Raises :exc:`KeyError` if *elem* is not " "contained in the set." @@ -5992,11 +5999,11 @@ msgstr "" "Retire l'élément *elem* de l'ensemble. Lève une exception :exc:`KeyError` si " "*elem* n'est pas dans l'ensemble." -#: library/stdtypes.rst:4282 +#: library/stdtypes.rst:4283 msgid "Remove element *elem* from the set if it is present." msgstr "Retire l'élément *elem* de l'ensemble s'il y est." -#: library/stdtypes.rst:4286 +#: library/stdtypes.rst:4287 msgid "" "Remove and return an arbitrary element from the set. Raises :exc:`KeyError` " "if the set is empty." @@ -6004,11 +6011,11 @@ msgstr "" "Retire et renvoie un élément arbitraire de l'ensemble. Lève une exception :" "exc:`KeyError` si l'ensemble est vide." -#: library/stdtypes.rst:4291 +#: library/stdtypes.rst:4292 msgid "Remove all elements from the set." msgstr "Supprime tous les éléments du *set*." -#: library/stdtypes.rst:4294 +#: library/stdtypes.rst:4295 msgid "" "Note, the non-operator versions of the :meth:`update`, :meth:" "`intersection_update`, :meth:`difference_update`, and :meth:" @@ -6020,7 +6027,7 @@ msgstr "" "`symmetric_difference_update` acceptent n'importe quel itérable comme " "argument." -#: library/stdtypes.rst:4299 +#: library/stdtypes.rst:4300 msgid "" "Note, the *elem* argument to the :meth:`__contains__`, :meth:`remove`, and :" "meth:`discard` methods may be a set. To support searching for an equivalent " @@ -6031,11 +6038,11 @@ msgstr "" "recherche d'un *frozenset* équivalent, un *frozenset* temporaire est crée " "depuis *elem*." -#: library/stdtypes.rst:4307 +#: library/stdtypes.rst:4308 msgid "Mapping Types --- :class:`dict`" msgstr "Les types de correspondances — :class:`dict`" -#: library/stdtypes.rst:4317 +#: library/stdtypes.rst:4318 msgid "" "A :term:`mapping` object maps :term:`hashable` values to arbitrary objects. " "Mappings are mutable objects. There is currently only one standard mapping " @@ -6049,7 +6056,7 @@ msgstr "" "(Pour les autres conteneurs, voir les types natifs :class:`list`, :class:" "`set`, et :class:`tuple`, ainsi que le module :mod:`collections`.)" -#: library/stdtypes.rst:4323 +#: library/stdtypes.rst:4324 msgid "" "A dictionary's keys are *almost* arbitrary values. Values that are not :" "term:`hashable`, that is, values containing lists, dictionaries or other " @@ -6072,7 +6079,7 @@ msgstr "" "d'approximations, il est généralement imprudent de les utiliser comme clefs " "de dictionnaires.)" -#: library/stdtypes.rst:4332 +#: library/stdtypes.rst:4333 msgid "" "Dictionaries can be created by placing a comma-separated list of ``key: " "value`` pairs within braces, for example: ``{'jack': 4098, 'sjoerd': 4127}`` " @@ -6083,7 +6090,7 @@ msgstr "" "``{'jack': 4098, 'sjoerd': 4127}`` ou ``{4098: 'jack', 4127: 'sjoerd'}``, ou " "en utilisant le constructeur de :class:`dict`." -#: library/stdtypes.rst:4340 +#: library/stdtypes.rst:4341 msgid "" "Return a new dictionary initialized from an optional positional argument and " "a possibly empty set of keyword arguments." @@ -6091,12 +6098,12 @@ msgstr "" "Renvoie un nouveau dictionnaire initialisé depuis un argument positionnel " "optionnel, et un ensemble (vide ou non) d'arguments par mot clef." -#: library/stdtypes.rst:4343 +#: library/stdtypes.rst:4344 #, fuzzy msgid "Dictionaries can be created by several means:" msgstr "Les listes peuvent être construites de différentes manières :" -#: library/stdtypes.rst:4345 +#: library/stdtypes.rst:4346 #, fuzzy msgid "" "Use a comma-separated list of ``key: value`` pairs within braces: ``{'jack': " @@ -6107,18 +6114,18 @@ msgstr "" "``{'jack': 4098, 'sjoerd': 4127}`` ou ``{4098: 'jack', 4127: 'sjoerd'}``, ou " "en utilisant le constructeur de :class:`dict`." -#: library/stdtypes.rst:4347 +#: library/stdtypes.rst:4348 #, fuzzy msgid "Use a dict comprehension: ``{}``, ``{x: x ** 2 for x in range(10)}``" msgstr "En utilisant une liste en compréhension : ``[x for x in iterable]``" -#: library/stdtypes.rst:4348 +#: library/stdtypes.rst:4349 msgid "" "Use the type constructor: ``dict()``, ``dict([('foo', 100), ('bar', " "200)])``, ``dict(foo=100, bar=200)``" msgstr "" -#: library/stdtypes.rst:4351 +#: library/stdtypes.rst:4352 msgid "" "If no positional argument is given, an empty dictionary is created. If a " "positional argument is given and it is a mapping object, a dictionary is " @@ -6140,7 +6147,7 @@ msgstr "" "pour cette clef devient la valeur correspondante à cette clef dans le " "nouveau dictionnaire." -#: library/stdtypes.rst:4361 +#: library/stdtypes.rst:4362 msgid "" "If keyword arguments are given, the keyword arguments and their values are " "added to the dictionary created from the positional argument. If a key " @@ -6151,7 +6158,7 @@ msgstr "" "depuis l'argument positionnel. Si une clef est déjà présente, la valeur de " "l'argument nommé remplace la valeur reçue par l'argument positionnel." -#: library/stdtypes.rst:4366 +#: library/stdtypes.rst:4367 msgid "" "To illustrate, the following examples all return a dictionary equal to " "``{\"one\": 1, \"two\": 2, \"three\": 3}``::" @@ -6159,7 +6166,7 @@ msgstr "" "Typiquement, les exemples suivants renvoient tous un dictionnaire valant " "``{\"one\": 1, \"two\": 2, \"three\": 3}`` ::" -#: library/stdtypes.rst:4378 +#: library/stdtypes.rst:4379 msgid "" "Providing keyword arguments as in the first example only works for keys that " "are valid Python identifiers. Otherwise, any valid keys can be used." @@ -6168,7 +6175,7 @@ msgstr "" "pour des clefs qui sont des identifiants valide en Python. Dans les autres " "cas, toutes les clefs valides sont utilisables." -#: library/stdtypes.rst:4382 +#: library/stdtypes.rst:4383 msgid "" "These are the operations that dictionaries support (and therefore, custom " "mapping types should support too):" @@ -6176,16 +6183,16 @@ msgstr "" "Voici les opérations gérées par les dictionnaires, (par conséquent, d'autres " "types de *mapping* peuvent les gérer aussi) :" -#: library/stdtypes.rst:4387 +#: library/stdtypes.rst:4388 msgid "Return a list of all the keys used in the dictionary *d*." msgstr "" "Renvoie une liste de toutes les clés utilisées dans le dictionnaire *d*." -#: library/stdtypes.rst:4391 +#: library/stdtypes.rst:4392 msgid "Return the number of items in the dictionary *d*." msgstr "Renvoie le nombre d'éléments dans le dictionnaire *d*." -#: library/stdtypes.rst:4395 +#: library/stdtypes.rst:4396 msgid "" "Return the item of *d* with key *key*. Raises a :exc:`KeyError` if *key* is " "not in the map." @@ -6193,7 +6200,7 @@ msgstr "" "Donne l'élément de *d* dont la clef est *key*. Lève une exception :exc:" "`KeyError` si *key* n'est pas dans le dictionnaire." -#: library/stdtypes.rst:4400 +#: library/stdtypes.rst:4401 msgid "" "If a subclass of dict defines a method :meth:`__missing__` and *key* is not " "present, the ``d[key]`` operation calls that method with the key *key* as " @@ -6212,7 +6219,7 @@ msgstr "" "meth:`__missing__` doit être une méthode; ça ne peut être une variable " "d'instance ::" -#: library/stdtypes.rst:4418 +#: library/stdtypes.rst:4419 msgid "" "The example above shows part of the implementation of :class:`collections." "Counter`. A different ``__missing__`` method is used by :class:`collections." @@ -6222,11 +6229,11 @@ msgstr "" "`collections.Counter`. :class:`collections.defaultdict` implémente aussi " "``__missing__``." -#: library/stdtypes.rst:4424 +#: library/stdtypes.rst:4425 msgid "Set ``d[key]`` to *value*." msgstr "Assigne ``d[key]`` à *value*." -#: library/stdtypes.rst:4428 +#: library/stdtypes.rst:4429 msgid "" "Remove ``d[key]`` from *d*. Raises a :exc:`KeyError` if *key* is not in the " "map." @@ -6234,15 +6241,15 @@ msgstr "" "Supprime ``d[key]`` de *d*. Lève une exception :exc:`KeyError` si *key* " "n'est pas dans le dictionnaire." -#: library/stdtypes.rst:4433 +#: library/stdtypes.rst:4434 msgid "Return ``True`` if *d* has a key *key*, else ``False``." msgstr "Renvoie ``True`` si *d* a la clef *key*, sinon ``False``." -#: library/stdtypes.rst:4437 +#: library/stdtypes.rst:4438 msgid "Equivalent to ``not key in d``." msgstr "Équivalent à ``not key in d``." -#: library/stdtypes.rst:4441 +#: library/stdtypes.rst:4442 msgid "" "Return an iterator over the keys of the dictionary. This is a shortcut for " "``iter(d.keys())``." @@ -6250,22 +6257,22 @@ msgstr "" "Renvoie un itérateur sur les clefs du dictionnaire. C'est un raccourci pour " "``iter(d.keys())``." -#: library/stdtypes.rst:4446 +#: library/stdtypes.rst:4447 msgid "Remove all items from the dictionary." msgstr "Supprime tous les éléments du dictionnaire." -#: library/stdtypes.rst:4450 +#: library/stdtypes.rst:4451 msgid "Return a shallow copy of the dictionary." msgstr "Renvoie une copie de surface du dictionnaire." -#: library/stdtypes.rst:4454 +#: library/stdtypes.rst:4455 msgid "" "Create a new dictionary with keys from *iterable* and values set to *value*." msgstr "" "Crée un nouveau dictionnaire avec les clefs de *iterable* et les valeurs à " "*value*." -#: library/stdtypes.rst:4456 +#: library/stdtypes.rst:4457 msgid "" ":meth:`fromkeys` is a class method that returns a new dictionary. *value* " "defaults to ``None``. All of the values refer to just a single instance, so " @@ -6279,7 +6286,7 @@ msgstr "" "*value* soit un objet mutable comme une liste vide. Pour avoir des valeurs " "distinctes, utiliser plutôt une :ref:`compréhension de dictionnaire `." -#: library/stdtypes.rst:4464 +#: library/stdtypes.rst:4465 msgid "" "Return the value for *key* if *key* is in the dictionary, else *default*. If " "*default* is not given, it defaults to ``None``, so that this method never " @@ -6289,7 +6296,7 @@ msgstr "" "*default*. Si *default* n'est pas donné, il vaut ``None`` par défaut, de " "manière à ce que cette méthode ne lève jamais :exc:`KeyError`." -#: library/stdtypes.rst:4470 +#: library/stdtypes.rst:4471 msgid "" "Return a new view of the dictionary's items (``(key, value)`` pairs). See " "the :ref:`documentation of view objects `." @@ -6297,7 +6304,7 @@ msgstr "" "Renvoie une nouvelle vue des éléments du dictionnaire (paires de ``(key, " "value)``). Voir la :ref:`documentation des vues `." -#: library/stdtypes.rst:4475 +#: library/stdtypes.rst:4476 msgid "" "Return a new view of the dictionary's keys. See the :ref:`documentation of " "view objects `." @@ -6305,7 +6312,7 @@ msgstr "" "Renvoie une nouvelle vue des clefs du dictionnaire. Voir la :ref:" "`documentation des vues `." -#: library/stdtypes.rst:4480 +#: library/stdtypes.rst:4481 msgid "" "If *key* is in the dictionary, remove it and return its value, else return " "*default*. If *default* is not given and *key* is not in the dictionary, a :" @@ -6315,7 +6322,7 @@ msgstr "" "renvoyée, sinon renvoie *default*. Si *default* n'est pas donné et que " "*key* n'est pas dans le dictionnaire, une :exc:`KeyError` est levée." -#: library/stdtypes.rst:4486 +#: library/stdtypes.rst:4487 msgid "" "Remove and return a ``(key, value)`` pair from the dictionary. Pairs are " "returned in :abbr:`LIFO (last-in, first-out)` order." @@ -6323,7 +6330,7 @@ msgstr "" "Supprime et renvoie une paire ``(key, value)`` du dictionnaire. Les paires " "sont renvoyées dans un ordre :abbr:`LIFO (dernière entrée, prenière sortie)`." -#: library/stdtypes.rst:4489 +#: library/stdtypes.rst:4490 msgid "" ":meth:`popitem` is useful to destructively iterate over a dictionary, as " "often used in set algorithms. If the dictionary is empty, calling :meth:" @@ -6333,7 +6340,7 @@ msgstr "" "destructive, comme souvent dans les algorithmes sur les ensembles. Si le " "dictionnaire est vide, appeler :meth:`popitem` lève une :exc:`KeyError`." -#: library/stdtypes.rst:4493 +#: library/stdtypes.rst:4494 msgid "" "LIFO order is now guaranteed. In prior versions, :meth:`popitem` would " "return an arbitrary key/value pair." @@ -6342,7 +6349,7 @@ msgstr "" "les versions précédentes, :meth:`popitem` renvoyait une paire clé/valeur " "arbitraire." -#: library/stdtypes.rst:4499 +#: library/stdtypes.rst:4500 msgid "" "Return a reverse iterator over the keys of the dictionary. This is a " "shortcut for ``reversed(d.keys())``." @@ -6350,7 +6357,7 @@ msgstr "" "Renvoie un itérateur inversé sur les clés du dictionnaire. C'est un " "raccourci pour ``reversed(d.keys())``." -#: library/stdtypes.rst:4506 +#: library/stdtypes.rst:4507 msgid "" "If *key* is in the dictionary, return its value. If not, insert *key* with " "a value of *default* and return *default*. *default* defaults to ``None``." @@ -6359,7 +6366,7 @@ msgstr "" "*key* avec comme valeur *default* et renvoie *default*. *default* vaut " "``None`` par défaut." -#: library/stdtypes.rst:4512 +#: library/stdtypes.rst:4513 msgid "" "Update the dictionary with the key/value pairs from *other*, overwriting " "existing keys. Return ``None``." @@ -6367,7 +6374,7 @@ msgstr "" "Met à jour le dictionnaire avec les paires de clef/valeur d'*other*, " "écrasant les clefs existantes. Renvoie ``None``." -#: library/stdtypes.rst:4515 +#: library/stdtypes.rst:4516 msgid "" ":meth:`update` accepts either another dictionary object or an iterable of " "key/value pairs (as tuples or other iterables of length two). If keyword " @@ -6380,7 +6387,7 @@ msgstr "" "ensuite mis à jour avec ces pairs de clef/valeurs : ``d.update(red=1, " "blue=2)``." -#: library/stdtypes.rst:4522 +#: library/stdtypes.rst:4523 msgid "" "Return a new view of the dictionary's values. See the :ref:`documentation " "of view objects `." @@ -6388,7 +6395,7 @@ msgstr "" "Renvoie une nouvelle vue des valeurs du dictionnaire. Voir la :ref:" "`documentation des vues `." -#: library/stdtypes.rst:4525 +#: library/stdtypes.rst:4526 msgid "" "An equality comparison between one ``dict.values()`` view and another will " "always return ``False``. This also applies when comparing ``dict.values()`` " @@ -6398,21 +6405,21 @@ msgstr "" "renvoie toujours ``False``. Cela s'applique aussi lorsque l'on compare " "``dict.values()`` à lui-même ::" -#: library/stdtypes.rst:4535 +#: library/stdtypes.rst:4536 msgid "" "Create a new dictionary with the merged keys and values of *d* and *other*, " "which must both be dictionaries. The values of *other* take priority when " "*d* and *other* share keys." msgstr "" -#: library/stdtypes.rst:4543 +#: library/stdtypes.rst:4544 msgid "" "Update the dictionary *d* with keys and values from *other*, which may be " "either a :term:`mapping` or an :term:`iterable` of key/value pairs. The " "values of *other* take priority when *d* and *other* share keys." msgstr "" -#: library/stdtypes.rst:4549 +#: library/stdtypes.rst:4550 msgid "" "Dictionaries compare equal if and only if they have the same ``(key, " "value)`` pairs (regardless of ordering). Order comparisons ('<', '<=', '>=', " @@ -6422,7 +6429,7 @@ msgstr "" "clé-valeur (``(key, value)``, peu importe leur ordre). Les comparaisons " "d'ordre (``<``, ``<=``, ``>=``, ``>``) lèvent une :exc:`TypeError`." -#: library/stdtypes.rst:4553 +#: library/stdtypes.rst:4554 msgid "" "Dictionaries preserve insertion order. Note that updating a key does not " "affect the order. Keys added after deletion are inserted at the end. ::" @@ -6431,7 +6438,7 @@ msgstr "" "clé n'affecte pas l'ordre. Les clés ajoutées après un effacement sont " "insérées à la fin. ::" -#: library/stdtypes.rst:4571 +#: library/stdtypes.rst:4572 msgid "" "Dictionary order is guaranteed to be insertion order. This behavior was an " "implementation detail of CPython from 3.6." @@ -6440,16 +6447,16 @@ msgstr "" "comportement était un détail d'implémentation de CPython depuis la version " "3.6." -#: library/stdtypes.rst:4575 +#: library/stdtypes.rst:4576 msgid "Dictionaries and dictionary views are reversible. ::" msgstr "Les dictionnaires et les vues de dictionnaires sont réversibles. ::" # suit un ':' ("changed in version X.Y") -#: library/stdtypes.rst:4587 +#: library/stdtypes.rst:4588 msgid "Dictionaries are now reversible." msgstr "les dictionnaires sont maintenant réversibles." -#: library/stdtypes.rst:4592 +#: library/stdtypes.rst:4593 msgid "" ":class:`types.MappingProxyType` can be used to create a read-only view of a :" "class:`dict`." @@ -6457,11 +6464,11 @@ msgstr "" ":class:`types.MappingProxyType` peut être utilisé pour créer une vue en " "lecture seule d'un :class:`dict`." -#: library/stdtypes.rst:4599 +#: library/stdtypes.rst:4600 msgid "Dictionary view objects" msgstr "Les vues de dictionnaires" -#: library/stdtypes.rst:4601 +#: library/stdtypes.rst:4602 msgid "" "The objects returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:" "`dict.items` are *view objects*. They provide a dynamic view on the " @@ -6473,7 +6480,7 @@ msgstr "" "éléments du dictionnaire, ce qui signifie que si le dictionnaire change, la " "vue reflète ces changements." -#: library/stdtypes.rst:4606 +#: library/stdtypes.rst:4607 msgid "" "Dictionary views can be iterated over to yield their respective data, and " "support membership tests:" @@ -6481,11 +6488,11 @@ msgstr "" "Les vues de dictionnaires peuvent être itérées et ainsi renvoyer les données " "du dictionnaire, elle gèrent aussi les tests de présence :" -#: library/stdtypes.rst:4611 +#: library/stdtypes.rst:4612 msgid "Return the number of entries in the dictionary." msgstr "Renvoie le nombre d'entrées du dictionnaire." -#: library/stdtypes.rst:4615 +#: library/stdtypes.rst:4616 msgid "" "Return an iterator over the keys, values or items (represented as tuples of " "``(key, value)``) in the dictionary." @@ -6493,7 +6500,7 @@ msgstr "" "Renvoie un itérateur sur les clefs, les valeurs, ou les éléments " "(représentés par des paires ``(key, value)`` du dictionnaire." -#: library/stdtypes.rst:4618 +#: library/stdtypes.rst:4619 msgid "" "Keys and values are iterated over in insertion order. This allows the " "creation of ``(value, key)`` pairs using :func:`zip`: ``pairs = zip(d." @@ -6505,7 +6512,7 @@ msgstr "" "``pairs = zip(d.values(), d.keys())``. Un autre moyen de construire la même " "liste est ``pairs = [(v, k) for (k, v) in d.items()]``." -#: library/stdtypes.rst:4623 +#: library/stdtypes.rst:4624 msgid "" "Iterating views while adding or deleting entries in the dictionary may raise " "a :exc:`RuntimeError` or fail to iterate over all entries." @@ -6514,11 +6521,11 @@ msgstr "" "dictionnaire peut lever une :exc:`RuntimeError` ou ne pas fournir toutes les " "entrées." -#: library/stdtypes.rst:4626 +#: library/stdtypes.rst:4627 msgid "Dictionary order is guaranteed to be insertion order." msgstr "L'ordre d'un dictionnaire est toujours l'ordre des insertions." -#: library/stdtypes.rst:4631 +#: library/stdtypes.rst:4632 msgid "" "Return ``True`` if *x* is in the underlying dictionary's keys, values or " "items (in the latter case, *x* should be a ``(key, value)`` tuple)." @@ -6527,7 +6534,7 @@ msgstr "" "dictionnaire sous-jacent (dans le dernier cas, *x* doit être une paire " "``(key, value)``)." -#: library/stdtypes.rst:4636 +#: library/stdtypes.rst:4637 msgid "" "Return a reverse iterator over the keys, values or items of the dictionary. " "The view will be iterated in reverse order of the insertion." @@ -6536,17 +6543,17 @@ msgstr "" "dictionnaire. La vue est itérée dans l'ordre inverse d'insertion." # suit un ':' ("changed in version X.Y") -#: library/stdtypes.rst:4639 +#: library/stdtypes.rst:4640 msgid "Dictionary views are now reversible." msgstr "les vues de dictionnaires sont dorénavant réversibles." -#: library/stdtypes.rst:4644 +#: library/stdtypes.rst:4645 msgid "" "Return a :class:`types.MappingProxyType` that wraps the original dictionary " "to which the view refers." msgstr "" -#: library/stdtypes.rst:4649 +#: library/stdtypes.rst:4650 msgid "" "Keys views are set-like since their entries are unique and hashable. If all " "values are hashable, so that ``(key, value)`` pairs are unique and hashable, " @@ -6565,15 +6572,15 @@ msgstr "" "abstraite :class:`collections.abc.Set` sont disponibles (comme ``==``, " "``<``, ou ``^``)." -#: library/stdtypes.rst:4656 +#: library/stdtypes.rst:4657 msgid "An example of dictionary view usage::" msgstr "Exemple d'utilisation de vue de dictionnaire ::" -#: library/stdtypes.rst:4697 +#: library/stdtypes.rst:4698 msgid "Context Manager Types" msgstr "Le type gestionnaire de contexte" -#: library/stdtypes.rst:4704 +#: library/stdtypes.rst:4705 msgid "" "Python's :keyword:`with` statement supports the concept of a runtime context " "defined by a context manager. This is implemented using a pair of methods " @@ -6586,7 +6593,7 @@ msgstr "" "entré avant l'exécution du corps de l'instruction, et qui est quitté lorsque " "l'instruction se termine :" -#: library/stdtypes.rst:4712 +#: library/stdtypes.rst:4713 msgid "" "Enter the runtime context and return either this object or another object " "related to the runtime context. The value returned by this method is bound " @@ -6598,7 +6605,7 @@ msgstr "" "cette méthode est liée à l'identifiant donné au :keyword:`!as` de " "l'instruction :keyword:`with` utilisant ce gestionnaire de contexte." -#: library/stdtypes.rst:4717 +#: library/stdtypes.rst:4718 msgid "" "An example of a context manager that returns itself is a :term:`file " "object`. File objects return themselves from __enter__() to allow :func:" @@ -6609,7 +6616,7 @@ msgstr "" "autorisent :func:`open` à être utilisé comme contexte à une instruction :" "keyword:`with`." -#: library/stdtypes.rst:4721 +#: library/stdtypes.rst:4722 msgid "" "An example of a context manager that returns a related object is the one " "returned by :func:`decimal.localcontext`. These managers set the active " @@ -6624,7 +6631,7 @@ msgstr "" "renvoyée. Ça permet de changer le contexte courant dans le corps du :keyword:" "`with` sans affecter le code en dehors de l'instruction :keyword:`!with`." -#: library/stdtypes.rst:4731 +#: library/stdtypes.rst:4732 msgid "" "Exit the runtime context and return a Boolean flag indicating if any " "exception that occurred should be suppressed. If an exception occurred while " @@ -6638,7 +6645,7 @@ msgstr "" "l'exception, sa valeur, et la trace de la pile (*traceback*). Sinon les " "trois arguments valent ``None``." -#: library/stdtypes.rst:4736 +#: library/stdtypes.rst:4737 msgid "" "Returning a true value from this method will cause the :keyword:`with` " "statement to suppress the exception and continue execution with the " @@ -6655,7 +6662,7 @@ msgstr "" "pendant l'exécution de cette méthode remplaceront toute exception qui s'est " "produite dans le corps du :keyword:`!with`." -#: library/stdtypes.rst:4743 +#: library/stdtypes.rst:4744 msgid "" "The exception passed in should never be reraised explicitly - instead, this " "method should return a false value to indicate that the method completed " @@ -6669,7 +6676,7 @@ msgstr "" "Ceci permet au code de gestion du contexte de comprendre si une méthode :" "meth:`__exit__` a échoué." -#: library/stdtypes.rst:4749 +#: library/stdtypes.rst:4750 msgid "" "Python defines several context managers to support easy thread " "synchronisation, prompt closure of files or other objects, and simpler " @@ -6684,14 +6691,15 @@ msgstr "" "protocole de gestion du contexte. Voir les exemples dans la documentation du " "module :mod:`contextlib`." -#: library/stdtypes.rst:4755 +#: library/stdtypes.rst:4756 +#, fuzzy msgid "" "Python's :term:`generator`\\s and the :class:`contextlib.contextmanager` " "decorator provide a convenient way to implement these protocols. If a " "generator function is decorated with the :class:`contextlib.contextmanager` " "decorator, it will return a context manager implementing the necessary :meth:" -"`__enter__` and :meth:`__exit__` methods, rather than the iterator produced " -"by an undecorated generator function." +"`~contextmanager.__enter__` and :meth:`~contextmanager.__exit__` methods, " +"rather than the iterator produced by an undecorated generator function." msgstr "" "Les :term:`generator`\\s de Python et le décorateur :class:`contextlib." "contextmanager` permettent d'implémenter simplement ces protocoles. Si un " @@ -6700,7 +6708,7 @@ msgstr "" "`__enter__` et :meth:`__exit__`, plutôt que l'itérateur produit par un " "générateur non décoré." -#: library/stdtypes.rst:4762 +#: library/stdtypes.rst:4763 msgid "" "Note that there is no specific slot for any of these methods in the type " "structure for Python objects in the Python/C API. Extension types wanting to " @@ -6715,31 +6723,31 @@ msgstr "" "d'exécution, les le coût d'un accès au dictionnaire d'une classe unique est " "négligeable." -#: library/stdtypes.rst:4770 +#: library/stdtypes.rst:4771 msgid "" "Type Annotation Types --- :ref:`Generic Alias `, :ref:" "`Union `" msgstr "" -#: library/stdtypes.rst:4775 +#: library/stdtypes.rst:4776 msgid "" "The core built-in types for :term:`type annotations ` are :ref:" "`Generic Alias ` and :ref:`Union `." msgstr "" -#: library/stdtypes.rst:4782 +#: library/stdtypes.rst:4783 #, fuzzy msgid "Generic Alias Type" msgstr "Types générateurs" -#: library/stdtypes.rst:4788 +#: library/stdtypes.rst:4789 msgid "" "``GenericAlias`` objects are created by subscripting a class (usually a " "container), such as ``list[int]``. They are intended primarily for :term:" "`type annotations `." msgstr "" -#: library/stdtypes.rst:4792 +#: library/stdtypes.rst:4793 msgid "" "Usually, the :ref:`subscription ` of container objects calls " "the method :meth:`__getitem__` of the object. However, the subscription of " @@ -6748,35 +6756,35 @@ msgid "" "return a ``GenericAlias`` object." msgstr "" -#: library/stdtypes.rst:4799 +#: library/stdtypes.rst:4800 msgid "" "If the :meth:`__getitem__` of the class' metaclass is present, it will take " "precedence over the :meth:`__class_getitem__` defined in the class (see :pep:" "`560` for more details)." msgstr "" -#: library/stdtypes.rst:4803 +#: library/stdtypes.rst:4804 msgid "" "The ``GenericAlias`` object acts as a proxy for :term:`generic types " "`, implementing *parameterized generics* - a specific instance " "of a generic which provides the types for container elements." msgstr "" -#: library/stdtypes.rst:4807 +#: library/stdtypes.rst:4808 msgid "" "The user-exposed type for the ``GenericAlias`` object can be accessed from :" "class:`types.GenericAlias` and used for :func:`isinstance` checks. It can " "also be used to create ``GenericAlias`` objects directly." msgstr "" -#: library/stdtypes.rst:4813 +#: library/stdtypes.rst:4814 msgid "" "Creates a ``GenericAlias`` representing a type ``T`` containing elements of " "types *X*, *Y*, and more depending on the ``T`` used. For example, a " "function expecting a :class:`list` containing :class:`float` elements::" msgstr "" -#: library/stdtypes.rst:4821 +#: library/stdtypes.rst:4822 msgid "" "Another example for :term:`mapping` objects, using a :class:`dict`, which is " "a generic type expecting two type parameters representing the key type and " @@ -6784,13 +6792,13 @@ msgid "" "of type :class:`str` and values of type :class:`int`::" msgstr "" -#: library/stdtypes.rst:4829 +#: library/stdtypes.rst:4830 msgid "" "The builtin functions :func:`isinstance` and :func:`issubclass` do not " "accept ``GenericAlias`` types for their second argument::" msgstr "" -#: library/stdtypes.rst:4837 +#: library/stdtypes.rst:4838 msgid "" "The Python runtime does not enforce :term:`type annotations `. " "This extends to generic types and their type parameters. When creating an " @@ -6799,25 +6807,25 @@ msgid "" "without errors::" msgstr "" -#: library/stdtypes.rst:4847 +#: library/stdtypes.rst:4848 msgid "" "Furthermore, parameterized generics erase type parameters during object " "creation::" msgstr "" -#: library/stdtypes.rst:4858 +#: library/stdtypes.rst:4859 msgid "" "Calling :func:`repr` or :func:`str` on a generic shows the parameterized " "type::" msgstr "" -#: library/stdtypes.rst:4866 +#: library/stdtypes.rst:4867 msgid "" "The :meth:`__getitem__` method of generics will raise an exception to " "disallow mistakes like ``dict[str][str]``::" msgstr "" -#: library/stdtypes.rst:4874 +#: library/stdtypes.rst:4875 msgid "" "However, such expressions are valid when :ref:`type variables ` " "are used. The index must have as many elements as there are type variable " @@ -6825,216 +6833,216 @@ msgid "" "__args__>`. ::" msgstr "" -#: library/stdtypes.rst:4885 +#: library/stdtypes.rst:4886 msgid "Standard Generic Collections" msgstr "" -#: library/stdtypes.rst:4887 +#: library/stdtypes.rst:4888 msgid "These standard library collections support parameterized generics." msgstr "" -#: library/stdtypes.rst:4889 +#: library/stdtypes.rst:4890 msgid ":class:`tuple`" msgstr "" -#: library/stdtypes.rst:4890 +#: library/stdtypes.rst:4891 msgid ":class:`list`" msgstr "" -#: library/stdtypes.rst:4891 +#: library/stdtypes.rst:4892 msgid ":class:`dict`" msgstr "" -#: library/stdtypes.rst:4892 +#: library/stdtypes.rst:4893 msgid ":class:`set`" msgstr "" -#: library/stdtypes.rst:4893 +#: library/stdtypes.rst:4894 msgid ":class:`frozenset`" msgstr "" -#: library/stdtypes.rst:4894 +#: library/stdtypes.rst:4895 msgid ":class:`type`" msgstr "" -#: library/stdtypes.rst:4895 +#: library/stdtypes.rst:4896 msgid ":class:`collections.deque`" msgstr "" -#: library/stdtypes.rst:4896 +#: library/stdtypes.rst:4897 msgid ":class:`collections.defaultdict`" msgstr "" -#: library/stdtypes.rst:4897 +#: library/stdtypes.rst:4898 msgid ":class:`collections.OrderedDict`" msgstr "" -#: library/stdtypes.rst:4898 +#: library/stdtypes.rst:4899 msgid ":class:`collections.Counter`" msgstr "" -#: library/stdtypes.rst:4899 +#: library/stdtypes.rst:4900 msgid ":class:`collections.ChainMap`" msgstr "" -#: library/stdtypes.rst:4900 +#: library/stdtypes.rst:4901 msgid ":class:`collections.abc.Awaitable`" msgstr "" -#: library/stdtypes.rst:4901 +#: library/stdtypes.rst:4902 msgid ":class:`collections.abc.Coroutine`" msgstr "" -#: library/stdtypes.rst:4902 +#: library/stdtypes.rst:4903 msgid ":class:`collections.abc.AsyncIterable`" msgstr "" -#: library/stdtypes.rst:4903 +#: library/stdtypes.rst:4904 msgid ":class:`collections.abc.AsyncIterator`" msgstr "" -#: library/stdtypes.rst:4904 +#: library/stdtypes.rst:4905 msgid ":class:`collections.abc.AsyncGenerator`" msgstr "" -#: library/stdtypes.rst:4905 +#: library/stdtypes.rst:4906 msgid ":class:`collections.abc.Iterable`" msgstr "" -#: library/stdtypes.rst:4906 +#: library/stdtypes.rst:4907 msgid ":class:`collections.abc.Iterator`" msgstr "" -#: library/stdtypes.rst:4907 +#: library/stdtypes.rst:4908 msgid ":class:`collections.abc.Generator`" msgstr "" -#: library/stdtypes.rst:4908 +#: library/stdtypes.rst:4909 msgid ":class:`collections.abc.Reversible`" msgstr "" -#: library/stdtypes.rst:4909 +#: library/stdtypes.rst:4910 msgid ":class:`collections.abc.Container`" msgstr "" -#: library/stdtypes.rst:4910 +#: library/stdtypes.rst:4911 msgid ":class:`collections.abc.Collection`" msgstr "" -#: library/stdtypes.rst:4911 +#: library/stdtypes.rst:4912 msgid ":class:`collections.abc.Callable`" msgstr "" -#: library/stdtypes.rst:4912 +#: library/stdtypes.rst:4913 msgid ":class:`collections.abc.Set`" msgstr "" -#: library/stdtypes.rst:4913 +#: library/stdtypes.rst:4914 msgid ":class:`collections.abc.MutableSet`" msgstr "" -#: library/stdtypes.rst:4914 +#: library/stdtypes.rst:4915 msgid ":class:`collections.abc.Mapping`" msgstr "" -#: library/stdtypes.rst:4915 +#: library/stdtypes.rst:4916 msgid ":class:`collections.abc.MutableMapping`" msgstr "" -#: library/stdtypes.rst:4916 +#: library/stdtypes.rst:4917 msgid ":class:`collections.abc.Sequence`" msgstr "" -#: library/stdtypes.rst:4917 +#: library/stdtypes.rst:4918 msgid ":class:`collections.abc.MutableSequence`" msgstr "" -#: library/stdtypes.rst:4918 +#: library/stdtypes.rst:4919 msgid ":class:`collections.abc.ByteString`" msgstr "" -#: library/stdtypes.rst:4919 +#: library/stdtypes.rst:4920 msgid ":class:`collections.abc.MappingView`" msgstr "" -#: library/stdtypes.rst:4920 +#: library/stdtypes.rst:4921 msgid ":class:`collections.abc.KeysView`" msgstr "" -#: library/stdtypes.rst:4921 +#: library/stdtypes.rst:4922 msgid ":class:`collections.abc.ItemsView`" msgstr "" -#: library/stdtypes.rst:4922 +#: library/stdtypes.rst:4923 msgid ":class:`collections.abc.ValuesView`" msgstr "" -#: library/stdtypes.rst:4923 +#: library/stdtypes.rst:4924 msgid ":class:`contextlib.AbstractContextManager`" msgstr "" -#: library/stdtypes.rst:4924 +#: library/stdtypes.rst:4925 msgid ":class:`contextlib.AbstractAsyncContextManager`" msgstr "" -#: library/stdtypes.rst:4925 +#: library/stdtypes.rst:4926 msgid ":ref:`re.Pattern `" msgstr "" -#: library/stdtypes.rst:4926 +#: library/stdtypes.rst:4927 msgid ":ref:`re.Match `" msgstr "" -#: library/stdtypes.rst:4930 +#: library/stdtypes.rst:4931 #, fuzzy msgid "Special Attributes of Generic Alias" msgstr "Attributs spéciaux" -#: library/stdtypes.rst:4932 +#: library/stdtypes.rst:4933 msgid "All parameterized generics implement special read-only attributes." msgstr "" -#: library/stdtypes.rst:4936 +#: library/stdtypes.rst:4937 msgid "This attribute points at the non-parameterized generic class::" msgstr "" -#: library/stdtypes.rst:4944 +#: library/stdtypes.rst:4945 msgid "" "This attribute is a :class:`tuple` (possibly of length 1) of generic types " "passed to the original :meth:`__class_getitem__` of the generic container::" msgstr "" -#: library/stdtypes.rst:4954 +#: library/stdtypes.rst:4955 msgid "" "This attribute is a lazily computed tuple (possibly empty) of unique type " "variables found in ``__args__``::" msgstr "" -#: library/stdtypes.rst:4965 +#: library/stdtypes.rst:4966 msgid "" "A ``GenericAlias`` object with :class:`typing.ParamSpec` parameters may not " "have correct ``__parameters__`` after substitution because :class:`typing." "ParamSpec` is intended primarily for static type checking." msgstr "" -#: library/stdtypes.rst:4971 +#: library/stdtypes.rst:4972 msgid ":pep:`585` -- \"Type Hinting Generics In Standard Collections\"" msgstr "" -#: library/stdtypes.rst:4972 +#: library/stdtypes.rst:4973 msgid ":meth:`__class_getitem__` -- Used to implement parameterized generics." msgstr "" -#: library/stdtypes.rst:4973 +#: library/stdtypes.rst:4974 msgid ":ref:`generics` -- Generics in the :mod:`typing` module." msgstr "" -#: library/stdtypes.rst:4981 +#: library/stdtypes.rst:4982 #, fuzzy msgid "Union Type" msgstr "Type de conversion." -#: library/stdtypes.rst:4987 +#: library/stdtypes.rst:4988 msgid "" "A union object holds the value of the ``|`` (bitwise or) operation on " "multiple :ref:`type objects `. These types are intended " @@ -7043,7 +7051,7 @@ msgid "" "Union`." msgstr "" -#: library/stdtypes.rst:4994 +#: library/stdtypes.rst:4995 msgid "" "Defines a union object which holds types *X*, *Y*, and so forth. ``X | Y`` " "means either X or Y. It is equivalent to ``typing.Union[X, Y]``. For " @@ -7051,66 +7059,66 @@ msgid "" "class:`float`::" msgstr "" -#: library/stdtypes.rst:5004 +#: library/stdtypes.rst:5005 msgid "" "Union objects can be tested for equality with other union objects. Details:" msgstr "" -#: library/stdtypes.rst:5006 +#: library/stdtypes.rst:5007 msgid "Unions of unions are flattened::" msgstr "" -#: library/stdtypes.rst:5010 +#: library/stdtypes.rst:5011 msgid "Redundant types are removed::" msgstr "" -#: library/stdtypes.rst:5014 +#: library/stdtypes.rst:5015 msgid "When comparing unions, the order is ignored::" msgstr "" -#: library/stdtypes.rst:5018 +#: library/stdtypes.rst:5019 msgid "It is compatible with :data:`typing.Union`::" msgstr "" -#: library/stdtypes.rst:5022 +#: library/stdtypes.rst:5023 msgid "Optional types can be spelled as a union with ``None``::" msgstr "" -#: library/stdtypes.rst:5029 +#: library/stdtypes.rst:5030 msgid "" "Calls to :func:`isinstance` and :func:`issubclass` are also supported with a " "union object::" msgstr "" -#: library/stdtypes.rst:5035 +#: library/stdtypes.rst:5036 msgid "" "However, union objects containing :ref:`parameterized generics ` cannot be used::" msgstr "" -#: library/stdtypes.rst:5043 +#: library/stdtypes.rst:5044 msgid "" "The user-exposed type for the union object can be accessed from :data:`types." "UnionType` and used for :func:`isinstance` checks. An object cannot be " "instantiated from the type::" msgstr "" -#: library/stdtypes.rst:5056 +#: library/stdtypes.rst:5057 msgid "" "The :meth:`__or__` method for type objects was added to support the syntax " "``X | Y``. If a metaclass implements :meth:`__or__`, the Union may override " "it::" msgstr "" -#: library/stdtypes.rst:5074 +#: library/stdtypes.rst:5075 msgid ":pep:`604` -- PEP proposing the ``X | Y`` syntax and the Union type." msgstr "" -#: library/stdtypes.rst:5082 +#: library/stdtypes.rst:5083 msgid "Other Built-in Types" msgstr "Autres types natifs" -#: library/stdtypes.rst:5084 +#: library/stdtypes.rst:5085 msgid "" "The interpreter supports several other kinds of objects. Most of these " "support only one or two operations." @@ -7118,11 +7126,11 @@ msgstr "" "L'interpréteur gère aussi d'autres types d'objets, la plupart ne supportant " "cependant qu'une ou deux opérations." -#: library/stdtypes.rst:5091 +#: library/stdtypes.rst:5092 msgid "Modules" msgstr "Modules" -#: library/stdtypes.rst:5093 +#: library/stdtypes.rst:5094 msgid "" "The only special operation on a module is attribute access: ``m.name``, " "where *m* is a module and *name* accesses a name defined in *m*'s symbol " @@ -7140,7 +7148,7 @@ msgstr "" "objet module nommé *foo* existe, il nécessite cependant une *définition* " "(externe) d'un module nommé *foo* quelque part.)" -#: library/stdtypes.rst:5100 +#: library/stdtypes.rst:5101 msgid "" "A special attribute of every module is :attr:`~object.__dict__`. This is the " "dictionary containing the module's symbol table. Modifying this dictionary " @@ -7158,7 +7166,7 @@ msgstr "" "vous ne pouvez pas écrire ``m.__dict__ = {}``). Modifier :attr:`~object." "__dict__` directement n'est pas recommandé." -#: library/stdtypes.rst:5108 +#: library/stdtypes.rst:5109 msgid "" "Modules built into the interpreter are written like this: ````. If loaded from a file, they are written as ````. S'ils sont chargés depuis un fichier, ils sont représentés " "````." -#: library/stdtypes.rst:5116 +#: library/stdtypes.rst:5117 msgid "Classes and Class Instances" msgstr "Les classes et instances de classes" -#: library/stdtypes.rst:5118 +#: library/stdtypes.rst:5119 msgid "See :ref:`objects` and :ref:`class` for these." msgstr "Voir :ref:`objects` et :ref:`class`." -#: library/stdtypes.rst:5124 +#: library/stdtypes.rst:5125 msgid "Functions" msgstr "Fonctions" -#: library/stdtypes.rst:5126 +#: library/stdtypes.rst:5127 msgid "" "Function objects are created by function definitions. The only operation on " "a function object is to call it: ``func(argument-list)``." @@ -7189,7 +7197,7 @@ msgstr "" "opération applicable à un objet fonction est de l'appeler : ``func(argument-" "list)``." -#: library/stdtypes.rst:5129 +#: library/stdtypes.rst:5130 msgid "" "There are really two flavors of function objects: built-in functions and " "user-defined functions. Both support the same operation (to call the " @@ -7201,15 +7209,15 @@ msgstr "" "opérations (l'appel à la fonction), mais leur implémentation est différente, " "d'où les deux types distincts." -#: library/stdtypes.rst:5133 +#: library/stdtypes.rst:5134 msgid "See :ref:`function` for more information." msgstr "Voir :ref:`function` pour plus d'information." -#: library/stdtypes.rst:5139 +#: library/stdtypes.rst:5140 msgid "Methods" msgstr "Méthodes" -#: library/stdtypes.rst:5143 +#: library/stdtypes.rst:5144 msgid "" "Methods are functions that are called using the attribute notation. There " "are two flavors: built-in methods (such as :meth:`append` on lists) and " @@ -7221,7 +7229,7 @@ msgstr "" "listes), et les méthodes d'instances de classes. Les méthodes natives sont " "représentées avec le type qui les supporte." -#: library/stdtypes.rst:5148 +#: library/stdtypes.rst:5149 msgid "" "If you access a method (a function defined in a class namespace) through an " "instance, you get a special object: a :dfn:`bound method` (also called :dfn:" @@ -7242,7 +7250,7 @@ msgstr "" "n)`` est tout à fait équivalent à appeler ``m.__func__(m.__self__, arg-1, " "arg-2, …, arg-n)``." -#: library/stdtypes.rst:5157 +#: library/stdtypes.rst:5158 msgid "" "Like function objects, bound method objects support getting arbitrary " "attributes. However, since method attributes are actually stored on the " @@ -7259,15 +7267,15 @@ msgstr "" "`AttributeError`. Pour affecter l'attribut, vous devrez explicitement " "l'affecter à sa fonction sous-jacente ::" -#: library/stdtypes.rst:5208 +#: library/stdtypes.rst:5209 msgid "See :ref:`types` for more information." msgstr "Voir :ref:`types` pour plus d'information." -#: library/stdtypes.rst:5185 +#: library/stdtypes.rst:5186 msgid "Code Objects" msgstr "Objets code" -#: library/stdtypes.rst:5191 +#: library/stdtypes.rst:5192 msgid "" "Code objects are used by the implementation to represent \"pseudo-compiled\" " "executable Python code such as a function body. They differ from function " @@ -7283,13 +7291,13 @@ msgstr "" "fonction native :func:`compile` et peuvent être obtenus des objets fonction " "via leur attribut :attr:`__code__`. Voir aussi le module :mod:`code`." -#: library/stdtypes.rst:5198 +#: library/stdtypes.rst:5199 msgid "" "Accessing ``__code__`` raises an :ref:`auditing event ` ``object." "__getattr__`` with arguments ``obj`` and ``\"__code__\"``." msgstr "" -#: library/stdtypes.rst:5205 +#: library/stdtypes.rst:5206 msgid "" "A code object can be executed or evaluated by passing it (instead of a " "source string) to the :func:`exec` or :func:`eval` built-in functions." @@ -7298,11 +7306,11 @@ msgstr "" "d'une chaîne contenant du code) aux fonction natives :func:`exec` ou :func:" "`eval`." -#: library/stdtypes.rst:5214 +#: library/stdtypes.rst:5215 msgid "Type Objects" msgstr "Objets type" -#: library/stdtypes.rst:5220 +#: library/stdtypes.rst:5221 msgid "" "Type objects represent the various object types. An object's type is " "accessed by the built-in function :func:`type`. There are no special " @@ -7314,15 +7322,15 @@ msgstr "" "opération spéciale sur les types. Le module standard :mod:`types` définit " "les noms de tous les types natifs." -#: library/stdtypes.rst:5225 +#: library/stdtypes.rst:5226 msgid "Types are written like this: ````." msgstr "Les types sont représentés : ````." -#: library/stdtypes.rst:5231 +#: library/stdtypes.rst:5232 msgid "The Null Object" msgstr "L'objet Null" -#: library/stdtypes.rst:5233 +#: library/stdtypes.rst:5234 msgid "" "This object is returned by functions that don't explicitly return a value. " "It supports no special operations. There is exactly one null object, named " @@ -7332,15 +7340,15 @@ msgstr "" "valeur. Il ne supporte aucune opération spéciale. Il existe exactement un " "objet *null* nommé ``None`` (c'est un nom natif). ``type(None)()``." -#: library/stdtypes.rst:5237 +#: library/stdtypes.rst:5238 msgid "It is written as ``None``." msgstr "C'est écrit ``None``." -#: library/stdtypes.rst:5244 +#: library/stdtypes.rst:5245 msgid "The Ellipsis Object" msgstr "L'objet points de suspension" -#: library/stdtypes.rst:5246 +#: library/stdtypes.rst:5247 msgid "" "This object is commonly used by slicing (see :ref:`slicings`). It supports " "no special operations. There is exactly one ellipsis object, named :const:" @@ -7352,15 +7360,15 @@ msgstr "" "objet *ellipsis*, nommé :const:`Ellipsis` (un nom natif). ``type(Ellipsis)" "()`` produit le *singleton* :const:`Ellipsis`." -#: library/stdtypes.rst:5251 +#: library/stdtypes.rst:5252 msgid "It is written as ``Ellipsis`` or ``...``." msgstr "C'est écrit ``Ellipsis`` ou ``...``." -#: library/stdtypes.rst:5257 +#: library/stdtypes.rst:5258 msgid "The NotImplemented Object" msgstr "L'objet *NotImplemented*" -#: library/stdtypes.rst:5259 +#: library/stdtypes.rst:5260 msgid "" "This object is returned from comparisons and binary operations when they are " "asked to operate on types they don't support. See :ref:`comparisons` for " @@ -7372,15 +7380,15 @@ msgstr "" "pour plus d'informations. Il n'y a qu'un seul objet ``NotImplemented``. " "``type(NotImplemented)()`` renvoie un *singleton*." -#: library/stdtypes.rst:5264 +#: library/stdtypes.rst:5265 msgid "It is written as ``NotImplemented``." msgstr "C'est écrit ``NotImplemented``." -#: library/stdtypes.rst:5270 +#: library/stdtypes.rst:5271 msgid "Boolean Values" msgstr "Valeurs booléennes" -#: library/stdtypes.rst:5272 +#: library/stdtypes.rst:5273 msgid "" "Boolean values are the two constant objects ``False`` and ``True``. They " "are used to represent truth values (although other values can also be " @@ -7399,15 +7407,15 @@ msgstr "" "valeur en booléen tant que la valeur peut être interprétée en une valeur de " "vérité (voir :ref:`truth` au dessus)." -#: library/stdtypes.rst:5285 +#: library/stdtypes.rst:5286 msgid "They are written as ``False`` and ``True``, respectively." msgstr "Ils s'écrivent ``False`` et ``True``, respectivement." -#: library/stdtypes.rst:5291 +#: library/stdtypes.rst:5292 msgid "Internal Objects" msgstr "Objets internes" -#: library/stdtypes.rst:5293 +#: library/stdtypes.rst:5294 msgid "" "See :ref:`types` for this information. It describes stack frame objects, " "traceback objects, and slice objects." @@ -7415,11 +7423,11 @@ msgstr "" "Voir :ref:`types`. Ils décrivent les objets *stack frame*, *traceback*, et " "*slice*." -#: library/stdtypes.rst:5300 +#: library/stdtypes.rst:5301 msgid "Special Attributes" msgstr "Attributs spéciaux" -#: library/stdtypes.rst:5302 +#: library/stdtypes.rst:5303 msgid "" "The implementation adds a few special read-only attributes to several object " "types, where they are relevant. Some of these are not reported by the :func:" @@ -7429,7 +7437,7 @@ msgstr "" "certains types, lorsque ça a du sens. Certains ne sont *pas* listés par la " "fonction native :func:`dir`." -#: library/stdtypes.rst:5309 +#: library/stdtypes.rst:5310 msgid "" "A dictionary or other mapping object used to store an object's (writable) " "attributes." @@ -7437,20 +7445,20 @@ msgstr "" "Un dictionnaire ou un autre *mapping object* utilisé pour stocker les " "attributs (modifiables) de l'objet." -#: library/stdtypes.rst:5315 +#: library/stdtypes.rst:5316 msgid "The class to which a class instance belongs." msgstr "La classe de l'instance de classe." -#: library/stdtypes.rst:5320 +#: library/stdtypes.rst:5321 msgid "The tuple of base classes of a class object." msgstr "Le *n*-uplet des classes parentes d'un objet classe." -#: library/stdtypes.rst:5325 +#: library/stdtypes.rst:5326 msgid "" "The name of the class, function, method, descriptor, or generator instance." msgstr "Le nom de la classe, fonction, méthode, descripteur, ou générateur." -#: library/stdtypes.rst:5331 +#: library/stdtypes.rst:5332 msgid "" "The :term:`qualified name` of the class, function, method, descriptor, or " "generator instance." @@ -7458,7 +7466,7 @@ msgstr "" "Le :term:`qualified name` de la classe, fonction, méthode, descripteur, ou " "générateur." -#: library/stdtypes.rst:5339 +#: library/stdtypes.rst:5340 msgid "" "This attribute is a tuple of classes that are considered when looking for " "base classes during method resolution." @@ -7466,7 +7474,7 @@ msgstr "" "Cet attribut est un *n*-uplet contenant les classes parents prises en compte " "lors de la résolution de méthode." -#: library/stdtypes.rst:5345 +#: library/stdtypes.rst:5346 msgid "" "This method can be overridden by a metaclass to customize the method " "resolution order for its instances. It is called at class instantiation, " @@ -7477,7 +7485,7 @@ msgstr "" "la l'initialisation de la classe, et son résultat est stocké dans " "l'attribut :attr:`~class.__mro__`." -#: library/stdtypes.rst:5352 +#: library/stdtypes.rst:5353 #, fuzzy msgid "" "Each class keeps a list of weak references to its immediate subclasses. " @@ -7488,11 +7496,11 @@ msgstr "" "immédiates. Cette méthode renvoie la liste de toutes ces références encore " "valables. Exemple ::" -#: library/stdtypes.rst:5361 +#: library/stdtypes.rst:5362 msgid "Footnotes" msgstr "Notes" -#: library/stdtypes.rst:5362 +#: library/stdtypes.rst:5363 msgid "" "Additional information on these special methods may be found in the Python " "Reference Manual (:ref:`customization`)." @@ -7500,7 +7508,7 @@ msgstr "" "Plus d'informations sur ces méthodes spéciales peuvent être trouvées dans le " "*Python Reference Manual* (:ref:`customization`)." -#: library/stdtypes.rst:5365 +#: library/stdtypes.rst:5366 msgid "" "As a consequence, the list ``[1, 2]`` is considered equal to ``[1.0, 2.0]``, " "and similarly for tuples." @@ -7508,13 +7516,13 @@ msgstr "" "Par conséquent, la liste ``[1, 2]`` est considérée égale à ``[1.0, 2.0]``. " "Idem avec des *n*-uplets." -#: library/stdtypes.rst:5368 +#: library/stdtypes.rst:5369 msgid "They must have since the parser can't tell the type of the operands." msgstr "" "Nécessairement, puisque l'analyseur ne peut pas discerner le type des " "opérandes." -#: library/stdtypes.rst:5370 +#: library/stdtypes.rst:5371 msgid "" "Cased characters are those with general category property being one of \"Lu" "\" (Letter, uppercase), \"Ll\" (Letter, lowercase), or \"Lt\" (Letter, " @@ -7524,7 +7532,7 @@ msgstr "" "category* est soit \"Lu\" (pour *Letter*, *uppercase*), soit \"Ll\" (pour " "*Letter*, *lowercase*), soit \"Lt\" (pour *Letter*, *titlecase*)." -#: library/stdtypes.rst:5373 +#: library/stdtypes.rst:5374 msgid "" "To format only a tuple you should therefore provide a singleton tuple whose " "only element is the tuple to be formatted." diff --git a/library/typing.po b/library/typing.po index 58587bc4..a86984bb 100644 --- a/library/typing.po +++ b/library/typing.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-27 10:27+0100\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-12-16 17:27+0100\n" "Last-Translator: Jean-Michel Laprise \n" "Language-Team: FRENCH \n" @@ -332,7 +332,7 @@ msgstr "" "rappel ayant des signatures spécifiques peuvent être typés en utilisant " "``Callable[[Arg1Type, Arg2Type], ReturnType]``." -#: library/typing.rst:1011 library/typing.rst:2089 +#: library/typing.rst:1011 library/typing.rst:2088 msgid "For example::" msgstr "Par exemple ::" @@ -793,7 +793,7 @@ msgstr "Type « union » ; ``Union[X, Y]`` signifie X ou Y." #, fuzzy msgid "" "To define a union, use e.g. ``Union[int, str]`` or the shorthand ``int | " -"str``. Details:" +"str``. Using that shorthand is recommended. Details:" msgstr "" "Pour définir une union, utilisez par exemple ``Union[int, str]``. Détail :" @@ -1085,7 +1085,7 @@ msgstr "" "qu'un nom ne peut pas être réassigné ou remplacé dans une sous-classe. Par " "exemple ::" -#: library/typing.rst:1984 +#: library/typing.rst:1983 msgid "" "There is no runtime checking of these properties. See :pep:`591` for more " "details." @@ -2172,7 +2172,7 @@ msgstr "" "l'ordre des variables de type correspondent à ceux de la classe :class:" "`Generator`, par exemple ::" -#: library/typing.rst:1790 +#: library/typing.rst:1789 msgid "" ":class:`collections.abc.Coroutine` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -2180,7 +2180,7 @@ msgstr "" ":class:`collections.abc.Coroutine` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1796 +#: library/typing.rst:1795 msgid "" "An async generator can be annotated by the generic type " "``AsyncGenerator[YieldType, SendType]``. For example::" @@ -2188,7 +2188,7 @@ msgstr "" "Un générateur asynchrone peut être annoté par le type générique " "``AsyncGenerator[YieldType, SendType]``. Par exemple ::" -#: library/typing.rst:1805 +#: library/typing.rst:1804 msgid "" "Unlike normal generators, async generators cannot return a value, so there " "is no ``ReturnType`` type parameter. As with :class:`Generator`, the " @@ -2199,14 +2199,14 @@ msgstr "" "``ReturnType``. Comme avec :class:`Generator`, le ``SendType`` se comporte " "de manière contravariante." -#: library/typing.rst:1809 +#: library/typing.rst:1808 msgid "" "If your generator will only yield values, set the ``SendType`` to ``None``::" msgstr "" "Si votre générateur ne donne que des valeurs, réglez le paramètre " "``SendType`` sur ``None`` ::" -#: library/typing.rst:1817 +#: library/typing.rst:1816 msgid "" "Alternatively, annotate your generator as having a return type of either " "``AsyncIterable[YieldType]`` or ``AsyncIterator[YieldType]``::" @@ -2214,7 +2214,7 @@ msgstr "" "Alternativement, annotez votre générateur comme ayant un type de retour soit " "``AsyncIterable[YieldType]`` ou ``AsyncIterator[YieldType]`` ::" -#: library/typing.rst:1827 +#: library/typing.rst:1826 msgid "" ":class:`collections.abc.AsyncGenerator` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -2222,11 +2222,11 @@ msgstr "" ":class:`collections.abc.AsyncGenerator` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1833 +#: library/typing.rst:1832 msgid "A generic version of :class:`collections.abc.AsyncIterable`." msgstr "Une version générique de :class:`collections.abc.AsyncIterable`." -#: library/typing.rst:1837 +#: library/typing.rst:1836 msgid "" ":class:`collections.abc.AsyncIterable` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -2234,11 +2234,11 @@ msgstr "" ":class:`collections.abc.AsyncIterable` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1843 +#: library/typing.rst:1842 msgid "A generic version of :class:`collections.abc.AsyncIterator`." msgstr "Une version générique de :class:`collections.abc.AsyncIterator`." -#: library/typing.rst:1847 +#: library/typing.rst:1846 msgid "" ":class:`collections.abc.AsyncIterator` now supports ``[]``. See :pep:`585` " "and :ref:`types-genericalias`." @@ -2246,11 +2246,11 @@ msgstr "" ":class:`collections.abc.AsyncIterator` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1853 +#: library/typing.rst:1852 msgid "A generic version of :class:`collections.abc.Awaitable`." msgstr "Une version générique de :class:`collections.abc.Awaitable`." -#: library/typing.rst:1857 +#: library/typing.rst:1856 msgid "" ":class:`collections.abc.Awaitable` now supports ``[]``. See :pep:`585` and :" "ref:`types-genericalias`." @@ -2258,15 +2258,15 @@ msgstr "" ":class:`collections.abc.Awaitable` prend désormais en charge ``[]``. Voir :" "pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1863 +#: library/typing.rst:1862 msgid "Context manager types" msgstr "" -#: library/typing.rst:1867 +#: library/typing.rst:1866 msgid "A generic version of :class:`contextlib.AbstractContextManager`." msgstr "Une version générique de :class:`contextlib.AbstractContextManager`." -#: library/typing.rst:1872 +#: library/typing.rst:1871 msgid "" ":class:`contextlib.AbstractContextManager` now supports ``[]``. See :pep:" "`585` and :ref:`types-genericalias`." @@ -2274,12 +2274,12 @@ msgstr "" ":class:`contextlib.AbstractContextManager` prend désormais en charge ``[]``. " "Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1878 +#: library/typing.rst:1877 msgid "A generic version of :class:`contextlib.AbstractAsyncContextManager`." msgstr "" "Une version générique de :class:`contextlib.AbstractAsyncContextManager`." -#: library/typing.rst:1883 +#: library/typing.rst:1882 msgid "" ":class:`contextlib.AbstractAsyncContextManager` now supports ``[]``. See :" "pep:`585` and :ref:`types-genericalias`." @@ -2287,15 +2287,15 @@ msgstr "" ":class:`contextlib.AbstractAsyncContextManager` prend désormais en charge " "``[]``. Voir :pep:`585` et :ref:`types-genericalias`." -#: library/typing.rst:1888 +#: library/typing.rst:1887 msgid "Protocols" msgstr "" -#: library/typing.rst:1890 +#: library/typing.rst:1889 msgid "These protocols are decorated with :func:`runtime_checkable`." msgstr "" -#: library/typing.rst:1894 +#: library/typing.rst:1893 msgid "" "An ABC with one abstract method ``__abs__`` that is covariant in its return " "type." @@ -2303,27 +2303,27 @@ msgstr "" "Une ABC avec une méthode abstraite ``__abs__`` qui est covariante dans son " "type de retour." -#: library/typing.rst:1899 +#: library/typing.rst:1898 msgid "An ABC with one abstract method ``__bytes__``." msgstr "Une ABC avec une méthode abstraite ``__bytes__``." -#: library/typing.rst:1903 +#: library/typing.rst:1902 msgid "An ABC with one abstract method ``__complex__``." msgstr "Une ABC avec une méthode abstraite ``__complex__``." -#: library/typing.rst:1907 +#: library/typing.rst:1906 msgid "An ABC with one abstract method ``__float__``." msgstr "Une ABC avec une méthode abstraite ``__float__``." -#: library/typing.rst:1911 +#: library/typing.rst:1910 msgid "An ABC with one abstract method ``__index__``." msgstr "Une ABC avec une méthode abstraite ``__index__``." -#: library/typing.rst:1917 +#: library/typing.rst:1916 msgid "An ABC with one abstract method ``__int__``." msgstr "Une ABC avec une méthode abstraite ``__int__``." -#: library/typing.rst:1921 +#: library/typing.rst:1920 msgid "" "An ABC with one abstract method ``__round__`` that is covariant in its " "return type." @@ -2331,16 +2331,16 @@ msgstr "" "Une ABC avec une méthode abstraite ``__round__`` qui est covariante dans son " "type de retour." -#: library/typing.rst:1925 +#: library/typing.rst:1924 #, fuzzy msgid "Functions and decorators" msgstr "Classes, fonctions et décorateurs" -#: library/typing.rst:1929 +#: library/typing.rst:1928 msgid "Cast a value to a type." msgstr "Convertit une valeur en un type." -#: library/typing.rst:1931 +#: library/typing.rst:1930 msgid "" "This returns the value unchanged. To the type checker this signals that the " "return value has the designated type, but at runtime we intentionally don't " @@ -2351,7 +2351,7 @@ msgstr "" "intentionnellement, rien n'est vérifié (afin que cela soit aussi rapide que " "possible)." -#: library/typing.rst:1938 +#: library/typing.rst:1937 msgid "" "The ``@overload`` decorator allows describing functions and methods that " "support multiple different combinations of argument types. A series of " @@ -2377,13 +2377,13 @@ msgstr "" "`NotImplementedError`. Un exemple de surcharge qui donne un type plus précis " "que celui qui peut être exprimé à l'aide d'une variable union ou type ::" -#: library/typing.rst:1962 +#: library/typing.rst:1961 msgid "See :pep:`484` for details and comparison with other typing semantics." msgstr "" "Voir la :pep:`484` pour plus de détails et la comparaison avec d'autres " "sémantiques de typage." -#: library/typing.rst:1966 +#: library/typing.rst:1965 msgid "" "A decorator to indicate to type checkers that the decorated method cannot be " "overridden, and the decorated class cannot be subclassed. For example::" @@ -2392,13 +2392,13 @@ msgstr "" "décorée ne peut pas être remplacée et que la classe décorée ne peut pas être " "sous-classée. Par exemple ::" -#: library/typing.rst:1991 +#: library/typing.rst:1990 msgid "Decorator to indicate that annotations are not type hints." msgstr "" "Décorateur pour indiquer que les annotations ne sont pas des indications de " "type." -#: library/typing.rst:1993 +#: library/typing.rst:1992 msgid "" "This works as class or function :term:`decorator`. With a class, it applies " "recursively to all methods defined in that class (but not to methods defined " @@ -2409,16 +2409,16 @@ msgstr "" "méthodes définies dans cette classe (mais pas aux méthodes définies dans ses " "superclasses ou sous-classes)." -#: library/typing.rst:1997 +#: library/typing.rst:1996 msgid "This mutates the function(s) in place." msgstr "Cela fait muter la ou les fonctions en place." -#: library/typing.rst:2001 +#: library/typing.rst:2000 msgid "Decorator to give another decorator the :func:`no_type_check` effect." msgstr "" "Décorateur pour donner à un autre décorateur l'effet :func:`no_type_check`." -#: library/typing.rst:2003 +#: library/typing.rst:2002 msgid "" "This wraps the decorator with something that wraps the decorated function " "in :func:`no_type_check`." @@ -2426,13 +2426,13 @@ msgstr "" "Ceci enveloppe le décorateur avec quelque chose qui enveloppe la fonction " "décorée dans :func:`no_type_check`." -#: library/typing.rst:2008 +#: library/typing.rst:2007 msgid "Decorator to mark a class or function to be unavailable at runtime." msgstr "" "Décorateur pour marquer une classe ou une fonction comme étant indisponible " "au moment de l'exécution." -#: library/typing.rst:2010 +#: library/typing.rst:2009 msgid "" "This decorator is itself not available at runtime. It is mainly intended to " "mark classes that are defined in type stub files if an implementation " @@ -2443,7 +2443,7 @@ msgstr "" "d'annotations de type (*type stub file*, en anglais) si une implémentation " "renvoie une instance d'une classe privée ::" -#: library/typing.rst:2021 +#: library/typing.rst:2020 msgid "" "Note that returning instances of private classes is not recommended. It is " "usually preferable to make such classes public." @@ -2451,11 +2451,11 @@ msgstr "" "Notez qu'il n'est pas recommandé de renvoyer les instances des classes " "privées. Il est généralement préférable de rendre ces classes publiques." -#: library/typing.rst:2025 +#: library/typing.rst:2024 msgid "Introspection helpers" msgstr "" -#: library/typing.rst:2029 +#: library/typing.rst:2028 msgid "" "Return a dictionary containing type hints for a function, method, module or " "class object." @@ -2463,7 +2463,7 @@ msgstr "" "renvoie un dictionnaire contenant des indications de type pour une fonction, " "une méthode, un module ou un objet de classe." -#: library/typing.rst:2032 +#: library/typing.rst:2031 msgid "" "This is often the same as ``obj.__annotations__``. In addition, forward " "references encoded as string literals are handled by evaluating them in " @@ -2480,31 +2480,31 @@ msgstr "" "classe ``C``, renvoie un dictionnaire construit en fusionnant toutes les " "``__annotations__`` en parcourant ``C.__mro__`` en ordre inverse." -#: library/typing.rst:2040 +#: library/typing.rst:2039 msgid "" "The function recursively replaces all ``Annotated[T, ...]`` with ``T``, " "unless ``include_extras`` is set to ``True`` (see :class:`Annotated` for " "more information). For example::" msgstr "" -#: library/typing.rst:2055 +#: library/typing.rst:2054 msgid "" ":func:`get_type_hints` does not work with imported :ref:`type aliases ` that include forward references. Enabling postponed evaluation of " "annotations (:pep:`563`) may remove the need for most forward references." msgstr "" -#: library/typing.rst:2060 +#: library/typing.rst:2059 msgid "Added ``include_extras`` parameter as part of :pep:`593`." msgstr "" -#: library/typing.rst:2066 +#: library/typing.rst:2065 msgid "Provide basic introspection for generic types and special typing forms." msgstr "" "Fournit une introspection de base pour les types génériques et les formes " "spéciales de typage." -#: library/typing.rst:2068 +#: library/typing.rst:2067 #, fuzzy msgid "" "For a typing object of the form ``X[Y, Z, ...]`` these functions return " @@ -2520,11 +2520,11 @@ msgstr "" "native ou de :mod:`collections`, il est normalisé en la classe originale. " "Pour les objets non gérés, renvoie la paire ``None`` , ``()``. Exemples ::" -#: library/typing.rst:2087 +#: library/typing.rst:2086 msgid "Check if a type is a :class:`TypedDict`." msgstr "" -#: library/typing.rst:2102 +#: library/typing.rst:2101 #, fuzzy msgid "" "A class used for internal typing representation of string forward " @@ -2539,18 +2539,18 @@ msgstr "" "instanciée par un utilisateur, mais peut être utilisée par des outils " "d'introspection." -#: library/typing.rst:2108 +#: library/typing.rst:2107 msgid "" ":pep:`585` generic types such as ``list[\"SomeClass\"]`` will not be " "implicitly transformed into ``list[ForwardRef(\"SomeClass\")]`` and thus " "will not automatically resolve to ``list[SomeClass]``." msgstr "" -#: library/typing.rst:2115 +#: library/typing.rst:2114 msgid "Constant" msgstr "Constante" -#: library/typing.rst:2119 +#: library/typing.rst:2118 msgid "" "A special constant that is assumed to be ``True`` by 3rd party static type " "checkers. It is ``False`` at runtime. Usage::" @@ -2558,7 +2558,7 @@ msgstr "" "Constante spéciale qui vaut ``True`` pour les vérificateurs de type " "statiques tiers et ``False`` à l'exécution. Utilisation ::" -#: library/typing.rst:2128 +#: library/typing.rst:2127 #, fuzzy msgid "" "The first type annotation must be enclosed in quotes, making it a \"forward " @@ -2573,7 +2573,7 @@ msgstr "" "sorte que la deuxième annotation n'a pas besoin d'être placée entre " "guillemets." -#: library/typing.rst:2135 +#: library/typing.rst:2134 msgid "" "If ``from __future__ import annotations`` is used in Python 3.7 or later, " "annotations are not evaluated at function definition time. Instead, they are " diff --git a/library/urllib.parse.po b/library/urllib.parse.po index f901d11a..e7834f44 100644 --- a/library/urllib.parse.po +++ b/library/urllib.parse.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -68,14 +68,14 @@ msgid "" "slash in the *path* component, which is retained if present. For example:" msgstr "" -#: library/urllib.parse.rst:63 +#: library/urllib.parse.rst:75 msgid "" "Following the syntax specifications in :rfc:`1808`, urlparse recognizes a " "netloc only if it is properly introduced by '//'. Otherwise the input is " "presumed to be a relative URL and thus to start with a path component." msgstr "" -#: library/urllib.parse.rst:82 +#: library/urllib.parse.rst:94 msgid "" "The *scheme* argument gives the default addressing scheme, to be used only " "if the URL does not specify one. It should be the same type (text or bytes) " @@ -83,7 +83,7 @@ msgid "" "is automatically converted to ``b''`` if appropriate." msgstr "" -#: library/urllib.parse.rst:87 +#: library/urllib.parse.rst:99 msgid "" "If the *allow_fragments* argument is false, fragment identifiers are not " "recognized. Instead, they are parsed as part of the path, parameters or " @@ -91,161 +91,165 @@ msgid "" "return value." msgstr "" -#: library/urllib.parse.rst:92 +#: library/urllib.parse.rst:104 msgid "" "The return value is a :term:`named tuple`, which means that its items can be " "accessed by index or as named attributes, which are:" msgstr "" -#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 +#: library/urllib.parse.rst:292 library/urllib.parse.rst:396 msgid "Attribute" msgstr "Attribut" -#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 +#: library/urllib.parse.rst:292 library/urllib.parse.rst:396 msgid "Index" msgstr "Index" -#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 +#: library/urllib.parse.rst:292 library/urllib.parse.rst:396 msgid "Value" msgstr "Valeur" -#: library/urllib.parse.rst:281 library/urllib.parse.rst:385 +#: library/urllib.parse.rst:292 library/urllib.parse.rst:396 msgid "Value if not present" msgstr "" -#: library/urllib.parse.rst:283 +#: library/urllib.parse.rst:294 msgid ":attr:`scheme`" msgstr ":attr:`scheme`" -#: library/urllib.parse.rst:283 library/urllib.parse.rst:387 +#: library/urllib.parse.rst:294 library/urllib.parse.rst:398 msgid "0" msgstr "0" -#: library/urllib.parse.rst:283 +#: library/urllib.parse.rst:294 msgid "URL scheme specifier" msgstr "" -#: library/urllib.parse.rst:283 +#: library/urllib.parse.rst:294 msgid "*scheme* parameter" msgstr "" -#: library/urllib.parse.rst:285 +#: library/urllib.parse.rst:296 msgid ":attr:`netloc`" msgstr ":attr:`netloc`" -#: library/urllib.parse.rst:285 library/urllib.parse.rst:389 +#: library/urllib.parse.rst:296 library/urllib.parse.rst:400 msgid "1" msgstr "1" -#: library/urllib.parse.rst:285 +#: library/urllib.parse.rst:296 msgid "Network location part" msgstr "" -#: library/urllib.parse.rst:102 library/urllib.parse.rst:107 -#: library/urllib.parse.rst:285 library/urllib.parse.rst:289 -#: library/urllib.parse.rst:387 library/urllib.parse.rst:389 +#: library/urllib.parse.rst:114 library/urllib.parse.rst:120 +#: library/urllib.parse.rst:298 library/urllib.parse.rst:302 +#: library/urllib.parse.rst:400 msgid "empty string" msgstr "" -#: library/urllib.parse.rst:287 +#: library/urllib.parse.rst:298 msgid ":attr:`path`" msgstr ":attr:`path`" -#: library/urllib.parse.rst:287 +#: library/urllib.parse.rst:298 msgid "2" msgstr "2" -#: library/urllib.parse.rst:287 +#: library/urllib.parse.rst:298 msgid "Hierarchical path" msgstr "" -#: library/urllib.parse.rst:104 +#: library/urllib.parse.rst:116 msgid ":attr:`params`" msgstr ":attr:`params`" -#: library/urllib.parse.rst:289 +#: library/urllib.parse.rst:300 msgid "3" msgstr "3" -#: library/urllib.parse.rst:104 -msgid "Parameters for last path element" +#: library/urllib.parse.rst:116 +msgid "No longer used" msgstr "" -#: library/urllib.parse.rst:289 +#: library/urllib.parse.rst:116 +msgid "always an empty string" +msgstr "" + +#: library/urllib.parse.rst:300 msgid ":attr:`query`" msgstr ":attr:`query`" -#: library/urllib.parse.rst:291 +#: library/urllib.parse.rst:302 msgid "4" msgstr "4" -#: library/urllib.parse.rst:289 +#: library/urllib.parse.rst:300 msgid "Query component" msgstr "" -#: library/urllib.parse.rst:291 library/urllib.parse.rst:389 +#: library/urllib.parse.rst:302 library/urllib.parse.rst:400 msgid ":attr:`fragment`" msgstr ":attr:`fragment`" -#: library/urllib.parse.rst:109 +#: library/urllib.parse.rst:120 msgid "5" msgstr "5" -#: library/urllib.parse.rst:291 library/urllib.parse.rst:389 +#: library/urllib.parse.rst:302 library/urllib.parse.rst:400 msgid "Fragment identifier" msgstr "" -#: library/urllib.parse.rst:293 +#: library/urllib.parse.rst:304 msgid ":attr:`username`" msgstr ":attr:`username`" -#: library/urllib.parse.rst:293 +#: library/urllib.parse.rst:304 msgid "User name" msgstr "" -#: library/urllib.parse.rst:113 library/urllib.parse.rst:117 -#: library/urllib.parse.rst:295 library/urllib.parse.rst:299 +#: library/urllib.parse.rst:124 library/urllib.parse.rst:128 +#: library/urllib.parse.rst:306 library/urllib.parse.rst:310 msgid ":const:`None`" msgstr ":const:`None`" -#: library/urllib.parse.rst:295 +#: library/urllib.parse.rst:306 msgid ":attr:`password`" msgstr ":attr:`password`" -#: library/urllib.parse.rst:295 +#: library/urllib.parse.rst:306 msgid "Password" msgstr "" -#: library/urllib.parse.rst:297 +#: library/urllib.parse.rst:308 msgid ":attr:`hostname`" msgstr ":attr:`hostname`" -#: library/urllib.parse.rst:297 +#: library/urllib.parse.rst:308 msgid "Host name (lower case)" msgstr "" -#: library/urllib.parse.rst:299 +#: library/urllib.parse.rst:310 msgid ":attr:`port`" msgstr ":attr:`port`" -#: library/urllib.parse.rst:299 +#: library/urllib.parse.rst:310 msgid "Port number as integer, if present" msgstr "" -#: library/urllib.parse.rst:303 +#: library/urllib.parse.rst:314 msgid "" "Reading the :attr:`port` attribute will raise a :exc:`ValueError` if an " "invalid port is specified in the URL. See section :ref:`urlparse-result-" "object` for more information on the result object." msgstr "" -#: library/urllib.parse.rst:307 +#: library/urllib.parse.rst:318 msgid "" "Unmatched square brackets in the :attr:`netloc` attribute will raise a :exc:" "`ValueError`." msgstr "" -#: library/urllib.parse.rst:310 +#: library/urllib.parse.rst:321 msgid "" "Characters in the :attr:`netloc` attribute that decompose under NFKC " "normalization (as used by the IDNA encoding) into any of ``/``, ``?``, " @@ -253,7 +257,7 @@ msgid "" "decomposed before parsing, no error will be raised." msgstr "" -#: library/urllib.parse.rst:133 +#: library/urllib.parse.rst:144 msgid "" "As is the case with all named tuples, the subclass has a few additional " "methods and attributes that are particularly useful. One such method is :" @@ -261,30 +265,30 @@ msgid "" "object replacing specified fields with new values." msgstr "" -#: library/urllib.parse.rst:151 +#: library/urllib.parse.rst:162 msgid "Added IPv6 URL parsing capabilities." msgstr "" -#: library/urllib.parse.rst:154 +#: library/urllib.parse.rst:165 msgid "" "The fragment is now parsed for all URL schemes (unless *allow_fragment* is " "false), in accordance with :rfc:`3986`. Previously, an allowlist of schemes " "that support fragments existed." msgstr "" -#: library/urllib.parse.rst:318 +#: library/urllib.parse.rst:329 msgid "" "Out-of-range port numbers now raise :exc:`ValueError`, instead of returning :" "const:`None`." msgstr "" -#: library/urllib.parse.rst:322 +#: library/urllib.parse.rst:333 msgid "" "Characters that affect netloc parsing under NFKC normalization will now " "raise :exc:`ValueError`." msgstr "" -#: library/urllib.parse.rst:170 +#: library/urllib.parse.rst:181 msgid "" "Parse a query string given as a string argument (data of type :mimetype:" "`application/x-www-form-urlencoded`). Data are returned as a dictionary. " @@ -292,7 +296,7 @@ msgid "" "lists of values for each name." msgstr "" -#: library/urllib.parse.rst:220 +#: library/urllib.parse.rst:231 msgid "" "The optional argument *keep_blank_values* is a flag indicating whether blank " "values in percent-encoded queries should be treated as blank strings. A true " @@ -301,48 +305,48 @@ msgid "" "treated as if they were not included." msgstr "" -#: library/urllib.parse.rst:226 +#: library/urllib.parse.rst:237 msgid "" "The optional argument *strict_parsing* is a flag indicating what to do with " "parsing errors. If false (the default), errors are silently ignored. If " "true, errors raise a :exc:`ValueError` exception." msgstr "" -#: library/urllib.parse.rst:230 +#: library/urllib.parse.rst:241 msgid "" "The optional *encoding* and *errors* parameters specify how to decode " "percent-encoded sequences into Unicode characters, as accepted by the :meth:" "`bytes.decode` method." msgstr "" -#: library/urllib.parse.rst:234 +#: library/urllib.parse.rst:245 msgid "" "The optional argument *max_num_fields* is the maximum number of fields to " "read. If set, then throws a :exc:`ValueError` if there are more than " "*max_num_fields* fields read." msgstr "" -#: library/urllib.parse.rst:238 +#: library/urllib.parse.rst:249 msgid "" "The optional argument *separator* is the symbol to use for separating the " "query arguments. It defaults to ``&``." msgstr "" -#: library/urllib.parse.rst:196 +#: library/urllib.parse.rst:207 msgid "" "Use the :func:`urllib.parse.urlencode` function (with the ``doseq`` " "parameter set to ``True``) to convert such dictionaries into query strings." msgstr "" -#: library/urllib.parse.rst:244 +#: library/urllib.parse.rst:255 msgid "Add *encoding* and *errors* parameters." msgstr "" -#: library/urllib.parse.rst:247 +#: library/urllib.parse.rst:258 msgid "Added *max_num_fields* parameter." msgstr "" -#: library/urllib.parse.rst:250 +#: library/urllib.parse.rst:261 msgid "" "Added *separator* parameter with the default value of ``&``. Python versions " "earlier than Python 3.10 allowed using both ``;`` and ``&`` as query " @@ -350,20 +354,20 @@ msgid "" "key, with ``&`` as the default separator." msgstr "" -#: library/urllib.parse.rst:216 +#: library/urllib.parse.rst:227 msgid "" "Parse a query string given as a string argument (data of type :mimetype:" "`application/x-www-form-urlencoded`). Data are returned as a list of name, " "value pairs." msgstr "" -#: library/urllib.parse.rst:241 +#: library/urllib.parse.rst:252 msgid "" "Use the :func:`urllib.parse.urlencode` function to convert such lists of " "pairs into query strings." msgstr "" -#: library/urllib.parse.rst:259 +#: library/urllib.parse.rst:270 msgid "" "Construct a URL from a tuple as returned by ``urlparse()``. The *parts* " "argument can be any six-item iterable. This may result in a slightly " @@ -372,7 +376,7 @@ msgid "" "states that these are equivalent)." msgstr "" -#: library/urllib.parse.rst:268 +#: library/urllib.parse.rst:279 msgid "" "This is similar to :func:`urlparse`, but does not split the params from the " "URL. This should generally be used instead of :func:`urlparse` if the more " @@ -382,23 +386,23 @@ msgid "" "returns a 5-item :term:`named tuple`::" msgstr "" -#: library/urllib.parse.rst:381 +#: library/urllib.parse.rst:392 msgid "" "The return value is a :term:`named tuple`, its items can be accessed by " "index or as named attributes:" msgstr "" -#: library/urllib.parse.rst:315 +#: library/urllib.parse.rst:326 msgid "" "Following the `WHATWG spec`_ that updates RFC 3986, ASCII newline ``\\n``, ``" "\\r`` and tab ``\\t`` characters are stripped from the URL." msgstr "" -#: library/urllib.parse.rst:326 +#: library/urllib.parse.rst:337 msgid "ASCII newline and tab characters are stripped from the URL." msgstr "" -#: library/urllib.parse.rst:333 +#: library/urllib.parse.rst:344 msgid "" "Combine the elements of a tuple as returned by :func:`urlsplit` into a " "complete URL as a string. The *parts* argument can be any five-item " @@ -407,7 +411,7 @@ msgid "" "a ? with an empty query; the RFC states that these are equivalent)." msgstr "" -#: library/urllib.parse.rst:342 +#: library/urllib.parse.rst:353 msgid "" "Construct a full (\"absolute\") URL by combining a \"base URL\" (*base*) " "with another URL (*url*). Informally, this uses components of the base URL, " @@ -415,30 +419,30 @@ msgid "" "path, to provide missing components in the relative URL. For example:" msgstr "" -#: library/urllib.parse.rst:351 +#: library/urllib.parse.rst:362 msgid "" "The *allow_fragments* argument has the same meaning and default as for :func:" "`urlparse`." msgstr "" -#: library/urllib.parse.rst:356 +#: library/urllib.parse.rst:367 msgid "" "If *url* is an absolute URL (that is, it starts with ``//`` or ``scheme://" "``), the *url*'s hostname and/or scheme will be present in the result. For " "example:" msgstr "" -#: library/urllib.parse.rst:365 +#: library/urllib.parse.rst:376 msgid "" "If you do not want that behavior, preprocess the *url* with :func:`urlsplit` " "and :func:`urlunsplit`, removing possible *scheme* and *netloc* parts." msgstr "" -#: library/urllib.parse.rst:371 +#: library/urllib.parse.rst:382 msgid "Behavior updated to match the semantics defined in :rfc:`3986`." msgstr "" -#: library/urllib.parse.rst:376 +#: library/urllib.parse.rst:387 msgid "" "If *url* contains a fragment identifier, return a modified version of *url* " "with no fragment identifier, and the fragment identifier as a separate " @@ -446,25 +450,25 @@ msgid "" "unmodified and an empty string." msgstr "" -#: library/urllib.parse.rst:387 +#: library/urllib.parse.rst:398 msgid ":attr:`url`" msgstr ":attr:`url`" -#: library/urllib.parse.rst:387 +#: library/urllib.parse.rst:398 msgid "URL with no fragment" msgstr "" -#: library/urllib.parse.rst:392 +#: library/urllib.parse.rst:403 msgid "" "See section :ref:`urlparse-result-object` for more information on the result " "object." msgstr "" -#: library/urllib.parse.rst:395 +#: library/urllib.parse.rst:406 msgid "Result is a structured object rather than a simple 2-tuple." msgstr "" -#: library/urllib.parse.rst:400 +#: library/urllib.parse.rst:411 msgid "" "Extract the url from a wrapped URL (that is, a string formatted as ````, ````, ``URL:scheme://host/path`` " @@ -472,11 +476,11 @@ msgid "" "without changes." msgstr "" -#: library/urllib.parse.rst:408 +#: library/urllib.parse.rst:419 msgid "Parsing ASCII Encoded Bytes" msgstr "" -#: library/urllib.parse.rst:410 +#: library/urllib.parse.rst:421 msgid "" "The URL parsing functions were originally designed to operate on character " "strings only. In practice, it is useful to be able to manipulate properly " @@ -485,14 +489,14 @@ msgid "" "`bytearray` objects in addition to :class:`str` objects." msgstr "" -#: library/urllib.parse.rst:416 +#: library/urllib.parse.rst:427 msgid "" "If :class:`str` data is passed in, the result will also contain only :class:" "`str` data. If :class:`bytes` or :class:`bytearray` data is passed in, the " "result will contain only :class:`bytes` data." msgstr "" -#: library/urllib.parse.rst:420 +#: library/urllib.parse.rst:431 msgid "" "Attempting to mix :class:`str` data with :class:`bytes` or :class:" "`bytearray` in a single function call will result in a :exc:`TypeError` " @@ -500,7 +504,7 @@ msgid "" "trigger :exc:`UnicodeDecodeError`." msgstr "" -#: library/urllib.parse.rst:425 +#: library/urllib.parse.rst:436 msgid "" "To support easier conversion of result objects between :class:`str` and :" "class:`bytes`, all return values from URL parsing functions provide either " @@ -513,14 +517,14 @@ msgid "" "`str` data (for :meth:`decode` methods)." msgstr "" -#: library/urllib.parse.rst:436 +#: library/urllib.parse.rst:447 msgid "" "Applications that need to operate on potentially improperly quoted URLs that " "may contain non-ASCII data will need to do their own decoding from bytes to " "characters before invoking the URL parsing methods." msgstr "" -#: library/urllib.parse.rst:440 +#: library/urllib.parse.rst:451 msgid "" "The behaviour described in this section applies only to the URL parsing " "functions. The URL quoting functions use their own rules when producing or " @@ -528,15 +532,15 @@ msgid "" "URL quoting functions." msgstr "" -#: library/urllib.parse.rst:445 +#: library/urllib.parse.rst:456 msgid "URL parsing functions now accept ASCII encoded byte sequences" msgstr "" -#: library/urllib.parse.rst:452 +#: library/urllib.parse.rst:463 msgid "Structured Parse Results" msgstr "" -#: library/urllib.parse.rst:454 +#: library/urllib.parse.rst:465 msgid "" "The result objects from the :func:`urlparse`, :func:`urlsplit` and :func:" "`urldefrag` functions are subclasses of the :class:`tuple` type. These " @@ -545,7 +549,7 @@ msgid "" "section, as well as an additional method:" msgstr "" -#: library/urllib.parse.rst:462 +#: library/urllib.parse.rst:473 msgid "" "Return the re-combined version of the original URL as a string. This may " "differ from the original URL in that the scheme may be normalized to lower " @@ -553,72 +557,72 @@ msgid "" "queries, and fragment identifiers will be removed." msgstr "" -#: library/urllib.parse.rst:467 +#: library/urllib.parse.rst:478 msgid "" "For :func:`urldefrag` results, only empty fragment identifiers will be " "removed. For :func:`urlsplit` and :func:`urlparse` results, all noted " "changes will be made to the URL returned by this method." msgstr "" -#: library/urllib.parse.rst:471 +#: library/urllib.parse.rst:482 msgid "" "The result of this method remains unchanged if passed back through the " "original parsing function:" msgstr "" -#: library/urllib.parse.rst:484 +#: library/urllib.parse.rst:495 msgid "" "The following classes provide the implementations of the structured parse " "results when operating on :class:`str` objects:" msgstr "" -#: library/urllib.parse.rst:489 +#: library/urllib.parse.rst:500 msgid "" "Concrete class for :func:`urldefrag` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`DefragResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:497 +#: library/urllib.parse.rst:508 msgid "" "Concrete class for :func:`urlparse` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`ParseResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:503 +#: library/urllib.parse.rst:514 msgid "" "Concrete class for :func:`urlsplit` results containing :class:`str` data. " "The :meth:`encode` method returns a :class:`SplitResultBytes` instance." msgstr "" -#: library/urllib.parse.rst:508 +#: library/urllib.parse.rst:519 msgid "" "The following classes provide the implementations of the parse results when " "operating on :class:`bytes` or :class:`bytearray` objects:" msgstr "" -#: library/urllib.parse.rst:513 +#: library/urllib.parse.rst:524 msgid "" "Concrete class for :func:`urldefrag` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`DefragResult` instance." msgstr "" -#: library/urllib.parse.rst:521 +#: library/urllib.parse.rst:532 msgid "" "Concrete class for :func:`urlparse` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`ParseResult` instance." msgstr "" -#: library/urllib.parse.rst:529 +#: library/urllib.parse.rst:540 msgid "" "Concrete class for :func:`urlsplit` results containing :class:`bytes` data. " "The :meth:`decode` method returns a :class:`SplitResult` instance." msgstr "" -#: library/urllib.parse.rst:537 +#: library/urllib.parse.rst:548 msgid "URL Quoting" msgstr "" -#: library/urllib.parse.rst:539 +#: library/urllib.parse.rst:550 msgid "" "The URL quoting functions focus on taking program data and making it safe " "for use as URL components by quoting special characters and appropriately " @@ -627,7 +631,7 @@ msgid "" "isn't already covered by the URL parsing functions above." msgstr "" -#: library/urllib.parse.rst:547 +#: library/urllib.parse.rst:558 msgid "" "Replace special characters in *string* using the ``%xx`` escape. Letters, " "digits, and the characters ``'_.-~'`` are never quoted. By default, this " @@ -636,17 +640,17 @@ msgid "" "quoted --- its default value is ``'/'``." msgstr "" -#: library/urllib.parse.rst:599 library/urllib.parse.rst:628 +#: library/urllib.parse.rst:610 library/urllib.parse.rst:639 msgid "*string* may be either a :class:`str` or a :class:`bytes` object." msgstr "" -#: library/urllib.parse.rst:555 +#: library/urllib.parse.rst:566 msgid "" "Moved from :rfc:`2396` to :rfc:`3986` for quoting URL strings. \"~\" is now " "included in the set of unreserved characters." msgstr "" -#: library/urllib.parse.rst:559 +#: library/urllib.parse.rst:570 msgid "" "The optional *encoding* and *errors* parameters specify how to deal with non-" "ASCII characters, as accepted by the :meth:`str.encode` method. *encoding* " @@ -656,17 +660,17 @@ msgid "" "`TypeError` is raised." msgstr "" -#: library/urllib.parse.rst:567 +#: library/urllib.parse.rst:578 msgid "" "Note that ``quote(string, safe, encoding, errors)`` is equivalent to " "``quote_from_bytes(string.encode(encoding, errors), safe)``." msgstr "" -#: library/urllib.parse.rst:570 +#: library/urllib.parse.rst:581 msgid "Example: ``quote('/El Niño/')`` yields ``'/El%20Ni%C3%B1o/'``." msgstr "" -#: library/urllib.parse.rst:575 +#: library/urllib.parse.rst:586 msgid "" "Like :func:`quote`, but also replace spaces with plus signs, as required for " "quoting HTML form values when building up a query string to go into a URL. " @@ -674,21 +678,21 @@ msgid "" "*safe*. It also does not have *safe* default to ``'/'``." msgstr "" -#: library/urllib.parse.rst:580 +#: library/urllib.parse.rst:591 msgid "Example: ``quote_plus('/El Niño/')`` yields ``'%2FEl+Ni%C3%B1o%2F'``." msgstr "" -#: library/urllib.parse.rst:585 +#: library/urllib.parse.rst:596 msgid "" "Like :func:`quote`, but accepts a :class:`bytes` object rather than a :class:" "`str`, and does not perform string-to-bytes encoding." msgstr "" -#: library/urllib.parse.rst:588 +#: library/urllib.parse.rst:599 msgid "Example: ``quote_from_bytes(b'a&\\xef')`` yields ``'a%26%EF'``." msgstr "" -#: library/urllib.parse.rst:594 +#: library/urllib.parse.rst:605 msgid "" "Replace ``%xx`` escapes with their single-character equivalent. The optional " "*encoding* and *errors* parameters specify how to decode percent-encoded " @@ -696,52 +700,52 @@ msgid "" "method." msgstr "" -#: library/urllib.parse.rst:601 +#: library/urllib.parse.rst:612 msgid "" "*encoding* defaults to ``'utf-8'``. *errors* defaults to ``'replace'``, " "meaning invalid sequences are replaced by a placeholder character." msgstr "" -#: library/urllib.parse.rst:605 +#: library/urllib.parse.rst:616 msgid "Example: ``unquote('/El%20Ni%C3%B1o/')`` yields ``'/El Niño/'``." msgstr "" -#: library/urllib.parse.rst:607 +#: library/urllib.parse.rst:618 msgid "" "*string* parameter supports bytes and str objects (previously only str)." msgstr "" -#: library/urllib.parse.rst:615 +#: library/urllib.parse.rst:626 msgid "" "Like :func:`unquote`, but also replace plus signs with spaces, as required " "for unquoting HTML form values." msgstr "" -#: library/urllib.parse.rst:618 +#: library/urllib.parse.rst:629 msgid "*string* must be a :class:`str`." msgstr "" -#: library/urllib.parse.rst:620 +#: library/urllib.parse.rst:631 msgid "Example: ``unquote_plus('/El+Ni%C3%B1o/')`` yields ``'/El Niño/'``." msgstr "" -#: library/urllib.parse.rst:625 +#: library/urllib.parse.rst:636 msgid "" "Replace ``%xx`` escapes with their single-octet equivalent, and return a :" "class:`bytes` object." msgstr "" -#: library/urllib.parse.rst:630 +#: library/urllib.parse.rst:641 msgid "" "If it is a :class:`str`, unescaped non-ASCII characters in *string* are " "encoded into UTF-8 bytes." msgstr "" -#: library/urllib.parse.rst:633 +#: library/urllib.parse.rst:644 msgid "Example: ``unquote_to_bytes('a%26%EF')`` yields ``b'a&\\xef'``." msgstr "" -#: library/urllib.parse.rst:639 +#: library/urllib.parse.rst:650 msgid "" "Convert a mapping object or a sequence of two-element tuples, which may " "contain :class:`str` or :class:`bytes` objects, to a percent-encoded ASCII " @@ -750,7 +754,7 @@ msgid "" "be encoded to bytes, otherwise it would result in a :exc:`TypeError`." msgstr "" -#: library/urllib.parse.rst:646 +#: library/urllib.parse.rst:657 msgid "" "The resulting string is a series of ``key=value`` pairs separated by ``'&'`` " "characters, where both *key* and *value* are quoted using the *quote_via* " @@ -763,7 +767,7 @@ msgid "" "``quote`` and specify a value for *safe*." msgstr "" -#: library/urllib.parse.rst:656 +#: library/urllib.parse.rst:667 msgid "" "When a sequence of two-element tuples is used as the *query* argument, the " "first element of each tuple is a key and the second is a value. The value " @@ -774,49 +778,49 @@ msgid "" "order of parameter tuples in the sequence." msgstr "" -#: library/urllib.parse.rst:664 +#: library/urllib.parse.rst:675 msgid "" "The *safe*, *encoding*, and *errors* parameters are passed down to " "*quote_via* (the *encoding* and *errors* parameters are only passed when a " "query element is a :class:`str`)." msgstr "" -#: library/urllib.parse.rst:668 +#: library/urllib.parse.rst:679 msgid "" "To reverse this encoding process, :func:`parse_qs` and :func:`parse_qsl` are " "provided in this module to parse query strings into Python data structures." msgstr "" -#: library/urllib.parse.rst:671 +#: library/urllib.parse.rst:682 msgid "" "Refer to :ref:`urllib examples ` to find out how the :func:" "`urllib.parse.urlencode` method can be used for generating the query string " "of a URL or data for a POST request." msgstr "" -#: library/urllib.parse.rst:675 +#: library/urllib.parse.rst:686 msgid "*query* supports bytes and string objects." msgstr "" -#: library/urllib.parse.rst:678 +#: library/urllib.parse.rst:689 msgid "*quote_via* parameter." msgstr "" -#: library/urllib.parse.rst:686 +#: library/urllib.parse.rst:697 msgid "`WHATWG`_ - URL Living standard" msgstr "" -#: library/urllib.parse.rst:685 +#: library/urllib.parse.rst:696 msgid "" "Working Group for the URL Standard that defines URLs, domains, IP addresses, " "the application/x-www-form-urlencoded format, and their API." msgstr "" -#: library/urllib.parse.rst:692 +#: library/urllib.parse.rst:703 msgid ":rfc:`3986` - Uniform Resource Identifiers" msgstr "" -#: library/urllib.parse.rst:689 +#: library/urllib.parse.rst:700 msgid "" "This is the current standard (STD66). Any changes to urllib.parse module " "should conform to this. Certain deviations could be observed, which are " @@ -824,47 +828,47 @@ msgid "" "requirements as commonly observed in major browsers." msgstr "" -#: library/urllib.parse.rst:695 +#: library/urllib.parse.rst:706 msgid ":rfc:`2732` - Format for Literal IPv6 Addresses in URL's." msgstr "" -#: library/urllib.parse.rst:695 +#: library/urllib.parse.rst:706 msgid "This specifies the parsing requirements of IPv6 URLs." msgstr "" -#: library/urllib.parse.rst:699 +#: library/urllib.parse.rst:710 msgid ":rfc:`2396` - Uniform Resource Identifiers (URI): Generic Syntax" msgstr "" -#: library/urllib.parse.rst:698 +#: library/urllib.parse.rst:709 msgid "" "Document describing the generic syntactic requirements for both Uniform " "Resource Names (URNs) and Uniform Resource Locators (URLs)." msgstr "" -#: library/urllib.parse.rst:702 +#: library/urllib.parse.rst:713 msgid ":rfc:`2368` - The mailto URL scheme." msgstr "" -#: library/urllib.parse.rst:702 +#: library/urllib.parse.rst:713 msgid "Parsing requirements for mailto URL schemes." msgstr "" -#: library/urllib.parse.rst:707 +#: library/urllib.parse.rst:718 msgid ":rfc:`1808` - Relative Uniform Resource Locators" msgstr "" -#: library/urllib.parse.rst:705 +#: library/urllib.parse.rst:716 msgid "" "This Request For Comments includes the rules for joining an absolute and a " "relative URL, including a fair number of \"Abnormal Examples\" which govern " "the treatment of border cases." msgstr "" -#: library/urllib.parse.rst:709 +#: library/urllib.parse.rst:720 msgid ":rfc:`1738` - Uniform Resource Locators (URL)" msgstr "" -#: library/urllib.parse.rst:710 +#: library/urllib.parse.rst:721 msgid "This specifies the formal syntax and semantics of absolute URLs." msgstr "" diff --git a/library/zipimport.po b/library/zipimport.po index f4995898..58dbf411 100644 --- a/library/zipimport.po +++ b/library/zipimport.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-11-08 15:03+0100\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -58,13 +58,14 @@ msgstr "" "répertoire :file:`lib/` dans l'archive." #: library/zipimport.rst:26 +#, fuzzy msgid "" -"Any files may be present in the ZIP archive, but only files :file:`.py` and :" -"file:`.pyc` are available for import. ZIP import of dynamic modules (:file:" -"`.pyd`, :file:`.so`) is disallowed. Note that if an archive only contains :" -"file:`.py` files, Python will not attempt to modify the archive by adding " -"the corresponding :file:`.pyc` file, meaning that if a ZIP archive doesn't " -"contain :file:`.pyc` files, importing may be rather slow." +"Any files may be present in the ZIP archive, but importers are only invoked " +"for :file:`.py` and :file:`.pyc` files. ZIP import of dynamic modules (:" +"file:`.pyd`, :file:`.so`) is disallowed. Note that if an archive only " +"contains :file:`.py` files, Python will not attempt to modify the archive by " +"adding the corresponding :file:`.pyc` file, meaning that if a ZIP archive " +"doesn't contain :file:`.pyc` files, importing may be rather slow." msgstr "" "Tous les fichiers peuvent être présents dans l'archive ZIP, mais seuls les " "fichiers :file:`.py` et :file:`.pyc` sont disponibles pour importation. " diff --git a/reference/datamodel.po b/reference/datamodel.po index bf5e6b53..701e6988 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-27 10:27+0100\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-10-21 23:42+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -329,9 +329,11 @@ msgstr "" "numériques par les ordinateurs." #: reference/datamodel.rst:190 +#, fuzzy msgid "" "The string representations of the numeric classes, computed by :meth:" -"`__repr__` and :meth:`__str__`, have the following properties:" +"`~object.__repr__` and :meth:`~object.__str__`, have the following " +"properties:" msgstr "" "Les représentations sous forme de chaînes de caractères des objets " "numériques, produites par :meth:`__repr__` et :meth:`__str__`, ont les " @@ -839,7 +841,7 @@ msgstr "" "conservé, mais considéré comme un détail d’implémentation et non comme une " "garantie du langage." -#: reference/datamodel.rst:725 +#: reference/datamodel.rst:726 msgid "Callable types" msgstr "Types appelables" @@ -867,7 +869,7 @@ msgstr "" "doit être appelé avec une liste d'arguments contenant le même nombre " "d'éléments que la liste des paramètres formels de la fonction." -#: reference/datamodel.rst:840 +#: reference/datamodel.rst:841 msgid "Special attributes:" msgstr "Attributs spéciaux :" @@ -879,7 +881,7 @@ msgstr "Attribut" msgid "Meaning" msgstr "Signification" -#: reference/datamodel.rst:761 reference/datamodel.rst:856 +#: reference/datamodel.rst:762 reference/datamodel.rst:857 msgid ":attr:`__doc__`" msgstr ":attr:`__doc__`" @@ -913,7 +915,7 @@ msgstr ":attr:`~definition.\\ __qualname__`" msgid "The function's :term:`qualified name`." msgstr ":term:`Nom qualifié ` de la fonction." -#: reference/datamodel.rst:846 +#: reference/datamodel.rst:847 msgid ":attr:`__module__`" msgstr ":attr:`__module__`" @@ -962,7 +964,7 @@ msgstr "" msgid "Read-only" msgstr "Accessible en lecture seule" -#: reference/datamodel.rst:849 +#: reference/datamodel.rst:850 msgid ":attr:`~object.__dict__`" msgstr ":attr:`~object.__dict__`" @@ -983,7 +985,7 @@ msgstr "" "libre de la fonction. Voir ci-dessous pour les informations relatives à " "l'attribut ``cell_contents``." -#: reference/datamodel.rst:776 reference/datamodel.rst:863 +#: reference/datamodel.rst:777 reference/datamodel.rst:864 msgid ":attr:`__annotations__`" msgstr ":attr:`__annotations__`" @@ -1220,7 +1222,7 @@ msgstr "" "expressions :keyword:`await` ou :keyword:`async with` ou des instructions :" "keyword:`async for`. Voir également la section :ref:`coroutine-objects`." -#: reference/datamodel.rst:686 +#: reference/datamodel.rst:687 msgid "Asynchronous generator functions" msgstr "Fonctions générateurs asynchrones" @@ -1240,13 +1242,15 @@ msgstr "" "`async for` pour exécuter le corps de la fonction." #: reference/datamodel.rst:680 +#, fuzzy msgid "" -"Calling the asynchronous iterator's :meth:`aiterator.__anext__` method will " -"return an :term:`awaitable` which when awaited will execute until it " -"provides a value using the :keyword:`yield` expression. When the function " -"executes an empty :keyword:`return` statement or falls off the end, a :exc:" -"`StopAsyncIteration` exception is raised and the asynchronous iterator will " -"have reached the end of the set of values to be yielded." +"Calling the asynchronous iterator's :meth:`aiterator.__anext__ ` method will return an :term:`awaitable` which when awaited will " +"execute until it provides a value using the :keyword:`yield` expression. " +"When the function executes an empty :keyword:`return` statement or falls off " +"the end, a :exc:`StopAsyncIteration` exception is raised and the " +"asynchronous iterator will have reached the end of the set of values to be " +"yielded." msgstr "" "Appeler la méthode :meth:`aiterator.__anext__` de l'itérateur asynchrone " "renvoie un :term:`awaitable` qui, lorsqu'on l'attend, s'exécute jusqu'à ce " @@ -1256,11 +1260,11 @@ msgstr "" "l'itérateur asynchrone a atteint la fin de l'ensemble des valeurs qu'il peut " "produire." -#: reference/datamodel.rst:701 +#: reference/datamodel.rst:702 msgid "Built-in functions" msgstr "Fonctions natives" -#: reference/datamodel.rst:694 +#: reference/datamodel.rst:695 msgid "" "A built-in function object is a wrapper around a C function. Examples of " "built-in functions are :func:`len` and :func:`math.sin` (:mod:`math` is a " @@ -1281,11 +1285,11 @@ msgstr "" "est le nom du module où la fonction est définie ou ``None`` s'il n'est pas " "disponible." -#: reference/datamodel.rst:713 +#: reference/datamodel.rst:714 msgid "Built-in methods" msgstr "Méthodes natives" -#: reference/datamodel.rst:709 +#: reference/datamodel.rst:710 msgid "" "This is really a different disguise of a built-in function, this time " "containing an object passed to the C function as an implicit extra " @@ -1299,17 +1303,18 @@ msgstr "" "liste). Dans ce cas, l'attribut spécial en lecture seule :attr:`__self__` " "est défini à l'objet *une_liste*." -#: reference/datamodel.rst:720 +#: reference/datamodel.rst:721 msgid "Classes" msgstr "Classes" -#: reference/datamodel.rst:716 +#: reference/datamodel.rst:717 +#, fuzzy msgid "" "Classes are callable. These objects normally act as factories for new " "instances of themselves, but variations are possible for class types that " -"override :meth:`__new__`. The arguments of the call are passed to :meth:" -"`__new__` and, in the typical case, to :meth:`__init__` to initialize the " -"new instance." +"override :meth:`~object.__new__`. The arguments of the call are passed to :" +"meth:`__new__` and, in the typical case, to :meth:`~object.__init__` to " +"initialize the new instance." msgstr "" "Les classes sont des appelables. Ces objets sont normalement utilisés pour " "créer des instances d'elles-mêmes mais des variations sont possibles pour " @@ -1317,23 +1322,24 @@ msgstr "" "l'appel sont passés à :meth:`__new__` et, dans le cas classique, :meth:" "`__new__` initialise une nouvelle instance." -#: reference/datamodel.rst:725 +#: reference/datamodel.rst:726 msgid "Class Instances" msgstr "Instances de classe" -#: reference/datamodel.rst:723 +#: reference/datamodel.rst:724 +#, fuzzy msgid "" "Instances of arbitrary classes can be made callable by defining a :meth:" -"`__call__` method in their class." +"`~object.__call__` method in their class." msgstr "" "Les instances d'une classe peuvent devenir des appelables si vous définissez " "la méthode :meth:`__call__` de leur classe." -#: reference/datamodel.rst:788 +#: reference/datamodel.rst:789 msgid "Modules" msgstr "Modules" -#: reference/datamodel.rst:732 +#: reference/datamodel.rst:733 msgid "" "Modules are a basic organizational unit of Python code, and are created by " "the :ref:`import system ` as invoked either by the :keyword:" @@ -1358,7 +1364,7 @@ msgstr "" "le module (puisque celui-ci n'est plus nécessaire une fois l'initialisation " "terminée)." -#: reference/datamodel.rst:744 +#: reference/datamodel.rst:745 msgid "" "Attribute assignment updates the module's namespace dictionary, e.g., ``m.x " "= 1`` is equivalent to ``m.__dict__[\"x\"] = 1``." @@ -1367,29 +1373,29 @@ msgstr "" "du module, par exemple ``m.x = 1`` est équivalent à ``m.__dict__[\"x\"] = " "1``." -#: reference/datamodel.rst:754 +#: reference/datamodel.rst:755 msgid "Predefined (writable) attributes:" msgstr "Attributs prédéfinis (accessibles en écriture) :" -#: reference/datamodel.rst:757 +#: reference/datamodel.rst:758 msgid ":attr:`__name__`" msgstr ":attr:`__name__`" -#: reference/datamodel.rst:757 +#: reference/datamodel.rst:758 msgid "The module's name." msgstr "Nom du module." -#: reference/datamodel.rst:760 +#: reference/datamodel.rst:761 msgid "The module's documentation string, or ``None`` if unavailable." msgstr "" "Chaîne de documentation du module (*docstring* en anglais), ou ``None`` si " "le module n'en a pas." -#: reference/datamodel.rst:770 +#: reference/datamodel.rst:771 msgid ":attr:`__file__`" msgstr ":attr:`__file__`" -#: reference/datamodel.rst:764 +#: reference/datamodel.rst:765 msgid "" "The pathname of the file from which the module was loaded, if it was loaded " "from a file. The :attr:`__file__` attribute may be missing for certain types " @@ -1404,7 +1410,7 @@ msgstr "" "partir d'une bibliothèque partagée, c'est le chemin vers le fichier de la " "bibliothèque partagée." -#: reference/datamodel.rst:773 +#: reference/datamodel.rst:774 msgid "" "A dictionary containing :term:`variable annotations ` " "collected during module body execution. For best practices on working with :" @@ -1414,7 +1420,7 @@ msgstr "" "trouvées lors de l'exécution du code du module. Pour plus de détails sur " "l'attribut :attr:`__annotations__`, voir :ref:`annotations-howto`." -#: reference/datamodel.rst:780 +#: reference/datamodel.rst:781 msgid "" "Special read-only attribute: :attr:`~object.__dict__` is the module's " "namespace as a dictionary object." @@ -1422,7 +1428,7 @@ msgstr "" "Attribut spécial en lecture seule : :attr:`~object.__dict__` est l'objet " "dictionnaire répertoriant l'espace de nommage du module." -#: reference/datamodel.rst:785 +#: reference/datamodel.rst:786 msgid "" "Because of the way CPython clears module dictionaries, the module dictionary " "will be cleared when the module falls out of scope even if the dictionary " @@ -1435,11 +1441,11 @@ msgstr "" "ceci, copiez le dictionnaire ou gardez le module dans votre champ de " "visibilité tant que vous souhaitez utiliser le dictionnaire directement." -#: reference/datamodel.rst:863 +#: reference/datamodel.rst:864 msgid "Custom classes" msgstr "Classes déclarées par le développeur" -#: reference/datamodel.rst:791 +#: reference/datamodel.rst:792 msgid "" "Custom class types are typically created by class definitions (see section :" "ref:`class`). A class has a namespace implemented by a dictionary object. " @@ -1470,7 +1476,7 @@ msgstr "" "*C3* utilisé par Python dans la documentation de la version 2.3 disponible " "sur https://www.python.org/download/releases/2.3/mro/." -#: reference/datamodel.rst:815 +#: reference/datamodel.rst:816 msgid "" "When a class attribute reference (for class :class:`C`, say) would yield a " "class method object, it is transformed into an instance method object whose :" @@ -1488,7 +1494,7 @@ msgstr "" "`descriptors` pour une autre manière dont les attributs d'une classe " "diffèrent de ceux réellement contenus dans son :attr:`~objet.__dict__`." -#: reference/datamodel.rst:825 +#: reference/datamodel.rst:826 msgid "" "Class attribute assignments update the class's dictionary, never the " "dictionary of a base class." @@ -1496,7 +1502,7 @@ msgstr "" "Les assignations d'un attribut de classe mettent à jour le dictionnaire de " "la classe, jamais le dictionnaire d'une classe de base." -#: reference/datamodel.rst:830 +#: reference/datamodel.rst:831 msgid "" "A class object can be called (see above) to yield a class instance (see " "below)." @@ -1504,27 +1510,27 @@ msgstr "" "Un objet classe peut être appelé (voir ci-dessus) pour produire une instance " "de classe (voir ci-dessous)." -#: reference/datamodel.rst:843 +#: reference/datamodel.rst:844 msgid ":attr:`~definition.__name__`" msgstr ":attr:`~definition.__name__`" -#: reference/datamodel.rst:843 +#: reference/datamodel.rst:844 msgid "The class name." msgstr "Nom de la classe." -#: reference/datamodel.rst:846 +#: reference/datamodel.rst:847 msgid "The name of the module in which the class was defined." msgstr "Nom du module où la classe a été définie." -#: reference/datamodel.rst:849 +#: reference/datamodel.rst:850 msgid "The dictionary containing the class's namespace." msgstr "Dictionnaire qui forme l'espace de nommage de la classe." -#: reference/datamodel.rst:853 +#: reference/datamodel.rst:854 msgid ":attr:`~class.__bases__`" msgstr ":attr:`~class.__bases__`" -#: reference/datamodel.rst:852 +#: reference/datamodel.rst:853 msgid "" "A tuple containing the base classes, in the order of their occurrence in the " "base class list." @@ -1532,13 +1538,13 @@ msgstr "" "*n*-uplet des classes mères, dans le même ordre que dans la définition de la " "classe." -#: reference/datamodel.rst:856 +#: reference/datamodel.rst:857 msgid "The class's documentation string, or ``None`` if undefined." msgstr "" "Chaîne de documentation de la classe (*docstring* en anglais), ou bien " "``None`` si la classe n'en a pas." -#: reference/datamodel.rst:859 +#: reference/datamodel.rst:860 msgid "" "A dictionary containing :term:`variable annotations ` " "collected during class body execution. For best practices on working with :" @@ -1548,11 +1554,12 @@ msgstr "" "trouvées lors de l'exécution du code de la classe. Pour plus de détails sur " "l'attribut :attr:`__annotations__`, voir :ref:`annotations-howto`." -#: reference/datamodel.rst:906 +#: reference/datamodel.rst:907 msgid "Class instances" msgstr "Instances de classe" -#: reference/datamodel.rst:872 +#: reference/datamodel.rst:873 +#, fuzzy msgid "" "A class instance is created by calling a class object (see above). A class " "instance has a namespace implemented as a dictionary which is the first " @@ -1565,8 +1572,8 @@ msgid "" "\"Classes\". See section :ref:`descriptors` for another way in which " "attributes of a class retrieved via its instances may differ from the " "objects actually stored in the class's :attr:`~object.__dict__`. If no " -"class attribute is found, and the object's class has a :meth:`__getattr__` " -"method, that is called to satisfy the lookup." +"class attribute is found, and the object's class has a :meth:`~object." +"__getattr__` method, that is called to satisfy the lookup." msgstr "" "Une instance de classe est créée en appelant un objet classe (voir ci-" "dessus). Une instance de classe possède un espace de nommage implémenté sous " @@ -1585,19 +1592,20 @@ msgstr "" "l'objet possède une méthode :meth:`__getattr__`, cette méthode est appelée " "pour rechercher une correspondance." -#: reference/datamodel.rst:888 +#: reference/datamodel.rst:889 +#, fuzzy msgid "" "Attribute assignments and deletions update the instance's dictionary, never " -"a class's dictionary. If the class has a :meth:`__setattr__` or :meth:" -"`__delattr__` method, this is called instead of updating the instance " -"dictionary directly." +"a class's dictionary. If the class has a :meth:`~object.__setattr__` or :" +"meth:`~object.__delattr__` method, this is called instead of updating the " +"instance dictionary directly." msgstr "" "Les assignations et suppressions d'attributs mettent à jour le dictionnaire " "de l'instance, jamais le dictionnaire de la classe. Si la classe possède une " "méthode :meth:`__setattr__` ou :meth:`__delattr__`, elle est appelée au lieu " "de mettre à jour le dictionnaire de l'instance directement." -#: reference/datamodel.rst:898 +#: reference/datamodel.rst:899 msgid "" "Class instances can pretend to be numbers, sequences, or mappings if they " "have methods with certain special names. See section :ref:`specialnames`." @@ -1606,7 +1614,7 @@ msgstr "" "ou des tableaux de correspondance si elles ont des méthodes avec des noms " "spéciaux. Voir la section :ref:`specialnames`." -#: reference/datamodel.rst:905 +#: reference/datamodel.rst:906 msgid "" "Special attributes: :attr:`~object.__dict__` is the attribute dictionary; :" "attr:`~instance.__class__` is the instance's class." @@ -1614,11 +1622,11 @@ msgstr "" "Attributs spéciaux : :attr:`~object.__dict__` est le dictionnaire des " "attributs ; :attr:`~instance.__class__` est la classe de l'instance." -#: reference/datamodel.rst:932 +#: reference/datamodel.rst:933 msgid "I/O objects (also known as file objects)" msgstr "Objets Entrées-Sorties (ou objets fichiers)" -#: reference/datamodel.rst:922 +#: reference/datamodel.rst:923 msgid "" "A :term:`file object` represents an open file. Various shortcuts are " "available to create file objects: the :func:`open` built-in function, and " @@ -1632,7 +1640,7 @@ msgstr "" "socket.makefile` des objets connecteurs (et sûrement d'autres fonctions ou " "méthodes fournies par les modules d'extensions)." -#: reference/datamodel.rst:928 +#: reference/datamodel.rst:929 msgid "" "The objects ``sys.stdin``, ``sys.stdout`` and ``sys.stderr`` are initialized " "to file objects corresponding to the interpreter's standard input, output " @@ -1645,11 +1653,11 @@ msgstr "" "et se conforment donc à l'interface définie par la classe abstraite :class:" "`io.TextIOBase`." -#: reference/datamodel.rst:1182 +#: reference/datamodel.rst:1184 msgid "Internal types" msgstr "Types internes" -#: reference/datamodel.rst:939 +#: reference/datamodel.rst:940 msgid "" "A few types used internally by the interpreter are exposed to the user. " "Their definitions may change with future versions of the interpreter, but " @@ -1659,11 +1667,11 @@ msgstr "" "l'utilisateur. Leur définition peut changer dans les futures versions de " "l'interpréteur mais ils sont donnés ci-dessous à fin d'exhaustivité." -#: reference/datamodel.rst:1014 +#: reference/datamodel.rst:1015 msgid "Code objects" msgstr "Objets Code" -#: reference/datamodel.rst:946 +#: reference/datamodel.rst:947 msgid "" "Code objects represent *byte-compiled* executable Python code, or :term:" "`bytecode`. The difference between a code object and a function object is " @@ -1684,7 +1692,7 @@ msgstr "" "objets fonctions, les objets codes sont immuables et ne contiennent aucune " "référence (directe ou indirecte) à des objets muables." -#: reference/datamodel.rst:973 +#: reference/datamodel.rst:974 msgid "" "Special read-only attributes: :attr:`co_name` gives the function name; :attr:" "`co_argcount` is the total number of positional arguments (including " @@ -1731,7 +1739,7 @@ msgstr "" "l'interpréteur) ; :attr:`co_stacksize` est la taille de pile requise ; :attr:" "`co_flags` est un entier qui code différents drapeaux pour l'interpréteur." -#: reference/datamodel.rst:997 +#: reference/datamodel.rst:998 msgid "" "The following flag bits are defined for :attr:`co_flags`: bit ``0x04`` is " "set if the function uses the ``*arguments`` syntax to accept an arbitrary " @@ -1746,7 +1754,7 @@ msgstr "" "pour accepter un nombre arbitraire d'arguments nommés ; le bit ``0x20`` est " "positionné à 1 si la fonction est un générateur." -#: reference/datamodel.rst:1003 +#: reference/datamodel.rst:1004 msgid "" "Future feature declarations (``from __future__ import division``) also use " "bits in :attr:`co_flags` to indicate whether a code object was compiled with " @@ -1761,11 +1769,11 @@ msgstr "" "future activée ; les bits ``0x10`` et ``0x1000`` étaient utilisés dans les " "versions antérieures de Python." -#: reference/datamodel.rst:1009 +#: reference/datamodel.rst:1010 msgid "Other bits in :attr:`co_flags` are reserved for internal use." msgstr "Les autres bits de :attr:`co_flags` sont réservés à un usage interne." -#: reference/datamodel.rst:1013 +#: reference/datamodel.rst:1014 msgid "" "If a code object represents a function, the first item in :attr:`co_consts` " "is the documentation string of the function, or ``None`` if undefined." @@ -1774,11 +1782,11 @@ msgstr "" "`co_consts` est le texte de documentation de la fonction (ou ``None`` s'il " "n'y en a pas)." -#: reference/datamodel.rst:1076 +#: reference/datamodel.rst:1077 msgid "Frame objects" msgstr "Objets cadres" -#: reference/datamodel.rst:1021 +#: reference/datamodel.rst:1022 msgid "" "Frame objects represent execution frames. They may occur in traceback " "objects (see below), and are also passed to registered trace functions." @@ -1787,7 +1795,7 @@ msgstr "" "traces (voir plus loin) et est passé comme argument aux fonctions de traçage " "actives." -#: reference/datamodel.rst:1032 +#: reference/datamodel.rst:1033 msgid "" "Special read-only attributes: :attr:`f_back` is to the previous stack frame " "(towards the caller), or ``None`` if this is the bottom stack frame; :attr:" @@ -1806,7 +1814,7 @@ msgstr "" "l'instruction précise (c'est un indice dans la chaîne de *bytecode* de " "l'objet code)." -#: reference/datamodel.rst:1040 +#: reference/datamodel.rst:1041 msgid "" "Accessing ``f_code`` raises an :ref:`auditing event ` ``object." "__getattr__`` with arguments ``obj`` and ``\"f_code\"``." @@ -1814,7 +1822,7 @@ msgstr "" "La lecture de ``f_code`` lève un :ref:`événement d'audit ` " "``object.__getattr__`` avec les arguments ``obj`` et ``\"f_code\"``." -#: reference/datamodel.rst:1049 +#: reference/datamodel.rst:1050 msgid "" "Special writable attributes: :attr:`f_trace`, if not ``None``, is a function " "called for various events during code execution (this is used by the " @@ -1827,7 +1835,7 @@ msgstr "" "événement est déclenché pour chaque ligne de code source — ce comportement " "peut être désactivé en définissant :attr:`f_trace_lines` à :const:`False`." -#: reference/datamodel.rst:1054 +#: reference/datamodel.rst:1055 msgid "" "Implementations *may* allow per-opcode events to be requested by setting :" "attr:`f_trace_opcodes` to :const:`True`. Note that this may lead to " @@ -1840,7 +1848,7 @@ msgstr "" "exceptions levées la fonction de traçage s'échappent vers la fonction en " "train d'être tracée." -#: reference/datamodel.rst:1059 +#: reference/datamodel.rst:1060 msgid "" ":attr:`f_lineno` is the current line number of the frame --- writing to this " "from within a trace function jumps to the given line (only for the bottom-" @@ -1853,11 +1861,11 @@ msgstr "" "vers » (aussi appelée « Définir la prochaine instruction » ou *Set Next " "Statement* en anglais) en écrivant dans ``f_lineno``." -#: reference/datamodel.rst:1064 +#: reference/datamodel.rst:1065 msgid "Frame objects support one method:" msgstr "Les objets cadres comprennent une méthode :" -#: reference/datamodel.rst:1068 +#: reference/datamodel.rst:1069 msgid "" "This method clears all references to local variables held by the frame. " "Also, if the frame belonged to a generator, the generator is finalized. " @@ -1870,15 +1878,15 @@ msgstr "" "incluent des objets cadres (par exemple, lors de la capture d'une exception " "et du stockage de la pile d'appels pour une utilisation future)." -#: reference/datamodel.rst:1074 +#: reference/datamodel.rst:1075 msgid ":exc:`RuntimeError` is raised if the frame is currently executing." msgstr ":exc:`RuntimeError` est levée si le cadre est en cours d'exécution." -#: reference/datamodel.rst:1139 +#: reference/datamodel.rst:1140 msgid "Traceback objects" msgstr "Objets traces" -#: reference/datamodel.rst:1091 +#: reference/datamodel.rst:1092 msgid "" "Traceback objects represent a stack trace of an exception. A traceback " "object is implicitly created when an exception occurs, and may also be " @@ -1889,7 +1897,7 @@ msgstr "" "quand une exception apparaît et peut être explicitement créé en appelant :" "class:`types.TracebackType`." -#: reference/datamodel.rst:1095 +#: reference/datamodel.rst:1096 msgid "" "For implicitly created tracebacks, when the search for an exception handler " "unwinds the execution stack, at each unwound level a traceback object is " @@ -1906,7 +1914,7 @@ msgstr "" "par le troisième élément du triplet renvoyé par ``sys.exc_info()`` et comme " "attribut ``__traceback__`` de l'exception qui est traitée." -#: reference/datamodel.rst:1103 +#: reference/datamodel.rst:1104 msgid "" "When the program contains no suitable handler, the stack trace is written " "(nicely formatted) to the standard error stream; if the interpreter is " @@ -1917,7 +1925,7 @@ msgstr "" "l'interpréteur est interactif, elle est rendue disponible pour l'utilisateur " "en tant que ``sys.last_traceback``." -#: reference/datamodel.rst:1108 +#: reference/datamodel.rst:1109 msgid "" "For explicitly created tracebacks, it is up to the creator of the traceback " "to determine how the ``tb_next`` attributes should be linked to form a full " @@ -1927,7 +1935,7 @@ msgstr "" "déterminer comment les attributs ``tb_next`` doivent être liés pour former " "la pile complète des traces." -#: reference/datamodel.rst:1118 +#: reference/datamodel.rst:1119 msgid "" "Special read-only attributes: :attr:`tb_frame` points to the execution frame " "of the current level; :attr:`tb_lineno` gives the line number where the " @@ -1944,7 +1952,7 @@ msgstr "" "instruction :keyword:`try` sans qu'il n'y ait de clause :keyword:`!except` " "adéquate ou sans clause *finally*." -#: reference/datamodel.rst:1127 +#: reference/datamodel.rst:1128 msgid "" "Accessing ``tb_frame`` raises an :ref:`auditing event ` ``object." "__getattr__`` with arguments ``obj`` and ``\"tb_frame\"``." @@ -1952,7 +1960,7 @@ msgstr "" "La lecture de ``tb_frame`` lève un :ref:`événement d'audit ` " "``object.__getattr__`` avec les arguments ``obj`` et ``\"tb_frame\"``." -#: reference/datamodel.rst:1133 +#: reference/datamodel.rst:1134 msgid "" "Special writable attribute: :attr:`tb_next` is the next level in the stack " "trace (towards the frame where the exception occurred), or ``None`` if there " @@ -1962,7 +1970,7 @@ msgstr "" "dans la pile d'exécution (en direction du cadre où l'exception a eu lieu) ou " "``None`` s'il n'y a pas de niveau suivant." -#: reference/datamodel.rst:1137 +#: reference/datamodel.rst:1138 msgid "" "Traceback objects can now be explicitly instantiated from Python code, and " "the ``tb_next`` attribute of existing instances can be updated." @@ -1971,20 +1979,21 @@ msgstr "" "instanciés depuis le code Python et l'attribut ``tb_next`` des instances " "existantes peut être mis à jour." -#: reference/datamodel.rst:1165 +#: reference/datamodel.rst:1167 msgid "Slice objects" msgstr "Objets tranches" -#: reference/datamodel.rst:1144 +#: reference/datamodel.rst:1145 +#, fuzzy msgid "" -"Slice objects are used to represent slices for :meth:`__getitem__` methods. " -"They are also created by the built-in :func:`slice` function." +"Slice objects are used to represent slices for :meth:`~object.__getitem__` " +"methods. They are also created by the built-in :func:`slice` function." msgstr "" "Un objet tranche est utilisé pour représenter des découpes des méthodes :" "meth:`__getitem__`. Ils sont aussi créés par la fonction native :func:" "`slice`." -#: reference/datamodel.rst:1152 +#: reference/datamodel.rst:1154 msgid "" "Special read-only attributes: :attr:`~slice.start` is the lower bound; :attr:" "`~slice.stop` is the upper bound; :attr:`~slice.step` is the step value; " @@ -1995,11 +2004,11 @@ msgstr "" "step` est la valeur du pas ; chaque attribut vaut ``None`` s'il est omis. " "Ces attributs peuvent être de n'importe quel type." -#: reference/datamodel.rst:1156 +#: reference/datamodel.rst:1158 msgid "Slice objects support one method:" msgstr "Les objets tranches comprennent une méthode :" -#: reference/datamodel.rst:1160 +#: reference/datamodel.rst:1162 msgid "" "This method takes a single integer argument *length* and computes " "information about the slice that the slice object would describe if applied " @@ -2015,11 +2024,11 @@ msgstr "" "indices manquants ou en dehors sont gérés de manière cohérente avec les " "tranches normales." -#: reference/datamodel.rst:1174 +#: reference/datamodel.rst:1176 msgid "Static method objects" msgstr "Objets méthodes statiques" -#: reference/datamodel.rst:1168 +#: reference/datamodel.rst:1170 msgid "" "Static method objects provide a way of defeating the transformation of " "function objects to method objects described above. A static method object " @@ -2038,11 +2047,11 @@ msgstr "" "objets méthodes statiques sont également appelables. Les objets méthodes " "statiques sont créés par le constructeur natif :func:`staticmethod`." -#: reference/datamodel.rst:1182 +#: reference/datamodel.rst:1184 msgid "Class method objects" msgstr "Objets méthodes de classes" -#: reference/datamodel.rst:1177 +#: reference/datamodel.rst:1179 msgid "" "A class method object, like a static method object, is a wrapper around " "another object that alters the way in which that object is retrieved from " @@ -2057,19 +2066,20 @@ msgstr "" "« méthodes définies par l'utilisateur ». Les objets méthodes de classes sont " "créés par le constructeur natif :func:`classmethod`." -#: reference/datamodel.rst:1187 +#: reference/datamodel.rst:1189 msgid "Special method names" msgstr "Méthodes spéciales" -#: reference/datamodel.rst:1193 +#: reference/datamodel.rst:1195 +#, fuzzy msgid "" "A class can implement certain operations that are invoked by special syntax " "(such as arithmetic operations or subscripting and slicing) by defining " "methods with special names. This is Python's approach to :dfn:`operator " "overloading`, allowing classes to define their own behavior with respect to " "language operators. For instance, if a class defines a method named :meth:" -"`__getitem__`, and ``x`` is an instance of this class, then ``x[i]`` is " -"roughly equivalent to ``type(x).__getitem__(x, i)``. Except where " +"`~object.__getitem__`, and ``x`` is an instance of this class, then ``x[i]`` " +"is roughly equivalent to ``type(x).__getitem__(x, i)``. Except where " "mentioned, attempts to execute an operation raise an exception when no " "appropriate method is defined (typically :exc:`AttributeError` or :exc:" "`TypeError`)." @@ -2086,13 +2096,14 @@ msgstr "" "méthode appropriée n'est pas définie lève une exception (typiquement :exc:" "`AttributeError` ou :exc:`TypeError`)." -#: reference/datamodel.rst:1203 +#: reference/datamodel.rst:1206 +#, fuzzy msgid "" "Setting a special method to ``None`` indicates that the corresponding " -"operation is not available. For example, if a class sets :meth:`__iter__` " -"to ``None``, the class is not iterable, so calling :func:`iter` on its " -"instances will raise a :exc:`TypeError` (without falling back to :meth:" -"`__getitem__`). [#]_" +"operation is not available. For example, if a class sets :meth:`~object." +"__iter__` to ``None``, the class is not iterable, so calling :func:`iter` on " +"its instances will raise a :exc:`TypeError` (without falling back to :meth:" +"`~object.__getitem__`). [#]_" msgstr "" "Définir une méthode spéciale à ``None`` indique que l'opération " "correspondante n'est pas disponible. Par exemple, si une classe assigne " @@ -2100,7 +2111,7 @@ msgstr "" "appeler :func:`iter` sur une instance lève :exc:`TypeError` (sans se replier " "sur :meth:`__getitem__`) [#]_." -#: reference/datamodel.rst:1209 +#: reference/datamodel.rst:1212 msgid "" "When implementing a class that emulates any built-in type, it is important " "that the emulation only be implemented to the degree that it makes sense for " @@ -2116,11 +2127,11 @@ msgstr "" "est l'interface de :class:`~xml.dom.NodeList` dans le modèle objet des " "documents W3C)." -#: reference/datamodel.rst:1220 +#: reference/datamodel.rst:1223 msgid "Basic customization" msgstr "Personnalisation de base" -#: reference/datamodel.rst:1226 +#: reference/datamodel.rst:1229 msgid "" "Called to create a new instance of class *cls*. :meth:`__new__` is a static " "method (special-cased so you need not declare it as such) that takes the " @@ -2137,7 +2148,7 @@ msgstr "" "valeur de retour de :meth:`__new__` doit être l'instance du nouvel objet " "(classiquement une instance de *cls*)." -#: reference/datamodel.rst:1233 +#: reference/datamodel.rst:1236 msgid "" "Typical implementations create a new instance of the class by invoking the " "superclass's :meth:`__new__` method using ``super().__new__(cls[, ...])`` " @@ -2149,7 +2160,7 @@ msgstr "" "__new__(cls[, …])`` avec les arguments adéquats, puis modifie l'instance " "nouvellement créée en tant que de besoin avant de la renvoyer." -#: reference/datamodel.rst:1238 +#: reference/datamodel.rst:1241 msgid "" "If :meth:`__new__` is invoked during object construction and it returns an " "instance of *cls*, then the new instance’s :meth:`__init__` method will be " @@ -2163,7 +2174,7 @@ msgstr "" "instance et les autres arguments sont les mêmes que ceux passés au " "constructeur de l'objet." -#: reference/datamodel.rst:1243 +#: reference/datamodel.rst:1246 msgid "" "If :meth:`__new__` does not return an instance of *cls*, then the new " "instance's :meth:`__init__` method will not be invoked." @@ -2171,7 +2182,7 @@ msgstr "" "Si :meth:`__new__` ne renvoie pas une instance de *cls*, alors la méthode :" "meth:`__init__` de la nouvelle instance n'est pas invoquée." -#: reference/datamodel.rst:1246 +#: reference/datamodel.rst:1249 msgid "" ":meth:`__new__` is intended mainly to allow subclasses of immutable types " "(like int, str, or tuple) to customize instance creation. It is also " @@ -2183,7 +2194,7 @@ msgstr "" "création sur mesure des instances. Elle est aussi souvent surchargée dans " "les métaclasses pour particulariser la création des classes." -#: reference/datamodel.rst:1255 +#: reference/datamodel.rst:1258 msgid "" "Called after the instance has been created (by :meth:`__new__`), but before " "it is returned to the caller. The arguments are those passed to the class " @@ -2200,7 +2211,7 @@ msgstr "" "initialisation correcte de la partie classe de base de l'instance ; par " "exemple : ``super().__init__([args…])``." -#: reference/datamodel.rst:1262 +#: reference/datamodel.rst:1265 msgid "" "Because :meth:`__new__` and :meth:`__init__` work together in constructing " "objects (:meth:`__new__` to create it, and :meth:`__init__` to customize " @@ -2212,7 +2223,7 @@ msgstr "" "particulariser), :meth:`__init__` ne doit pas renvoyer de valeur ``None`` ; " "sinon une exception :exc:`TypeError` est levée à l'exécution." -#: reference/datamodel.rst:1275 +#: reference/datamodel.rst:1278 msgid "" "Called when the instance is about to be destroyed. This is also called a " "finalizer or (improperly) a destructor. If a base class has a :meth:" @@ -2226,7 +2237,7 @@ msgstr "" "classe dérivée, si elle existe, doit explicitement l'appeler pour s'assurer " "de l'effacement correct de la partie classe de base de l'instance." -#: reference/datamodel.rst:1281 +#: reference/datamodel.rst:1284 msgid "" "It is possible (though not recommended!) for the :meth:`__del__` method to " "postpone destruction of the instance by creating a new reference to it. " @@ -2242,7 +2253,7 @@ msgstr "" "moment où l'objet ressuscité va être détruit ; l'implémentation actuelle de :" "term:`CPython` ne l'appelle qu'une fois." -#: reference/datamodel.rst:1288 +#: reference/datamodel.rst:1291 msgid "" "It is not guaranteed that :meth:`__del__` methods are called for objects " "that still exist when the interpreter exits." @@ -2250,7 +2261,7 @@ msgstr "" "Il n'est pas garanti que soient appelées les méthodes :meth:`__del__` des " "objets qui existent toujours quand l'interpréteur termine." -#: reference/datamodel.rst:1293 +#: reference/datamodel.rst:1296 msgid "" "``del x`` doesn't directly call ``x.__del__()`` --- the former decrements " "the reference count for ``x`` by one, and the latter is only called when " @@ -2260,11 +2271,11 @@ msgstr "" "le compteur de références de ``x``. La seconde n'est appelée que quand le " "compteur de références de ``x`` atteint zéro." -#: reference/datamodel.rst:1308 +#: reference/datamodel.rst:1311 msgid "Documentation for the :mod:`gc` module." msgstr "Documentation du module :mod:`gc`." -#: reference/datamodel.rst:1312 +#: reference/datamodel.rst:1315 msgid "" "Due to the precarious circumstances under which :meth:`__del__` methods are " "invoked, exceptions that occur during their execution are ignored, and a " @@ -2274,7 +2285,7 @@ msgstr "" "appelée, les exceptions levées pendant son exécution sont ignorées et, à la " "place, un avertissement est affiché sur ``sys.stderr``. En particulier :" -#: reference/datamodel.rst:1316 +#: reference/datamodel.rst:1319 msgid "" ":meth:`__del__` can be invoked when arbitrary code is being executed, " "including from any arbitrary thread. If :meth:`__del__` needs to take a " @@ -2289,7 +2300,7 @@ msgstr "" "ressource peut être déjà utilisée par le code qui est interrompu pour " "exécuter la méthode :meth:`__del__`." -#: reference/datamodel.rst:1322 +#: reference/datamodel.rst:1325 msgid "" ":meth:`__del__` can be executed during interpreter shutdown. As a " "consequence, the global variables it needs to access (including other " @@ -2309,7 +2320,7 @@ msgstr "" "importés soient toujours accessibles au moment où la méthode :meth:`__del__` " "est appelée." -#: reference/datamodel.rst:1337 +#: reference/datamodel.rst:1340 msgid "" "Called by the :func:`repr` built-in function to compute the \"official\" " "string representation of an object. If at all possible, this should look " @@ -2330,7 +2341,7 @@ msgstr "" "`__repr__` est aussi utilisée quand une représentation « informelle » en " "chaîne de caractères est demandée pour une instance de cette classe." -#: reference/datamodel.rst:1346 +#: reference/datamodel.rst:1349 msgid "" "This is typically used for debugging, so it is important that the " "representation is information-rich and unambiguous." @@ -2339,7 +2350,7 @@ msgstr "" "important que la représentation donne beaucoup d'informations et ne soit pas " "ambigüe." -#: reference/datamodel.rst:1357 +#: reference/datamodel.rst:1360 msgid "" "Called by :func:`str(object) ` and the built-in functions :func:" "`format` and :func:`print` to compute the \"informal\" or nicely printable " @@ -2351,7 +2362,7 @@ msgstr "" "« informelle » ou joliment mise en forme de représentation de l'objet. La " "valeur renvoyée doit être un objet :ref:`string `." -#: reference/datamodel.rst:1362 +#: reference/datamodel.rst:1365 msgid "" "This method differs from :meth:`object.__repr__` in that there is no " "expectation that :meth:`__str__` return a valid Python expression: a more " @@ -2361,7 +2372,7 @@ msgstr "" "que :meth:`__str__` renvoie une expression Python valide : une " "représentation plus agréable à lire ou plus concise peut être utilisée." -#: reference/datamodel.rst:1366 +#: reference/datamodel.rst:1369 msgid "" "The default implementation defined by the built-in type :class:`object` " "calls :meth:`object.__repr__`." @@ -2369,7 +2380,7 @@ msgstr "" "C'est l'implémentation par défaut des appels à :meth:`object.__repr__` du " "type natif :class:`object`." -#: reference/datamodel.rst:1376 +#: reference/datamodel.rst:1379 msgid "" "Called by :ref:`bytes ` to compute a byte-string representation " "of an object. This should return a :class:`bytes` object." @@ -2377,7 +2388,7 @@ msgstr "" "Appelée par :ref:`bytes ` pour calculer une représentation en " "chaîne *bytes* d'un objet. Elle doit renvoyer un objet :class:`bytes`." -#: reference/datamodel.rst:1387 +#: reference/datamodel.rst:1390 msgid "" "Called by the :func:`format` built-in function, and by extension, evaluation " "of :ref:`formatted string literals ` and the :meth:`str.format` " @@ -2398,18 +2409,18 @@ msgstr "" "le formatage aux types natifs ou utilisent une syntaxe similaire d'options " "de formatage." -#: reference/datamodel.rst:1397 +#: reference/datamodel.rst:1400 msgid "" "See :ref:`formatspec` for a description of the standard formatting syntax." msgstr "" "Lisez :ref:`formatspec` pour une description de la syntaxe standard du " "formatage." -#: reference/datamodel.rst:1399 +#: reference/datamodel.rst:1402 msgid "The return value must be a string object." msgstr "La valeur renvoyée doit être un objet chaîne de caractères." -#: reference/datamodel.rst:1401 +#: reference/datamodel.rst:1404 msgid "" "The __format__ method of ``object`` itself raises a :exc:`TypeError` if " "passed any non-empty string." @@ -2417,7 +2428,7 @@ msgstr "" "La méthode ``__format__`` de ``object`` lui-même lève une :exc:`TypeError` " "si vous lui passez une chaîne non vide." -#: reference/datamodel.rst:1405 +#: reference/datamodel.rst:1408 msgid "" "``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than " "``format(str(x), '')``." @@ -2425,7 +2436,7 @@ msgstr "" "``object.__format__(x, '')`` est maintenant équivalent à ``str(x)`` plutôt " "qu'à ``format(str(x), '')``." -#: reference/datamodel.rst:1421 +#: reference/datamodel.rst:1424 msgid "" "These are the so-called \"rich comparison\" methods. The correspondence " "between operator symbols and method names is as follows: ``xy`` appelle " "``x.__gt__(y)`` et ``x>=y`` appelle ``x.__ge__(y)``." -#: reference/datamodel.rst:1427 +#: reference/datamodel.rst:1430 msgid "" "A rich comparison method may return the singleton ``NotImplemented`` if it " "does not implement the operation for a given pair of arguments. By " @@ -2458,7 +2469,7 @@ msgstr "" "``if``), Python appelle :func:`bool` sur la valeur pour déterminer si le " "résultat est faux ou vrai." -#: reference/datamodel.rst:1434 +#: reference/datamodel.rst:1437 msgid "" "By default, ``object`` implements :meth:`__eq__` by using ``is``, returning " "``NotImplemented`` in the case of a false comparison: ``True if x is y else " @@ -2478,7 +2489,7 @@ msgstr "" "``x<=y``. Pour obtenir une relation d'ordre total automatique à partir d'une " "seule opération, reportez-vous à :func:`functools.total_ordering`." -#: reference/datamodel.rst:1443 +#: reference/datamodel.rst:1446 msgid "" "See the paragraph on :meth:`__hash__` for some important notes on creating :" "term:`hashable` objects which support custom comparison operations and are " @@ -2489,7 +2500,7 @@ msgstr "" "les opérations de comparaison personnalisées et qui sont utilisables en tant " "que clés de dictionnaires." -#: reference/datamodel.rst:1447 +#: reference/datamodel.rst:1450 msgid "" "There are no swapped-argument versions of these methods (to be used when the " "left argument does not support the operation but the right argument does); " @@ -2513,7 +2524,7 @@ msgstr "" "méthode de l'opérande de gauche qui est prioritaire. Les sous-classes " "virtuelles ne sont pas prises en compte." -#: reference/datamodel.rst:1464 +#: reference/datamodel.rst:1467 msgid "" "Called by built-in function :func:`hash` and for operations on members of " "hashed collections including :class:`set`, :class:`frozenset`, and :class:" @@ -2532,7 +2543,7 @@ msgstr "" "de la comparaison des objets, en les plaçant dans un *n*-uplet dont on " "calcule l'empreinte. Par exemple ::" -#: reference/datamodel.rst:1477 +#: reference/datamodel.rst:1480 msgid "" ":func:`hash` truncates the value returned from an object's custom :meth:" "`__hash__` method to the size of a :c:type:`Py_ssize_t`. This is typically " @@ -2550,7 +2561,7 @@ msgstr "" "Une manière facile de le faire est la suivante : ``python -c \"import sys; " "print(sys.hash_info.width)\"``." -#: reference/datamodel.rst:1485 +#: reference/datamodel.rst:1488 msgid "" "If a class does not define an :meth:`__eq__` method it should not define a :" "meth:`__hash__` operation either; if it defines :meth:`__eq__` but not :meth:" @@ -2571,7 +2582,7 @@ msgstr "" "(si l'empreinte d'un objet change, il ne sera plus trouvé correctement dans " "le stockage du dictionnaire)." -#: reference/datamodel.rst:1494 +#: reference/datamodel.rst:1497 msgid "" "User-defined classes have :meth:`__eq__` and :meth:`__hash__` methods by " "default; with them, all objects compare unequal (except with themselves) and " @@ -2583,7 +2594,7 @@ msgstr "" "sont différents (sauf avec eux-mêmes) et ``x.__hash__()`` renvoie une valeur " "telle que ``x == y`` implique à la fois ``x is y`` et ``hash(x) == hash(y)``." -#: reference/datamodel.rst:1499 +#: reference/datamodel.rst:1502 msgid "" "A class that overrides :meth:`__eq__` and does not define :meth:`__hash__` " "will have its :meth:`__hash__` implicitly set to ``None``. When the :meth:" @@ -2599,7 +2610,7 @@ msgstr "" "empreinte et elle est correctement identifiée comme *non hachable* quand on " "vérifie ``isinstance(obj, collections.abc.Hashable)``." -#: reference/datamodel.rst:1506 +#: reference/datamodel.rst:1509 msgid "" "If a class that overrides :meth:`__eq__` needs to retain the implementation " "of :meth:`__hash__` from a parent class, the interpreter must be told this " @@ -2610,7 +2621,7 @@ msgstr "" "l'indiquer explicitement à l'interpréteur en définissant ``__hash__ = " ".__hash__``." -#: reference/datamodel.rst:1510 +#: reference/datamodel.rst:1513 msgid "" "If a class that does not override :meth:`__eq__` wishes to suppress hash " "support, it should include ``__hash__ = None`` in the class definition. A " @@ -2624,7 +2635,7 @@ msgstr "" "lève explicitement :exc:`TypeError` serait incorrectement identifiée comme " "hachable par un appel à ``isinstance(obj, collections.abc.Hashable)``." -#: reference/datamodel.rst:1519 +#: reference/datamodel.rst:1522 msgid "" "By default, the :meth:`__hash__` values of str and bytes objects are \"salted" "\" with an unpredictable random value. Although they remain constant within " @@ -2636,7 +2647,7 @@ msgstr "" "qu'une empreinte reste constante tout au long d'un processus Python, sa " "valeur n'est pas prévisible entre deux invocations de Python." -#: reference/datamodel.rst:1524 +#: reference/datamodel.rst:1527 #, fuzzy msgid "" "This is intended to provide protection against a denial-of-service caused by " @@ -2650,7 +2661,7 @@ msgstr "" "\\ :sup:`2`). Lisez http://www.ocert.org/advisories/ocert-2011-003.html pour " "en obtenir les détails (article en anglais)." -#: reference/datamodel.rst:1529 +#: reference/datamodel.rst:1532 msgid "" "Changing hash values affects the iteration order of sets. Python has never " "made guarantees about this ordering (and it typically varies between 32-bit " @@ -2660,15 +2671,15 @@ msgstr "" "les *sets*. Python n'a jamais donné de garantie sur cet ordre (d'ailleurs, " "l'ordre n'est pas le même entre les implémentations 32 et 64 bits)." -#: reference/datamodel.rst:1533 +#: reference/datamodel.rst:1536 msgid "See also :envvar:`PYTHONHASHSEED`." msgstr "Voir aussi :envvar:`PYTHONHASHSEED`." -#: reference/datamodel.rst:1535 +#: reference/datamodel.rst:1538 msgid "Hash randomization is enabled by default." msgstr "la randomisation des empreintes est activée par défaut." -#: reference/datamodel.rst:1543 +#: reference/datamodel.rst:1546 msgid "" "Called to implement truth value testing and the built-in operation " "``bool()``; should return ``False`` or ``True``. When this method is not " @@ -2683,11 +2694,11 @@ msgstr "" "définit ni :meth:`__len__` ni :meth:`__bool__`, toutes ses instances sont " "considérées comme vraies." -#: reference/datamodel.rst:1554 +#: reference/datamodel.rst:1557 msgid "Customizing attribute access" msgstr "Personnalisation de l'accès aux attributs" -#: reference/datamodel.rst:1556 +#: reference/datamodel.rst:1559 msgid "" "The following methods can be defined to customize the meaning of attribute " "access (use of, assignment to, or deletion of ``x.name``) for class " @@ -2697,7 +2708,7 @@ msgstr "" "attributs (utilisation, assignation, suppression de ``x.name``) pour les " "instances de classes." -#: reference/datamodel.rst:1564 +#: reference/datamodel.rst:1567 msgid "" "Called when the default attribute access fails with an :exc:`AttributeError` " "(either :meth:`__getattribute__` raises an :exc:`AttributeError` because " @@ -2714,7 +2725,7 @@ msgstr "" "valeur (calculée) de l'attribut, soit lever une exception :exc:" "`AttributeError`." -#: reference/datamodel.rst:1571 +#: reference/datamodel.rst:1574 msgid "" "Note that if the attribute is found through the normal mechanism, :meth:" "`__getattr__` is not called. (This is an intentional asymmetry between :" @@ -2737,7 +2748,7 @@ msgstr "" "place). Lisez la partie relative à la méthode :meth:`__getattribute__` ci-" "dessous pour obtenir un contrôle total effectif sur l'accès aux attributs." -#: reference/datamodel.rst:1584 +#: reference/datamodel.rst:1587 msgid "" "Called unconditionally to implement attribute accesses for instances of the " "class. If the class also defines :meth:`__getattr__`, the latter will not be " @@ -2759,7 +2770,7 @@ msgstr "" "accéder à n'importe quel attribut dont elle a besoin. Par exemple, ``object." "__getattribute__(self, name)``." -#: reference/datamodel.rst:1595 +#: reference/datamodel.rst:1598 msgid "" "This method may still be bypassed when looking up special methods as the " "result of implicit invocation via language syntax or built-in functions. " @@ -2769,7 +2780,7 @@ msgstr "" "spéciales en tant que résultat d'une invocation implicite *via* la syntaxe " "du langage ou les fonctions natives. Lisez :ref:`special-lookup`." -#: reference/datamodel.rst:1599 +#: reference/datamodel.rst:1602 msgid "" "Raises an :ref:`auditing event ` ``object.__getattr__`` with " "arguments ``obj``, ``name``." @@ -2777,7 +2788,7 @@ msgstr "" "Lève un :ref:`événement d'audit ` ``object.__getattr__`` avec les " "arguments ``obj`` et ``name``." -#: reference/datamodel.rst:1601 +#: reference/datamodel.rst:1604 msgid "" "For certain sensitive attribute accesses, raises an :ref:`auditing event " "` ``object.__getattr__`` with arguments ``obj`` and ``name``." @@ -2786,7 +2797,7 @@ msgstr "" "d'audit ` ``object.__getattr__`` avec les arguments ``obj`` et " "``name``." -#: reference/datamodel.rst:1608 +#: reference/datamodel.rst:1611 msgid "" "Called when an attribute assignment is attempted. This is called instead of " "the normal mechanism (i.e. store the value in the instance dictionary). " @@ -2797,7 +2808,7 @@ msgstr "" "l'instance). *name* est le nom de l'attribut, *value* est la valeur à " "assigner à cet attribut." -#: reference/datamodel.rst:1612 +#: reference/datamodel.rst:1615 msgid "" "If :meth:`__setattr__` wants to assign to an instance attribute, it should " "call the base class method with the same name, for example, ``object." @@ -2807,7 +2818,7 @@ msgstr "" "appeler la méthode de la classe de base avec le même nom, par exemple " "``object.__setattr__(self, name, value)``." -#: reference/datamodel.rst:1616 +#: reference/datamodel.rst:1619 msgid "" "Raises an :ref:`auditing event ` ``object.__setattr__`` with " "arguments ``obj``, ``name``, ``value``." @@ -2815,7 +2826,7 @@ msgstr "" "Lève un :ref:`événement d'audit ` ``object.__setattr__`` avec les " "arguments ``obj``, ``name`` et ``value``." -#: reference/datamodel.rst:1618 +#: reference/datamodel.rst:1621 msgid "" "For certain sensitive attribute assignments, raises an :ref:`auditing event " "` ``object.__setattr__`` with arguments ``obj``, ``name``, " @@ -2825,7 +2836,7 @@ msgstr "" "`événement d'audit ` ``object.__setattr__`` avec les arguments " "``obj``, ``name`` et ``value``." -#: reference/datamodel.rst:1625 +#: reference/datamodel.rst:1628 msgid "" "Like :meth:`__setattr__` but for attribute deletion instead of assignment. " "This should only be implemented if ``del obj.name`` is meaningful for the " @@ -2835,7 +2846,7 @@ msgstr "" "l'assigner. Elle ne doit être implémentée que si ``del obj.name`` a du sens " "pour cet objet." -#: reference/datamodel.rst:1628 +#: reference/datamodel.rst:1631 msgid "" "Raises an :ref:`auditing event ` ``object.__delattr__`` with " "arguments ``obj``, ``name``." @@ -2843,7 +2854,7 @@ msgstr "" "Lève un :ref:`événement d'audit ` ``object.__deltattr__`` avec les " "arguments ``obj`` et ``name``." -#: reference/datamodel.rst:1630 +#: reference/datamodel.rst:1633 msgid "" "For certain sensitive attribute deletions, raises an :ref:`auditing event " "` ``object.__delattr__`` with arguments ``obj`` and ``name``." @@ -2852,7 +2863,7 @@ msgstr "" "`événement d'audit ` ``object.__deltattr__`` avec les arguments " "``obj`` et ``name``." -#: reference/datamodel.rst:1637 +#: reference/datamodel.rst:1640 msgid "" "Called when :func:`dir` is called on the object. A sequence must be " "returned. :func:`dir` converts the returned sequence to a list and sorts it." @@ -2861,11 +2872,11 @@ msgstr "" "séquence. :func:`dir` convertit la séquence renvoyée en liste et effectue le " "classement." -#: reference/datamodel.rst:1642 +#: reference/datamodel.rst:1645 msgid "Customizing module attribute access" msgstr "Personnalisation de l'accès aux attributs d'un module" -#: reference/datamodel.rst:1649 +#: reference/datamodel.rst:1652 msgid "" "Special names ``__getattr__`` and ``__dir__`` can be also used to customize " "access to module attributes. The ``__getattr__`` function at the module " @@ -2886,7 +2897,7 @@ msgstr "" "``__dict__`` du module avant de lever une :exc:`AttributeError`. S'il la " "trouve, il l'appelle avec le nom de l'attribut et renvoie le résultat." -#: reference/datamodel.rst:1658 +#: reference/datamodel.rst:1661 msgid "" "The ``__dir__`` function should accept no arguments, and return a sequence " "of strings that represents the names accessible on module. If present, this " @@ -2896,7 +2907,7 @@ msgstr "" "chaînes qui représente les noms accessibles du module. Si elle existe, cette " "fonction surcharge la fonction de recherche standard :func:`dir` du module." -#: reference/datamodel.rst:1662 +#: reference/datamodel.rst:1665 msgid "" "For a more fine grained customization of the module behavior (setting " "attributes, properties, etc.), one can set the ``__class__`` attribute of a " @@ -2907,7 +2918,7 @@ msgstr "" "``__class__`` d'un objet module à une sous-classe de :class:`types." "ModuleType`. Par exemple ::" -#: reference/datamodel.rst:1680 +#: reference/datamodel.rst:1683 msgid "" "Defining module ``__getattr__`` and setting module ``__class__`` only affect " "lookups made using the attribute access syntax -- directly accessing the " @@ -2920,27 +2931,27 @@ msgstr "" "module, soit *via* une référence au dictionnaire des variables globales du " "module) fonctionne toujours de la même façon." -#: reference/datamodel.rst:1685 +#: reference/datamodel.rst:1688 msgid "``__class__`` module attribute is now writable." msgstr "l'attribut ``__class__`` du module est maintenant en lecture-écriture." -#: reference/datamodel.rst:1688 +#: reference/datamodel.rst:1691 msgid "``__getattr__`` and ``__dir__`` module attributes." msgstr "attributs ``__getattr__`` et ``__dir__`` du module." -#: reference/datamodel.rst:1693 +#: reference/datamodel.rst:1696 msgid ":pep:`562` - Module __getattr__ and __dir__" msgstr ":pep:`562` — ``__getattr__`` et ``__dir__`` pour un module" -#: reference/datamodel.rst:1694 +#: reference/datamodel.rst:1697 msgid "Describes the ``__getattr__`` and ``__dir__`` functions on modules." msgstr "Décrit les fonctions ``__getattr__`` et ``__dir__`` des modules." -#: reference/datamodel.rst:1700 +#: reference/datamodel.rst:1703 msgid "Implementing Descriptors" msgstr "Implémentation de descripteurs" -#: reference/datamodel.rst:1702 +#: reference/datamodel.rst:1705 msgid "" "The following methods only apply when an instance of the class containing " "the method (a so-called *descriptor* class) appears in an *owner* class (the " @@ -2957,7 +2968,7 @@ msgstr "" "« l'attribut » fait référence à l'attribut dont le nom est une clé du :attr:" "`~object.__dict__` de la classe propriétaire." -#: reference/datamodel.rst:1712 +#: reference/datamodel.rst:1715 msgid "" "Called to get the attribute of the owner class (class attribute access) or " "of an instance of that class (instance attribute access). The optional " @@ -2971,7 +2982,7 @@ msgstr "" "que *instance* est l'instance par laquelle on accède à l'attribut ou " "``None`` lorsque l'on accède par la classe *owner*." -#: reference/datamodel.rst:1718 +#: reference/datamodel.rst:1721 msgid "" "This method should return the computed attribute value or raise an :exc:" "`AttributeError` exception." @@ -2979,7 +2990,7 @@ msgstr "" "Il convient que cette méthode renvoie la valeur calculée de l'attribut ou " "lève une exception :exc:`AttributeError`." -#: reference/datamodel.rst:1721 +#: reference/datamodel.rst:1724 msgid "" ":PEP:`252` specifies that :meth:`__get__` is callable with one or two " "arguments. Python's own built-in descriptors support this specification; " @@ -2994,7 +3005,7 @@ msgstr "" "requièrent les deux arguments. L'implémentation de :meth:`__getattribute__` " "de Python passe toujours les deux arguments, qu'ils soient requis ou non." -#: reference/datamodel.rst:1730 +#: reference/datamodel.rst:1733 msgid "" "Called to set the attribute on an instance *instance* of the owner class to " "a new value, *value*." @@ -3002,7 +3013,7 @@ msgstr "" "Appelée pour définir l'attribut d'une instance *instance* de la classe " "propriétaire à la nouvelle valeur *value*." -#: reference/datamodel.rst:1733 +#: reference/datamodel.rst:1736 msgid "" "Note, adding :meth:`__set__` or :meth:`__delete__` changes the kind of " "descriptor to a \"data descriptor\". See :ref:`descriptor-invocation` for " @@ -3012,14 +3023,14 @@ msgstr "" "descripteur vers un « descripteur de donnée ». Reportez-vous à :ref:" "`descriptor-invocation` pour plus de détails." -#: reference/datamodel.rst:1739 +#: reference/datamodel.rst:1742 msgid "" "Called to delete the attribute on an instance *instance* of the owner class." msgstr "" "Appelée pour supprimer l'attribut de l'instance *instance* de la classe " "propriétaire." -#: reference/datamodel.rst:1742 +#: reference/datamodel.rst:1745 msgid "" "The attribute :attr:`__objclass__` is interpreted by the :mod:`inspect` " "module as specifying the class where this object was defined (setting this " @@ -3037,16 +3048,18 @@ msgstr "" "premier argument positionnel (par exemple, CPython définit cet attribut pour " "les méthodes non liées qui sont implémentées en C)." -#: reference/datamodel.rst:1753 +#: reference/datamodel.rst:1756 msgid "Invoking Descriptors" msgstr "Invocation des descripteurs" -#: reference/datamodel.rst:1755 +#: reference/datamodel.rst:1758 +#, fuzzy msgid "" "In general, a descriptor is an object attribute with \"binding behavior\", " "one whose attribute access has been overridden by methods in the descriptor " -"protocol: :meth:`__get__`, :meth:`__set__`, and :meth:`__delete__`. If any " -"of those methods are defined for an object, it is said to be a descriptor." +"protocol: :meth:`~object.__get__`, :meth:`~object.__set__`, and :meth:" +"`~object.__delete__`. If any of those methods are defined for an object, it " +"is said to be a descriptor." msgstr "" "En général, un descripteur est un attribut d'objet dont le comportement est " "« lié » (*binding dehavior* en anglais), c'est-à-dire que les accès aux " @@ -3055,7 +3068,7 @@ msgstr "" "l'une de ces méthodes est définie pour un objet, il est réputé être un " "descripteur." -#: reference/datamodel.rst:1760 +#: reference/datamodel.rst:1764 msgid "" "The default behavior for attribute access is to get, set, or delete the " "attribute from an object's dictionary. For instance, ``a.x`` has a lookup " @@ -3068,7 +3081,7 @@ msgstr "" "puis ``type(a).__dict__['x']`` ; ensuite Python continue en remontant les " "classes de base de ``type(a)``, en excluant les métaclasses." -#: reference/datamodel.rst:1765 +#: reference/datamodel.rst:1769 msgid "" "However, if the looked-up value is an object defining one of the descriptor " "methods, then Python may override the default behavior and invoke the " @@ -3081,7 +3094,7 @@ msgstr "" "citée ci-dessus dépend de l'endroit où a été définie la méthode de " "descripteur et comment elle a été appelée." -#: reference/datamodel.rst:1770 +#: reference/datamodel.rst:1774 msgid "" "The starting point for descriptor invocation is a binding, ``a.x``. How the " "arguments are assembled depends on ``a``:" @@ -3089,11 +3102,11 @@ msgstr "" "Le point de départ pour une invocation de descripteur est la liaison ``a." "x``. La façon dont les arguments sont assemblés dépend de ``a`` :" -#: reference/datamodel.rst:1775 +#: reference/datamodel.rst:1779 msgid "Direct Call" msgstr "Appel direct" -#: reference/datamodel.rst:1774 +#: reference/datamodel.rst:1778 msgid "" "The simplest and least common call is when user code directly invokes a " "descriptor method: ``x.__get__(a)``." @@ -3101,11 +3114,11 @@ msgstr "" "Le plus simple et le plus rare des appels est quand l'utilisateur code " "directement l'appel à la méthode du descripteur : ``x.__get__(a)``." -#: reference/datamodel.rst:1779 +#: reference/datamodel.rst:1783 msgid "Instance Binding" msgstr "Liaison avec une instance" -#: reference/datamodel.rst:1778 +#: reference/datamodel.rst:1782 msgid "" "If binding to an object instance, ``a.x`` is transformed into the call: " "``type(a).__dict__['x'].__get__(a, type(a))``." @@ -3113,11 +3126,11 @@ msgstr "" "Si elle est liée à un objet instance, ``a.x`` est transformé en l'appel " "suivant : ``type(a).__dict__['x'].__get__(a, type(a))``." -#: reference/datamodel.rst:1783 +#: reference/datamodel.rst:1787 msgid "Class Binding" msgstr "Liaison avec une classe" -#: reference/datamodel.rst:1782 +#: reference/datamodel.rst:1786 msgid "" "If binding to a class, ``A.x`` is transformed into the call: ``A." "__dict__['x'].__get__(None, A)``." @@ -3125,15 +3138,16 @@ msgstr "" "Si elle est liée à une classe, ``A.x`` est transformé en l'appel suivant : " "``A.__dict__['x'].__get__(None, A)``." -#: reference/datamodel.rst:1789 +#: reference/datamodel.rst:1793 msgid "Super Binding" msgstr "Liaison super" -#: reference/datamodel.rst:1786 +#: reference/datamodel.rst:1790 +#, fuzzy msgid "" "If ``a`` is an instance of :class:`super`, then the binding ``super(B, obj)." "m()`` searches ``obj.__class__.__mro__`` for the base class ``A`` " -"immediately preceding ``B`` and then invokes the descriptor with the call: " +"immediately following ``B`` and then invokes the descriptor with the call: " "``A.__dict__['m'].__get__(obj, obj.__class__)``." msgstr "" "Si ``a`` est une instance de :class:`super`, alors ``super(B, obj).m()`` " @@ -3141,21 +3155,22 @@ msgstr "" "immédiatement avant ``B`` puis invoque le descripteur avec l'appel suivant : " "``A.__dict__['m'].__get__(obj, obj.__class__)``." -#: reference/datamodel.rst:1791 +#: reference/datamodel.rst:1795 +#, fuzzy msgid "" "For instance bindings, the precedence of descriptor invocation depends on " "which descriptor methods are defined. A descriptor can define any " -"combination of :meth:`__get__`, :meth:`__set__` and :meth:`__delete__`. If " -"it does not define :meth:`__get__`, then accessing the attribute will return " -"the descriptor object itself unless there is a value in the object's " -"instance dictionary. If the descriptor defines :meth:`__set__` and/or :meth:" -"`__delete__`, it is a data descriptor; if it defines neither, it is a non-" -"data descriptor. Normally, data descriptors define both :meth:`__get__` " -"and :meth:`__set__`, while non-data descriptors have just the :meth:" -"`__get__` method. Data descriptors with :meth:`__get__` and :meth:`__set__` " -"(and/or :meth:`__delete__`) defined always override a redefinition in an " -"instance dictionary. In contrast, non-data descriptors can be overridden by " -"instances." +"combination of :meth:`~object.__get__`, :meth:`~object.__set__` and :meth:" +"`~object.__delete__`. If it does not define :meth:`__get__`, then accessing " +"the attribute will return the descriptor object itself unless there is a " +"value in the object's instance dictionary. If the descriptor defines :meth:" +"`__set__` and/or :meth:`__delete__`, it is a data descriptor; if it defines " +"neither, it is a non-data descriptor. Normally, data descriptors define " +"both :meth:`__get__` and :meth:`__set__`, while non-data descriptors have " +"just the :meth:`__get__` method. Data descriptors with :meth:`__get__` and :" +"meth:`__set__` (and/or :meth:`__delete__`) defined always override a " +"redefinition in an instance dictionary. In contrast, non-data descriptors " +"can be overridden by instances." msgstr "" "Pour des liaisons avec des instances, la priorité à l'invocation du " "descripteur dépend des méthodes que le descripteur a définies. Un " @@ -3173,12 +3188,14 @@ msgstr "" "redéfinition du dictionnaire de l'instance. En revanche, les descripteurs " "hors-données peuvent être shuntés par les instances." -#: reference/datamodel.rst:1804 +#: reference/datamodel.rst:1809 +#, fuzzy msgid "" -"Python methods (including :func:`staticmethod` and :func:`classmethod`) are " -"implemented as non-data descriptors. Accordingly, instances can redefine " -"and override methods. This allows individual instances to acquire behaviors " -"that differ from other instances of the same class." +"Python methods (including those decorated with :func:`@staticmethod " +"` and :func:`@classmethod `) are implemented as " +"non-data descriptors. Accordingly, instances can redefine and override " +"methods. This allows individual instances to acquire behaviors that differ " +"from other instances of the same class." msgstr "" "Les méthodes Python (y compris :func:`staticmethod` et :func:`classmethod`) " "sont implémentées comme des descripteurs hors-donnée. De la même manière, " @@ -3186,7 +3203,7 @@ msgstr "" "chaque instance d'avoir un comportement qui diffère des autres instances de " "la même classe." -#: reference/datamodel.rst:1809 +#: reference/datamodel.rst:1815 msgid "" "The :func:`property` function is implemented as a data descriptor. " "Accordingly, instances cannot override the behavior of a property." @@ -3195,36 +3212,39 @@ msgstr "" "données. Ainsi, les instances ne peuvent pas surcharger le comportement " "d'une propriété." -#: reference/datamodel.rst:1816 +#: reference/datamodel.rst:1822 msgid "__slots__" msgstr "``__slots__``" -#: reference/datamodel.rst:1818 +#: reference/datamodel.rst:1824 +#, fuzzy msgid "" "*__slots__* allow us to explicitly declare data members (like properties) " -"and deny the creation of *__dict__* and *__weakref__* (unless explicitly " -"declared in *__slots__* or available in a parent.)" +"and deny the creation of :attr:`~object.__dict__` and *__weakref__* (unless " +"explicitly declared in *__slots__* or available in a parent.)" msgstr "" "Les ``__slots__`` vous permettent de déclarer des membres d'une donnée " "(comme une propriété) et d'interdire la création de *__dict__* ou de " "*__weakref__* (à moins qu'ils ne soient explicitement déclarés dans le " "``__slots__`` ou présent dans le parent)." -#: reference/datamodel.rst:1822 +#: reference/datamodel.rst:1828 +#, fuzzy msgid "" -"The space saved over using *__dict__* can be significant. Attribute lookup " -"speed can be significantly improved as well." +"The space saved over using :attr:`~object.__dict__` can be significant. " +"Attribute lookup speed can be significantly improved as well." msgstr "" "L'espace gagné par rapport à l'utilisation d'un *__dict__* peut être " "significatif. La recherche d'attribut peut aussi s'avérer beaucoup plus " "rapide." -#: reference/datamodel.rst:1827 +#: reference/datamodel.rst:1833 +#, fuzzy msgid "" "This class variable can be assigned a string, iterable, or sequence of " "strings with variable names used by instances. *__slots__* reserves space " -"for the declared variables and prevents the automatic creation of *__dict__* " -"and *__weakref__* for each instance." +"for the declared variables and prevents the automatic creation of :attr:" +"`~object.__dict__` and *__weakref__* for each instance." msgstr "" "Cette variable de classe peut être assignée avec une chaîne, un itérable ou " "une séquence de chaînes avec les noms de variables utilisés par les " @@ -3232,25 +3252,28 @@ msgstr "" "interdit la création automatique de *__dict__* et *__weakref__* pour chaque " "instance." -#: reference/datamodel.rst:1834 +#: reference/datamodel.rst:1841 msgid "Notes on using *__slots__*" msgstr "Note sur l'utilisation de *__slots__*" -#: reference/datamodel.rst:1836 +#: reference/datamodel.rst:1843 +#, fuzzy msgid "" -"When inheriting from a class without *__slots__*, the *__dict__* and " -"*__weakref__* attribute of the instances will always be accessible." +"When inheriting from a class without *__slots__*, the :attr:`~object." +"__dict__` and *__weakref__* attribute of the instances will always be " +"accessible." msgstr "" "Lorsque vous héritez d'une classe sans *__slots__*, les attributs *__dict__* " "et *__weakref__* des instances sont toujours accessibles." -#: reference/datamodel.rst:1839 +#: reference/datamodel.rst:1847 +#, fuzzy msgid "" -"Without a *__dict__* variable, instances cannot be assigned new variables " -"not listed in the *__slots__* definition. Attempts to assign to an unlisted " -"variable name raises :exc:`AttributeError`. If dynamic assignment of new " -"variables is desired, then add ``'__dict__'`` to the sequence of strings in " -"the *__slots__* declaration." +"Without a :attr:`~object.__dict__` variable, instances cannot be assigned " +"new variables not listed in the *__slots__* definition. Attempts to assign " +"to an unlisted variable name raises :exc:`AttributeError`. If dynamic " +"assignment of new variables is desired, then add ``'__dict__'`` to the " +"sequence of strings in the *__slots__* declaration." msgstr "" "Sans variable *__dict__*, les instances ne peuvent pas assigner de nouvelles " "variables (non listées dans la définition de *__slots__*). Les tentatives " @@ -3258,12 +3281,13 @@ msgstr "" "Si l'assignation dynamique de nouvelles variables est nécessaire, ajoutez " "``'__dict__'`` à la séquence de chaînes dans la déclaration *__slots__*." -#: reference/datamodel.rst:1845 +#: reference/datamodel.rst:1854 +#, fuzzy msgid "" "Without a *__weakref__* variable for each instance, classes defining " -"*__slots__* do not support weak references to its instances. If weak " -"reference support is needed, then add ``'__weakref__'`` to the sequence of " -"strings in the *__slots__* declaration." +"*__slots__* do not support :mod:`weak references ` to its " +"instances. If weak reference support is needed, then add ``'__weakref__'`` " +"to the sequence of strings in the *__slots__* declaration." msgstr "" "Sans variable *__weakref__* pour chaque instance, les classes qui " "définissent *__slots__* ne gèrent pas les références faibles vers leurs " @@ -3271,10 +3295,11 @@ msgstr "" "``'__weakref__'`` à la séquence de chaînes dans la déclaration de " "*__slots__*." -#: reference/datamodel.rst:1850 +#: reference/datamodel.rst:1860 +#, fuzzy msgid "" -"*__slots__* are implemented at the class level by creating descriptors (:ref:" -"`descriptors`) for each variable name. As a result, class attributes cannot " +"*__slots__* are implemented at the class level by creating :ref:`descriptors " +"` for each variable name. As a result, class attributes cannot " "be used to set default values for instance variables defined by *__slots__*; " "otherwise, the class attribute would overwrite the descriptor assignment." msgstr "" @@ -3284,13 +3309,14 @@ msgstr "" "aux variables d'instances définies par *__slots__* ; sinon, l'attribut de " "classe surchargerait l'assignation par descripteur." -#: reference/datamodel.rst:1856 +#: reference/datamodel.rst:1866 +#, fuzzy msgid "" "The action of a *__slots__* declaration is not limited to the class where it " "is defined. *__slots__* declared in parents are available in child classes. " -"However, child subclasses will get a *__dict__* and *__weakref__* unless " -"they also define *__slots__* (which should only contain names of any " -"*additional* slots)." +"However, child subclasses will get a :attr:`~object.__dict__` and " +"*__weakref__* unless they also define *__slots__* (which should only contain " +"names of any *additional* slots)." msgstr "" "L'action de la déclaration du *__slots__* ne se limite pas à la classe où il " "est défini. Les *__slots__* déclarés par les parents sont disponibles dans " @@ -3298,7 +3324,7 @@ msgstr "" "et un *__weakref__* à moins qu'elles ne définissent aussi un *__slots__* " "(qui ne doit contenir alors que les noms *supplémentaires* du *slot*)." -#: reference/datamodel.rst:1862 +#: reference/datamodel.rst:1872 msgid "" "If a class defines a slot also defined in a base class, the instance " "variable defined by the base class slot is inaccessible (except by " @@ -3312,7 +3338,7 @@ msgstr "" "signification du programme indéfinie. Dans le futur, une vérification sera " "ajoutée pour empêcher cela." -#: reference/datamodel.rst:1867 +#: reference/datamodel.rst:1877 msgid "" "Nonempty *__slots__* does not work for classes derived from \"variable-length" "\" built-in types such as :class:`int`, :class:`bytes` and :class:`tuple`." @@ -3321,57 +3347,64 @@ msgstr "" "natifs à longueur variable tels que :class:`int`, :class:`bytes` et :class:" "`tuple`." -#: reference/datamodel.rst:1870 -msgid "" -"Any non-string iterable may be assigned to *__slots__*. Mappings may also be " -"used; however, in the future, special meaning may be assigned to the values " -"corresponding to each key." +#: reference/datamodel.rst:1880 +msgid "Any non-string :term:`iterable` may be assigned to *__slots__*." msgstr "" -"Tout itérable qui n'est pas une chaîne peut être assigné à un *__slots__*. " -"Les tableaux de correspondance peuvent aussi être utilisés ; cependant, dans " -"le futur, des significations spéciales pourraient être associées à chacune " -"des clés." -#: reference/datamodel.rst:1874 +#: reference/datamodel.rst:1882 msgid "" -"*__class__* assignment works only if both classes have the same *__slots__*." +"If a :class:`dictionary ` is used to assign *__slots__*, the " +"dictionary keys will be used as the slot names. The values of the dictionary " +"can be used to provide per-attribute docstrings that will be recognised by :" +"func:`inspect.getdoc` and displayed in the output of :func:`help`." +msgstr "" + +#: reference/datamodel.rst:1887 +#, fuzzy +msgid "" +":attr:`~instance.__class__` assignment works only if both classes have the " +"same *__slots__*." msgstr "" "Les assignations de *__class__* ne fonctionnent que si les deux classes ont " "le même *__slots__*." -#: reference/datamodel.rst:1876 +#: reference/datamodel.rst:1890 +#, fuzzy msgid "" -"Multiple inheritance with multiple slotted parent classes can be used, but " -"only one parent is allowed to have attributes created by slots (the other " -"bases must have empty slot layouts) - violations raise :exc:`TypeError`." +":ref:`Multiple inheritance ` with multiple slotted parent " +"classes can be used, but only one parent is allowed to have attributes " +"created by slots (the other bases must have empty slot layouts) - violations " +"raise :exc:`TypeError`." msgstr "" "L'héritage multiple avec plusieurs classes parentes qui ont des *__slots__* " "est possible, mais seul un parent peut avoir des attributs créés par " "*__slots__* (les autres classes parentes doivent avoir des *__slots__* " "vides). La violation de cette règle lève :exc:`TypeError`." -#: reference/datamodel.rst:1881 +#: reference/datamodel.rst:1896 +#, fuzzy msgid "" -"If an iterator is used for *__slots__* then a descriptor is created for each " -"of the iterator's values. However, the *__slots__* attribute will be an " -"empty iterator." +"If an :term:`iterator` is used for *__slots__* then a :term:`descriptor` is " +"created for each of the iterator's values. However, the *__slots__* " +"attribute will be an empty iterator." msgstr "" "Si un itérateur est utilisé pour *__slots__*, alors un descripteur est créé " "pour chacune des valeurs de l'itérateur. Cependant, l'attribut de " "*__slots__* est un itérateur vide." -#: reference/datamodel.rst:1888 +#: reference/datamodel.rst:1904 msgid "Customizing class creation" msgstr "Personnalisation de la création de classes" -#: reference/datamodel.rst:1890 +#: reference/datamodel.rst:1906 +#, fuzzy msgid "" -"Whenever a class inherits from another class, *__init_subclass__* is called " -"on that class. This way, it is possible to write classes which change the " -"behavior of subclasses. This is closely related to class decorators, but " -"where class decorators only affect the specific class they're applied to, " -"``__init_subclass__`` solely applies to future subclasses of the class " -"defining the method." +"Whenever a class inherits from another class, :meth:`~object." +"__init_subclass__` is called on that class. This way, it is possible to " +"write classes which change the behavior of subclasses. This is closely " +"related to class decorators, but where class decorators only affect the " +"specific class they're applied to, ``__init_subclass__`` solely applies to " +"future subclasses of the class defining the method." msgstr "" "Quand une classe hérite d'une classe parente, *__init_subclass__* de la " "classe parente est appelée. Ainsi, il est possible d'écrire des classes qui " @@ -3381,7 +3414,7 @@ msgstr "" "uniquement sur les futures sous-classes de la classe qui définit cette " "méthode." -#: reference/datamodel.rst:1899 +#: reference/datamodel.rst:1915 msgid "" "This method is called whenever the containing class is subclassed. *cls* is " "then the new subclass. If defined as a normal instance method, this method " @@ -3391,7 +3424,7 @@ msgstr "" "la nouvelle sous-classe. Si elle est définie en tant que méthode d'instance " "normale, cette méthode est implicitement convertie en méthode de classe." -#: reference/datamodel.rst:1903 +#: reference/datamodel.rst:1919 msgid "" "Keyword arguments which are given to a new class are passed to the parent's " "class ``__init_subclass__``. For compatibility with other classes using " @@ -3404,7 +3437,7 @@ msgstr "" "les arguments nommés dont vous avez besoin et passer les autres à la classe " "de base, comme ci-dessous ::" -#: reference/datamodel.rst:1917 +#: reference/datamodel.rst:1933 msgid "" "The default implementation ``object.__init_subclass__`` does nothing, but " "raises an error if it is called with any arguments." @@ -3413,7 +3446,7 @@ msgstr "" "sans argument, mais lève une erreur si elle est appelée avec un argument ou " "plus." -#: reference/datamodel.rst:1922 +#: reference/datamodel.rst:1938 msgid "" "The metaclass hint ``metaclass`` is consumed by the rest of the type " "machinery, and is never passed to ``__init_subclass__`` implementations. The " @@ -3425,15 +3458,16 @@ msgstr "" "``__init_subclass__``. La métaclasse réelle (plutôt que l'indication " "explicite) peut être récupérée par ``type(cls)``." -#: reference/datamodel.rst:1930 +#: reference/datamodel.rst:1946 +#, fuzzy msgid "" "When a class is created, :meth:`type.__new__` scans the class variables and " -"makes callbacks to those with a :meth:`__set_name__` hook." +"makes callbacks to those with a :meth:`~object.__set_name__` hook." msgstr "" "Lorsqu'une classe est créée, :meth:`type.__new__` exécute le point d'entrée :" "meth:`__set_name__` de toute variable de la classe qui en possède un." -#: reference/datamodel.rst:1935 +#: reference/datamodel.rst:1951 msgid "" "Automatically called at the time the owning class *owner* is created. The " "object has been assigned to *name* in that class::" @@ -3441,7 +3475,7 @@ msgstr "" "Appelé au moment où la classe propriétaire *owner* est créée. L'objet *self* " "a été assigné à *name* dans *owner* ::" -#: reference/datamodel.rst:1941 +#: reference/datamodel.rst:1957 msgid "" "If the class variable is assigned after the class is created, :meth:" "`__set_name__` will not be called automatically. If needed, :meth:" @@ -3451,15 +3485,15 @@ msgstr "" "d'entrée :meth:`__set_name__` n'est pas appelé automatiquement. Mais il est " "autorisé d'appeler :meth:`__set_name__` manuellement :" -#: reference/datamodel.rst:1952 +#: reference/datamodel.rst:1968 msgid "See :ref:`class-object-creation` for more details." msgstr "Consultez :ref:`class-object-creation` pour davantage de détails." -#: reference/datamodel.rst:1960 +#: reference/datamodel.rst:1976 msgid "Metaclasses" msgstr "Métaclasses" -#: reference/datamodel.rst:1967 +#: reference/datamodel.rst:1983 msgid "" "By default, classes are constructed using :func:`type`. The class body is " "executed in a new namespace and the class name is bound locally to the " @@ -3469,7 +3503,7 @@ msgstr "" "de la classe est exécuté dans un nouvel espace de nommage et le nom de la " "classe est lié localement au résultat de ``type(name, bases, namespace)``." -#: reference/datamodel.rst:1971 +#: reference/datamodel.rst:1987 msgid "" "The class creation process can be customized by passing the ``metaclass`` " "keyword argument in the class definition line, or by inheriting from an " @@ -3482,7 +3516,7 @@ msgstr "" "l'exemple qui suit, ``MyClass`` et ``MySubclass`` sont des instances de " "``Meta`` ::" -#: reference/datamodel.rst:1985 +#: reference/datamodel.rst:2001 msgid "" "Any other keyword arguments that are specified in the class definition are " "passed through to all metaclass operations described below." @@ -3490,37 +3524,37 @@ msgstr "" "Tout autre argument nommé spécifié dans la définition de la classe est passé " "aux opérations de métaclasses décrites auparavant." -#: reference/datamodel.rst:1988 +#: reference/datamodel.rst:2004 msgid "When a class definition is executed, the following steps occur:" msgstr "" "Quand la définition d'une classe est exécutée, les différentes étapes " "suivies sont :" -#: reference/datamodel.rst:1990 +#: reference/datamodel.rst:2006 msgid "MRO entries are resolved;" msgstr "Les entrées MRO sont résolues ;" -#: reference/datamodel.rst:1991 +#: reference/datamodel.rst:2007 msgid "the appropriate metaclass is determined;" msgstr "la métaclasse appropriée est déterminée ;" -#: reference/datamodel.rst:1992 +#: reference/datamodel.rst:2008 msgid "the class namespace is prepared;" msgstr "l'espace de nommage de la classe est préparé ;" -#: reference/datamodel.rst:1993 +#: reference/datamodel.rst:2009 msgid "the class body is executed;" msgstr "le corps de la classe est exécuté ;" -#: reference/datamodel.rst:1994 +#: reference/datamodel.rst:2010 msgid "the class object is created." msgstr "l'objet classe est crée." -#: reference/datamodel.rst:1998 +#: reference/datamodel.rst:2014 msgid "Resolving MRO entries" msgstr "Résolution des entrées MRO" -#: reference/datamodel.rst:2000 +#: reference/datamodel.rst:2016 msgid "" "If a base that appears in class definition is not an instance of :class:" "`type`, then an ``__mro_entries__`` method is searched on it. If found, it " @@ -3535,30 +3569,30 @@ msgstr "" "qui est utilisé à la place de la classe de base. Le *n*-uplet peut être " "vide, dans ce cas la classe de base originale est ignorée." -#: reference/datamodel.rst:2008 +#: reference/datamodel.rst:2024 msgid ":pep:`560` - Core support for typing module and generic types" msgstr "" ":pep:`560` — Gestion de base pour les types modules et les types génériques" -#: reference/datamodel.rst:2012 +#: reference/datamodel.rst:2028 msgid "Determining the appropriate metaclass" msgstr "Détermination de la métaclasse appropriée" -#: reference/datamodel.rst:2016 +#: reference/datamodel.rst:2032 msgid "" "The appropriate metaclass for a class definition is determined as follows:" msgstr "" "La métaclasse appropriée pour une définition de classe est déterminée de la " "manière suivante :" -#: reference/datamodel.rst:2018 +#: reference/datamodel.rst:2034 msgid "" "if no bases and no explicit metaclass are given, then :func:`type` is used;" msgstr "" "si aucune classe et aucune métaclasse n'est donnée, alors :func:`type` est " "utilisée ;" -#: reference/datamodel.rst:2019 +#: reference/datamodel.rst:2035 msgid "" "if an explicit metaclass is given and it is *not* an instance of :func:" "`type`, then it is used directly as the metaclass;" @@ -3566,7 +3600,7 @@ msgstr "" "si une métaclasse explicite est donnée et que *ce n'est pas* une instance " "de :func:`type`, alors elle est utilisée directement en tant que métaclasse ;" -#: reference/datamodel.rst:2021 +#: reference/datamodel.rst:2037 msgid "" "if an instance of :func:`type` is given as the explicit metaclass, or bases " "are defined, then the most derived metaclass is used." @@ -3574,7 +3608,7 @@ msgstr "" "si une instance de :func:`type` est donnée comme métaclasse explicite ou si " "*bases* est définie, alors la métaclasse la plus dérivée est utilisée." -#: reference/datamodel.rst:2024 +#: reference/datamodel.rst:2040 msgid "" "The most derived metaclass is selected from the explicitly specified " "metaclass (if any) and the metaclasses (i.e. ``type(cls)``) of all specified " @@ -3589,20 +3623,21 @@ msgstr "" "candidates. Si aucune des métaclasses candidates ne remplit ce critère, " "alors la définition de la classe échoue en levant ``TypeError``." -#: reference/datamodel.rst:2034 +#: reference/datamodel.rst:2050 msgid "Preparing the class namespace" msgstr "Préparation de l'espace de nommage de la classe" -#: reference/datamodel.rst:2039 +#: reference/datamodel.rst:2055 +#, fuzzy msgid "" "Once the appropriate metaclass has been identified, then the class namespace " "is prepared. If the metaclass has a ``__prepare__`` attribute, it is called " "as ``namespace = metaclass.__prepare__(name, bases, **kwds)`` (where the " "additional keyword arguments, if any, come from the class definition). The " -"``__prepare__`` method should be implemented as a :func:`classmethod`. The " -"namespace returned by ``__prepare__`` is passed in to ``__new__``, but when " -"the final class object is created the namespace is copied into a new " -"``dict``." +"``__prepare__`` method should be implemented as a :func:`classmethod " +"`. The namespace returned by ``__prepare__`` is passed in to " +"``__new__``, but when the final class object is created the namespace is " +"copied into a new ``dict``." msgstr "" "Une fois que la métaclasse appropriée est identifiée, l'espace de nommage de " "la classe est préparé. Si la métaclasse possède un attribut ``__prepare__``, " @@ -3614,7 +3649,7 @@ msgstr "" "l’instance finale est créée, l’espace de nommage est copié vers un nouveau " "``dict``." -#: reference/datamodel.rst:2047 +#: reference/datamodel.rst:2064 msgid "" "If the metaclass has no ``__prepare__`` attribute, then the class namespace " "is initialised as an empty ordered mapping." @@ -3623,21 +3658,21 @@ msgstr "" "de nommage de la classe est initialisé en tant que tableau de " "correspondances ordonné." -#: reference/datamodel.rst:2052 +#: reference/datamodel.rst:2069 msgid ":pep:`3115` - Metaclasses in Python 3000" msgstr ":pep:`3115` — Métaclasses dans Python 3000" -#: reference/datamodel.rst:2053 +#: reference/datamodel.rst:2070 msgid "Introduced the ``__prepare__`` namespace hook" msgstr "" "introduction de la fonction automatique ``__prepare__`` de l'espace de " "nommage" -#: reference/datamodel.rst:2057 +#: reference/datamodel.rst:2074 msgid "Executing the class body" msgstr "Exécution du corps de la classe" -#: reference/datamodel.rst:2062 +#: reference/datamodel.rst:2079 msgid "" "The class body is executed (approximately) as ``exec(body, globals(), " "namespace)``. The key difference from a normal call to :func:`exec` is that " @@ -3652,7 +3687,7 @@ msgstr "" "des portées externes lorsque la définition de classe a lieu dans une " "fonction." -#: reference/datamodel.rst:2068 +#: reference/datamodel.rst:2085 msgid "" "However, even when the class definition occurs inside the function, methods " "defined inside the class still cannot see names defined at the class scope. " @@ -3667,11 +3702,11 @@ msgstr "" "ou *via* la référence implicite ``__class__`` incluse dans la portée " "lexicale et décrite dans la section suivante." -#: reference/datamodel.rst:2077 +#: reference/datamodel.rst:2094 msgid "Creating the class object" msgstr "Création de l'objet classe" -#: reference/datamodel.rst:2084 +#: reference/datamodel.rst:2101 msgid "" "Once the class namespace has been populated by executing the class body, the " "class object is created by calling ``metaclass(name, bases, namespace, " @@ -3683,7 +3718,7 @@ msgstr "" "**kwds)`` (les arguments nommés supplémentaires passés ici sont les mêmes " "que ceux passés à ``__prepare__``)." -#: reference/datamodel.rst:2089 +#: reference/datamodel.rst:2106 msgid "" "This class object is the one that will be referenced by the zero-argument " "form of :func:`super`. ``__class__`` is an implicit closure reference " @@ -3702,7 +3737,7 @@ msgstr "" "l'appel en cours est identifiée en fonction du premier argument transmis à " "la méthode." -#: reference/datamodel.rst:2099 +#: reference/datamodel.rst:2116 msgid "" "In CPython 3.6 and later, the ``__class__`` cell is passed to the metaclass " "as a ``__classcell__`` entry in the class namespace. If present, this must " @@ -3716,7 +3751,7 @@ msgstr "" "__new__`` pour que la classe soit correctement initialisée. Ne pas le faire " "se traduit par un :exc:`RuntimeError` dans Python 3.8." -#: reference/datamodel.rst:2105 +#: reference/datamodel.rst:2122 msgid "" "When using the default metaclass :class:`type`, or any metaclass that " "ultimately calls ``type.__new__``, the following additional customization " @@ -3727,7 +3762,7 @@ msgstr "" "personnalisation supplémentaires suivantes sont suivies après la création de " "l'objet classe :" -#: reference/datamodel.rst:2109 +#: reference/datamodel.rst:2126 msgid "" "The ``type.__new__`` method collects all of the attributes in the class " "namespace that define a :meth:`~object.__set_name__` method;" @@ -3735,7 +3770,7 @@ msgstr "" "``type.__new__`` récupère, dans l'espace de nommage de la classe, tous les " "descripteurs qui définissent une méthode :meth:`~object.__set_name__` ;" -#: reference/datamodel.rst:2111 +#: reference/datamodel.rst:2128 msgid "" "Those ``__set_name__`` methods are called with the class being defined and " "the assigned name of that particular attribute;" @@ -3743,7 +3778,7 @@ msgstr "" "Toutes ces méthodes ``__set_name__`` sont appelées avec la classe en cours " "de définition et le nom assigné à chaque descripteur ;" -#: reference/datamodel.rst:2113 +#: reference/datamodel.rst:2130 msgid "" "The :meth:`~object.__init_subclass__` hook is called on the immediate parent " "of the new class in its method resolution order." @@ -3752,7 +3787,7 @@ msgstr "" "parent immédiat de la nouvelle classe en utilisant l'ordre de résolution des " "méthodes." -#: reference/datamodel.rst:2116 +#: reference/datamodel.rst:2133 msgid "" "After the class object is created, it is passed to the class decorators " "included in the class definition (if any) and the resulting object is bound " @@ -3763,7 +3798,7 @@ msgstr "" "et l'objet résultant est lié à l'espace de nommage local en tant que classe " "définie." -#: reference/datamodel.rst:2120 +#: reference/datamodel.rst:2137 msgid "" "When a new class is created by ``type.__new__``, the object provided as the " "namespace parameter is copied to a new ordered mapping and the original " @@ -3776,21 +3811,21 @@ msgstr "" "nouvelle copie est encapsulée dans un mandataire en lecture seule qui " "devient l'attribut :attr:`~object.__dict__` de l'objet classe." -#: reference/datamodel.rst:2127 +#: reference/datamodel.rst:2144 msgid ":pep:`3135` - New super" msgstr ":pep:`3135` — Nouvelle méthode super" -#: reference/datamodel.rst:2128 +#: reference/datamodel.rst:2145 msgid "Describes the implicit ``__class__`` closure reference" msgstr "" "Décrit la référence à la fermeture (*closure* en anglais) de la " "``__class__`` implicite" -#: reference/datamodel.rst:2132 +#: reference/datamodel.rst:2149 msgid "Uses for metaclasses" msgstr "Cas d'utilisations des métaclasses" -#: reference/datamodel.rst:2134 +#: reference/datamodel.rst:2151 msgid "" "The potential uses for metaclasses are boundless. Some ideas that have been " "explored include enum, logging, interface checking, automatic delegation, " @@ -3803,11 +3838,11 @@ msgstr "" "de propriétés, les mandataires, les *frameworks* ainsi que le verrouillage " "ou la synchronisation automatique de ressources." -#: reference/datamodel.rst:2141 +#: reference/datamodel.rst:2158 msgid "Customizing instance and subclass checks" msgstr "Personnalisation des instances et vérification des sous-classes" -#: reference/datamodel.rst:2143 +#: reference/datamodel.rst:2160 msgid "" "The following methods are used to override the default behavior of the :func:" "`isinstance` and :func:`issubclass` built-in functions." @@ -3815,7 +3850,7 @@ msgstr "" "Les méthodes suivantes sont utilisées pour surcharger le comportement par " "défaut des fonctions natives :func:`isinstance` et :func:`issubclass`." -#: reference/datamodel.rst:2146 +#: reference/datamodel.rst:2163 msgid "" "In particular, the metaclass :class:`abc.ABCMeta` implements these methods " "in order to allow the addition of Abstract Base Classes (ABCs) as \"virtual " @@ -3827,7 +3862,7 @@ msgstr "" "Base Classes* en anglais) en tant que « classes de base virtuelles » pour " "toute classe ou type (y compris les types natifs)." -#: reference/datamodel.rst:2153 +#: reference/datamodel.rst:2170 msgid "" "Return true if *instance* should be considered a (direct or indirect) " "instance of *class*. If defined, called to implement ``isinstance(instance, " @@ -3837,7 +3872,7 @@ msgstr "" "(directe ou indirecte) de *class*. Si elle est définie, elle est appelée " "pour implémenter ``isinstance(instance, class)``." -#: reference/datamodel.rst:2160 +#: reference/datamodel.rst:2177 msgid "" "Return true if *subclass* should be considered a (direct or indirect) " "subclass of *class*. If defined, called to implement ``issubclass(subclass, " @@ -3847,7 +3882,7 @@ msgstr "" "(directe ou indirecte) de *class*. Si elle est définie, appelée pour " "implémenter ``issubclass(subclass, class)``." -#: reference/datamodel.rst:2165 +#: reference/datamodel.rst:2182 msgid "" "Note that these methods are looked up on the type (metaclass) of a class. " "They cannot be defined as class methods in the actual class. This is " @@ -3860,11 +3895,11 @@ msgstr "" "spéciales qui sont appelées pour les instances, sauf qu'ici l'instance est " "elle-même une classe." -#: reference/datamodel.rst:2176 +#: reference/datamodel.rst:2193 msgid ":pep:`3119` - Introducing Abstract Base Classes" msgstr ":pep:`3119` — Introduction aux classes de bases abstraites" -#: reference/datamodel.rst:2173 +#: reference/datamodel.rst:2190 msgid "" "Includes the specification for customizing :func:`isinstance` and :func:" "`issubclass` behavior through :meth:`~class.__instancecheck__` and :meth:" @@ -3878,11 +3913,11 @@ msgstr "" "motivation pour cette fonctionnalité l'ajout les classes de base abstraites " "(voir le module :mod:`abc`) au langage." -#: reference/datamodel.rst:2181 +#: reference/datamodel.rst:2198 msgid "Emulating generic types" msgstr "Émulation de types génériques" -#: reference/datamodel.rst:2183 +#: reference/datamodel.rst:2200 msgid "" "When using :term:`type annotations`, it is often useful to " "*parameterize* a :term:`generic type` using Python's square-brackets " @@ -3890,42 +3925,42 @@ msgid "" "a :class:`list` in which all the elements are of type :class:`int`." msgstr "" -#: reference/datamodel.rst:2191 +#: reference/datamodel.rst:2208 #, fuzzy msgid ":pep:`484` - Type Hints" msgstr ":pep:`343` — L'instruction ``with``" -#: reference/datamodel.rst:2191 +#: reference/datamodel.rst:2208 msgid "Introducing Python's framework for type annotations" msgstr "" -#: reference/datamodel.rst:2194 +#: reference/datamodel.rst:2211 msgid ":ref:`Generic Alias Types`" msgstr "" -#: reference/datamodel.rst:2194 +#: reference/datamodel.rst:2211 msgid "Documentation for objects representing parameterized generic classes" msgstr "" -#: reference/datamodel.rst:2197 +#: reference/datamodel.rst:2214 msgid "" ":ref:`Generics`, :ref:`user-defined generics` and :" "class:`typing.Generic`" msgstr "" -#: reference/datamodel.rst:2197 +#: reference/datamodel.rst:2214 msgid "" "Documentation on how to implement generic classes that can be parameterized " "at runtime and understood by static type-checkers." msgstr "" -#: reference/datamodel.rst:2200 +#: reference/datamodel.rst:2217 msgid "" "A class can *generally* only be parameterized if it defines the special " "class method ``__class_getitem__()``." msgstr "" -#: reference/datamodel.rst:2205 +#: reference/datamodel.rst:2222 msgid "" "Return an object representing the specialization of a generic class by type " "arguments found in *key*." @@ -3933,25 +3968,25 @@ msgstr "" "Renvoie un objet représentant la spécialisation d'une classe générique en " "fonction des arguments types trouvés dans *key*." -#: reference/datamodel.rst:2208 +#: reference/datamodel.rst:2225 msgid "" "When defined on a class, ``__class_getitem__()`` is automatically a class " "method. As such, there is no need for it to be decorated with :func:" "`@classmethod` when it is defined." msgstr "" -#: reference/datamodel.rst:2214 +#: reference/datamodel.rst:2231 msgid "The purpose of *__class_getitem__*" msgstr "" -#: reference/datamodel.rst:2216 +#: reference/datamodel.rst:2233 msgid "" "The purpose of :meth:`~object.__class_getitem__` is to allow runtime " "parameterization of standard-library generic classes in order to more easily " "apply :term:`type hints` to these classes." msgstr "" -#: reference/datamodel.rst:2220 +#: reference/datamodel.rst:2237 msgid "" "To implement custom generic classes that can be parameterized at runtime and " "understood by static type-checkers, users should either inherit from a " @@ -3960,7 +3995,7 @@ msgid "" "own implementation of ``__class_getitem__()``." msgstr "" -#: reference/datamodel.rst:2226 +#: reference/datamodel.rst:2243 msgid "" "Custom implementations of :meth:`~object.__class_getitem__` on classes " "defined outside of the standard library may not be understood by third-party " @@ -3968,11 +4003,11 @@ msgid "" "purposes other than type hinting is discouraged." msgstr "" -#: reference/datamodel.rst:2236 +#: reference/datamodel.rst:2253 msgid "*__class_getitem__* versus *__getitem__*" msgstr "" -#: reference/datamodel.rst:2238 +#: reference/datamodel.rst:2255 msgid "" "Usually, the :ref:`subscription` of an object using square " "brackets will call the :meth:`~object.__getitem__` instance method defined " @@ -3982,14 +4017,14 @@ msgid "" "genericalias>` object if it is properly defined." msgstr "" -#: reference/datamodel.rst:2245 +#: reference/datamodel.rst:2262 msgid "" "Presented with the :term:`expression` ``obj[x]``, the Python interpreter " "follows something like the following process to decide whether :meth:" "`~object.__getitem__` or :meth:`~object.__class_getitem__` should be called::" msgstr "" -#: reference/datamodel.rst:2273 +#: reference/datamodel.rst:2290 msgid "" "In Python, all classes are themselves instances of other classes. The class " "of a class is known as that class's :term:`metaclass`, and most classes have " @@ -3999,31 +4034,31 @@ msgid "" "__class_getitem__` being called::" msgstr "" -#: reference/datamodel.rst:2292 +#: reference/datamodel.rst:2309 msgid "" "However, if a class has a custom metaclass that defines :meth:`~object." "__getitem__`, subscribing the class may result in different behaviour. An " "example of this can be found in the :mod:`enum` module::" msgstr "" -#: reference/datamodel.rst:2317 +#: reference/datamodel.rst:2334 #, fuzzy msgid ":pep:`560` - Core Support for typing module and generic types" msgstr "" ":pep:`560` — Gestion de base pour les types modules et les types génériques" -#: reference/datamodel.rst:2316 +#: reference/datamodel.rst:2333 msgid "" "Introducing :meth:`~object.__class_getitem__`, and outlining when a :ref:" "`subscription` results in ``__class_getitem__()`` being " "called instead of :meth:`~object.__getitem__`" msgstr "" -#: reference/datamodel.rst:2324 +#: reference/datamodel.rst:2341 msgid "Emulating callable objects" msgstr "Émulation d'objets appelables" -#: reference/datamodel.rst:2331 +#: reference/datamodel.rst:2348 msgid "" "Called when the instance is \"called\" as a function; if this method is " "defined, ``x(arg1, arg2, ...)`` roughly translates to ``type(x).__call__(x, " @@ -4033,41 +4068,45 @@ msgstr "" "méthode est définie, ``x(arg1, arg2, …)`` est un raccourci pour ``type(x)." "__call__(x, arg1, …)``." -#: reference/datamodel.rst:2338 +#: reference/datamodel.rst:2355 msgid "Emulating container types" msgstr "Émulation de types conteneurs" -#: reference/datamodel.rst:2340 +#: reference/datamodel.rst:2357 +#, fuzzy msgid "" "The following methods can be defined to implement container objects. " -"Containers usually are sequences (such as lists or tuples) or mappings (like " -"dictionaries), but can represent other containers as well. The first set of " -"methods is used either to emulate a sequence or to emulate a mapping; the " -"difference is that for a sequence, the allowable keys should be the integers " -"*k* for which ``0 <= k < N`` where *N* is the length of the sequence, or " -"slice objects, which define a range of items. It is also recommended that " -"mappings provide the methods :meth:`keys`, :meth:`values`, :meth:`items`, :" -"meth:`get`, :meth:`clear`, :meth:`setdefault`, :meth:`pop`, :meth:" -"`popitem`, :meth:`!copy`, and :meth:`update` behaving similar to those for " -"Python's standard dictionary objects. The :mod:`collections.abc` module " -"provides a :class:`~collections.abc.MutableMapping` abstract base class to " -"help create those methods from a base set of :meth:`__getitem__`, :meth:" -"`__setitem__`, :meth:`__delitem__`, and :meth:`keys`. Mutable sequences " -"should provide methods :meth:`append`, :meth:`count`, :meth:`index`, :meth:" -"`extend`, :meth:`insert`, :meth:`pop`, :meth:`remove`, :meth:`reverse` and :" -"meth:`sort`, like Python standard list objects. Finally, sequence types " -"should implement addition (meaning concatenation) and multiplication " -"(meaning repetition) by defining the methods :meth:`__add__`, :meth:" -"`__radd__`, :meth:`__iadd__`, :meth:`__mul__`, :meth:`__rmul__` and :meth:" -"`__imul__` described below; they should not define other numerical " -"operators. It is recommended that both mappings and sequences implement " -"the :meth:`__contains__` method to allow efficient use of the ``in`` " -"operator; for mappings, ``in`` should search the mapping's keys; for " -"sequences, it should search through the values. It is further recommended " -"that both mappings and sequences implement the :meth:`__iter__` method to " -"allow efficient iteration through the container; for mappings, :meth:" -"`__iter__` should iterate through the object's keys; for sequences, it " -"should iterate through the values." +"Containers usually are :term:`sequences ` (such as :class:`lists " +"` or :class:`tuples `) or :term:`mappings ` (like :" +"class:`dictionaries `), but can represent other containers as well. " +"The first set of methods is used either to emulate a sequence or to emulate " +"a mapping; the difference is that for a sequence, the allowable keys should " +"be the integers *k* for which ``0 <= k < N`` where *N* is the length of the " +"sequence, or :class:`slice` objects, which define a range of items. It is " +"also recommended that mappings provide the methods :meth:`keys`, :meth:" +"`values`, :meth:`items`, :meth:`get`, :meth:`clear`, :meth:`setdefault`, :" +"meth:`pop`, :meth:`popitem`, :meth:`!copy`, and :meth:`update` behaving " +"similar to those for Python's standard :class:`dictionary ` objects. " +"The :mod:`collections.abc` module provides a :class:`~collections.abc." +"MutableMapping` :term:`abstract base class` to help create those methods " +"from a base set of :meth:`~object.__getitem__`, :meth:`~object." +"__setitem__`, :meth:`~object.__delitem__`, and :meth:`keys`. Mutable " +"sequences should provide methods :meth:`append`, :meth:`count`, :meth:" +"`index`, :meth:`extend`, :meth:`insert`, :meth:`pop`, :meth:`remove`, :meth:" +"`reverse` and :meth:`sort`, like Python standard :class:`list` objects. " +"Finally, sequence types should implement addition (meaning concatenation) " +"and multiplication (meaning repetition) by defining the methods :meth:" +"`~object.__add__`, :meth:`~object.__radd__`, :meth:`~object.__iadd__`, :meth:" +"`~object.__mul__`, :meth:`~object.__rmul__` and :meth:`~object.__imul__` " +"described below; they should not define other numerical operators. It is " +"recommended that both mappings and sequences implement the :meth:`~object." +"__contains__` method to allow efficient use of the ``in`` operator; for " +"mappings, ``in`` should search the mapping's keys; for sequences, it should " +"search through the values. It is further recommended that both mappings and " +"sequences implement the :meth:`~object.__iter__` method to allow efficient " +"iteration through the container; for mappings, :meth:`__iter__` should " +"iterate through the object's keys; for sequences, it should iterate through " +"the values." msgstr "" "Les fonctions suivantes peuvent être définies pour implémenter des objets " "conteneurs. Les conteneurs sont habituellement des séquences (telles que les " @@ -4104,7 +4143,7 @@ msgstr "" "de correspondances, :meth:`__iter__` doit itérer sur les clés de l'objet ; " "pour les séquences, elle doit itérer sur les valeurs." -#: reference/datamodel.rst:2375 +#: reference/datamodel.rst:2397 msgid "" "Called to implement the built-in function :func:`len`. Should return the " "length of the object, an integer ``>=`` 0. Also, an object that doesn't " @@ -4116,7 +4155,7 @@ msgstr "" "définit pas de méthode :meth:`__bool__` et dont la méthode :meth:`__len__` " "renvoie zéro est considéré comme valant ``False`` dans un contexte booléen." -#: reference/datamodel.rst:2382 +#: reference/datamodel.rst:2404 msgid "" "In CPython, the length is required to be at most :attr:`sys.maxsize`. If the " "length is larger than :attr:`!sys.maxsize` some features (such as :func:" @@ -4130,7 +4169,7 @@ msgstr "" "exc:`!OverflowError` lors de tests booléens, un objet doit définir la " "méthode :meth:`__bool__`." -#: reference/datamodel.rst:2391 +#: reference/datamodel.rst:2413 msgid "" "Called to implement :func:`operator.length_hint`. Should return an estimated " "length for the object (which may be greater or less than the actual length). " @@ -4147,22 +4186,22 @@ msgstr "" "méthode est utilisée uniquement pour optimiser les traitements et n'est " "jamais tenue de renvoyer un résultat exact." -#: reference/datamodel.rst:2405 +#: reference/datamodel.rst:2427 msgid "" "Slicing is done exclusively with the following three methods. A call like ::" msgstr "" "Le découpage est effectué uniquement à l'aide des trois méthodes suivantes. " "Un appel comme ::" -#: reference/datamodel.rst:2409 +#: reference/datamodel.rst:2431 msgid "is translated to ::" msgstr "est traduit en ::" -#: reference/datamodel.rst:2413 +#: reference/datamodel.rst:2435 msgid "and so forth. Missing slice items are always filled in with ``None``." msgstr "et ainsi de suite. Les éléments manquants sont remplacés par ``None``." -#: reference/datamodel.rst:2418 +#: reference/datamodel.rst:2440 #, fuzzy msgid "" "Called to implement evaluation of ``self[key]``. For :term:`sequence` types, " @@ -4185,7 +4224,7 @@ msgstr "" "`IndexError` doit être levée. Pour les tableaux de correspondances, si *key* " "n'existe pas dans le conteneur, une :exc:`KeyError` doit être levée." -#: reference/datamodel.rst:2430 +#: reference/datamodel.rst:2452 msgid "" ":keyword:`for` loops expect that an :exc:`IndexError` will be raised for " "illegal indexes to allow proper detection of the end of the sequence." @@ -4193,14 +4232,14 @@ msgstr "" ":keyword:`for` s'attend à ce qu'une :exc:`IndexError` soit levée en cas " "d'indice illégal afin de détecter correctement la fin de la séquence." -#: reference/datamodel.rst:2435 +#: reference/datamodel.rst:2457 msgid "" "When :ref:`subscripting` a *class*, the special class method :" "meth:`~object.__class_getitem__` may be called instead of ``__getitem__()``. " "See :ref:`classgetitem-versus-getitem` for more details." msgstr "" -#: reference/datamodel.rst:2443 +#: reference/datamodel.rst:2465 msgid "" "Called to implement assignment to ``self[key]``. Same note as for :meth:" "`__getitem__`. This should only be implemented for mappings if the objects " @@ -4216,7 +4255,7 @@ msgstr "" "exceptions que pour la méthode :meth:`__getitem__` doivent être levées en " "cas de mauvaises valeurs de clés." -#: reference/datamodel.rst:2452 +#: reference/datamodel.rst:2474 msgid "" "Called to implement deletion of ``self[key]``. Same note as for :meth:" "`__getitem__`. This should only be implemented for mappings if the objects " @@ -4231,7 +4270,7 @@ msgstr "" "Les mêmes exceptions que pour la méthode :meth:`__getitem__` doivent être " "levées en cas de mauvaises valeurs de clés." -#: reference/datamodel.rst:2461 +#: reference/datamodel.rst:2483 msgid "" "Called by :class:`dict`\\ .\\ :meth:`__getitem__` to implement ``self[key]`` " "for dict subclasses when key is not in the dictionary." @@ -4240,7 +4279,7 @@ msgstr "" "``self[key]`` dans les sous-classes de dictionnaires lorsque la clé n'est " "pas dans le dictionnaire." -#: reference/datamodel.rst:2467 +#: reference/datamodel.rst:2489 #, fuzzy msgid "" "This method is called when an :term:`iterator` is required for a container. " @@ -4253,7 +4292,7 @@ msgstr "" "tous les objets du conteneur. Pour les tableaux de correspondances, elle " "doit itérer sur les clés du conteneur." -#: reference/datamodel.rst:2475 +#: reference/datamodel.rst:2497 msgid "" "Called (if present) by the :func:`reversed` built-in to implement reverse " "iteration. It should return a new iterator object that iterates over all " @@ -4263,7 +4302,7 @@ msgstr "" "implémenter l'itération en sens inverse. Elle doit renvoyer un nouvel objet " "itérateur qui itère sur tous les objets du conteneur en sens inverse." -#: reference/datamodel.rst:2479 +#: reference/datamodel.rst:2501 msgid "" "If the :meth:`__reversed__` method is not provided, the :func:`reversed` " "built-in will fall back to using the sequence protocol (:meth:`__len__` and :" @@ -4277,7 +4316,7 @@ msgstr "" "doivent fournir :meth:`__reversed__` que si l'implémentation qu'ils " "proposent est plus efficace que celle de :func:`reversed`." -#: reference/datamodel.rst:2486 +#: reference/datamodel.rst:2508 msgid "" "The membership test operators (:keyword:`in` and :keyword:`not in`) are " "normally implemented as an iteration through a container. However, container " @@ -4290,7 +4329,7 @@ msgstr "" "suivantes avec une implémentation plus efficace, qui ne requièrent " "d'ailleurs pas que l'objet soit itérable." -#: reference/datamodel.rst:2493 +#: reference/datamodel.rst:2515 msgid "" "Called to implement membership test operators. Should return true if *item* " "is in *self*, false otherwise. For mapping objects, this should consider " @@ -4301,7 +4340,7 @@ msgstr "" "tableaux de correspondances, seules les clés sont considérées (pas les " "valeurs des paires clés-valeurs)." -#: reference/datamodel.rst:2497 +#: reference/datamodel.rst:2519 msgid "" "For objects that don't define :meth:`__contains__`, the membership test " "first tries iteration via :meth:`__iter__`, then the old sequence iteration " @@ -4314,11 +4353,11 @@ msgstr "" "reportez-vous à :ref:`cette section dans la référence du langage `." -#: reference/datamodel.rst:2506 +#: reference/datamodel.rst:2528 msgid "Emulating numeric types" msgstr "Émulation de types numériques" -#: reference/datamodel.rst:2508 +#: reference/datamodel.rst:2530 msgid "" "The following methods can be defined to emulate numeric objects. Methods " "corresponding to operations that are not supported by the particular kind of " @@ -4331,7 +4370,7 @@ msgstr "" "opérations bit à bit pour les nombres qui ne sont pas entiers) doivent être " "laissées indéfinies." -#: reference/datamodel.rst:2534 +#: reference/datamodel.rst:2556 msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4354,7 +4393,7 @@ msgstr "" "accepter un troisième argument optionnel si la version ternaire de la " "fonction native :func:`pow` est autorisée." -#: reference/datamodel.rst:2545 +#: reference/datamodel.rst:2567 msgid "" "If one of those methods does not support the operation with the supplied " "arguments, it should return ``NotImplemented``." @@ -4362,7 +4401,7 @@ msgstr "" "Si l'une de ces méthodes n'autorise pas l'opération avec les arguments " "donnés, elle doit renvoyer ``NotImplemented``." -#: reference/datamodel.rst:2568 +#: reference/datamodel.rst:2590 msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4383,7 +4422,7 @@ msgstr "" "`__rsub__`, ``y.__rsub__(x)`` est appelée si ``x.__sub__(y)`` renvoie " "*NotImplemented*." -#: reference/datamodel.rst:2579 +#: reference/datamodel.rst:2601 msgid "" "Note that ternary :func:`pow` will not try calling :meth:`__rpow__` (the " "coercion rules would become too complicated)." @@ -4391,7 +4430,7 @@ msgstr "" "Notez que la fonction ternaire :func:`pow` n'essaie pas d'appeler :meth:" "`__rpow__` (les règles de coercition seraient trop compliquées)." -#: reference/datamodel.rst:2584 +#: reference/datamodel.rst:2606 msgid "" "If the right operand's type is a subclass of the left operand's type and " "that subclass provides a different implementation of the reflected method " @@ -4405,7 +4444,7 @@ msgstr "" "méthode originelle de l'opérande gauche. Ce comportement permet à des sous-" "classes de surcharger les opérations de leurs ancêtres." -#: reference/datamodel.rst:2605 +#: reference/datamodel.rst:2627 msgid "" "These methods are called to implement the augmented arithmetic assignments " "(``+=``, ``-=``, ``*=``, ``@=``, ``/=``, ``//=``, ``%=``, ``**=``, ``<<=``, " @@ -4434,7 +4473,7 @@ msgstr "" "erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais " "ce comportement est en fait partie intégrante du modèle de données." -#: reference/datamodel.rst:2626 +#: reference/datamodel.rst:2648 msgid "" "Called to implement the unary arithmetic operations (``-``, ``+``, :func:" "`abs` and ``~``)." @@ -4442,7 +4481,7 @@ msgstr "" "Appelée pour implémenter les opérations arithmétiques unaires (``-``, ``" "+``, :func:`abs` et ``~``)." -#: reference/datamodel.rst:2639 +#: reference/datamodel.rst:2661 msgid "" "Called to implement the built-in functions :func:`complex`, :func:`int` and :" "func:`float`. Should return a value of the appropriate type." @@ -4450,7 +4489,7 @@ msgstr "" "Appelées pour implémenter les fonctions natives :func:`complex`, :func:`int` " "et :func:`float`. Elles doivent renvoyer une valeur du type approprié." -#: reference/datamodel.rst:2646 +#: reference/datamodel.rst:2668 msgid "" "Called to implement :func:`operator.index`, and whenever Python needs to " "losslessly convert the numeric object to an integer object (such as in " @@ -4464,7 +4503,7 @@ msgstr "" "`oct`). La présence de cette méthode indique que l'objet numérique est un " "type entier. Elle doit renvoyer un entier." -#: reference/datamodel.rst:2652 +#: reference/datamodel.rst:2674 msgid "" "If :meth:`__int__`, :meth:`__float__` and :meth:`__complex__` are not " "defined then corresponding built-in functions :func:`int`, :func:`float` " @@ -4474,7 +4513,7 @@ msgstr "" "définies, alors les fonctions natives :func:`int`, :func:`float` et :func:" "`complex` redirigent par défaut vers :meth:`__index__`." -#: reference/datamodel.rst:2664 +#: reference/datamodel.rst:2686 msgid "" "Called to implement the built-in function :func:`round` and :mod:`math` " "functions :func:`~math.trunc`, :func:`~math.floor` and :func:`~math.ceil`. " @@ -4488,17 +4527,17 @@ msgstr "" "toutes ces méthodes doivent renvoyer la valeur de l'objet tronquée pour " "donner un :class:`~numbers.Integral` (typiquement un :class:`int`)." -#: reference/datamodel.rst:2670 +#: reference/datamodel.rst:2692 msgid "" "The built-in function :func:`int` falls back to :meth:`__trunc__` if " "neither :meth:`__int__` nor :meth:`__index__` is defined." msgstr "" -#: reference/datamodel.rst:2677 +#: reference/datamodel.rst:2699 msgid "With Statement Context Managers" msgstr "Gestionnaire de contexte With" -#: reference/datamodel.rst:2679 +#: reference/datamodel.rst:2701 msgid "" "A :dfn:`context manager` is an object that defines the runtime context to be " "established when executing a :keyword:`with` statement. The context manager " @@ -4515,7 +4554,7 @@ msgstr "" "dans la section :ref:`with`), mais ils peuvent aussi être directement " "invoqués par leurs méthodes." -#: reference/datamodel.rst:2690 +#: reference/datamodel.rst:2712 msgid "" "Typical uses of context managers include saving and restoring various kinds " "of global state, locking and unlocking resources, closing opened files, etc." @@ -4524,14 +4563,14 @@ msgstr "" "et la restauration d'états divers, le verrouillage et le déverrouillage de " "ressources, la fermeture de fichiers ouverts, etc." -#: reference/datamodel.rst:2693 +#: reference/datamodel.rst:2715 msgid "" "For more information on context managers, see :ref:`typecontextmanager`." msgstr "" "Pour plus d'informations sur les gestionnaires de contexte, lisez :ref:" "`typecontextmanager`." -#: reference/datamodel.rst:2698 +#: reference/datamodel.rst:2720 msgid "" "Enter the runtime context related to this object. The :keyword:`with` " "statement will bind this method's return value to the target(s) specified in " @@ -4542,7 +4581,7 @@ msgstr "" "cible spécifiée par la clause :keyword:`!as` de l'instruction, si elle est " "spécifiée." -#: reference/datamodel.rst:2705 +#: reference/datamodel.rst:2727 msgid "" "Exit the runtime context related to this object. The parameters describe the " "exception that caused the context to be exited. If the context was exited " @@ -4552,7 +4591,7 @@ msgstr "" "l'exception qui a causé la sortie du contexte. Si l'on sort du contexte sans " "exception, les trois arguments sont à :const:`None`." -#: reference/datamodel.rst:2709 +#: reference/datamodel.rst:2731 msgid "" "If an exception is supplied, and the method wishes to suppress the exception " "(i.e., prevent it from being propagated), it should return a true value. " @@ -4564,7 +4603,7 @@ msgstr "" "propagée), elle doit renvoyer ``True``. Sinon, l'exception est traitée " "normalement à la sortie de cette méthode." -#: reference/datamodel.rst:2713 +#: reference/datamodel.rst:2735 msgid "" "Note that :meth:`__exit__` methods should not reraise the passed-in " "exception; this is the caller's responsibility." @@ -4572,11 +4611,11 @@ msgstr "" "Notez qu'une méthode :meth:`__exit__` ne doit pas lever à nouveau " "l'exception qu'elle reçoit ; c'est du ressort de l'appelant." -#: reference/datamodel.rst:2720 +#: reference/datamodel.rst:2742 msgid ":pep:`343` - The \"with\" statement" msgstr ":pep:`343` — L'instruction ``with``" -#: reference/datamodel.rst:2720 +#: reference/datamodel.rst:2742 msgid "" "The specification, background, and examples for the Python :keyword:`with` " "statement." @@ -4584,11 +4623,11 @@ msgstr "" "La spécification, les motivations et des exemples de l'instruction :keyword:" "`with` en Python." -#: reference/datamodel.rst:2727 +#: reference/datamodel.rst:2749 msgid "Customizing positional arguments in class pattern matching" msgstr "Arguments positionnels dans le filtrage par motif sur les classes" -#: reference/datamodel.rst:2729 +#: reference/datamodel.rst:2751 msgid "" "When using a class name in a pattern, positional arguments in the pattern " "are not allowed by default, i.e. ``case MyClass(x, y)`` is typically invalid " @@ -4600,7 +4639,7 @@ msgstr "" "fait rien pour cela. Afin de prendre en charge le filtrage par arguments " "positionnels, une classe doit définir ``__match_args__``." -#: reference/datamodel.rst:2736 +#: reference/datamodel.rst:2758 msgid "" "This class variable can be assigned a tuple of strings. When this class is " "used in a class pattern with positional arguments, each positional argument " @@ -4614,7 +4653,7 @@ msgstr "" "n'est pas défini, tout se passe comme si sa valeur était le *n*-uplet vide " "``()``." -#: reference/datamodel.rst:2742 +#: reference/datamodel.rst:2764 msgid "" "For example, if ``MyClass.__match_args__`` is ``(\"left\", \"center\", " "\"right\")`` that means that ``case MyClass(x, y)`` is equivalent to ``case " @@ -4629,19 +4668,19 @@ msgstr "" "d'arguments positionnels que la longueur ``__match_args__``. Dans le cas " "contraire, le filtrage lève l'exception :exc:`TypeError`." -#: reference/datamodel.rst:2752 +#: reference/datamodel.rst:2774 msgid ":pep:`634` - Structural Pattern Matching" msgstr ":pep:`634` — Filtrage par motif structurel" -#: reference/datamodel.rst:2753 +#: reference/datamodel.rst:2775 msgid "The specification for the Python ``match`` statement." msgstr "Spécification de l'instruction ``match``." -#: reference/datamodel.rst:2759 +#: reference/datamodel.rst:2781 msgid "Special method lookup" msgstr "Recherche des méthodes spéciales" -#: reference/datamodel.rst:2761 +#: reference/datamodel.rst:2783 msgid "" "For custom classes, implicit invocations of special methods are only " "guaranteed to work correctly if defined on an object's type, not in the " @@ -4653,13 +4692,14 @@ msgstr "" "type d'objet, pas dans le dictionnaire de l'objet instance. Ce comportement " "explique pourquoi le code suivant lève une exception ::" -#: reference/datamodel.rst:2776 +#: reference/datamodel.rst:2798 +#, fuzzy msgid "" "The rationale behind this behaviour lies with a number of special methods " -"such as :meth:`__hash__` and :meth:`__repr__` that are implemented by all " -"objects, including type objects. If the implicit lookup of these methods " -"used the conventional lookup process, they would fail when invoked on the " -"type object itself::" +"such as :meth:`~object.__hash__` and :meth:`~object.__repr__` that are " +"implemented by all objects, including type objects. If the implicit lookup " +"of these methods used the conventional lookup process, they would fail when " +"invoked on the type object itself::" msgstr "" "La raison de ce comportement vient de certaines méthodes spéciales telles " "que :meth:`__hash__` et :meth:`__repr__` qui sont implémentées par tous les " @@ -4667,7 +4707,7 @@ msgstr "" "méthodes utilisait le processus normal de recherche, elles ne " "fonctionneraient pas si on les appelait sur l'objet type lui-même ::" -#: reference/datamodel.rst:2789 +#: reference/datamodel.rst:2812 msgid "" "Incorrectly attempting to invoke an unbound method of a class in this way is " "sometimes referred to as 'metaclass confusion', and is avoided by bypassing " @@ -4677,23 +4717,25 @@ msgstr "" "parfois appelé « confusion de métaclasse » et se contourne en shuntant " "l'instance lors de la recherche des méthodes spéciales ::" -#: reference/datamodel.rst:2798 +#: reference/datamodel.rst:2821 +#, fuzzy msgid "" "In addition to bypassing any instance attributes in the interest of " "correctness, implicit special method lookup generally also bypasses the :" -"meth:`__getattribute__` method even of the object's metaclass::" +"meth:`~object.__getattribute__` method even of the object's metaclass::" msgstr "" "En plus de shunter les attributs des instances pour fonctionner " "correctement, la recherche des méthodes spéciales implicites shunte aussi la " "méthode :meth:`__getattribute__` même dans la métaclasse de l'objet ::" -#: reference/datamodel.rst:2824 +#: reference/datamodel.rst:2847 +#, fuzzy msgid "" -"Bypassing the :meth:`__getattribute__` machinery in this fashion provides " -"significant scope for speed optimisations within the interpreter, at the " -"cost of some flexibility in the handling of special methods (the special " -"method *must* be set on the class object itself in order to be consistently " -"invoked by the interpreter)." +"Bypassing the :meth:`~object.__getattribute__` machinery in this fashion " +"provides significant scope for speed optimisations within the interpreter, " +"at the cost of some flexibility in the handling of special methods (the " +"special method *must* be set on the class object itself in order to be " +"consistently invoked by the interpreter)." msgstr "" "En shuntant le mécanisme de :meth:`__getattribute__` de cette façon, cela " "permet d'optimiser la vitesse de l'interpréteur moyennant une certaine " @@ -4701,36 +4743,38 @@ msgstr "" "être définie sur l'objet classe lui-même afin d'être invoquée de manière " "cohérente par l'interpréteur)." -#: reference/datamodel.rst:2835 +#: reference/datamodel.rst:2858 msgid "Coroutines" msgstr "Coroutines" -#: reference/datamodel.rst:2839 +#: reference/datamodel.rst:2862 msgid "Awaitable Objects" msgstr "Objets *attendables* (*awaitable*)" -#: reference/datamodel.rst:2841 +#: reference/datamodel.rst:2864 +#, fuzzy msgid "" -"An :term:`awaitable` object generally implements an :meth:`__await__` " -"method. :term:`Coroutine objects ` returned from :keyword:`async " -"def` functions are awaitable." +"An :term:`awaitable` object generally implements an :meth:`~object." +"__await__` method. :term:`Coroutine objects ` returned from :" +"keyword:`async def` functions are awaitable." msgstr "" "Un objet :term:`awaitable` implémente généralement une méthode :meth:" "`__await__`. Les objets :term:`coroutine` renvoyés par les fonctions :" "keyword:`async def` sont des *attendables* (*awaitable*)." -#: reference/datamodel.rst:2847 +#: reference/datamodel.rst:2870 +#, fuzzy msgid "" "The :term:`generator iterator` objects returned from generators decorated " "with :func:`types.coroutine` or :func:`asyncio.coroutine` are also " -"awaitable, but they do not implement :meth:`__await__`." +"awaitable, but they do not implement :meth:`~object.__await__`." msgstr "" "Les objets :term:`itérateur de générateur` renvoyés par les générateurs " "décorés par :func:`types.coroutine` ou :func:`asyncio.coroutine` sont aussi " "des *attendables* (*awaitable*), mais ils n'implémentent pas :meth:" "`__await__`." -#: reference/datamodel.rst:2853 +#: reference/datamodel.rst:2876 msgid "" "Must return an :term:`iterator`. Should be used to implement :term:" "`awaitable` objects. For instance, :class:`asyncio.Future` implements this " @@ -4740,25 +4784,26 @@ msgstr "" "objets :term:`awaitable`. Par exemple, :class:`asyncio.Future` implémente " "cette méthode pour être compatible avec les expressions :keyword:`await`." -#: reference/datamodel.rst:2859 +#: reference/datamodel.rst:2882 msgid ":pep:`492` for additional information about awaitable objects." msgstr "" ":pep:`492` pour les informations relatives aux objets *attendables* " "(*awaitable*)." -#: reference/datamodel.rst:2865 +#: reference/datamodel.rst:2888 msgid "Coroutine Objects" msgstr "Objets coroutines" -#: reference/datamodel.rst:2867 +#: reference/datamodel.rst:2890 +#, fuzzy msgid "" ":term:`Coroutine objects ` are :term:`awaitable` objects. A " -"coroutine's execution can be controlled by calling :meth:`__await__` and " -"iterating over the result. When the coroutine has finished executing and " -"returns, the iterator raises :exc:`StopIteration`, and the exception's :attr:" -"`~StopIteration.value` attribute holds the return value. If the coroutine " -"raises an exception, it is propagated by the iterator. Coroutines should " -"not directly raise unhandled :exc:`StopIteration` exceptions." +"coroutine's execution can be controlled by calling :meth:`~object.__await__` " +"and iterating over the result. When the coroutine has finished executing " +"and returns, the iterator raises :exc:`StopIteration`, and the exception's :" +"attr:`~StopIteration.value` attribute holds the return value. If the " +"coroutine raises an exception, it is propagated by the iterator. Coroutines " +"should not directly raise unhandled :exc:`StopIteration` exceptions." msgstr "" "Les objets :term:`coroutine` sont des objets :term:`awaitable`. L'exécution " "d'une coroutine peut être contrôlée en appelant :meth:`__await__` et en " @@ -4768,7 +4813,7 @@ msgstr "" "exception, elle est propagée par l'itérateur. Les coroutines ne doivent pas " "lever directement des exceptions :exc:`StopIteration` non gérées." -#: reference/datamodel.rst:2875 +#: reference/datamodel.rst:2898 msgid "" "Coroutines also have the methods listed below, which are analogous to those " "of generators (see :ref:`generator-methods`). However, unlike generators, " @@ -4779,20 +4824,22 @@ msgstr "" "contraire des générateurs, vous ne pouvez pas itérer directement sur des " "coroutines." -#: reference/datamodel.rst:2879 +#: reference/datamodel.rst:2902 msgid "It is a :exc:`RuntimeError` to await on a coroutine more than once." msgstr "" "Utiliser *await* plus d'une fois sur une coroutine lève une :exc:" "`RuntimeError`." -#: reference/datamodel.rst:2885 +#: reference/datamodel.rst:2908 +#, fuzzy msgid "" "Starts or resumes execution of the coroutine. If *value* is ``None``, this " -"is equivalent to advancing the iterator returned by :meth:`__await__`. If " -"*value* is not ``None``, this method delegates to the :meth:`~generator." -"send` method of the iterator that caused the coroutine to suspend. The " -"result (return value, :exc:`StopIteration`, or other exception) is the same " -"as when iterating over the :meth:`__await__` return value, described above." +"is equivalent to advancing the iterator returned by :meth:`~object." +"__await__`. If *value* is not ``None``, this method delegates to the :meth:" +"`~generator.send` method of the iterator that caused the coroutine to " +"suspend. The result (return value, :exc:`StopIteration`, or other " +"exception) is the same as when iterating over the :meth:`__await__` return " +"value, described above." msgstr "" "Démarre ou reprend l'exécution d'une coroutine. Si *value* est ``None``, " "c'est équivalent à avancer l'itérateur renvoyé par :meth:`__await__`. Si " @@ -4802,15 +4849,16 @@ msgstr "" "est le même que lorsque vous itérez sur la valeur de retour de :meth:" "`__await__`, décrite ci-dessus." -#: reference/datamodel.rst:2895 +#: reference/datamodel.rst:2918 +#, fuzzy msgid "" "Raises the specified exception in the coroutine. This method delegates to " "the :meth:`~generator.throw` method of the iterator that caused the " "coroutine to suspend, if it has such a method. Otherwise, the exception is " "raised at the suspension point. The result (return value, :exc:" "`StopIteration`, or other exception) is the same as when iterating over the :" -"meth:`__await__` return value, described above. If the exception is not " -"caught in the coroutine, it propagates back to the caller." +"meth:`~object.__await__` return value, described above. If the exception is " +"not caught in the coroutine, it propagates back to the caller." msgstr "" "Lève l'exception spécifiée dans la coroutine. Cette méthode délègue à la " "méthode :meth:`~generator.throw` de l'itérateur qui a causé la suspension de " @@ -4820,7 +4868,7 @@ msgstr "" "retour de :meth:`__await__`, décrite ci-dessus. Si l'exception n'est pas " "gérée par la coroutine, elle est propagée à l'appelant." -#: reference/datamodel.rst:2906 +#: reference/datamodel.rst:2929 msgid "" "Causes the coroutine to clean itself up and exit. If the coroutine is " "suspended, this method first delegates to the :meth:`~generator.close` " @@ -4837,7 +4885,7 @@ msgstr "" "la coroutine est marquée comme ayant terminé son exécution, même si elle n'a " "jamais démarré." -#: reference/datamodel.rst:2914 +#: reference/datamodel.rst:2937 msgid "" "Coroutine objects are automatically closed using the above process when they " "are about to be destroyed." @@ -4845,11 +4893,11 @@ msgstr "" "Les objets coroutines sont automatiquement fermés en utilisant le processus " "décrit au-dessus au moment où ils sont détruits." -#: reference/datamodel.rst:2920 +#: reference/datamodel.rst:2943 msgid "Asynchronous Iterators" msgstr "Itérateurs asynchrones" -#: reference/datamodel.rst:2922 +#: reference/datamodel.rst:2945 msgid "" "An *asynchronous iterator* can call asynchronous code in its ``__anext__`` " "method." @@ -4857,18 +4905,18 @@ msgstr "" "Un *itérateur asynchrone* peut appeler du code asynchrone dans sa méthode " "``__anext__``." -#: reference/datamodel.rst:2925 +#: reference/datamodel.rst:2948 msgid "" "Asynchronous iterators can be used in an :keyword:`async for` statement." msgstr "" "Les itérateurs asynchrones peuvent être utilisés dans des instructions :" "keyword:`async for`." -#: reference/datamodel.rst:2929 +#: reference/datamodel.rst:2952 msgid "Must return an *asynchronous iterator* object." msgstr "Doit renvoyer un objet *itérateur asynchrone*." -#: reference/datamodel.rst:2933 +#: reference/datamodel.rst:2956 msgid "" "Must return an *awaitable* resulting in a next value of the iterator. " "Should raise a :exc:`StopAsyncIteration` error when the iteration is over." @@ -4877,32 +4925,36 @@ msgstr "" "suivante de l'itérateur. Doit lever une :exc:`StopAsyncIteration` quand " "l'itération est terminée." -#: reference/datamodel.rst:2936 +#: reference/datamodel.rst:2959 msgid "An example of an asynchronous iterable object::" msgstr "Un exemple d'objet itérateur asynchrone ::" -#: reference/datamodel.rst:2953 +#: reference/datamodel.rst:2976 +#, fuzzy msgid "" -"Prior to Python 3.7, ``__aiter__`` could return an *awaitable* that would " -"resolve to an :term:`asynchronous iterator `." +"Prior to Python 3.7, :meth:`~object.__aiter__` could return an *awaitable* " +"that would resolve to an :term:`asynchronous iterator `." msgstr "" "Avant Python 3.7, ``__aiter__`` pouvait renvoyer un *attendable* " "(*awaitable*) qui se résolvait potentiellement en un :term:`itérateur " "asynchrone `." -#: reference/datamodel.rst:2958 +#: reference/datamodel.rst:2981 +#, fuzzy msgid "" -"Starting with Python 3.7, ``__aiter__`` must return an asynchronous iterator " -"object. Returning anything else will result in a :exc:`TypeError` error." +"Starting with Python 3.7, :meth:`~object.__aiter__` must return an " +"asynchronous iterator object. Returning anything else will result in a :exc:" +"`TypeError` error." msgstr "" "À partir de Python 3.7, ``__aiter__`` doit renvoyer un objet itérateur " "asynchrone. Renvoyer autre chose entraine une erreur :exc:`TypeError`." -#: reference/datamodel.rst:2966 +#: reference/datamodel.rst:2989 msgid "Asynchronous Context Managers" msgstr "Gestionnaires de contexte asynchrones" -#: reference/datamodel.rst:2968 +#: reference/datamodel.rst:2991 msgid "" "An *asynchronous context manager* is a *context manager* that is able to " "suspend execution in its ``__aenter__`` and ``__aexit__`` methods." @@ -4911,7 +4963,7 @@ msgstr "" "qui est capable de suspendre son exécution dans ses méthodes ``__aenter__`` " "et ``__aexit__``." -#: reference/datamodel.rst:2971 +#: reference/datamodel.rst:2994 msgid "" "Asynchronous context managers can be used in an :keyword:`async with` " "statement." @@ -4919,7 +4971,7 @@ msgstr "" "Les gestionnaires de contexte asynchrones peuvent être utilisés dans des " "instructions :keyword:`async with`." -#: reference/datamodel.rst:2975 +#: reference/datamodel.rst:2998 msgid "" "Semantically similar to :meth:`__enter__`, the only difference being that it " "must return an *awaitable*." @@ -4927,7 +4979,7 @@ msgstr "" "Sémantiquement équivalente à :meth:`__enter__`, à la seule différence près " "qu'elle doit renvoyer un *attendable* (*awaitable*)." -#: reference/datamodel.rst:2980 +#: reference/datamodel.rst:3003 msgid "" "Semantically similar to :meth:`__exit__`, the only difference being that it " "must return an *awaitable*." @@ -4935,15 +4987,15 @@ msgstr "" "Sémantiquement équivalente à :meth:`__exit__`, à la seule différence près " "qu'elle doit renvoyer un *attendable* (*awaitable*)." -#: reference/datamodel.rst:2983 +#: reference/datamodel.rst:3006 msgid "An example of an asynchronous context manager class::" msgstr "Un exemple de classe de gestionnaire de contexte asynchrone ::" -#: reference/datamodel.rst:2996 +#: reference/datamodel.rst:3019 msgid "Footnotes" msgstr "Notes de bas de page" -#: reference/datamodel.rst:2997 +#: reference/datamodel.rst:3020 msgid "" "It *is* possible in some cases to change an object's type, under certain " "controlled conditions. It generally isn't a good idea though, since it can " @@ -4954,19 +5006,20 @@ msgstr "" "car cela peut conduire à un comportement très étrange si ce n'est pas géré " "correctement." -#: reference/datamodel.rst:3001 +#: reference/datamodel.rst:3024 +#, fuzzy msgid "" -"The :meth:`__hash__`, :meth:`__iter__`, :meth:`__reversed__`, and :meth:" -"`__contains__` methods have special handling for this; others will still " -"raise a :exc:`TypeError`, but may do so by relying on the behavior that " -"``None`` is not callable." +"The :meth:`~object.__hash__`, :meth:`~object.__iter__`, :meth:`~object." +"__reversed__`, and :meth:`~object.__contains__` methods have special " +"handling for this; others will still raise a :exc:`TypeError`, but may do so " +"by relying on the behavior that ``None`` is not callable." msgstr "" "Les méthodes :meth:`__hash__`, :meth:`__iter__`, :meth:`__reversed__` et :" "meth:`__contains__` ont une gestion particulière pour cela ; les autres " "lèvent toujours :exc:`TypeError`, mais le font en considérant que ``None`` " "n'est pas un appelable." -#: reference/datamodel.rst:3006 +#: reference/datamodel.rst:3030 msgid "" "\"Does not support\" here means that the class has no such method, or the " "method returns ``NotImplemented``. Do not set the method to ``None`` if you " @@ -4978,16 +5031,27 @@ msgstr "" "``None`` à la méthode si vous voulez un repli vers la méthode symétrique de " "l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli." -#: reference/datamodel.rst:3012 +#: reference/datamodel.rst:3036 +#, fuzzy msgid "" "For operands of the same type, it is assumed that if the non-reflected " -"method -- such as :meth:`__add__` -- fails then the overall operation is not " -"supported, which is why the reflected method is not called." +"method -- such as :meth:`~object.__add__` -- fails then the overall " +"operation is not supported, which is why the reflected method is not called." msgstr "" "Pour des opérandes de même type, on considère que si la méthode originelle " "(telle que :meth:`__add__`) échoue, alors l'opération en tant que telle " "n'est pas autorisée et donc la méthode symétrique n'est pas appelée." +#~ msgid "" +#~ "Any non-string iterable may be assigned to *__slots__*. Mappings may also " +#~ "be used; however, in the future, special meaning may be assigned to the " +#~ "values corresponding to each key." +#~ msgstr "" +#~ "Tout itérable qui n'est pas une chaîne peut être assigné à un " +#~ "*__slots__*. Les tableaux de correspondance peuvent aussi être utilisés ; " +#~ "cependant, dans le futur, des significations spéciales pourraient être " +#~ "associées à chacune des clés." + #~ msgid "" #~ "One can implement the generic class syntax as specified by :pep:`484` " #~ "(for example ``List[int]``) by defining a special method:" diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index f67dfdfa..f372a70e 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-27 10:27+0100\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-10-16 23:16+0200\n" "Last-Translator: Jean Abou Samra \n" "Language-Team: FRENCH \n" @@ -489,7 +489,7 @@ msgstr "" "noms doivent impérativement être qualifiés (contenir un point) pour ne pas " "être interprétés comme des variables de capture." -#: tutorial/controlflow.rst:410 +#: tutorial/controlflow.rst:412 msgid "" "For a more detailed explanation and additional examples, you can look into :" "pep:`636` which is written in a tutorial format." @@ -497,11 +497,11 @@ msgstr "" "Pour plus d'explications et d'exemples, lire la :pep:`636` (en anglais), qui " "est écrite sous forme de tutoriel." -#: tutorial/controlflow.rst:416 +#: tutorial/controlflow.rst:418 msgid "Defining Functions" msgstr "Définir des fonctions" -#: tutorial/controlflow.rst:418 +#: tutorial/controlflow.rst:420 msgid "" "We can create a function that writes the Fibonacci series to an arbitrary " "boundary::" @@ -509,7 +509,7 @@ msgstr "" "On peut créer une fonction qui écrit la suite de Fibonacci jusqu'à une " "limite imposée ::" -#: tutorial/controlflow.rst:438 +#: tutorial/controlflow.rst:440 msgid "" "The keyword :keyword:`def` introduces a function *definition*. It must be " "followed by the function name and the parenthesized list of formal " @@ -521,7 +521,7 @@ msgstr "" "paramètres. L'instruction qui constitue le corps de la fonction débute à la " "ligne suivante et doit être indentée." -#: tutorial/controlflow.rst:443 +#: tutorial/controlflow.rst:445 msgid "" "The first statement of the function body can optionally be a string literal; " "this string literal is the function's documentation string, or :dfn:" @@ -540,7 +540,7 @@ msgstr "" "naviguer de façon interactive dans le code ; prenez-en l'habitude, c'est une " "bonne pratique que de documenter le code que vous écrivez." -#: tutorial/controlflow.rst:450 +#: tutorial/controlflow.rst:452 msgid "" "The *execution* of a function introduces a new symbol table used for the " "local variables of the function. More precisely, all variable assignments " @@ -566,7 +566,7 @@ msgstr "" "instruction :keyword:`global` et, pour les variables des fonctions " "englobantes, désignées dans une instruction :keyword:`nonlocal`)." -#: tutorial/controlflow.rst:461 +#: tutorial/controlflow.rst:463 msgid "" "The actual parameters (arguments) to a function call are introduced in the " "local symbol table of the called function when it is called; thus, arguments " @@ -583,7 +583,7 @@ msgstr "" "s'appelle elle-même par récursion, une nouvelle table de symboles locaux est " "créée pour cet appel." -#: tutorial/controlflow.rst:468 +#: tutorial/controlflow.rst:470 msgid "" "A function definition associates the function name with the function object " "in the current symbol table. The interpreter recognizes the object pointed " @@ -596,7 +596,7 @@ msgstr "" "référence à une même fonction, ils peuvent alors tous être utilisés pour " "appeler la fonction ::" -#: tutorial/controlflow.rst:479 +#: tutorial/controlflow.rst:481 msgid "" "Coming from other languages, you might object that ``fib`` is not a function " "but a procedure since it doesn't return a value. In fact, even functions " @@ -615,7 +615,7 @@ msgstr "" "Vous pouvez le constater, si vous y tenez vraiment, en utilisant :func:" "`print` ::" -#: tutorial/controlflow.rst:490 +#: tutorial/controlflow.rst:492 msgid "" "It is simple to write a function that returns a list of the numbers of the " "Fibonacci series, instead of printing it::" @@ -623,14 +623,14 @@ msgstr "" "Il est facile d'écrire une fonction qui renvoie une liste de la série de " "Fibonacci au lieu de l'afficher ::" -#: tutorial/controlflow.rst:506 +#: tutorial/controlflow.rst:508 msgid "This example, as usual, demonstrates some new Python features:" msgstr "" "Cet exemple, comme d'habitude, illustre de nouvelles fonctionnalités de " "Python :" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:508 +#: tutorial/controlflow.rst:510 msgid "" "The :keyword:`return` statement returns with a value from a function. :" "keyword:`!return` without an expression argument returns ``None``. Falling " @@ -642,7 +642,7 @@ msgstr "" "``None`` ;" # fin d'énumération --> pas de majuscule et point final. -#: tutorial/controlflow.rst:512 +#: tutorial/controlflow.rst:514 msgid "" "The statement ``result.append(a)`` calls a *method* of the list object " "``result``. A method is a function that 'belongs' to an object and is named " @@ -668,11 +668,11 @@ msgstr "" "liste. Dans cet exemple, elle est l'équivalent de ``result = result + [a]``, " "en plus efficace." -#: tutorial/controlflow.rst:527 +#: tutorial/controlflow.rst:529 msgid "More on Defining Functions" msgstr "Davantage sur la définition des fonctions" -#: tutorial/controlflow.rst:529 +#: tutorial/controlflow.rst:531 msgid "" "It is also possible to define functions with a variable number of arguments. " "There are three forms, which can be combined." @@ -680,11 +680,11 @@ msgstr "" "Il est également possible de définir des fonctions avec un nombre variable " "d'arguments. Trois syntaxes peuvent être utilisées, éventuellement combinées." -#: tutorial/controlflow.rst:536 +#: tutorial/controlflow.rst:538 msgid "Default Argument Values" msgstr "Valeur par défaut des arguments" -#: tutorial/controlflow.rst:538 +#: tutorial/controlflow.rst:540 msgid "" "The most useful form is to specify a default value for one or more " "arguments. This creates a function that can be called with fewer arguments " @@ -694,12 +694,12 @@ msgstr "" "certains arguments. Ceci crée une fonction qui peut être appelée avec moins " "d'arguments que ceux présents dans sa définition. Par exemple ::" -#: tutorial/controlflow.rst:554 +#: tutorial/controlflow.rst:556 msgid "This function can be called in several ways:" msgstr "Cette fonction peut être appelée de plusieurs façons :" # énumération --> pas de majuscule -#: tutorial/controlflow.rst:556 +#: tutorial/controlflow.rst:558 msgid "" "giving only the mandatory argument: ``ask_ok('Do you really want to quit?')``" msgstr "" @@ -707,7 +707,7 @@ msgstr "" "want to quit?')`` ;" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:558 +#: tutorial/controlflow.rst:560 msgid "" "giving one of the optional arguments: ``ask_ok('OK to overwrite the file?', " "2)``" @@ -716,7 +716,7 @@ msgstr "" "overwrite the file?', 2)`` ;" # fin d'énumération --> pas de majuscule et point final. -#: tutorial/controlflow.rst:560 +#: tutorial/controlflow.rst:562 msgid "" "or even giving all arguments: ``ask_ok('OK to overwrite the file?', 2, 'Come " "on, only yes or no!')``" @@ -724,7 +724,7 @@ msgstr "" "en fournissant tous les arguments : ``ask_ok('OK to overwrite the file?', 2, " "'Come on, only yes or no!')``." -#: tutorial/controlflow.rst:563 +#: tutorial/controlflow.rst:565 msgid "" "This example also introduces the :keyword:`in` keyword. This tests whether " "or not a sequence contains a certain value." @@ -732,7 +732,7 @@ msgstr "" "Cet exemple présente également le mot-clé :keyword:`in`. Celui-ci permet de " "tester si une séquence contient une certaine valeur." -#: tutorial/controlflow.rst:566 +#: tutorial/controlflow.rst:568 msgid "" "The default values are evaluated at the point of function definition in the " "*defining* scope, so that ::" @@ -740,11 +740,11 @@ msgstr "" "Les valeurs par défaut sont évaluées lors de la définition de la fonction " "dans la portée de la *définition*, de telle sorte que ::" -#: tutorial/controlflow.rst:577 +#: tutorial/controlflow.rst:579 msgid "will print ``5``." msgstr "affiche ``5``." -#: tutorial/controlflow.rst:579 +#: tutorial/controlflow.rst:581 msgid "" "**Important warning:** The default value is evaluated only once. This makes " "a difference when the default is a mutable object such as a list, " @@ -758,11 +758,11 @@ msgstr "" "arguments qui lui sont passés au fil des appels successifs ::" # pas de majuscule : ok -#: tutorial/controlflow.rst:592 +#: tutorial/controlflow.rst:594 msgid "This will print ::" msgstr "affiche ::" -#: tutorial/controlflow.rst:598 +#: tutorial/controlflow.rst:600 msgid "" "If you don't want the default to be shared between subsequent calls, you can " "write the function like this instead::" @@ -770,11 +770,11 @@ msgstr "" "Si vous ne voulez pas que cette valeur par défaut soit partagée entre des " "appels successifs, vous pouvez écrire la fonction de cette façon ::" -#: tutorial/controlflow.rst:611 +#: tutorial/controlflow.rst:613 msgid "Keyword Arguments" msgstr "Les arguments nommés" -#: tutorial/controlflow.rst:613 +#: tutorial/controlflow.rst:615 msgid "" "Functions can also be called using :term:`keyword arguments ` of the form ``kwarg=value``. For instance, the following " @@ -784,7 +784,7 @@ msgstr "" "`arguments nommés ` sous la forme ``kwarg=value``. Par " "exemple, la fonction suivante ::" -#: tutorial/controlflow.rst:622 +#: tutorial/controlflow.rst:624 msgid "" "accepts one required argument (``voltage``) and three optional arguments " "(``state``, ``action``, and ``type``). This function can be called in any " @@ -794,11 +794,11 @@ msgstr "" "(``state``, ``action`` et ``type``). Cette fonction peut être appelée de " "n'importe laquelle des façons suivantes ::" -#: tutorial/controlflow.rst:633 +#: tutorial/controlflow.rst:635 msgid "but all the following calls would be invalid::" msgstr "mais tous les appels qui suivent sont incorrects ::" -#: tutorial/controlflow.rst:640 +#: tutorial/controlflow.rst:642 msgid "" "In a function call, keyword arguments must follow positional arguments. All " "the keyword arguments passed must match one of the arguments accepted by the " @@ -817,7 +817,7 @@ msgstr "" "recevoir une valeur plus d'une fois, comme l'illustre cet exemple incorrect " "du fait de cette restriction ::" -#: tutorial/controlflow.rst:656 +#: tutorial/controlflow.rst:658 msgid "" "When a final formal parameter of the form ``**name`` is present, it receives " "a dictionary (see :ref:`typesmapping`) containing all keyword arguments " @@ -836,15 +836,15 @@ msgstr "" "formels (``*name`` doit être présent avant ``**name``). Par exemple, si vous " "définissez une fonction comme ceci ::" -#: tutorial/controlflow.rst:673 +#: tutorial/controlflow.rst:675 msgid "It could be called like this::" msgstr "Elle pourrait être appelée comme ceci ::" -#: tutorial/controlflow.rst:681 +#: tutorial/controlflow.rst:683 msgid "and of course it would print:" msgstr "et, bien sûr, elle affiche :" -#: tutorial/controlflow.rst:694 +#: tutorial/controlflow.rst:696 msgid "" "Note that the order in which the keyword arguments are printed is guaranteed " "to match the order in which they were provided in the function call." @@ -852,11 +852,11 @@ msgstr "" "Notez que Python garantit que l'ordre d'affichage des arguments est le même " "que l'ordre dans lesquels ils sont fournis lors de l'appel à la fonction." -#: tutorial/controlflow.rst:698 +#: tutorial/controlflow.rst:700 msgid "Special parameters" msgstr "Paramètres spéciaux" -#: tutorial/controlflow.rst:700 +#: tutorial/controlflow.rst:702 msgid "" "By default, arguments may be passed to a Python function either by position " "or explicitly by keyword. For readability and performance, it makes sense to " @@ -871,11 +871,11 @@ msgstr "" "définition de la fonction pour déterminer si les éléments sont transmis par " "position seule, par position ou nommé, ou seulement nommé." -#: tutorial/controlflow.rst:706 +#: tutorial/controlflow.rst:708 msgid "A function definition may look like:" msgstr "Voici à quoi ressemble une définition de fonction :" -#: tutorial/controlflow.rst:717 +#: tutorial/controlflow.rst:719 msgid "" "where ``/`` and ``*`` are optional. If used, these symbols indicate the kind " "of parameter by how the arguments may be passed to the function: positional-" @@ -887,11 +887,11 @@ msgstr "" "fonction : position seule, position ou nommé, et seulement nommé. Les " "paramètres par mot-clé sont aussi appelés paramètres nommés." -#: tutorial/controlflow.rst:724 +#: tutorial/controlflow.rst:726 msgid "Positional-or-Keyword Arguments" msgstr "Les arguments positionnels-ou-nommés" -#: tutorial/controlflow.rst:726 +#: tutorial/controlflow.rst:728 msgid "" "If ``/`` and ``*`` are not present in the function definition, arguments may " "be passed to a function by position or by keyword." @@ -899,11 +899,11 @@ msgstr "" "Si ``/`` et ``*`` ne sont pas présents dans la définition de fonction, les " "arguments peuvent être passés à une fonction par position ou par nommés." -#: tutorial/controlflow.rst:731 +#: tutorial/controlflow.rst:733 msgid "Positional-Only Parameters" msgstr "Paramètres positionnels uniquement" -#: tutorial/controlflow.rst:733 +#: tutorial/controlflow.rst:735 msgid "" "Looking at this in a bit more detail, it is possible to mark certain " "parameters as *positional-only*. If *positional-only*, the parameters' order " @@ -922,7 +922,7 @@ msgstr "" "des paramètres. S'il n'y a pas de ``/`` dans la définition de fonction, il " "n'y a pas de paramètres « positionnels uniquement »." -#: tutorial/controlflow.rst:741 +#: tutorial/controlflow.rst:743 msgid "" "Parameters following the ``/`` may be *positional-or-keyword* or *keyword-" "only*." @@ -930,11 +930,11 @@ msgstr "" "Les paramètres qui suivent le ``/`` peuvent être *positionnels-ou-nommés* ou " "*nommés-uniquement*." -#: tutorial/controlflow.rst:745 +#: tutorial/controlflow.rst:747 msgid "Keyword-Only Arguments" msgstr "Arguments nommés uniquement" -#: tutorial/controlflow.rst:747 +#: tutorial/controlflow.rst:749 msgid "" "To mark parameters as *keyword-only*, indicating the parameters must be " "passed by keyword argument, place an ``*`` in the arguments list just before " @@ -945,11 +945,11 @@ msgstr "" "``*`` dans la liste des arguments juste avant le premier paramètre " "*uniquement nommé*." -#: tutorial/controlflow.rst:753 +#: tutorial/controlflow.rst:755 msgid "Function Examples" msgstr "Exemples de fonctions" -#: tutorial/controlflow.rst:755 +#: tutorial/controlflow.rst:757 msgid "" "Consider the following example function definitions paying close attention " "to the markers ``/`` and ``*``::" @@ -957,7 +957,7 @@ msgstr "" "Considérons l'exemple suivant de définitions de fonctions en portant une " "attention particulière aux marqueurs ``/`` et ``*`` ::" -#: tutorial/controlflow.rst:771 +#: tutorial/controlflow.rst:773 msgid "" "The first function definition, ``standard_arg``, the most familiar form, " "places no restrictions on the calling convention and arguments may be passed " @@ -967,7 +967,7 @@ msgstr "" "familière, n'impose aucune restriction sur la convention d'appel et les " "arguments peuvent être passés par position ou nommés ::" -#: tutorial/controlflow.rst:781 +#: tutorial/controlflow.rst:783 msgid "" "The second function ``pos_only_arg`` is restricted to only use positional " "parameters as there is a ``/`` in the function definition::" @@ -975,7 +975,7 @@ msgstr "" "La deuxième fonction ``pos_only_arg`` restreint le passage aux seuls " "arguments par position car il y a un ``/`` dans la définition de fonction ::" -#: tutorial/controlflow.rst:792 +#: tutorial/controlflow.rst:794 msgid "" "The third function ``kwd_only_args`` only allows keyword arguments as " "indicated by a ``*`` in the function definition::" @@ -983,7 +983,7 @@ msgstr "" "La troisième fonction ``kwd_only_args`` n'autorise que les arguments nommés " "comme l'indique le ``*`` dans la définition de fonction ::" -#: tutorial/controlflow.rst:803 +#: tutorial/controlflow.rst:805 msgid "" "And the last uses all three calling conventions in the same function " "definition::" @@ -991,7 +991,7 @@ msgstr "" "Et la dernière utilise les trois conventions d'appel dans la même définition " "de fonction ::" -#: tutorial/controlflow.rst:823 +#: tutorial/controlflow.rst:825 msgid "" "Finally, consider this function definition which has a potential collision " "between the positional argument ``name`` and ``**kwds`` which has ``name`` " @@ -1001,7 +1001,7 @@ msgstr "" "potentielle entre l'argument positionnel ``name`` et ``**kwds`` qui a " "``name`` comme mot-clé ::" -#: tutorial/controlflow.rst:828 +#: tutorial/controlflow.rst:830 msgid "" "There is no possible call that will make it return ``True`` as the keyword " "``'name'`` will always bind to the first parameter. For example::" @@ -1009,7 +1009,7 @@ msgstr "" "Il n'y a pas d'appel possible qui renvoie ``True`` car le mot-clé ``'name'`` " "est toujours lié au premier paramètre. Par exemple ::" -#: tutorial/controlflow.rst:837 +#: tutorial/controlflow.rst:839 msgid "" "But using ``/`` (positional only arguments), it is possible since it allows " "``name`` as a positional argument and ``'name'`` as a key in the keyword " @@ -1019,7 +1019,7 @@ msgstr "" "puisqu'il permet d'utiliser ``name`` comme argument positionnel et " "``'name'`` comme mot-clé dans les arguments nommés ::" -#: tutorial/controlflow.rst:844 +#: tutorial/controlflow.rst:846 msgid "" "In other words, the names of positional-only parameters can be used in " "``**kwds`` without ambiguity." @@ -1027,11 +1027,11 @@ msgstr "" "En d'autres termes, les noms des paramètres seulement positionnels peuvent " "être utilisés sans ambiguïté dans ``**kwds``." -#: tutorial/controlflow.rst:849 +#: tutorial/controlflow.rst:851 msgid "Recap" msgstr "Récapitulatif" -#: tutorial/controlflow.rst:851 +#: tutorial/controlflow.rst:853 msgid "" "The use case will determine which parameters to use in the function " "definition::" @@ -1039,12 +1039,12 @@ msgstr "" "Le cas d'utilisation détermine les paramètres à utiliser dans la définition " "de fonction ::" -#: tutorial/controlflow.rst:855 +#: tutorial/controlflow.rst:857 msgid "As guidance:" msgstr "Quelques conseils :" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:857 +#: tutorial/controlflow.rst:859 msgid "" "Use positional-only if you want the name of the parameters to not be " "available to the user. This is useful when parameter names have no real " @@ -1059,7 +1059,7 @@ msgstr "" "de prendre certains paramètres positionnels et mots-clés arbitraires ;" # énumération --> pas de majuscule et point-virgule en fin de proposition. -#: tutorial/controlflow.rst:862 +#: tutorial/controlflow.rst:864 msgid "" "Use keyword-only when names have meaning and the function definition is more " "understandable by being explicit with names or you want to prevent users " @@ -1071,7 +1071,7 @@ msgstr "" "l'argument qui est passé ;" # fin d'énumération -#: tutorial/controlflow.rst:865 +#: tutorial/controlflow.rst:867 msgid "" "For an API, use positional-only to prevent breaking API changes if the " "parameter's name is modified in the future." @@ -1079,11 +1079,11 @@ msgstr "" "dans le cas d'une API, utilisez les paramètres seulement positionnels pour " "éviter de casser l'API si le nom du paramètre est modifié dans l'avenir." -#: tutorial/controlflow.rst:871 +#: tutorial/controlflow.rst:873 msgid "Arbitrary Argument Lists" msgstr "Listes d'arguments arbitraires" -#: tutorial/controlflow.rst:876 +#: tutorial/controlflow.rst:878 msgid "" "Finally, the least frequently used option is to specify that a function can " "be called with an arbitrary number of arguments. These arguments will be " @@ -1096,7 +1096,7 @@ msgstr "" "nombre variable d'arguments, zéro ou plus arguments normaux peuvent " "apparaître ::" -#: tutorial/controlflow.rst:885 +#: tutorial/controlflow.rst:887 msgid "" "Normally, these ``variadic`` arguments will be last in the list of formal " "parameters, because they scoop up all remaining input arguments that are " @@ -1108,11 +1108,11 @@ msgstr "" "parce qu'ils agrègent toutes les valeurs suivantes. Tout paramètre placé " "après le paramètre ``*arg`` ne pourra être utilisé que par son nom ::" -#: tutorial/controlflow.rst:902 +#: tutorial/controlflow.rst:904 msgid "Unpacking Argument Lists" msgstr "Séparation des listes d'arguments" -#: tutorial/controlflow.rst:904 +#: tutorial/controlflow.rst:906 msgid "" "The reverse situation occurs when the arguments are already in a list or " "tuple but need to be unpacked for a function call requiring separate " @@ -1129,7 +1129,7 @@ msgstr "" "l'opérateur ``*`` pour séparer les arguments présents dans une liste ou un " "*n*-uplet ::" -#: tutorial/controlflow.rst:920 +#: tutorial/controlflow.rst:922 msgid "" "In the same fashion, dictionaries can deliver keyword arguments with the " "``**``\\ -operator::" @@ -1137,11 +1137,11 @@ msgstr "" "De la même façon, les dictionnaires peuvent fournir des arguments nommés en " "utilisant l'opérateur ``**`` ::" -#: tutorial/controlflow.rst:936 +#: tutorial/controlflow.rst:938 msgid "Lambda Expressions" msgstr "Fonctions anonymes" -#: tutorial/controlflow.rst:938 +#: tutorial/controlflow.rst:940 msgid "" "Small anonymous functions can be created with the :keyword:`lambda` keyword. " "This function returns the sum of its two arguments: ``lambda a, b: a+b``. " @@ -1159,7 +1159,7 @@ msgstr "" "définition de fonction normale. Comme les fonctions imbriquées, les " "fonctions lambda peuvent référencer des variables de la portée englobante ::" -#: tutorial/controlflow.rst:955 +#: tutorial/controlflow.rst:957 msgid "" "The above example uses a lambda expression to return a function. Another " "use is to pass a small function as an argument::" @@ -1168,11 +1168,11 @@ msgstr "" "Une autre utilisation classique est de donner une fonction minimaliste " "directement en tant que paramètre ::" -#: tutorial/controlflow.rst:967 +#: tutorial/controlflow.rst:969 msgid "Documentation Strings" msgstr "Chaînes de documentation" -#: tutorial/controlflow.rst:974 +#: tutorial/controlflow.rst:976 msgid "" "Here are some conventions about the content and formatting of documentation " "strings." @@ -1180,7 +1180,7 @@ msgstr "" "Voici quelques conventions concernant le contenu et le format des chaînes de " "documentation." -#: tutorial/controlflow.rst:977 +#: tutorial/controlflow.rst:979 msgid "" "The first line should always be a short, concise summary of the object's " "purpose. For brevity, it should not explicitly state the object's name or " @@ -1194,7 +1194,7 @@ msgstr "" "si le nom est un verbe qui décrit une opération). La convention veut que la " "ligne commence par une majuscule et se termine par un point." -#: tutorial/controlflow.rst:983 +#: tutorial/controlflow.rst:985 msgid "" "If there are more lines in the documentation string, the second line should " "be blank, visually separating the summary from the rest of the description. " @@ -1206,7 +1206,7 @@ msgstr "" "Les autres lignes peuvent alors constituer un ou plusieurs paragraphes " "décrivant le mode d'utilisation de l'objet, ses effets de bord, etc." -#: tutorial/controlflow.rst:988 +#: tutorial/controlflow.rst:990 msgid "" "The Python parser does not strip indentation from multi-line string literals " "in Python, so tools that process documentation have to strip indentation if " @@ -1234,15 +1234,15 @@ msgstr "" "début de ligne doivent être supprimées. L'équivalent des espaces doit être " "testé après expansion des tabulations (normalement remplacées par 8 espaces)." -#: tutorial/controlflow.rst:1000 +#: tutorial/controlflow.rst:1002 msgid "Here is an example of a multi-line docstring::" msgstr "Voici un exemple de chaîne de documentation multi-lignes ::" -#: tutorial/controlflow.rst:1018 +#: tutorial/controlflow.rst:1020 msgid "Function Annotations" msgstr "Annotations de fonctions" -#: tutorial/controlflow.rst:1026 +#: tutorial/controlflow.rst:1028 msgid "" ":ref:`Function annotations ` are completely optional metadata " "information about the types used by user-defined functions (see :pep:`3107` " @@ -1252,7 +1252,7 @@ msgstr "" "optionnelles décrivant les types utilisés par une fonction définie par " "l'utilisateur (voir les :pep:`3107` et :pep:`484` pour plus d'informations)." -#: tutorial/controlflow.rst:1030 +#: tutorial/controlflow.rst:1032 msgid "" ":term:`Annotations ` are stored in the :attr:" "`__annotations__` attribute of the function as a dictionary and have no " @@ -1272,11 +1272,11 @@ msgstr "" "points de fin de l'instruction :keyword:`def`. L'exemple suivant a un " "paramètre requis, un paramètre optionnel et la valeur de retour annotés ::" -#: tutorial/controlflow.rst:1052 +#: tutorial/controlflow.rst:1054 msgid "Intermezzo: Coding Style" msgstr "Aparté : le style de codage" -#: tutorial/controlflow.rst:1057 +#: tutorial/controlflow.rst:1059 msgid "" "Now that you are about to write longer, more complex pieces of Python, it is " "a good time to talk about *coding style*. Most languages can be written (or " @@ -1291,7 +1291,7 @@ msgstr "" "votre code plus facile aux autres est toujours une bonne idée et adopter un " "bon style de codage peut énormément vous y aider." -#: tutorial/controlflow.rst:1063 +#: tutorial/controlflow.rst:1065 msgid "" "For Python, :pep:`8` has emerged as the style guide that most projects " "adhere to; it promotes a very readable and eye-pleasing coding style. Every " @@ -1303,11 +1303,11 @@ msgstr "" "Chaque développeur Python se doit donc de la lire et de s'en inspirer autant " "que possible ; voici ses principaux points notables :" -#: tutorial/controlflow.rst:1068 +#: tutorial/controlflow.rst:1070 msgid "Use 4-space indentation, and no tabs." msgstr "Utilisez des indentations de 4 espaces et pas de tabulation." -#: tutorial/controlflow.rst:1070 +#: tutorial/controlflow.rst:1072 msgid "" "4 spaces are a good compromise between small indentation (allows greater " "nesting depth) and large indentation (easier to read). Tabs introduce " @@ -1318,13 +1318,13 @@ msgstr "" "le code plus facile à lire). Les tabulations introduisent de la confusion et " "doivent être proscrites autant que possible." -#: tutorial/controlflow.rst:1074 +#: tutorial/controlflow.rst:1076 msgid "Wrap lines so that they don't exceed 79 characters." msgstr "" "Faites en sorte que les lignes ne dépassent pas 79 caractères, au besoin en " "insérant des retours à la ligne." -#: tutorial/controlflow.rst:1076 +#: tutorial/controlflow.rst:1078 msgid "" "This helps users with small displays and makes it possible to have several " "code files side-by-side on larger displays." @@ -1333,7 +1333,7 @@ msgstr "" "écran et, pour les autres, cela leur permet de visualiser plusieurs fichiers " "côte à côte." -#: tutorial/controlflow.rst:1079 +#: tutorial/controlflow.rst:1081 msgid "" "Use blank lines to separate functions and classes, and larger blocks of code " "inside functions." @@ -1341,16 +1341,16 @@ msgstr "" "Utilisez des lignes vides pour séparer les fonctions et les classes, ou pour " "scinder de gros blocs de code à l'intérieur de fonctions." -#: tutorial/controlflow.rst:1082 +#: tutorial/controlflow.rst:1084 msgid "When possible, put comments on a line of their own." msgstr "" "Lorsque c'est possible, placez les commentaires sur leurs propres lignes." -#: tutorial/controlflow.rst:1084 +#: tutorial/controlflow.rst:1086 msgid "Use docstrings." msgstr "Utilisez les chaînes de documentation." -#: tutorial/controlflow.rst:1086 +#: tutorial/controlflow.rst:1088 msgid "" "Use spaces around operators and after commas, but not directly inside " "bracketing constructs: ``a = f(1, 2) + g(3, 4)``." @@ -1358,7 +1358,7 @@ msgstr "" "Utilisez des espaces autour des opérateurs et après les virgules, mais pas " "juste à l'intérieur des parenthèses : ``a = f(1, 2) + g(3, 4)``." -#: tutorial/controlflow.rst:1089 +#: tutorial/controlflow.rst:1091 msgid "" "Name your classes and functions consistently; the convention is to use " "``UpperCamelCase`` for classes and ``lowercase_with_underscores`` for " @@ -1371,7 +1371,7 @@ msgstr "" "toujours ``self`` comme nom du premier argument des méthodes (voyez :ref:" "`tut-firstclasses` pour en savoir plus sur les classes et les méthodes)." -#: tutorial/controlflow.rst:1094 +#: tutorial/controlflow.rst:1096 msgid "" "Don't use fancy encodings if your code is meant to be used in international " "environments. Python's default, UTF-8, or even plain ASCII work best in any " @@ -1381,7 +1381,7 @@ msgstr "" "utilisé dans des environnements internationaux. Par défaut, Python travaille " "en UTF-8. Pour couvrir tous les cas, préférez le simple ASCII." -#: tutorial/controlflow.rst:1098 +#: tutorial/controlflow.rst:1100 msgid "" "Likewise, don't use non-ASCII characters in identifiers if there is only the " "slightest chance people speaking a different language will read or maintain " @@ -1391,11 +1391,11 @@ msgstr "" "variables s'il est envisageable qu'une personne parlant une autre langue " "lise ou doive modifier votre code." -#: tutorial/controlflow.rst:1104 +#: tutorial/controlflow.rst:1106 msgid "Footnotes" msgstr "Notes" -#: tutorial/controlflow.rst:1105 +#: tutorial/controlflow.rst:1107 msgid "" "Actually, *call by object reference* would be a better description, since if " "a mutable object is passed, the caller will see any changes the callee makes " diff --git a/tutorial/floatingpoint.po b/tutorial/floatingpoint.po index 31d81399..2d9b00a7 100644 --- a/tutorial/floatingpoint.po +++ b/tutorial/floatingpoint.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-09-23 16:16+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-09-25 11:38+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -230,12 +230,13 @@ msgstr "" "arrondir deux valeurs inexactes et pouvoir les comparer ::" #: tutorial/floatingpoint.rst:134 +#, fuzzy msgid "" "Binary floating-point arithmetic holds many surprises like this. The " "problem with \"0.1\" is explained in precise detail below, in the " -"\"Representation Error\" section. See `The Perils of Floating Point `_ for a more complete account of other common " -"surprises." +"\"Representation Error\" section. See `The Perils of Floating Point " +"`_ for a more complete account of other " +"common surprises." msgstr "" "L'arithmétique des nombres binaires à virgule flottante réserve beaucoup de " "surprises de ce genre. Le problème avec « 0.1 » est expliqué en détails ci-" diff --git a/whatsnew/3.10.po b/whatsnew/3.10.po index 6b33fabe..57026c37 100644 --- a/whatsnew/3.10.po +++ b/whatsnew/3.10.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-10-21 15:04+0200\n" +"POT-Creation-Date: 2021-12-31 11:33+0100\n" "PO-Revision-Date: 2021-11-29 08:25-0700\n" +"Last-Translator: Yannick Gingras \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Last-Translator: Yannick Gingras \n" "X-Generator: Poedit 2.4.2\n" #: whatsnew/3.10.rst:3 @@ -143,7 +143,7 @@ msgstr ":pep:`624`, retrait des API d'encodage ``Py_UNICODE`` ;" msgid ":pep:`597`, Add optional EncodingWarning" msgstr ":pep:`597`, ajout de l'``EncodingWarning`` optionnel" -#: whatsnew/3.10.rst:2031 +#: whatsnew/3.10.rst:2032 msgid "New Features" msgstr "Nouvelles fonctionnalités" @@ -891,11 +891,11 @@ msgstr "" msgid "See :ref:`io-text-encoding` for more information." msgstr "Voir :ref:`io-text-encoding` pour plus d'informations." -#: whatsnew/3.10.rst:709 +#: whatsnew/3.10.rst:710 msgid "New Features Related to Type Hints" msgstr "Nouvelles fonctionnalités reliées aux indications de types" -#: whatsnew/3.10.rst:711 +#: whatsnew/3.10.rst:712 msgid "" "This section covers major changes affecting :pep:`484` type hints and the :" "mod:`typing` module." @@ -903,11 +903,11 @@ msgstr "" "Cette section couvre les changements majeurs touchant le module :mod:" "`typing` et les indications de types de style :pep:`484`." -#: whatsnew/3.10.rst:716 +#: whatsnew/3.10.rst:717 msgid "PEP 604: New Type Union Operator" msgstr "PEP 604 : nouvel opérateur d'union de types" -#: whatsnew/3.10.rst:718 +#: whatsnew/3.10.rst:719 msgid "" "A new type union operator was introduced which enables the syntax ``X | Y``. " "This provides a cleaner way of expressing 'either type X or type Y' instead " @@ -918,7 +918,7 @@ msgstr "" "type Y » plutôt que d'utiliser :data:`typing.Union`, en particulier pour les " "indications de types." -#: whatsnew/3.10.rst:722 +#: whatsnew/3.10.rst:723 msgid "" "In previous versions of Python, to apply a type hint for functions accepting " "arguments of multiple types, :data:`typing.Union` was used::" @@ -927,13 +927,13 @@ msgstr "" "type à des fonctions qui acceptent des arguments de plusieurs types, :data:" "`typing.Union` était utilisée ::" -#: whatsnew/3.10.rst:729 +#: whatsnew/3.10.rst:730 msgid "Type hints can now be written in a more succinct manner::" msgstr "" "Les indications de type peuvent maintenant être écrites de façon plus " "courte ::" -#: whatsnew/3.10.rst:735 +#: whatsnew/3.10.rst:736 msgid "" "This new syntax is also accepted as the second argument to :func:" "`isinstance` and :func:`issubclass`::" @@ -941,11 +941,11 @@ msgstr "" "Cette nouvelle syntaxe est aussi acceptée comme le second argument de :func:" "`isinstance` et de :func:`issubclass` ::" -#: whatsnew/3.10.rst:741 +#: whatsnew/3.10.rst:742 msgid "See :ref:`types-union` and :pep:`604` for more details." msgstr "Voir :ref:`types-union` et la :pep:`604` pour plus de détails" -#: whatsnew/3.10.rst:743 +#: whatsnew/3.10.rst:744 msgid "" "(Contributed by Maggie Moss and Philippe Prados in :issue:`41428`, with " "additions by Yurii Karabas and Serhiy Storchaka in :issue:`44490`.)" @@ -953,11 +953,11 @@ msgstr "" "(contribution de *Maggie Moss* et *Philippe Prados* dans :issue:`41428`, " "avec ajouts par *Yurii Karabas* et *Serhiy Storchaka* dans :issue:`44490`)." -#: whatsnew/3.10.rst:748 +#: whatsnew/3.10.rst:749 msgid "PEP 612: Parameter Specification Variables" msgstr "PEP 612 : variables de spécification de paramètres" -#: whatsnew/3.10.rst:750 +#: whatsnew/3.10.rst:751 msgid "" "Two new options to improve the information provided to static type checkers " "for :pep:`484`\\ 's ``Callable`` have been added to the :mod:`typing` module." @@ -966,7 +966,7 @@ msgstr "" "améliorer l'information donnée aux vérificateurs de types statiques pour les " "``Callable`` définis dans la :pep:`484`." -#: whatsnew/3.10.rst:753 +#: whatsnew/3.10.rst:754 msgid "" "The first is the parameter specification variable. They are used to forward " "the parameter types of one callable to another callable -- a pattern " @@ -981,7 +981,7 @@ msgstr "" "ParamSpec`. Préalablement, il n'y avait pas de façon facile pour annoter les " "dépendances de types des paramètres de manière aussi précise." -#: whatsnew/3.10.rst:759 +#: whatsnew/3.10.rst:760 msgid "" "The second option is the new ``Concatenate`` operator. It's used in " "conjunction with parameter specification variables to type annotate a higher " @@ -994,7 +994,7 @@ msgstr "" "paramètres à un autre appelable. Des exemples d'utilisation se trouvent " "dans :class:`typing.Concatenate`." -#: whatsnew/3.10.rst:764 +#: whatsnew/3.10.rst:765 msgid "" "See :class:`typing.Callable`, :class:`typing.ParamSpec`, :class:`typing." "Concatenate`, :class:`typing.ParamSpecArgs`, :class:`typing." @@ -1004,7 +1004,7 @@ msgstr "" "Concatenate`, :class:`typing.ParamSpecArgs`, :class:`typing.ParamSpecKwargs` " "et la :pep:`612` pour plus de détails" -#: whatsnew/3.10.rst:768 +#: whatsnew/3.10.rst:769 msgid "" "(Contributed by Ken Jin in :issue:`41559`, with minor enhancements by Jelle " "Zijlstra in :issue:`43783`. PEP written by Mark Mendoza.)" @@ -1012,11 +1012,11 @@ msgstr "" "(contribution de *Ken Jin* dans :issue:`41559`, avec améliorations mineures " "par *Jelle Zijlstra* dans :issue:`43783` ; PEP écrite par *Mark Mendoza*)." -#: whatsnew/3.10.rst:773 +#: whatsnew/3.10.rst:774 msgid "PEP 613: TypeAlias" msgstr "PEP 613 : ``TypeAlias``" -#: whatsnew/3.10.rst:775 +#: whatsnew/3.10.rst:776 msgid "" ":pep:`484` introduced the concept of type aliases, only requiring them to be " "top-level unannotated assignments. This simplicity sometimes made it " @@ -1031,7 +1031,7 @@ msgstr "" "particulier quand des références postérieures ou des types invalides étaient " "impliqués. Comparez ::" -#: whatsnew/3.10.rst:783 +#: whatsnew/3.10.rst:784 msgid "" "Now the :mod:`typing` module has a special value :data:`TypeAlias` which " "lets you declare type aliases more explicitly::" @@ -1040,19 +1040,19 @@ msgstr "" "`TypeAlias` qui permet de déclarer des alias de types de façon plus " "explicite ::" -#: whatsnew/3.10.rst:789 +#: whatsnew/3.10.rst:790 msgid "See :pep:`613` for more details." msgstr "Voir la :pep:`613` pour plus de détails." -#: whatsnew/3.10.rst:791 +#: whatsnew/3.10.rst:792 msgid "(Contributed by Mikhail Golubev in :issue:`41923`.)" msgstr "(contribution de *Mikhail Golubev* dans :issue:`41923`)." -#: whatsnew/3.10.rst:794 +#: whatsnew/3.10.rst:795 msgid "PEP 647: User-Defined Type Guards" msgstr "PEP 647 : gardes de type définies par l'utilisateur" -#: whatsnew/3.10.rst:796 +#: whatsnew/3.10.rst:797 msgid "" ":data:`TypeGuard` has been added to the :mod:`typing` module to annotate " "type guard functions and improve information provided to static type " @@ -1065,7 +1065,7 @@ msgstr "" "d'information, consultez la documentation de :data:`TypeGuard` et la :pep:" "`647`." -#: whatsnew/3.10.rst:801 +#: whatsnew/3.10.rst:802 msgid "" "(Contributed by Ken Jin and Guido van Rossum in :issue:`43766`. PEP written " "by Eric Traut.)" @@ -1073,11 +1073,11 @@ msgstr "" "(contribution de *Ken Jin* et *Guido van Rossum* dans :issue:`43766`. PEP " "écrit par *Eric Traut*)." -#: whatsnew/3.10.rst:805 +#: whatsnew/3.10.rst:806 msgid "Other Language Changes" msgstr "Autres changements au langage" -#: whatsnew/3.10.rst:807 +#: whatsnew/3.10.rst:808 msgid "" "The :class:`int` type has a new method :meth:`int.bit_count`, returning the " "number of ones in the binary expansion of a given integer, also known as the " @@ -1088,7 +1088,7 @@ msgstr "" "donné, aussi connue sous le nom de chiffre de population (*population " "count*) (contribution de *Niklas Fiekas* dans :issue:`29882`)." -#: whatsnew/3.10.rst:811 +#: whatsnew/3.10.rst:812 msgid "" "The views returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:`dict." "items` now all have a ``mapping`` attribute that gives a :class:`types." @@ -1100,7 +1100,7 @@ msgstr "" "class:`types.MappingProxyType` encapsulant le dictionnaire original " "(contribution de *Dennis Sweeney* dans :issue:`40890`)." -#: whatsnew/3.10.rst:816 +#: whatsnew/3.10.rst:817 msgid "" ":pep:`618`: The :func:`zip` function now has an optional ``strict`` flag, " "used to require that all the iterables have an equal length." @@ -1109,7 +1109,7 @@ msgstr "" "``strict``, utilisé pour demander que tous les itérables soient de même " "longueur." -#: whatsnew/3.10.rst:819 +#: whatsnew/3.10.rst:820 msgid "" "Builtin and extension functions that take integer arguments no longer " "accept :class:`~decimal.Decimal`\\ s, :class:`~fractions.Fraction`\\ s and " @@ -1124,7 +1124,7 @@ msgstr "" "`~object.__int__` mais pas une méthode :meth:`~object.__index__`) " "(contribution de *Serhiy Storchaka* dans :issue:`37999`)." -#: whatsnew/3.10.rst:826 +#: whatsnew/3.10.rst:827 msgid "" "If :func:`object.__ipow__` returns :const:`NotImplemented`, the operator " "will correctly fall back to :func:`object.__pow__` and :func:`object." @@ -1134,7 +1134,7 @@ msgstr "" "correctement se rabattre sur :func:`object.__pow__` et :func:`object." "__rpow__` tel qu'attendu (contribution d'*Alex Shkop* dans :issue:`38302`)." -#: whatsnew/3.10.rst:830 +#: whatsnew/3.10.rst:831 msgid "" "Assignment expressions can now be used unparenthesized within set literals " "and set comprehensions, as well as in sequence indexes (but not slices)." @@ -1143,7 +1143,7 @@ msgstr "" "littéraux d'ensembles, dans les compréhensions d'ensembles et dans les " "indices de séquences (mais pas dans les tranches)." -#: whatsnew/3.10.rst:833 +#: whatsnew/3.10.rst:834 msgid "" "Functions have a new ``__builtins__`` attribute which is used to look for " "builtin symbols when a function is executed, instead of looking into " @@ -1158,7 +1158,7 @@ msgstr "" "natifs en cours autrement (contribution de *Mark Shannon* dans :issue:" "`42990`)." -#: whatsnew/3.10.rst:839 +#: whatsnew/3.10.rst:840 msgid "" "Two new builtin functions -- :func:`aiter` and :func:`anext` have been added " "to provide asynchronous counterparts to :func:`iter` and :func:`next`, " @@ -1170,7 +1170,7 @@ msgstr "" "func:`next`, respectivement (contribution de *Joshua Bronson*, *Daniel Pope* " "et *Justin Wang* dans :issue:`31861`)." -#: whatsnew/3.10.rst:844 +#: whatsnew/3.10.rst:845 msgid "" "Static methods (:func:`@staticmethod `) and class methods (:" "func:`@classmethod `) now inherit the method attributes " @@ -1186,7 +1186,7 @@ msgstr "" "De plus, les méthodes statiques sont maintenant appelables en tant que " "fonctions classiques (contribution de *Victor Stinner* dans :issue:`43682`)." -#: whatsnew/3.10.rst:851 +#: whatsnew/3.10.rst:852 msgid "" "Annotations for complex targets (everything beside ``simple name`` targets " "defined by :pep:`526`) no longer cause any runtime effects with ``from " @@ -1198,7 +1198,7 @@ msgstr "" "l'exécution avec ``from __future__ import annotations`` (contribution de " "*Batuhan Taskaya* dans :issue:`42737`)." -#: whatsnew/3.10.rst:855 +#: whatsnew/3.10.rst:856 msgid "" "Class and module objects now lazy-create empty annotations dicts on demand. " "The annotations dicts are stored in the object’s ``__dict__`` for backwards " @@ -1213,7 +1213,7 @@ msgstr "" "``__annotations__`` ; pour plus d'information, voir :ref:`annotations-howto` " "(contribution de *Larry Hastings* dans :issue:`43901`)." -#: whatsnew/3.10.rst:862 +#: whatsnew/3.10.rst:863 msgid "" "Annotations consist of ``yield``, ``yield from``, ``await`` or named " "expressions are now forbidden under ``from __future__ import annotations`` " @@ -1225,7 +1225,7 @@ msgstr "" "annotations`` à cause de leurs effets secondaires (contribution de *Batuhan " "Taskaya* dans :issue:`42725`)." -#: whatsnew/3.10.rst:867 +#: whatsnew/3.10.rst:868 msgid "" "Usage of unbound variables, ``super()`` and other expressions that might " "alter the processing of symbol table as annotations are now rendered " @@ -1237,7 +1237,7 @@ msgstr "" "qu'annotation n'ont plus d'effet sous ``from __future__ import annotations`` " "(contribution de *Batuhan Taskaya* dans :issue:`42725`)." -#: whatsnew/3.10.rst:872 +#: whatsnew/3.10.rst:873 msgid "" "Hashes of NaN values of both :class:`float` type and :class:`decimal." "Decimal` type now depend on object identity. Formerly, they always hashed to " @@ -1254,7 +1254,7 @@ msgstr "" "hachage lors de la création de dictionnaires et d'ensembles qui contiennent " "plusieurs *NaN* (contribution de *Raymond Hettinger* dans :issue:`43475`)." -#: whatsnew/3.10.rst:879 +#: whatsnew/3.10.rst:880 msgid "" "A :exc:`SyntaxError` (instead of a :exc:`NameError`) will be raised when " "deleting the :const:`__debug__` constant. (Contributed by Dong-hee Na in :" @@ -1264,7 +1264,7 @@ msgstr "" "constante :const:`__debug__` est supprimée (contribution de *Dong-hee Na* " "dans :issue:`45000`)." -#: whatsnew/3.10.rst:882 +#: whatsnew/3.10.rst:883 msgid "" ":exc:`SyntaxError` exceptions now have ``end_lineno`` and ``end_offset`` " "attributes. They will be ``None`` if not determined. (Contributed by Pablo " @@ -1275,23 +1275,23 @@ msgstr "" "peuvent pas être déterminés (contribution de *Pablo Galindo* dans :issue:" "`43914`)." -#: whatsnew/3.10.rst:887 +#: whatsnew/3.10.rst:888 msgid "New Modules" msgstr "Nouveaux modules" -#: whatsnew/3.10.rst:889 +#: whatsnew/3.10.rst:890 msgid "None yet." msgstr "Aucun pour le moment." -#: whatsnew/3.10.rst:893 +#: whatsnew/3.10.rst:894 msgid "Improved Modules" msgstr "Modules améliorés" -#: whatsnew/3.10.rst:896 +#: whatsnew/3.10.rst:897 msgid "asyncio" msgstr "``asyncio``" -#: whatsnew/3.10.rst:898 +#: whatsnew/3.10.rst:899 msgid "" "Add missing :meth:`~asyncio.events.AbstractEventLoop." "connect_accepted_socket` method. (Contributed by Alex Grönholm in :issue:" @@ -1301,11 +1301,11 @@ msgstr "" "connect_accepted_socket` manquante (contribution d'*Alex Grönholm* dans :" "issue:`41332`)." -#: whatsnew/3.10.rst:903 +#: whatsnew/3.10.rst:904 msgid "argparse" msgstr "``argparse``" -#: whatsnew/3.10.rst:905 +#: whatsnew/3.10.rst:906 msgid "" "Misleading phrase \"optional arguments\" was replaced with \"options\" in " "argparse help. Some tests might require adaptation if they rely on exact " @@ -1317,11 +1317,11 @@ msgstr "" "dans la sortie d'aide (contribution de *Raymond Hettinger* dans :issue:" "`9694`)." -#: whatsnew/3.10.rst:909 +#: whatsnew/3.10.rst:910 msgid "array" msgstr "``array``" -#: whatsnew/3.10.rst:911 +#: whatsnew/3.10.rst:912 msgid "" "The :meth:`~array.array.index` method of :class:`array.array` now has " "optional *start* and *stop* parameters. (Contributed by Anders Lorentsen and " @@ -1331,11 +1331,11 @@ msgstr "" "maintenant les paramètres optionnels *start* et *stop* (contribution " "d'*Anders Lorentsen* et de *Zackery Spytz* dans :issue:`31956`)." -#: whatsnew/3.10.rst:916 +#: whatsnew/3.10.rst:917 msgid "asynchat, asyncore, smtpd" msgstr "``asynchat``, ``asyncore``, ``smtpd``" -#: whatsnew/3.10.rst:917 +#: whatsnew/3.10.rst:918 msgid "" "These modules have been marked as deprecated in their module documentation " "since Python 3.6. An import-time :class:`DeprecationWarning` has now been " @@ -1345,11 +1345,11 @@ msgstr "" "depuis Python 3.6. Un :class:`DeprecationWarning` au moment de l'importation " "est maintenant ajouté pour ces trois modules." -#: whatsnew/3.10.rst:922 +#: whatsnew/3.10.rst:923 msgid "base64" msgstr "``base64``" -#: whatsnew/3.10.rst:924 +#: whatsnew/3.10.rst:925 msgid "" "Add :func:`base64.b32hexencode` and :func:`base64.b32hexdecode` to support " "the Base32 Encoding with Extended Hex Alphabet." @@ -1357,11 +1357,11 @@ msgstr "" "Ajout de :func:`base64.b32hexencode` et de :func:`base64.b32hexdecode` pour " "prendre en charge l'encodage Base32 avec l'alphabet hexadécimal étendu." -#: whatsnew/3.10.rst:928 +#: whatsnew/3.10.rst:929 msgid "bdb" msgstr "``bdb``" -#: whatsnew/3.10.rst:930 +#: whatsnew/3.10.rst:931 msgid "" "Add :meth:`~bdb.Breakpoint.clearBreakpoints` to reset all set breakpoints. " "(Contributed by Irit Katriel in :issue:`24160`.)" @@ -1369,11 +1369,11 @@ msgstr "" "Ajout de :meth:`~bdb.Breakpoint.clearBreakpoints` pour supprimer tous les " "points d'arrêt (contribution d'*Irit Katriel* dans :issue:`24160`)." -#: whatsnew/3.10.rst:934 +#: whatsnew/3.10.rst:935 msgid "bisect" msgstr "``bisect``" -#: whatsnew/3.10.rst:936 +#: whatsnew/3.10.rst:937 msgid "" "Added the possibility of providing a *key* function to the APIs in the :mod:" "`bisect` module. (Contributed by Raymond Hettinger in :issue:`4356`.)" @@ -1382,11 +1382,11 @@ msgstr "" "module :mod:`bisect` (contribution de *Raymond Hettinger* dans :issue:" "`4356`)." -#: whatsnew/3.10.rst:940 +#: whatsnew/3.10.rst:941 msgid "codecs" msgstr "``codecs``" -#: whatsnew/3.10.rst:942 +#: whatsnew/3.10.rst:943 msgid "" "Add a :func:`codecs.unregister` function to unregister a codec search " "function. (Contributed by Hai Shi in :issue:`41842`.)" @@ -1394,11 +1394,11 @@ msgstr "" "Ajout d'une fonction :func:`codecs.unregister` pour désinscrire une fonction " "de recherche de codecs (contribution de *Hai Shi* dans :issue:`41842`)." -#: whatsnew/3.10.rst:946 +#: whatsnew/3.10.rst:947 msgid "collections.abc" msgstr "``collections.abc``" -#: whatsnew/3.10.rst:948 +#: whatsnew/3.10.rst:949 msgid "" "The ``__args__`` of the :ref:`parameterized generic ` " "for :class:`collections.abc.Callable` are now consistent with :data:`typing." @@ -1427,11 +1427,11 @@ msgstr "" "aurait pu passer silencieusement dans Python 3.9 (contribution de *Ken Jin* " "dans :issue:`42195`)." -#: whatsnew/3.10.rst:961 +#: whatsnew/3.10.rst:962 msgid "contextlib" msgstr "``contextlib``" -#: whatsnew/3.10.rst:963 +#: whatsnew/3.10.rst:964 msgid "" "Add a :func:`contextlib.aclosing` context manager to safely close async " "generators and objects representing asynchronously released resources. " @@ -1442,7 +1442,7 @@ msgstr "" "ressources libérées de façon asynchrone (contribution de *Joongi Kim* et " "*John Belmonte* dans :issue:`41229`)." -#: whatsnew/3.10.rst:967 +#: whatsnew/3.10.rst:968 msgid "" "Add asynchronous context manager support to :func:`contextlib.nullcontext`. " "(Contributed by Tom Gringauz in :issue:`41543`.)" @@ -1450,7 +1450,7 @@ msgstr "" "Ajout d'un gestionnaire de contexte pour prendre en charge :func:`contextlib." "nullcontext` (contribution de *Tom Gringauz* dans :issue:`41543`)." -#: whatsnew/3.10.rst:970 +#: whatsnew/3.10.rst:971 msgid "" "Add :class:`AsyncContextDecorator`, for supporting usage of async context " "managers as decorators." @@ -1458,11 +1458,11 @@ msgstr "" "Ajout de :class:`AsyncContextDecorator` pour prendre en charge les " "gestionnaires de contexte asynchrones en tant que décorateurs." -#: whatsnew/3.10.rst:974 +#: whatsnew/3.10.rst:975 msgid "curses" msgstr "``curses``" -#: whatsnew/3.10.rst:976 +#: whatsnew/3.10.rst:977 msgid "" "The extended color functions added in ncurses 6.1 will be used transparently " "by :func:`curses.color_content`, :func:`curses.init_color`, :func:`curses." @@ -1480,7 +1480,7 @@ msgstr "" "(contribution de *Jeffrey Kintscher* et de *Hans Petter Jansson* dans :issue:" "`36982`)." -#: whatsnew/3.10.rst:983 +#: whatsnew/3.10.rst:984 msgid "" "The ``BUTTON5_*`` constants are now exposed in the :mod:`curses` module if " "they are provided by the underlying curses library. (Contributed by Zackery " @@ -1490,15 +1490,15 @@ msgstr "" "`curses` si elles sont fournies par la bibliothèque *curses* sous-jacente " "(contribution de *Zackery Spytz* dans :issue:`39273`)." -#: whatsnew/3.10.rst:988 +#: whatsnew/3.10.rst:989 msgid "dataclasses" msgstr "``dataclasses``" -#: whatsnew/3.10.rst:991 +#: whatsnew/3.10.rst:992 msgid "__slots__" msgstr "``__slots__``" -#: whatsnew/3.10.rst:993 +#: whatsnew/3.10.rst:994 msgid "" "Added ``slots`` parameter in :func:`dataclasses.dataclass` decorator. " "(Contributed by Yurii Karabas in :issue:`42269`)" @@ -1506,11 +1506,11 @@ msgstr "" "Ajout du paramètre ``slots`` dans le décorateur :func:`dataclasses." "dataclass` (contribution de *Yurii Karabas* dans :issue:`42269`)." -#: whatsnew/3.10.rst:997 +#: whatsnew/3.10.rst:998 msgid "Keyword-only fields" msgstr "Champs obligatoirement nommés" -#: whatsnew/3.10.rst:999 +#: whatsnew/3.10.rst:1000 msgid "" "dataclasses now supports fields that are keyword-only in the generated " "__init__ method. There are a number of ways of specifying keyword-only " @@ -1520,11 +1520,11 @@ msgstr "" "champs obligatoirement nommés dans la méthode ``__init__`` générée. Il y a " "plusieurs façons de spécifier les champs obligatoirement nommés." -#: whatsnew/3.10.rst:1003 +#: whatsnew/3.10.rst:1004 msgid "You can say that every field is keyword-only:" msgstr "Vous pouvez indiquer que tous les champs sont obligatoirement nommés :" -#: whatsnew/3.10.rst:1014 +#: whatsnew/3.10.rst:1015 msgid "" "Both ``name`` and ``birthday`` are keyword-only parameters to the generated " "__init__ method." @@ -1532,12 +1532,12 @@ msgstr "" "Les paramètres ``name`` et ``birthday`` sont tous deux obligatoirement " "nommés dans la méthode ``__init__`` générée." -#: whatsnew/3.10.rst:1017 +#: whatsnew/3.10.rst:1018 msgid "You can specify keyword-only on a per-field basis:" msgstr "" "Pour chaque champ, vous pouvez indiquer s'il est obligatoirement nommé :" -#: whatsnew/3.10.rst:1028 +#: whatsnew/3.10.rst:1029 msgid "" "Here only ``birthday`` is keyword-only. If you set ``kw_only`` on " "individual fields, be aware that there are rules about re-ordering fields " @@ -1550,7 +1550,7 @@ msgstr "" "les champs optionnellement nommés. Voir la documentation de ``dataclass`` " "pour plus de détails." -#: whatsnew/3.10.rst:1033 +#: whatsnew/3.10.rst:1034 msgid "" "You can also specify that all fields following a KW_ONLY marker are keyword-" "only. This will probably be the most common usage:" @@ -1559,7 +1559,7 @@ msgstr "" "``KW_ONLY`` sont obligatoirement nommés. Ceci sera probablement " "l'utilisation la plus commune :" -#: whatsnew/3.10.rst:1048 +#: whatsnew/3.10.rst:1049 msgid "" "Here, ``z`` and ``t`` are keyword-only parameters, while ``x`` and ``y`` are " "not. (Contributed by Eric V. Smith in :issue:`43532`)" @@ -1567,11 +1567,11 @@ msgstr "" "Ici, ``z`` et ``t`` sont obligatoirement nommés, alors que ``x`` et ``y`` ne " "le sont pas (contribution d'*Eric V. Smith* dans :issue:`43532`)." -#: whatsnew/3.10.rst:1055 +#: whatsnew/3.10.rst:1056 msgid "distutils" msgstr "``distutils``" -#: whatsnew/3.10.rst:1057 +#: whatsnew/3.10.rst:1058 msgid "" "The entire ``distutils`` package is deprecated, to be removed in Python " "3.12. Its functionality for specifying package builds has already been " @@ -1593,7 +1593,7 @@ msgstr "" "utilisent d'autres fonctions du module doivent faire des copies privées du " "code. Voir la discussion dans la :pep:`632`." -#: whatsnew/3.10.rst:1067 +#: whatsnew/3.10.rst:1068 msgid "" "The ``bdist_wininst`` command deprecated in Python 3.8 has been removed. The " "``bdist_wheel`` command is now recommended to distribute binary packages on " @@ -1604,11 +1604,11 @@ msgstr "" "distribuer des paquets binaires sous Windows (contribution de *Victor " "Stinner* dans :issue:`42802`)." -#: whatsnew/3.10.rst:1073 +#: whatsnew/3.10.rst:1074 msgid "doctest" msgstr "``doctest``" -#: whatsnew/3.10.rst:1186 whatsnew/3.10.rst:1306 +#: whatsnew/3.10.rst:1187 whatsnew/3.10.rst:1307 msgid "" "When a module does not define ``__loader__``, fall back to ``__spec__." "loader``. (Contributed by Brett Cannon in :issue:`42133`.)" @@ -1616,11 +1616,11 @@ msgstr "" "Quand un module ne définit pas ``__loader__``, ``__spec__.loader`` est " "utilisé (contribution de *Brett Cannon* dans :issue:`42133`)." -#: whatsnew/3.10.rst:1079 +#: whatsnew/3.10.rst:1080 msgid "encodings" msgstr "``encodings``" -#: whatsnew/3.10.rst:1081 +#: whatsnew/3.10.rst:1082 msgid "" ":func:`encodings.normalize_encoding` now ignores non-ASCII characters. " "(Contributed by Hai Shi in :issue:`39337`.)" @@ -1628,11 +1628,11 @@ msgstr "" "La fonction :func:`encodings.normalize_encoding` ignore maintenant les " "caractères non ASCII (contribution de *Hai Shi* dans :issue:`39337`)." -#: whatsnew/3.10.rst:1085 +#: whatsnew/3.10.rst:1086 msgid "fileinput" msgstr "``fileinput``" -#: whatsnew/3.10.rst:1087 +#: whatsnew/3.10.rst:1088 msgid "" "Add *encoding* and *errors* parameters in :func:`fileinput.input` and :class:" "`fileinput.FileInput`. (Contributed by Inada Naoki in :issue:`43712`.)" @@ -1641,7 +1641,7 @@ msgstr "" "et dans :class:`fileinput.FileInput` (contribution d'*Inada Naoki* dans :" "issue:`43712`)." -#: whatsnew/3.10.rst:1091 +#: whatsnew/3.10.rst:1092 msgid "" ":func:`fileinput.hook_compressed` now returns :class:`TextIOWrapper` object " "when *mode* is \"r\" and file is compressed, like uncompressed files. " @@ -1652,11 +1652,11 @@ msgstr "" "compressé, comme pour les fichiers non compressés (contribution d'*Inada " "Naoki* dans :issue:`5758`)." -#: whatsnew/3.10.rst:1096 +#: whatsnew/3.10.rst:1097 msgid "faulthandler" msgstr "``faulthandler``" -#: whatsnew/3.10.rst:1098 +#: whatsnew/3.10.rst:1099 msgid "" "The :mod:`faulthandler` module now detects if a fatal error occurs during a " "garbage collector collection. (Contributed by Victor Stinner in :issue:" @@ -1666,11 +1666,11 @@ msgstr "" "produite pendant un passage du ramasse-miettes (contribution de *Victor " "Stinner* dans :issue:`44466`)." -#: whatsnew/3.10.rst:1103 +#: whatsnew/3.10.rst:1104 msgid "gc" msgstr "``gc``" -#: whatsnew/3.10.rst:1105 +#: whatsnew/3.10.rst:1106 msgid "" "Add audit hooks for :func:`gc.get_objects`, :func:`gc.get_referrers` and :" "func:`gc.get_referents`. (Contributed by Pablo Galindo in :issue:`43439`.)" @@ -1679,11 +1679,11 @@ msgstr "" "get_referrers` et :func:`gc.get_referents` (contribution de *Pablo Galindo* " "dans :issue:`43439`)." -#: whatsnew/3.10.rst:1109 +#: whatsnew/3.10.rst:1110 msgid "glob" msgstr "``glob``" -#: whatsnew/3.10.rst:1111 +#: whatsnew/3.10.rst:1112 msgid "" "Add the *root_dir* and *dir_fd* parameters in :func:`~glob.glob` and :func:" "`~glob.iglob` which allow to specify the root directory for searching. " @@ -1694,11 +1694,11 @@ msgstr "" "racine utilisé pour la recherche (contribution de *Serhiy Storchaka* dans :" "issue:`38144`)." -#: whatsnew/3.10.rst:1116 +#: whatsnew/3.10.rst:1117 msgid "hashlib" msgstr "``hashlib``" -#: whatsnew/3.10.rst:1118 +#: whatsnew/3.10.rst:1119 msgid "" "The hashlib module requires OpenSSL 1.1.1 or newer. (Contributed by " "Christian Heimes in :pep:`644` and :issue:`43669`.)" @@ -1707,7 +1707,7 @@ msgstr "" "1.1.1 (contribution de *Christian Heimes* dans :pep:`644` et dans :issue:" "`43669`)." -#: whatsnew/3.10.rst:1121 +#: whatsnew/3.10.rst:1122 msgid "" "The hashlib module has preliminary support for OpenSSL 3.0.0. (Contributed " "by Christian Heimes in :issue:`38820` and other issues.)" @@ -1716,7 +1716,7 @@ msgstr "" "3.0.0 (contribution de *Christian Heimes* dans :issue:`38820` et autres " "tickets)." -#: whatsnew/3.10.rst:1124 +#: whatsnew/3.10.rst:1125 msgid "" "The pure-Python fallback of :func:`~hashlib.pbkdf2_hmac` is deprecated. In " "the future PBKDF2-HMAC will only be available when Python has been built " @@ -1727,11 +1727,11 @@ msgstr "" "compilé avec la prise en charge d'*OpenSSL* (contribution de *Christian " "Heimes* dans :issue:`43880`)." -#: whatsnew/3.10.rst:1130 +#: whatsnew/3.10.rst:1131 msgid "hmac" msgstr "``hmac``" -#: whatsnew/3.10.rst:1132 +#: whatsnew/3.10.rst:1133 msgid "" "The hmac module now uses OpenSSL's HMAC implementation internally. " "(Contributed by Christian Heimes in :issue:`40645`.)" @@ -1739,11 +1739,11 @@ msgstr "" "L'implémentation interne du module ``hmac`` utilise maintenant *HMAC* " "d'*OpenSSL* (contribution de *Christian Heimes* dans :issue:`40645`)." -#: whatsnew/3.10.rst:1136 +#: whatsnew/3.10.rst:1137 msgid "IDLE and idlelib" msgstr "IDLE et ``idlelib``" -#: whatsnew/3.10.rst:1138 +#: whatsnew/3.10.rst:1139 msgid "" "Make IDLE invoke :func:`sys.excepthook` (when started without '-n'). User " "hooks were previously ignored. (Patch by Ken Hilton in :issue:`43008`.)" @@ -1752,13 +1752,13 @@ msgstr "" "n'``). Auparavant, les fonctions de rappel définies par l'utilisateur " "étaient ignorées (rustine par *Ken Hilton* dans :issue:`43008`)." -#: whatsnew/3.10.rst:1142 +#: whatsnew/3.10.rst:1143 msgid "This change was backported to a 3.9 maintenance release." msgstr "" "Ce changement a été rétro-porté dans le cadre de la maintenance de 3.9." # L'utilisation du terme "zip" peut laisser croire que le contenu de clipboard après la copie est structuré, mais ce n'est pas le cas. Le clipboard est populé avec du texte non-structuré. -#: whatsnew/3.10.rst:1144 +#: whatsnew/3.10.rst:1145 msgid "" "Add a Shell sidebar. Move the primary prompt ('>>>') to the sidebar. Add " "secondary prompts ('...') to the sidebar. Left click and optional drag " @@ -1778,7 +1778,7 @@ msgstr "" "le texte sélectionné. Cette option apparait aussi dans le menu contextuel " "pour le texte (contribution de *Tal Einat* dans :issue:`37903`)." -#: whatsnew/3.10.rst:1153 +#: whatsnew/3.10.rst:1154 msgid "" "Use spaces instead of tabs to indent interactive code. This makes " "interactive code entries 'look right'. Making this feasible was a major " @@ -1790,7 +1790,7 @@ msgstr "" "fonctionnalité est fortement corrélée à l'ajout de la barre de côté de la " "console (contribution de *Terry Jan Reedy* dans :issue:`37892`)." -#: whatsnew/3.10.rst:1158 +#: whatsnew/3.10.rst:1159 msgid "" "We expect to backport these shell changes to a future 3.9 maintenance " "release." @@ -1799,13 +1799,14 @@ msgstr "" "la maintenance de 3.9." # "Coloration" plutôt que "mise en évendence" ou "surlignage" pour rester cohérent avec library/idle.po -#: whatsnew/3.10.rst:1161 +#: whatsnew/3.10.rst:1162 +#, fuzzy msgid "" "Highlight the new :ref:`soft keywords ` :keyword:`match`, :" "keyword:`case `, and :keyword:`_ ` in pattern-" "matching statements. However, this highlighting is not perfect and will be " "incorrect in some rare cases, including some ``_``-s in ``case`` patterns. " -"(Contributed by Tal Einat in bpo-44010.)" +"(Contributed by Tal Einat in :issue:`44010`.)" msgstr "" "Coloration des nouveaux :ref:`mots clés ad-hoc ` :keyword:" "`match`, :keyword:`case ` et :keyword:`_ ` dans " @@ -1814,11 +1815,11 @@ msgstr "" "rares cas, y-compris certains ``_`` dans des instructions ``case`` " "(contribution de *Tal Einat* dans *bpo-44010*)." -#: whatsnew/3.10.rst:1168 +#: whatsnew/3.10.rst:1169 msgid "importlib.metadata" msgstr "``importlib.metadata``" -#: whatsnew/3.10.rst:1170 +#: whatsnew/3.10.rst:1171 msgid "" "Feature parity with ``importlib_metadata`` 4.6 (`history `_)." @@ -1826,7 +1827,7 @@ msgstr "" "Équivalence de fonctionnalités avec ``importlib_metadata`` 4.6 (`historique " "`_)." -#: whatsnew/3.10.rst:1173 +#: whatsnew/3.10.rst:1174 msgid "" ":ref:`importlib.metadata entry points ` now provide a nicer " "experience for selecting entry points by group and name through a new :class:" @@ -1841,7 +1842,7 @@ msgstr "" "metadata`` pour plus d'information sur son utilisation et ce qui devient " "obsolète." -#: whatsnew/3.10.rst:1179 +#: whatsnew/3.10.rst:1180 msgid "" "Added :func:`importlib.metadata.packages_distributions` for resolving top-" "level Python modules and packages to their :class:`importlib.metadata." @@ -1851,11 +1852,11 @@ msgstr "" "modules et paquets Python du niveau racine vers leur :class:`importlib." "metadata.Distribution`." -#: whatsnew/3.10.rst:1184 +#: whatsnew/3.10.rst:1185 msgid "inspect" msgstr "``inspect``" -#: whatsnew/3.10.rst:1189 +#: whatsnew/3.10.rst:1190 msgid "" "Add :func:`inspect.get_annotations`, which safely computes the annotations " "defined on an object. It works around the quirks of accessing the " @@ -1889,15 +1890,15 @@ msgstr "" "annotations contenues dans des chaînes de caractères en objets (contribution " "de *Larry Hastings* dans :issue:`43817`)." -#: whatsnew/3.10.rst:1205 +#: whatsnew/3.10.rst:1206 msgid "linecache" msgstr "``linecache``" -#: whatsnew/3.10.rst:1211 +#: whatsnew/3.10.rst:1212 msgid "os" msgstr "``os``" -#: whatsnew/3.10.rst:1213 +#: whatsnew/3.10.rst:1214 msgid "" "Add :func:`os.cpu_count()` support for VxWorks RTOS. (Contributed by Peixing " "Xin in :issue:`41440`.)" @@ -1905,7 +1906,7 @@ msgstr "" "Ajout de la prise en charge de *VxWorks RTOS* dans :func:`os.cpu_count()` " "(contribution de *Peixing Xin* dans :issue:`41440`)." -#: whatsnew/3.10.rst:1216 +#: whatsnew/3.10.rst:1217 msgid "" "Add a new function :func:`os.eventfd` and related helpers to wrap the " "``eventfd2`` syscall on Linux. (Contributed by Christian Heimes in :issue:" @@ -1915,7 +1916,7 @@ msgstr "" "utilitaires associées pour encapsuler l'appel système ``eventfd2`` sur Linux " "(contribution de *Christian Heimes* dans :issue:`41001`)." -#: whatsnew/3.10.rst:1220 +#: whatsnew/3.10.rst:1221 msgid "" "Add :func:`os.splice()` that allows to move data between two file " "descriptors without copying between kernel address space and user address " @@ -1927,7 +1928,7 @@ msgstr "" "Un des descripteurs de fichiers doit référencer un tube (*pipe*) " "(contribution de *Pablo Galindo* dans :issue:`41625`)." -#: whatsnew/3.10.rst:1225 +#: whatsnew/3.10.rst:1226 msgid "" "Add :data:`~os.O_EVTONLY`, :data:`~os.O_FSYNC`, :data:`~os.O_SYMLINK` and :" "data:`~os.O_NOFOLLOW_ANY` for macOS. (Contributed by Dong-hee Na in :issue:" @@ -1937,11 +1938,11 @@ msgstr "" "et :data:`~os.O_NOFOLLOW_ANY` sur macOS (contribution de *Dong-hee Na* dans :" "issue:`43106`)." -#: whatsnew/3.10.rst:1230 +#: whatsnew/3.10.rst:1231 msgid "os.path" msgstr "``os.path``" -#: whatsnew/3.10.rst:1232 +#: whatsnew/3.10.rst:1233 msgid "" ":func:`os.path.realpath` now accepts a *strict* keyword-only argument. When " "set to ``True``, :exc:`OSError` is raised if a path doesn't exist or a " @@ -1952,11 +1953,11 @@ msgstr "" "pas ou si une boucle de liens symboliques est rencontrée (contribution de " "*Barney Gale* dans :issue:`43757`)." -#: whatsnew/3.10.rst:1238 +#: whatsnew/3.10.rst:1239 msgid "pathlib" msgstr "``pathlib``" -#: whatsnew/3.10.rst:1240 +#: whatsnew/3.10.rst:1241 msgid "" "Add slice support to :attr:`PurePath.parents `. " "(Contributed by Joshua Cannon in :issue:`35498`)" @@ -1965,7 +1966,7 @@ msgstr "" "` (contribution de *Joshua Cannon* dans :issue:" "`35498`)." -#: whatsnew/3.10.rst:1243 +#: whatsnew/3.10.rst:1244 msgid "" "Add negative indexing support to :attr:`PurePath.parents `. (Contributed by Yaroslav Pankovych in :issue:`21041`)" @@ -1974,7 +1975,7 @@ msgstr "" "parents ` (contribution de *Yaroslav Pankovych* " "dans :issue:`21041`)." -#: whatsnew/3.10.rst:1247 +#: whatsnew/3.10.rst:1248 msgid "" "Add :meth:`Path.hardlink_to ` method that " "supersedes :meth:`~pathlib.Path.link_to`. The new method has the same " @@ -1986,7 +1987,7 @@ msgstr "" "méthode est le même que :meth:`~pathlib.Path.symlink_to` (contribution de " "*Barney Gale* dans :issue:`39950`)." -#: whatsnew/3.10.rst:1252 +#: whatsnew/3.10.rst:1253 msgid "" ":meth:`pathlib.Path.stat` and :meth:`~pathlib.Path.chmod` now accept a " "*follow_symlinks* keyword-only argument for consistency with corresponding " @@ -1998,11 +1999,11 @@ msgstr "" "fonctions correspondantes dans le module :mod:`os` (contribution de *Barney " "Gale* dans :issue:`39906`)." -#: whatsnew/3.10.rst:1258 +#: whatsnew/3.10.rst:1259 msgid "platform" msgstr "``platform``" -#: whatsnew/3.10.rst:1260 +#: whatsnew/3.10.rst:1261 msgid "" "Add :func:`platform.freedesktop_os_release()` to retrieve operation system " "identification from `freedesktop.org os-release `_ " "(contribution de *Christian Heimes* dans :issue:`28468`)." -#: whatsnew/3.10.rst:1266 +#: whatsnew/3.10.rst:1267 msgid "pprint" msgstr "``pprint``" -#: whatsnew/3.10.rst:1268 +#: whatsnew/3.10.rst:1269 msgid "" ":func:`pprint.pprint` now accepts a new ``underscore_numbers`` keyword " "argument. (Contributed by sblondon in :issue:`42914`.)" @@ -2027,7 +2028,7 @@ msgstr "" ":func:`pprint.pprint` accepte maintenant le nouvel argument nommé " "``underscore_numbers`` (contribution de *sblondon* dans :issue:`42914`)." -#: whatsnew/3.10.rst:1271 +#: whatsnew/3.10.rst:1272 msgid "" ":mod:`pprint` can now pretty-print :class:`dataclasses.dataclass` instances. " "(Contributed by Lewis Gaul in :issue:`43080`.)" @@ -2035,11 +2036,11 @@ msgstr "" ":mod:`pprint` peut maintenant afficher élégamment les instances de :class:" "`dataclasses.dataclass` (contribution de *Lewis Gaul* dans :issue:`43080`)." -#: whatsnew/3.10.rst:1275 +#: whatsnew/3.10.rst:1276 msgid "py_compile" msgstr "``py_compile``" -#: whatsnew/3.10.rst:1277 +#: whatsnew/3.10.rst:1278 msgid "" "Add ``--quiet`` option to command-line interface of :mod:`py_compile`. " "(Contributed by Gregory Schevchenko in :issue:`38731`.)" @@ -2047,11 +2048,11 @@ msgstr "" "Ajout de l'option de ligne de commande ``--quiet`` à l'interface de :mod:" "`py_compile` (contribution de *Gregory Schevchenko* dans :issue:`38731`)." -#: whatsnew/3.10.rst:1281 +#: whatsnew/3.10.rst:1282 msgid "pyclbr" msgstr "``pyclbr``" -#: whatsnew/3.10.rst:1283 +#: whatsnew/3.10.rst:1284 msgid "" "Add an ``end_lineno`` attribute to the ``Function`` and ``Class`` objects in " "the tree returned by :func:`pyclbr.readline` and :func:`pyclbr." @@ -2063,12 +2064,12 @@ msgstr "" "Il complète l'attribut ``lineno`` déjà existant (contribution d'*Aviral " "Srivastava* dans :issue:`38307`)." -#: whatsnew/3.10.rst:1289 +#: whatsnew/3.10.rst:1290 msgid "shelve" msgstr "``shelve``" # "objets shelf" plutôt que "objets shelves" pour être cohérent avec library/shelve.po -#: whatsnew/3.10.rst:1291 +#: whatsnew/3.10.rst:1292 msgid "" "The :mod:`shelve` module now uses :data:`pickle.DEFAULT_PROTOCOL` by default " "instead of :mod:`pickle` protocol ``3`` when creating shelves. (Contributed " @@ -2079,11 +2080,11 @@ msgstr "" "création des objets ``shelf`` (contribution de *Zackery Spytz* dans :issue:" "`34204`)." -#: whatsnew/3.10.rst:1296 +#: whatsnew/3.10.rst:1297 msgid "statistics" msgstr "``statistics``" -#: whatsnew/3.10.rst:1298 +#: whatsnew/3.10.rst:1299 msgid "" "Add :func:`~statistics.covariance`, Pearson's :func:`~statistics." "correlation`, and simple :func:`~statistics.linear_regression` functions. " @@ -2094,15 +2095,15 @@ msgstr "" "linear_regression` (régression linéaire simple) (contribution de *Tymoteusz " "Wołodźko* dans :issue:`38490`)." -#: whatsnew/3.10.rst:1304 +#: whatsnew/3.10.rst:1305 msgid "site" msgstr "``site``" -#: whatsnew/3.10.rst:1310 +#: whatsnew/3.10.rst:1311 msgid "socket" msgstr "``socket``" -#: whatsnew/3.10.rst:1312 +#: whatsnew/3.10.rst:1313 msgid "" "The exception :exc:`socket.timeout` is now an alias of :exc:`TimeoutError`. " "(Contributed by Christian Heimes in :issue:`42413`.)" @@ -2110,7 +2111,7 @@ msgstr "" "L'exception :exc:`socket.timeout` est maintenant un alias de :exc:" "`TimeoutError` (contribution de *Christian Heimes* dans :issue:`42413`)." -#: whatsnew/3.10.rst:1315 +#: whatsnew/3.10.rst:1316 msgid "" "Add option to create MPTCP sockets with ``IPPROTO_MPTCP`` (Contributed by " "Rui Cunha in :issue:`43571`.)" @@ -2118,7 +2119,7 @@ msgstr "" "Ajout d'une option pour créer des connecteurs (*socket*) *MPTCP* avec " "``IPPROTO_MPTCP`` (contribution de *Rui Cunha* dans :issue:`43571`)." -#: whatsnew/3.10.rst:1318 +#: whatsnew/3.10.rst:1319 msgid "" "Add ``IP_RECVTOS`` option to receive the type of service (ToS) or DSCP/ECN " "fields (Contributed by Georg Sauthoff in :issue:`44077`.)" @@ -2127,11 +2128,11 @@ msgstr "" "of service (ToS)* ou *differentiated services code point (DSCP/ECN)* " "(contribution de *Georg Sauthoff* dans :issue:`44077`)." -#: whatsnew/3.10.rst:1322 +#: whatsnew/3.10.rst:1323 msgid "ssl" msgstr "``ssl``" -#: whatsnew/3.10.rst:1324 +#: whatsnew/3.10.rst:1325 msgid "" "The ssl module requires OpenSSL 1.1.1 or newer. (Contributed by Christian " "Heimes in :pep:`644` and :issue:`43669`.)" @@ -2139,7 +2140,7 @@ msgstr "" "La version minimale d'*OpenSSL* pour le module ``ssl`` est maintenant 1.1.1 " "(contribution de *Christian Heimes* dans :pep:`644` et dans :issue:`43669`)." -#: whatsnew/3.10.rst:1327 +#: whatsnew/3.10.rst:1328 msgid "" "The ssl module has preliminary support for OpenSSL 3.0.0 and new option :" "data:`~ssl.OP_IGNORE_UNEXPECTED_EOF`. (Contributed by Christian Heimes in :" @@ -2152,7 +2153,7 @@ msgstr "" "issue:`43788`, :issue:`43791`, :issue:`43799`, :issue:`43920`, :issue:" "`43789` et :issue:`43811`)." -#: whatsnew/3.10.rst:1333 +#: whatsnew/3.10.rst:1334 msgid "" "Deprecated function and use of deprecated constants now result in a :exc:" "`DeprecationWarning`. :attr:`ssl.SSLContext.options` has :data:`~ssl." @@ -2169,7 +2170,7 @@ msgstr "" "liste des fonctionnalités obsolètes (contribution de *Christian Heimes* " "dans :issue:`43880`)." -#: whatsnew/3.10.rst:1341 +#: whatsnew/3.10.rst:1342 msgid "" "The ssl module now has more secure default settings. Ciphers without forward " "secrecy or SHA-1 MAC are disabled by default. Security level 2 prohibits " @@ -2187,7 +2188,7 @@ msgstr "" "est basée sur la recherche de *Hynek Schlawack* (contribution de *Christian " "Heimes* dans :issue:`43998`)." -#: whatsnew/3.10.rst:1348 +#: whatsnew/3.10.rst:1349 msgid "" "The deprecated protocols SSL 3.0, TLS 1.0, and TLS 1.1 are no longer " "officially supported. Python does not block them actively. However OpenSSL " @@ -2200,7 +2201,7 @@ msgstr "" "d'exploitation, les rustines des fabricants et les suites d'algorithmes de " "chiffrement peuvent empêcher l’établissement d'une connexion." -#: whatsnew/3.10.rst:1353 +#: whatsnew/3.10.rst:1354 msgid "" "Add a *timeout* parameter to the :func:`ssl.get_server_certificate` " "function. (Contributed by Zackery Spytz in :issue:`31870`.)" @@ -2209,7 +2210,7 @@ msgstr "" "get_server_certificate` (contribution de *Zackery Spytz* dans :issue:" "`31870`)." -#: whatsnew/3.10.rst:1356 +#: whatsnew/3.10.rst:1357 msgid "" "The ssl module uses heap-types and multi-phase initialization. (Contributed " "by Christian Heimes in :issue:`42333`.)" @@ -2217,7 +2218,7 @@ msgstr "" "Le module ``ssl`` utilise les types du tas et l'initialisation multi-phase " "(contribution de *Christian Heimes* dans :issue:`42333`)." -#: whatsnew/3.10.rst:1359 +#: whatsnew/3.10.rst:1360 msgid "" "A new verify flag :data:`~ssl.VERIFY_X509_PARTIAL_CHAIN` has been added. " "(Contributed by l0x in :issue:`40849`.)" @@ -2225,11 +2226,11 @@ msgstr "" "Ajout d'un nouveau drapeau de vérification :data:`~ssl." "VERIFY_X509_PARTIAL_CHAIN` (contribution de *l0x* dans :issue:`40849`)." -#: whatsnew/3.10.rst:1363 +#: whatsnew/3.10.rst:1364 msgid "sqlite3" msgstr "``sqlite3``" -#: whatsnew/3.10.rst:1365 +#: whatsnew/3.10.rst:1366 msgid "" "Add audit events for :func:`~sqlite3.connect/handle`, :meth:`~sqlite3." "Connection.enable_load_extension`, and :meth:`~sqlite3.Connection." @@ -2239,11 +2240,11 @@ msgstr "" "`~sqlite3.Connection.enable_load_extension` et :meth:`~sqlite3.Connection." "load_extension` (contribution d'*Erlend E. Aasland* dans :issue:`43762`)." -#: whatsnew/3.10.rst:1371 +#: whatsnew/3.10.rst:1372 msgid "sys" msgstr "``sys``" -#: whatsnew/3.10.rst:1373 +#: whatsnew/3.10.rst:1374 msgid "" "Add :data:`sys.orig_argv` attribute: the list of the original command line " "arguments passed to the Python executable. (Contributed by Victor Stinner " @@ -2253,7 +2254,7 @@ msgstr "" "de commande originalement passée à l'exécutable Python (contribution de " "*Victor Stinner* dans :issue:`23427`)." -#: whatsnew/3.10.rst:1377 +#: whatsnew/3.10.rst:1378 msgid "" "Add :data:`sys.stdlib_module_names`, containing the list of the standard " "library module names. (Contributed by Victor Stinner in :issue:`42955`.)" @@ -2262,11 +2263,11 @@ msgstr "" "modules de la bibliothèque standard (contribution de *Victor Stinner* dans :" "issue:`42955`)." -#: whatsnew/3.10.rst:1382 +#: whatsnew/3.10.rst:1383 msgid "_thread" msgstr "``_thread``" -#: whatsnew/3.10.rst:1384 +#: whatsnew/3.10.rst:1385 msgid "" ":func:`_thread.interrupt_main` now takes an optional signal number to " "simulate (the default is still :data:`signal.SIGINT`). (Contributed by " @@ -2277,11 +2278,11 @@ msgstr "" "toujours :data:`signal.SIGINT`) (contribution d'*Antoine Pitrou* dans :issue:" "`43356`)." -#: whatsnew/3.10.rst:1389 +#: whatsnew/3.10.rst:1390 msgid "threading" msgstr "``threading``" -#: whatsnew/3.10.rst:1391 +#: whatsnew/3.10.rst:1392 msgid "" "Add :func:`threading.gettrace` and :func:`threading.getprofile` to retrieve " "the functions set by :func:`threading.settrace` and :func:`threading." @@ -2292,7 +2293,7 @@ msgstr "" "settrace` et :func:`threading.setprofile` respectivement (contribution de " "*Mario Corchero* dans :issue:`42251`)." -#: whatsnew/3.10.rst:1396 +#: whatsnew/3.10.rst:1397 msgid "" "Add :data:`threading.__excepthook__` to allow retrieving the original value " "of :func:`threading.excepthook` in case it is set to a broken or a different " @@ -2303,11 +2304,11 @@ msgstr "" "incorrecte ou différente (contribution de *Mario Corchero* dans :issue:" "`42308`)." -#: whatsnew/3.10.rst:1402 +#: whatsnew/3.10.rst:1403 msgid "traceback" msgstr "``traceback``" -#: whatsnew/3.10.rst:1404 +#: whatsnew/3.10.rst:1405 msgid "" "The :func:`~traceback.format_exception`, :func:`~traceback." "format_exception_only`, and :func:`~traceback.print_exception` functions can " @@ -2319,11 +2320,11 @@ msgstr "" "maintenant prendre un objet exception en argument positionnel (contribution " "de *Zackery Spytz* et *Matthias Bussonnier* dans :issue:`26389`)." -#: whatsnew/3.10.rst:1411 +#: whatsnew/3.10.rst:1412 msgid "types" msgstr "``types``" -#: whatsnew/3.10.rst:1413 +#: whatsnew/3.10.rst:1414 msgid "" "Reintroduce the :data:`types.EllipsisType`, :data:`types.NoneType` and :data:" "`types.NotImplementedType` classes, providing a new set of types readily " @@ -2335,17 +2336,18 @@ msgstr "" "nouvel ensemble de types facilement interprétable par les vérificateurs de " "types (contribution de *Bas van Beek* dans :issue:`41810`)." -#: whatsnew/3.10.rst:1419 +#: whatsnew/3.10.rst:1420 msgid "typing" msgstr "``typing``" -#: whatsnew/3.10.rst:1421 -msgid "For major changes, see `New Features Related to Type Hints`_." +#: whatsnew/3.10.rst:1422 +#, fuzzy +msgid "For major changes, see :ref:`new-feat-related-type-hints`." msgstr "" "Pour les changements majeurs, voir `Nouvelles fonctionnalités reliées aux " "indications de types`_." -#: whatsnew/3.10.rst:1423 +#: whatsnew/3.10.rst:1424 msgid "" "The behavior of :class:`typing.Literal` was changed to conform with :pep:" "`586` and to match the behavior of static type checkers specified in the PEP." @@ -2354,20 +2356,21 @@ msgstr "" "avec la :pep:`586` et pour correspondre au comportement des vérificateurs de " "types statiques défini dans la PEP." -#: whatsnew/3.10.rst:1426 +#: whatsnew/3.10.rst:1427 msgid "``Literal`` now de-duplicates parameters." msgstr "``Literal`` dé-duplique maintenant les paramètres." -#: whatsnew/3.10.rst:1427 +#: whatsnew/3.10.rst:1428 msgid "" "Equality comparisons between ``Literal`` objects are now order independent." msgstr "" "La comparaison d'égalité entre objets ``Literal`` ne tient plus compte de " "l'ordre." -#: whatsnew/3.10.rst:1428 +#: whatsnew/3.10.rst:1429 +#, fuzzy msgid "" -"``Literal`` comparisons now respects types. For example, ``Literal[0] == " +"``Literal`` comparisons now respect types. For example, ``Literal[0] == " "Literal[False]`` previously evaluated to ``True``. It is now ``False``. To " "support this change, the internally used type cache now supports " "differentiating types." @@ -2378,7 +2381,7 @@ msgstr "" "changement, le cache des types de l'implémentation interne peut maintenant " "différencier entre les types." -#: whatsnew/3.10.rst:1432 +#: whatsnew/3.10.rst:1433 msgid "" "``Literal`` objects will now raise a :exc:`TypeError` exception during " "equality comparisons if any of their parameters are not :term:`hashable`. " @@ -2390,11 +2393,11 @@ msgstr "" "pas :term:`hachable`. Notez que déclarer un ``Literal`` avec des paramètres " "non hachables ne lève pas d'erreur ::" -#: whatsnew/3.10.rst:1444 +#: whatsnew/3.10.rst:1445 msgid "(Contributed by Yurii Karabas in :issue:`42345`.)" msgstr "(contribution de *Yurii Karabas* dans :issue:`42345`)." -#: whatsnew/3.10.rst:1446 +#: whatsnew/3.10.rst:1447 msgid "" "Add new function :func:`typing.is_typeddict` to introspect if an annotation " "is a :class:`typing.TypedDict`. (Contributed by Patrick Reader in :issue:" @@ -2404,7 +2407,7 @@ msgstr "" "une annotation est une :class:`typing.TypedDict` (contribution de *Patrick " "Reader* dans :issue:`41792`)." -#: whatsnew/3.10.rst:1450 +#: whatsnew/3.10.rst:1451 msgid "" "Subclasses of ``typing.Protocol`` which only have data variables declared " "will now raise a ``TypeError`` when checked with ``isinstance`` unless they " @@ -2421,7 +2424,7 @@ msgstr "" "décorateur :func:`runtime_checkable` s'ils désirent les protocoles à " "l'exécution (contribution de *Yurii Karabas* dans :issue:`38908`)." -#: whatsnew/3.10.rst:1458 +#: whatsnew/3.10.rst:1459 msgid "" "Importing from the ``typing.io`` and ``typing.re`` submodules will now emit :" "exc:`DeprecationWarning`. These submodules have been deprecated since " @@ -2436,11 +2439,11 @@ msgstr "" "directement du module :mod:`typing` (contribution de *Sebastian Rittau* " "dans :issue:`38291`)." -#: whatsnew/3.10.rst:1466 +#: whatsnew/3.10.rst:1467 msgid "unittest" msgstr "``unittest``" -#: whatsnew/3.10.rst:1468 +#: whatsnew/3.10.rst:1469 msgid "" "Add new method :meth:`~unittest.TestCase.assertNoLogs` to complement the " "existing :meth:`~unittest.TestCase.assertLogs`. (Contributed by Kit Yan Choi " @@ -2450,11 +2453,11 @@ msgstr "" "complémenter la méthode existante :meth:`~unittest.TestCase.assertLogs` " "(contribution de *Kit Yan Choi* dans :issue:`39385`)." -#: whatsnew/3.10.rst:1473 +#: whatsnew/3.10.rst:1474 msgid "urllib.parse" msgstr "``urllib.parse``" -#: whatsnew/3.10.rst:1475 +#: whatsnew/3.10.rst:1476 msgid "" "Python versions earlier than Python 3.10 allowed using both ``;`` and ``&`` " "as query parameter separators in :func:`urllib.parse.parse_qs` and :func:" @@ -2477,7 +2480,7 @@ msgstr "" "documentation respective de ces fonctions (contribution d'*Adam " "Goldschmidt*, de *Senthil Kumaran* et de *Ken Jin* dans :issue:`42967`)." -#: whatsnew/3.10.rst:1485 +#: whatsnew/3.10.rst:1486 msgid "" "The presence of newline or tab characters in parts of a URL allows for some " "forms of attacks. Following the WHATWG specification that updates :rfc:" @@ -2494,11 +2497,11 @@ msgstr "" "caractères à retirer est contrôlé par une nouvelle variable de module " "``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE`` (voir :issue:`43882`)." -#: whatsnew/3.10.rst:1493 +#: whatsnew/3.10.rst:1494 msgid "xml" msgstr "``xml``" -#: whatsnew/3.10.rst:1495 +#: whatsnew/3.10.rst:1496 msgid "" "Add a :class:`~xml.sax.handler.LexicalHandler` class to the :mod:`xml.sax." "handler` module. (Contributed by Jonathan Gossage and Zackery Spytz in :" @@ -2508,11 +2511,11 @@ msgstr "" "`xml.sax.handler` (contribution de *Jonathan Gossage* de *Zackery Spytz* " "dans :issue:`35018`)." -#: whatsnew/3.10.rst:1500 +#: whatsnew/3.10.rst:1501 msgid "zipimport" msgstr "``zipimport``" -#: whatsnew/3.10.rst:1501 +#: whatsnew/3.10.rst:1502 msgid "" "Add methods related to :pep:`451`: :meth:`~zipimport.zipimporter." "find_spec`, :meth:`zipimport.zipimporter.create_module`, and :meth:" @@ -2524,7 +2527,7 @@ msgstr "" "zipimporter.exec_module` (contribution de *Brett Cannon* dans :issue:" "`42131`)." -#: whatsnew/3.10.rst:1506 +#: whatsnew/3.10.rst:1507 msgid "" "Add :meth:`~zipimport.zipimporter.invalidate_caches` method. (Contributed by " "Desmond Cheong in :issue:`14678`.)" @@ -2532,11 +2535,11 @@ msgstr "" "Ajout de la méthode :meth:`~zipimport.zipimporter.invalidate_caches` " "(contribution de *Desmond Cheong* dans :issue:`14678`)." -#: whatsnew/3.10.rst:1511 +#: whatsnew/3.10.rst:1512 msgid "Optimizations" msgstr "Optimisations" -#: whatsnew/3.10.rst:1513 +#: whatsnew/3.10.rst:1514 msgid "" "Constructors :func:`str`, :func:`bytes` and :func:`bytearray` are now faster " "(around 30--40% for small objects). (Contributed by Serhiy Storchaka in :" @@ -2546,7 +2549,7 @@ msgstr "" "maintenant plus rapides (environ 30—40 % pour les petits objets) " "(contribution de *Serhiy Storchaka* dans :issue:`41334`)." -#: whatsnew/3.10.rst:1517 +#: whatsnew/3.10.rst:1518 msgid "" "The :mod:`runpy` module now imports fewer modules. The ``python3 -m module-" "name`` command startup time is 1.4x faster in average. On Linux, ``python3 -" @@ -2561,7 +2564,7 @@ msgstr "" "(contribution de *Victor Stinner* dans :issue:`41006` et dans :issue:" "`41718`)." -#: whatsnew/3.10.rst:1523 +#: whatsnew/3.10.rst:1524 msgid "" "The ``LOAD_ATTR`` instruction now uses new \"per opcode cache\" mechanism. " "It is about 36% faster now for regular attributes and 44% faster for slots. " @@ -2576,7 +2579,7 @@ msgstr "" "dans :issue:`42927`, basée sur des idées originalement mises en œuvre dans " "*PyPy* et dans *MicroPython*)." -#: whatsnew/3.10.rst:1529 +#: whatsnew/3.10.rst:1530 msgid "" "When building Python with :option:`--enable-optimizations` now ``-fno-" "semantic-interposition`` is added to both the compile and link line. This " @@ -2595,7 +2598,7 @@ msgstr "" "speeds/>`_ (en anglais) pour plus de détails (contribution de *Victor " "Stinner* et *Pablo Galindo* dans :issue:`38980`)." -#: whatsnew/3.10.rst:1537 +#: whatsnew/3.10.rst:1538 msgid "" "Use a new output buffer management code for :mod:`bz2` / :mod:`lzma` / :mod:" "`zlib` modules, and add ``.readall()`` function to ``_compression." @@ -2611,7 +2614,7 @@ msgstr "" "rapide, ``GzipFile.read(-1)`` est 1,11 à 1,18 fois plus rapide (contribution " "de *Ma Lin*, révision par *Gregory P. Smith* dans :issue:`41486`)." -#: whatsnew/3.10.rst:1543 +#: whatsnew/3.10.rst:1544 msgid "" "When using stringized annotations, annotations dicts for functions are no " "longer created when the function is created. Instead, they are stored as a " @@ -2628,7 +2631,7 @@ msgstr "" "CPU nécessaire à la définition d'une fonction annotée (contribution de " "*Yurii Karabas* et *Inada Naoki* dans :issue:`42202`)." -#: whatsnew/3.10.rst:1550 +#: whatsnew/3.10.rst:1551 msgid "" "Substring search functions such as ``str1 in str2`` and ``str2.find(str1)`` " "now sometimes use Crochemore & Perrin's \"Two-Way\" string searching " @@ -2641,7 +2644,7 @@ msgstr "" "éviter le comportement quadratique sur les longues chaînes (contribution de " "*Dennis Sweeney* dans :issue:`41972`)." -#: whatsnew/3.10.rst:1555 +#: whatsnew/3.10.rst:1556 msgid "" "Add micro-optimizations to ``_PyType_Lookup()`` to improve type attribute " "cache lookup performance in the common case of cache hits. This makes the " @@ -2654,7 +2657,7 @@ msgstr "" "facteur de 1,04 en moyenne (contribution de *Dino Viehland* dans :issue:" "`43452`)." -#: whatsnew/3.10.rst:1559 +#: whatsnew/3.10.rst:1560 msgid "" "The following built-in functions now support the faster :pep:`590` " "vectorcall calling convention: :func:`map`, :func:`filter`, :func:" @@ -2668,7 +2671,7 @@ msgstr "" "(contribution de *Dong-hee Na* et *Jeroen Demeyer* dans :issue:`43575`, :" "issue:`43287`, :issue:`41922`, :issue:`41873` et :issue:`41870`)." -#: whatsnew/3.10.rst:1563 +#: whatsnew/3.10.rst:1564 msgid "" ":class:`BZ2File` performance is improved by removing internal ``RLock``. " "This makes :class:`BZ2File` thread unsafe in the face of multiple " @@ -2683,11 +2686,11 @@ msgstr "" "`lzma` qui l'ont toujours été (contribution de *Inada Naoki* dans :issue:" "`43785`)." -#: whatsnew/3.10.rst:2192 +#: whatsnew/3.10.rst:2193 msgid "Deprecated" msgstr "Obsolescence" -#: whatsnew/3.10.rst:1573 +#: whatsnew/3.10.rst:1574 msgid "" "Currently Python accepts numeric literals immediately followed by keywords, " "for example ``0in x``, ``1or x``, ``0if 1else 2``. It allows confusing and " @@ -2711,7 +2714,7 @@ msgstr "" "levé, et ultérieurement ce sera une erreur de syntaxe (contribution de " "*Serhiy Storchaka* dans :issue:`43833`)." -#: whatsnew/3.10.rst:1584 +#: whatsnew/3.10.rst:1585 msgid "" "Starting in this release, there will be a concerted effort to begin cleaning " "up old import semantics that were kept for Python 2.7 compatibility. " @@ -2743,7 +2746,7 @@ msgstr "" "`DeprecationWarning` seront levés le cas échéant pendant cette transition " "pour aider à identifier le code qui doit être mis à jour." -#: whatsnew/3.10.rst:1601 +#: whatsnew/3.10.rst:1602 msgid "" "The entire ``distutils`` namespace is deprecated, to be removed in Python " "3.12. Refer to the :ref:`module changes ` section for " @@ -2753,7 +2756,7 @@ msgstr "" "Python 3.12. Voir la section sur les :ref:`changements aux modules " "` pour plus d'information." -#: whatsnew/3.10.rst:1605 +#: whatsnew/3.10.rst:1606 msgid "" "Non-integer arguments to :func:`random.randrange` are deprecated. The :exc:" "`ValueError` is deprecated in favor of a :exc:`TypeError`. (Contributed by " @@ -2764,7 +2767,7 @@ msgstr "" "exc:`TypeError` (contribution de *Serhiy Storchaka* et *Raymond Hettinger* " "dans :issue:`37319`)." -#: whatsnew/3.10.rst:1609 +#: whatsnew/3.10.rst:1610 msgid "" "The various ``load_module()`` methods of :mod:`importlib` have been " "documented as deprecated since Python 3.6, but will now also trigger a :exc:" @@ -2776,7 +2779,7 @@ msgstr "" "aussi lever un :exc:`DeprecationWarning`. Utilisez plutôt :meth:`~importlib." "abc.Loader.exec_module` (contribution de *Brett Cannon* dans :issue:`26131`)." -#: whatsnew/3.10.rst:1615 +#: whatsnew/3.10.rst:1616 msgid "" ":meth:`zimport.zipimporter.load_module` has been deprecated in preference " "for :meth:`~zipimport.zipimporter.exec_module`. (Contributed by Brett Cannon " @@ -2786,7 +2789,7 @@ msgstr "" "`~zipimport.zipimporter.exec_module` (contribution de *Brett Cannon* dans :" "issue:`26131`)." -#: whatsnew/3.10.rst:1619 +#: whatsnew/3.10.rst:1620 msgid "" "The use of :meth:`~importlib.abc.Loader.load_module` by the import system " "now triggers an :exc:`ImportWarning` as :meth:`~importlib.abc.Loader." @@ -2797,7 +2800,7 @@ msgstr "" "abc.Loader.exec_module` est recommandée (contribution de (*Brett Cannon* " "dans :issue:`26131`)." -#: whatsnew/3.10.rst:1624 +#: whatsnew/3.10.rst:1625 msgid "" "The use of :meth:`importlib.abc.MetaPathFinder.find_module` and :meth:" "`importlib.abc.PathEntryFinder.find_module` by the import system now trigger " @@ -2814,7 +2817,7 @@ msgstr "" "`importlib.util.spec_from_loader` pour faciliter le portage (contribution de " "*Brett Cannon* dans :issue:`42134`)." -#: whatsnew/3.10.rst:1633 +#: whatsnew/3.10.rst:1634 msgid "" "The use of :meth:`importlib.abc.PathEntryFinder.find_loader` by the import " "system now triggers an :exc:`ImportWarning` as :meth:`importlib.abc." @@ -2829,15 +2832,16 @@ msgstr "" "pour faciliter le portage (contribution de *Brett Cannon* dans :issue:" "`43672`)." -#: whatsnew/3.10.rst:1639 +#: whatsnew/3.10.rst:1640 +#, fuzzy msgid "" "The various implementations of :meth:`importlib.abc.MetaPathFinder." "find_module` ( :meth:`importlib.machinery.BuiltinImporter.find_module`, :" "meth:`importlib.machinery.FrozenImporter.find_module`, :meth:`importlib." "machinery.WindowsRegistryFinder.find_module`, :meth:`importlib.machinery." -"PathFinder.find_module`, :meth:`importlib.abc.MetaPathFinder.find_module`), :" -"meth:`importlib.abc.PathEntryFinder.find_module` ( :meth:`importlib." -"machinery.FileFinder.find_module`, ), and :meth:`importlib.abc." +"PathFinder.find_module`, :meth:`importlib.abc.MetaPathFinder." +"find_module` ), :meth:`importlib.abc.PathEntryFinder.find_module` ( :meth:" +"`importlib.machinery.FileFinder.find_module` ), and :meth:`importlib.abc." "PathEntryFinder.find_loader` ( :meth:`importlib.machinery.FileFinder." "find_loader` ) now raise :exc:`DeprecationWarning` and are slated for " "removal in Python 3.12 (previously they were documented as deprecated in " @@ -2925,10 +2929,11 @@ msgstr "" "Aasland* dans :issue:`42264`)." #: whatsnew/3.10.rst:1689 +#, fuzzy msgid "" ":func:`asyncio.get_event_loop` now emits a deprecation warning if there is " "no running event loop. In the future it will be an alias of :func:`~asyncio." -"get_running_loop`. :mod:`asyncio` functions which implicitly create a :class:" +"get_running_loop`. :mod:`asyncio` functions which implicitly create :class:" "`~asyncio.Future` or :class:`~asyncio.Task` objects now emit a deprecation " "warning if there is no running event loop and no explicit *loop* argument is " "passed: :func:`~asyncio.ensure_future`, :func:`~asyncio.wrap_future`, :func:" @@ -3114,7 +3119,7 @@ msgstr "" "directement du module :mod:`typing` (contribution de *Sebastian Rittau* " "dans :issue:`38291`)." -#: whatsnew/3.10.rst:2200 +#: whatsnew/3.10.rst:2201 msgid "Removed" msgstr "Retrait" @@ -3254,15 +3259,16 @@ msgstr "" "impliquées." #: whatsnew/3.10.rst:1831 +#, fuzzy msgid "" -"Note that the low-level API will still accept ``loop``. See `Changes in the " -"Python API`_ for examples of how to replace existing code." +"Note that the low-level API will still accept ``loop``. See :ref:`changes-" +"python-api` for examples of how to replace existing code." msgstr "" "Prenez note que l'API bas-niveau accepte toujours le paramètre ``loop``. " "Voir `Changements dans l'API Python`_ pour plus d'exemples sur comment " "remplacer le code existant" -#: whatsnew/3.10.rst:1905 +#: whatsnew/3.10.rst:1906 msgid "" "(Contributed by Yurii Karabas, Andrew Svetlov, Yury Selivanov and Kyle " "Stanley in :issue:`42392`.)" @@ -3270,7 +3276,7 @@ msgstr "" "(contribution de *Yurii Karabas*, *Andrew Svetlov*, *Yury Selivanov* et " "*Kyle Stanley* dans :issue:`42392`)." -#: whatsnew/3.10.rst:2125 +#: whatsnew/3.10.rst:2126 msgid "Porting to Python 3.10" msgstr "Portage vers Python 3.10" @@ -3304,11 +3310,11 @@ msgstr "" "simplement une espace entre le littéral numérique et le mot clé qui le suit " "(contribution de *Serhiy Storchaka* dans :issue:`43833`)." -#: whatsnew/3.10.rst:1858 +#: whatsnew/3.10.rst:1859 msgid "Changes in the Python API" msgstr "Changements dans l'API Python" -#: whatsnew/3.10.rst:1860 +#: whatsnew/3.10.rst:1861 msgid "" "The *etype* parameters of the :func:`~traceback.format_exception`, :func:" "`~traceback.format_exception_only`, and :func:`~traceback.print_exception` " @@ -3321,7 +3327,7 @@ msgstr "" "(contribution de *Zackery Spytz* et *Matthias Bussonnier* dans :issue:" "`26389`)." -#: whatsnew/3.10.rst:1866 +#: whatsnew/3.10.rst:1867 msgid "" ":mod:`atexit`: At Python exit, if a callback registered with :func:`atexit." "register` fails, its exception is now logged. Previously, only some " @@ -3334,7 +3340,7 @@ msgstr "" "étaient journalisées et la dernière exception était toujours ignorée de " "façon silencieuse (contribution de *Victor Stinner* dans :issue:`42639`)." -#: whatsnew/3.10.rst:1872 +#: whatsnew/3.10.rst:1873 msgid "" ":class:`collections.abc.Callable` generic now flattens type parameters, " "similar to what :data:`typing.Callable` currently does. This means that " @@ -3357,7 +3363,7 @@ msgstr "" "passer silencieusement dans Python 3.9 (contribution de *Ken Jin* dans :" "issue:`42195`)." -#: whatsnew/3.10.rst:1882 +#: whatsnew/3.10.rst:1883 msgid "" ":meth:`socket.htons` and :meth:`socket.ntohs` now raise :exc:`OverflowError` " "instead of :exc:`DeprecationWarning` if the given parameter will not fit in " @@ -3369,7 +3375,7 @@ msgstr "" "est trop grand pour être stocké dans un entier 16-bit non-signé " "(contribution de *Erlend E. Aasland* dans :issue:`42393`)." -#: whatsnew/3.10.rst:1887 +#: whatsnew/3.10.rst:1888 msgid "" "The ``loop`` parameter has been removed from most of :mod:`asyncio`\\ 's :" "doc:`high-level API <../library/asyncio-api-index>` following deprecation in " @@ -3379,15 +3385,15 @@ msgstr "" "<../library/asyncio-api-index>` d':mod:`asyncio` suite à la déclaration de " "son obsolescence dans Python 3.8." -#: whatsnew/3.10.rst:1891 +#: whatsnew/3.10.rst:1892 msgid "A coroutine that currently looks like this::" msgstr "Une coroutine qui ressemble actuellement à ceci ::" -#: whatsnew/3.10.rst:1896 +#: whatsnew/3.10.rst:1897 msgid "Should be replaced with this::" msgstr "Doit être remplacée par ceci ::" -#: whatsnew/3.10.rst:1901 +#: whatsnew/3.10.rst:1902 msgid "" "If ``foo()`` was specifically designed *not* to run in the current thread's " "running event loop (e.g. running in another thread's event loop), consider " @@ -3398,7 +3404,7 @@ msgstr "" "d'exécution d'un autre fil), l'utilisation de :func:`asyncio." "run_coroutine_threadsafe` est probablement plus appropriée." -#: whatsnew/3.10.rst:1908 +#: whatsnew/3.10.rst:1909 msgid "" "The :data:`types.FunctionType` constructor now inherits the current builtins " "if the *globals* dictionary has no ``\"__builtins__\"`` key, rather than " @@ -3417,11 +3423,11 @@ msgstr "" "cette syntaxe : elles héritent aussi des définitions natives courantes " "(contribution de *Victor Stinner* dans :issue:`42990`)." -#: whatsnew/3.10.rst:1917 +#: whatsnew/3.10.rst:1918 msgid "Changes in the C API" msgstr "Changements dans l'API C" -#: whatsnew/3.10.rst:1919 +#: whatsnew/3.10.rst:1920 msgid "" "The C API functions ``PyParser_SimpleParseStringFlags``, " "``PyParser_SimpleParseStringFlagsFilename``, " @@ -3435,7 +3441,7 @@ msgstr "" "_node``, le type utilisé par ces fonctions, ont été retirés suite à la " "transition vers le nouvel analyseur syntaxique *PEG*." -#: whatsnew/3.10.rst:1925 +#: whatsnew/3.10.rst:1926 msgid "" "Source should be now be compiled directly to a code object using, for " "example, :c:func:`Py_CompileString`. The resulting code object can then be " @@ -3445,11 +3451,11 @@ msgstr "" "utilisant par exemple :c:func:`Py_CompileString`. L'objet code ainsi produit " "peut ensuite être évalué, en utilisant par exemple :c:func:`PyEval_EvalCode`." -#: whatsnew/3.10.rst:1929 +#: whatsnew/3.10.rst:1930 msgid "Specifically:" msgstr "Spécifiquement :" -#: whatsnew/3.10.rst:1931 +#: whatsnew/3.10.rst:1932 msgid "" "A call to ``PyParser_SimpleParseStringFlags`` followed by ``PyNode_Compile`` " "can be replaced by calling :c:func:`Py_CompileString`." @@ -3457,7 +3463,7 @@ msgstr "" "Un appel à ``PyParser_SimpleParseStringFlags`` suivi de ``PyNode_Compile`` " "peut être remplacé par :c:func:`Py_CompileString` ;" -#: whatsnew/3.10.rst:1934 +#: whatsnew/3.10.rst:1935 msgid "" "There is no direct replacement for ``PyParser_SimpleParseFileFlags``. To " "compile code from a ``FILE *`` argument, you will need to read the file in C " @@ -3468,7 +3474,7 @@ msgstr "" "argument ``FILE *``, vous devez lire le fichier en C et passer le tampon " "résultant à :c:func:`Py_CompileString`." -#: whatsnew/3.10.rst:1938 +#: whatsnew/3.10.rst:1939 msgid "" "To compile a file given a ``char *`` filename, explicitly open the file, " "read it and compile the result. One way to do this is using the :py:mod:`io` " @@ -3483,7 +3489,7 @@ msgstr "" "`PyBytes_AsString` et :c:func:`Py_CompileString`, comme dans l'esquisse qui " "suit (les déclarations et la gestion d'erreurs ne sont pas incluses) ::" -#: whatsnew/3.10.rst:1951 +#: whatsnew/3.10.rst:1952 msgid "" "For ``FrameObject`` objects, the ``f_lasti`` member now represents a " "wordcode offset instead of a simple offset into the bytecode string. This " @@ -3500,11 +3506,11 @@ msgstr "" "``f_lasti`` de ``FrameObject`` n'est pas considéré stable : utilisez plutôt :" "c:func:`PyFrame_GetLineNumber`." -#: whatsnew/3.10.rst:1959 +#: whatsnew/3.10.rst:1960 msgid "CPython bytecode changes" msgstr "Changements au code intermédiaire CPython" -#: whatsnew/3.10.rst:1961 +#: whatsnew/3.10.rst:1962 msgid "" "The ``MAKE_FUNCTION`` instruction now accepts either a dict or a tuple of " "strings as the function's annotations. (Contributed by Yurii Karabas and " @@ -3514,11 +3520,11 @@ msgstr "" "soit un *n*-uplet de chaînes pour l'annotation de la fonction (contribution " "de *Yurii Karabas* et *Inada Naoki* dans :issue:`42202`)." -#: whatsnew/3.10.rst:1966 +#: whatsnew/3.10.rst:1967 msgid "Build Changes" msgstr "Changements à la compilation" -#: whatsnew/3.10.rst:1968 +#: whatsnew/3.10.rst:1969 msgid "" ":pep:`644`: Python now requires OpenSSL 1.1.1 or newer. OpenSSL 1.0.2 is no " "longer supported. (Contributed by Christian Heimes in :issue:`43669`.)" @@ -3527,7 +3533,7 @@ msgstr "" "1.1.1. *OpenSSL* 1.0.2 n'est plus prise en charge (contribution de " "*Christian Heimes* dans :issue:`43669`)." -#: whatsnew/3.10.rst:1972 +#: whatsnew/3.10.rst:1973 msgid "" "The C99 functions :c:func:`snprintf` and :c:func:`vsnprintf` are now " "required to build Python. (Contributed by Victor Stinner in :issue:`36020`.)" @@ -3536,16 +3542,17 @@ msgstr "" "maintenant nécessaires à la compilation de Python (contribution de *Victor " "Stinner* dans :issue:`36020`)." -#: whatsnew/3.10.rst:1976 +#: whatsnew/3.10.rst:1977 +#, fuzzy msgid "" ":mod:`sqlite3` requires SQLite 3.7.15 or higher. (Contributed by Sergey " -"Fedoseev and Erlend E. Aasland :issue:`40744` and :issue:`40810`.)" +"Fedoseev and Erlend E. Aasland in :issue:`40744` and :issue:`40810`.)" msgstr "" "La version minimale de SQLite pour le module :mod:`sqlite3` est maintenant " "3.7.15 (contribution de *Sergey Fedoseev* et *Erlend E. Aasland* dans :issue:" "`40744` et :issue:`40810`)." -#: whatsnew/3.10.rst:1979 +#: whatsnew/3.10.rst:1980 msgid "" "The :mod:`atexit` module must now always be built as a built-in module. " "(Contributed by Victor Stinner in :issue:`42639`.)" @@ -3553,7 +3560,7 @@ msgstr "" "Le module :mod:`atexit` doit maintenant toujours être compilé en tant que " "module natif (contribution de *Victor Stinner* dans :issue:`42639`)." -#: whatsnew/3.10.rst:1982 +#: whatsnew/3.10.rst:1983 msgid "" "Add :option:`--disable-test-modules` option to the ``configure`` script: " "don't build nor install test modules. (Contributed by Xavier de Gaye, Thomas " @@ -3563,7 +3570,7 @@ msgstr "" "ne pas compiler ni installer les modules de tests (contribution de *Xavier " "de Gaye*, *Thomas Petazzoni* et *Peixing Xin* dans :issue:`27640`)." -#: whatsnew/3.10.rst:1986 +#: whatsnew/3.10.rst:1987 msgid "" "Add :option:`--with-wheel-pkg-dir=PATH option <--with-wheel-pkg-dir>` to the " "``./configure`` script. If specified, the :mod:`ensurepip` module looks for " @@ -3577,7 +3584,7 @@ msgstr "" "répertoire : si les deux sont présents, ces paquets *wheel* sont utilisés " "plutôt que ceux inclus avec *ensurepip*." -#: whatsnew/3.10.rst:1992 +#: whatsnew/3.10.rst:1993 msgid "" "Some Linux distribution packaging policies recommend against bundling " "dependencies. For example, Fedora installs wheel packages in the ``/usr/" @@ -3589,11 +3596,11 @@ msgstr "" "*wheel* dans le répertoire ``/usr/share/python-wheels/`` et n'installe pas " "le paquet ``ensurepip._bundled``" -#: whatsnew/3.10.rst:1997 +#: whatsnew/3.10.rst:1998 msgid "(Contributed by Victor Stinner in :issue:`42856`.)" msgstr "(contribution de *Victor Stinner* dans :issue:`42856`)." -#: whatsnew/3.10.rst:1999 +#: whatsnew/3.10.rst:2000 msgid "" "Add a new :option:`configure --without-static-libpython option <--without-" "static-libpython>` to not build the ``libpythonMAJOR.MINOR.a`` static " @@ -3603,11 +3610,11 @@ msgstr "" "``configure`` pour ne pas compiler la bibliothèque statique ``libpythonMAJOR." "MINOR.a`` et ne pas installer le fichier objet ``python.o``" -#: whatsnew/3.10.rst:2003 +#: whatsnew/3.10.rst:2004 msgid "(Contributed by Victor Stinner in :issue:`43103`.)" msgstr "(contribution de *Victor Stinner* dans :issue:`43103`)." -#: whatsnew/3.10.rst:2005 +#: whatsnew/3.10.rst:2006 msgid "" "The ``configure`` script now uses the ``pkg-config`` utility, if available, " "to detect the location of Tcl/Tk headers and libraries. As before, those " @@ -3622,7 +3629,7 @@ msgstr "" "with-tcltk-includes` et :option:`--with-tcltk-libs` (contribution de " "*Manolis Stamatogiannakis* et :issue:`42603`)." -#: whatsnew/3.10.rst:2011 +#: whatsnew/3.10.rst:2012 msgid "" "Add :option:`--with-openssl-rpath` option to ``configure`` script. The " "option simplifies building Python with a custom OpenSSL installation, e.g. " @@ -3635,15 +3642,15 @@ msgstr "" "openssl --with-openssl-rpath=auto`` (contribution de *Christian Heimes* " "dans :issue:`43466`)." -#: whatsnew/3.10.rst:2018 +#: whatsnew/3.10.rst:2019 msgid "C API Changes" msgstr "Changements à l'API C" -#: whatsnew/3.10.rst:2021 +#: whatsnew/3.10.rst:2022 msgid "PEP 652: Maintaining the Stable ABI" msgstr "PEP 652 : maintenance d'une ABI stable" -#: whatsnew/3.10.rst:2023 +#: whatsnew/3.10.rst:2024 msgid "" "The Stable ABI (Application Binary Interface) for extension modules or " "embedding Python is now explicitly defined. :ref:`stable` describes C API " @@ -3657,12 +3664,12 @@ msgstr "" "programme ainsi que les bonnes pratiques pour travailler avec l'interface " "binaire-programme stable" -#: whatsnew/3.10.rst:2028 +#: whatsnew/3.10.rst:2029 msgid "(Contributed by Petr Viktorin in :pep:`652` and :issue:`43795`.)" msgstr "" "(contribution de *Petr Viktorin* dans :pep:`652` et dans :issue:`43795`)." -#: whatsnew/3.10.rst:2033 +#: whatsnew/3.10.rst:2034 msgid "" "The result of :c:func:`PyNumber_Index` now always has exact type :class:" "`int`. Previously, the result could have been an instance of a subclass of " @@ -3672,7 +3679,7 @@ msgstr "" "class:`int`. Auparavant, le résultat pouvait être une instance d'une classe " "dérivée de ``int`` (contribution de *Serhiy Storchaka* dans :issue:`40792`)." -#: whatsnew/3.10.rst:2037 +#: whatsnew/3.10.rst:2038 msgid "" "Add a new :c:member:`~PyConfig.orig_argv` member to the :c:type:`PyConfig` " "structure: the list of the original command line arguments passed to the " @@ -3683,7 +3690,7 @@ msgstr "" "passée à l'exécutable Python (contribution de *Victor Stinner* dans :issue:" "`23427`)." -#: whatsnew/3.10.rst:2042 +#: whatsnew/3.10.rst:2043 msgid "" "The :c:func:`PyDateTime_DATE_GET_TZINFO` and :c:func:" "`PyDateTime_TIME_GET_TZINFO` macros have been added for accessing the " @@ -3695,7 +3702,7 @@ msgstr "" "``tzinfo`` des objets :class:`datetime.datetime` et :class:`datetime.time` " "(contribution de *Zackery Spytz* dans :issue:`30155`)." -#: whatsnew/3.10.rst:2048 +#: whatsnew/3.10.rst:2049 msgid "" "Add a :c:func:`PyCodec_Unregister` function to unregister a codec search " "function. (Contributed by Hai Shi in :issue:`41842`.)" @@ -3704,7 +3711,7 @@ msgstr "" "fonction de recherche de codecs (contribution de *Hai Shi* dans :issue:" "`41842`)." -#: whatsnew/3.10.rst:2052 +#: whatsnew/3.10.rst:2053 msgid "" "The :c:func:`PyIter_Send` function was added to allow sending value into " "iterator without raising ``StopIteration`` exception. (Contributed by " @@ -3714,7 +3721,7 @@ msgstr "" "itérateur sans lever une exception ``StopIteration`` (contribution de " "*Vladimir Matveev* dans :issue:`41756`)." -#: whatsnew/3.10.rst:2056 +#: whatsnew/3.10.rst:2057 msgid "" "Add :c:func:`PyUnicode_AsUTF8AndSize` to the limited C API. (Contributed by " "Alex Gaynor in :issue:`41784`.)" @@ -3722,7 +3729,7 @@ msgstr "" "Ajout de :c:func:`PyUnicode_AsUTF8AndSize` à l'API C limitée (contribution " "d'*Alex Gaynor* dans :issue:`41784`)." -#: whatsnew/3.10.rst:2059 +#: whatsnew/3.10.rst:2060 msgid "" "Add :c:func:`PyModule_AddObjectRef` function: similar to :c:func:" "`PyModule_AddObject` but don't steal a reference to the value on success. " @@ -3732,7 +3739,7 @@ msgstr "" "`PyModule_AddObject` mais ne s’accapare pas une référence à la valeur s'il y " "a réussite (contribution de *Victor Stinner* dans :issue:`1635741`)." -#: whatsnew/3.10.rst:2064 +#: whatsnew/3.10.rst:2065 msgid "" "Add :c:func:`Py_NewRef` and :c:func:`Py_XNewRef` functions to increment the " "reference count of an object and return the object. (Contributed by Victor " @@ -3743,7 +3750,7 @@ msgstr "" "(contribution de *Victor Stinner* dans :issue:`42262`)." # Auparavant, *bases* pouvait être un n-uplet de plusieurs classes. -#: whatsnew/3.10.rst:2068 +#: whatsnew/3.10.rst:2069 msgid "" "The :c:func:`PyType_FromSpecWithBases` and :c:func:" "`PyType_FromModuleAndSpec` functions now accept a single class as the " @@ -3753,7 +3760,7 @@ msgstr "" "`PyType_FromModuleAndSpec` n'acceptent maintenant qu'une seule classe pour " "l'argument *bases* (contribution *Serhiy Storchaka* dans :issue:`42423`)." -#: whatsnew/3.10.rst:2072 +#: whatsnew/3.10.rst:2073 msgid "" "The :c:func:`PyType_FromModuleAndSpec` function now accepts NULL ``tp_doc`` " "slot. (Contributed by Hai Shi in :issue:`41832`.)" @@ -3762,7 +3769,7 @@ msgstr "" "dans l'emplacement ``tp_doc`` (contribution de *Hai Shi* dans :issue:" "`41832`)." -#: whatsnew/3.10.rst:2076 +#: whatsnew/3.10.rst:2077 msgid "" "The :c:func:`PyType_GetSlot` function can accept :ref:`static types `. (Contributed by Hai Shi and Petr Viktorin in :issue:`41073`.)" @@ -3771,7 +3778,7 @@ msgstr "" "`types statiques ` (contribution de *Hai Shi* et *Petr " "Viktorin* dans :issue:`41073`)." -#: whatsnew/3.10.rst:2080 +#: whatsnew/3.10.rst:2081 msgid "" "Add a new :c:func:`PySet_CheckExact` function to the C-API to check if an " "object is an instance of :class:`set` but not an instance of a subtype. " @@ -3781,7 +3788,7 @@ msgstr "" "vérifier si un objet est une instance de :class:`set` mais pas une instance " "d'un sous-type (contribution de *Pablo Galindo* dans :issue:`43277`)." -#: whatsnew/3.10.rst:2084 +#: whatsnew/3.10.rst:2085 msgid "" "Add :c:func:`PyErr_SetInterruptEx` which allows passing a signal number to " "simulate. (Contributed by Antoine Pitrou in :issue:`43356`.)" @@ -3789,7 +3796,7 @@ msgstr "" "Ajout de :c:func:`PyErr_SetInterruptEx` qui accepte le numéro d'un signal à " "simuler (contribution d'*Antoine Pitrou* dans :issue:`43356`)." -#: whatsnew/3.10.rst:2088 +#: whatsnew/3.10.rst:2089 msgid "" "The limited C API is now supported if :ref:`Python is built in debug mode " "` (if the ``Py_DEBUG`` macro is defined). In the limited C API, " @@ -3812,7 +3819,7 @@ msgstr "" "dans les versions standard et dans les versions débogage depuis Python 3.8 " "(voir :issue:`36465`)." -#: whatsnew/3.10.rst:2098 +#: whatsnew/3.10.rst:2099 msgid "" "The limited C API is still not supported in the :option:`--with-trace-refs` " "special build (``Py_TRACE_REFS`` macro). (Contributed by Victor Stinner in :" @@ -3822,7 +3829,7 @@ msgstr "" "spéciales avec l'option :option:`--with-trace-refs` (macro " "``Py_TRACE_REFS``) (Contribution de *Victor Stinner* dans :issue:`43688`)." -#: whatsnew/3.10.rst:2102 +#: whatsnew/3.10.rst:2103 msgid "" "Add the :c:func:`Py_Is(x, y) ` function to test if the *x* object is " "the *y* object, the same as ``x is y`` in Python. Add also the :c:func:" @@ -3838,7 +3845,7 @@ msgstr "" "le singleton ``False``, respectivement (contribution de *Victor Stinner* " "dans :issue:`43753`)." -#: whatsnew/3.10.rst:2109 +#: whatsnew/3.10.rst:2110 msgid "" "Add new functions to control the garbage collector from C code: :c:func:" "`PyGC_Enable()`, :c:func:`PyGC_Disable()`, :c:func:`PyGC_IsEnabled()`. These " @@ -3850,7 +3857,7 @@ msgstr "" "fonctions permettent d'activer, de désactiver et d'interroger l'état du " "ramasse-miettes dans du code C sans avoir à importer le module :mod:`gc`." -#: whatsnew/3.10.rst:2116 +#: whatsnew/3.10.rst:2117 msgid "" "Add a new :c:data:`Py_TPFLAGS_DISALLOW_INSTANTIATION` type flag to disallow " "creating type instances. (Contributed by Victor Stinner in :issue:`43916`.)" @@ -3859,7 +3866,7 @@ msgstr "" "les types. Elle empêche la création d'instances de ce type (contribution de " "*Victor Stinner* dans :issue:`43916`)." -#: whatsnew/3.10.rst:2120 +#: whatsnew/3.10.rst:2121 msgid "" "Add a new :c:data:`Py_TPFLAGS_IMMUTABLETYPE` type flag for creating " "immutable type objects: type attributes cannot be set nor deleted. " @@ -3870,7 +3877,7 @@ msgstr "" "type ne peuvent pas être affectés ou supprimés (contribution de *Victor " "Stinner* et d'*Erlend E. Aasland* dans :issue:`43908`)." -#: whatsnew/3.10.rst:2127 +#: whatsnew/3.10.rst:2128 msgid "" "The ``PY_SSIZE_T_CLEAN`` macro must now be defined to use :c:func:" "`PyArg_ParseTuple` and :c:func:`Py_BuildValue` formats which use ``#``: " @@ -3879,7 +3886,7 @@ msgid "" "`353`. (Contributed by Victor Stinner in :issue:`40943`.)" msgstr "" -#: whatsnew/3.10.rst:2134 +#: whatsnew/3.10.rst:2135 msgid "" "Since :c:func:`Py_REFCNT()` is changed to the inline static function, " "``Py_REFCNT(obj) = new_refcnt`` must be replaced with ``Py_SET_REFCNT(obj, " @@ -3892,11 +3899,11 @@ msgstr "" "(disponible depuis Python 3.9). Pour la rétro-compatibilité, cette macro " "peut être utilisée ::" -#: whatsnew/3.10.rst:2143 +#: whatsnew/3.10.rst:2144 msgid "(Contributed by Victor Stinner in :issue:`39573`.)" msgstr "(contribution de *Victor Stinner* dans :issue:`39573`)." -#: whatsnew/3.10.rst:2145 +#: whatsnew/3.10.rst:2146 msgid "" "Calling :c:func:`PyDict_GetItem` without :term:`GIL` held had been allowed " "for historical reason. It is no longer allowed. (Contributed by Victor " @@ -3906,7 +3913,7 @@ msgstr "" "autorisé pour des raisons historiques. Ceci n'est plus permis (contribution " "de *Victor Stinner* dans :issue:`40839`)." -#: whatsnew/3.10.rst:2149 +#: whatsnew/3.10.rst:2150 msgid "" "``PyUnicode_FromUnicode(NULL, size)`` and " "``PyUnicode_FromStringAndSize(NULL, size)`` raise ``DeprecationWarning`` " @@ -3918,14 +3925,14 @@ msgstr "" "func:`PyUnicode_New` pour allouer un objet Unicode sans donnée initiale " "(contribution de *Inada Naoki* dans :issue:`36346`)." -#: whatsnew/3.10.rst:2154 +#: whatsnew/3.10.rst:2155 msgid "" "The private ``_PyUnicode_Name_CAPI`` structure of the PyCapsule API " "``unicodedata.ucnhash_CAPI`` has been moved to the internal C API. " "(Contributed by Victor Stinner in :issue:`42157`.)" msgstr "" -#: whatsnew/3.10.rst:2158 +#: whatsnew/3.10.rst:2159 msgid "" ":c:func:`Py_GetPath`, :c:func:`Py_GetPrefix`, :c:func:`Py_GetExecPrefix`, :c:" "func:`Py_GetProgramFullPath`, :c:func:`Py_GetPythonHome` and :c:func:" @@ -3936,7 +3943,7 @@ msgid "" "issue:`42260`.)" msgstr "" -#: whatsnew/3.10.rst:2166 +#: whatsnew/3.10.rst:2167 msgid "" ":c:func:`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` and :c:func:" "`PyCell_SET` macros can no longer be used as l-value or r-value. For " @@ -3946,7 +3953,7 @@ msgid "" "and Victor Stinner in :issue:`30459`.)" msgstr "" -#: whatsnew/3.10.rst:2173 +#: whatsnew/3.10.rst:2174 msgid "" "The non-limited API files ``odictobject.h``, ``parser_interface.h``, " "``picklebufobject.h``, ``pyarena.h``, ``pyctype.h``, ``pydebug.h``, ``pyfpe." @@ -3957,7 +3964,7 @@ msgid "" "Nicholas Sim in :issue:`35134`)" msgstr "" -#: whatsnew/3.10.rst:2181 +#: whatsnew/3.10.rst:2182 msgid "" "Use the :c:data:`Py_TPFLAGS_IMMUTABLETYPE` type flag to create immutable " "type objects. Do not rely on :c:data:`Py_TPFLAGS_HEAPTYPE` to decide if a " @@ -3966,7 +3973,7 @@ msgid "" "issue:`43908`.)" msgstr "" -#: whatsnew/3.10.rst:2187 +#: whatsnew/3.10.rst:2188 msgid "" "The undocumented function ``Py_FrozenMain`` has been removed from the " "limited API. The function is mainly useful for custom builds of Python. " @@ -3976,7 +3983,7 @@ msgstr "" "La fonction est principalement utile pour les compilations personnalisées de " "Python (contribution de *Petr Viktorin* dans :issue:`26241`)." -#: whatsnew/3.10.rst:2194 +#: whatsnew/3.10.rst:2195 msgid "" "The ``PyUnicode_InternImmortal()`` function is now deprecated and will be " "removed in Python 3.12: use :c:func:`PyUnicode_InternInPlace` instead. " @@ -3986,7 +3993,7 @@ msgstr "" "retirée dans Python 3.12 : utilisez plutôt :c:func:`PyUnicode_InternInPlace` " "(contribution de *Victor Stinner* dans :issue:`41692`)." -#: whatsnew/3.10.rst:2202 +#: whatsnew/3.10.rst:2203 msgid "" "Removed ``Py_UNICODE_str*`` functions manipulating ``Py_UNICODE*`` strings. " "(Contributed by Inada Naoki in :issue:`41123`.)" @@ -3994,7 +4001,7 @@ msgstr "" "Retrait des fonctions ``Py_UNICODE_str*`` manipulant des chaînes " "``Py_UNICODE*`` (contribution de *Inada Naoki* dans :issue:`41123`) :" -#: whatsnew/3.10.rst:2205 +#: whatsnew/3.10.rst:2206 msgid "" "``Py_UNICODE_strlen``: use :c:func:`PyUnicode_GetLength` or :c:macro:" "`PyUnicode_GET_LENGTH`" @@ -4002,7 +4009,7 @@ msgstr "" "``Py_UNICODE_strlen`` : utilisez :c:func:`PyUnicode_GetLength` ou :c:macro:" "`PyUnicode_GET_LENGTH` ;" -#: whatsnew/3.10.rst:2207 +#: whatsnew/3.10.rst:2208 msgid "" "``Py_UNICODE_strcat``: use :c:func:`PyUnicode_CopyCharacters` or :c:func:" "`PyUnicode_FromFormat`" @@ -4010,7 +4017,7 @@ msgstr "" "``Py_UNICODE_strcat`` : utilisez :c:func:`PyUnicode_CopyCharacters` ou :c:" "func:`PyUnicode_FromFormat` ;" -#: whatsnew/3.10.rst:2209 +#: whatsnew/3.10.rst:2210 msgid "" "``Py_UNICODE_strcpy``, ``Py_UNICODE_strncpy``: use :c:func:" "`PyUnicode_CopyCharacters` or :c:func:`PyUnicode_Substring`" @@ -4018,15 +4025,15 @@ msgstr "" "``Py_UNICODE_strcpy``, ``Py_UNICODE_strncpy`` : utilisez :c:func:" "`PyUnicode_CopyCharacters` ou :c:func:`PyUnicode_Substring` ;" -#: whatsnew/3.10.rst:2211 +#: whatsnew/3.10.rst:2212 msgid "``Py_UNICODE_strcmp``: use :c:func:`PyUnicode_Compare`" msgstr "``Py_UNICODE_strcmp`` : utilisez :c:func:`PyUnicode_Compare` ;" -#: whatsnew/3.10.rst:2212 +#: whatsnew/3.10.rst:2213 msgid "``Py_UNICODE_strncmp``: use :c:func:`PyUnicode_Tailmatch`" msgstr "``Py_UNICODE_strncmp`` : utilisez :c:func:`PyUnicode_Tailmatch` ;" -#: whatsnew/3.10.rst:2213 +#: whatsnew/3.10.rst:2214 msgid "" "``Py_UNICODE_strchr``, ``Py_UNICODE_strrchr``: use :c:func:" "`PyUnicode_FindChar`" @@ -4034,7 +4041,7 @@ msgstr "" "``Py_UNICODE_strchr``, ``Py_UNICODE_strrchr`` : utilisez :c:func:" "`PyUnicode_FindChar`." -#: whatsnew/3.10.rst:2216 +#: whatsnew/3.10.rst:2217 msgid "" "Removed ``PyUnicode_GetMax()``. Please migrate to new (:pep:`393`) APIs. " "(Contributed by Inada Naoki in :issue:`41103`.)" @@ -4042,7 +4049,7 @@ msgstr "" "Retrait de ``PyUnicode_GetMax()``. Vous devez migrer vers les nouvelles API " "de la :pep:`393` (contribution de *Inada Naoki* dans :issue:`41103`)." -#: whatsnew/3.10.rst:2219 +#: whatsnew/3.10.rst:2220 msgid "" "Removed ``PyLong_FromUnicode()``. Please migrate to :c:func:" "`PyLong_FromUnicodeObject`. (Contributed by Inada Naoki in :issue:`41103`.)" @@ -4051,7 +4058,7 @@ msgstr "" "`PyLong_FromUnicodeObject` (contribution de *Inada Naoki* dans :issue:" "`41103`)." -#: whatsnew/3.10.rst:2222 +#: whatsnew/3.10.rst:2223 msgid "" "Removed ``PyUnicode_AsUnicodeCopy()``. Please use :c:func:" "`PyUnicode_AsUCS4Copy` or :c:func:`PyUnicode_AsWideCharString` (Contributed " @@ -4061,7 +4068,7 @@ msgstr "" "`PyUnicode_AsUCS4Copy` ou :c:func:`PyUnicode_AsWideCharString` (contribution " "de *Inada Naoki* dans :issue:`41103`)." -#: whatsnew/3.10.rst:2226 +#: whatsnew/3.10.rst:2227 msgid "" "Removed ``_Py_CheckRecursionLimit`` variable: it has been replaced by " "``ceval.recursion_limit`` of the :c:type:`PyInterpreterState` structure. " @@ -4071,7 +4078,7 @@ msgstr "" "par le champ ``ceval.recursion_limit`` de la structure :c:type:" "`PyInterpreterState` (contribution de *Victor Stinner* dans :issue:`41834`)." -#: whatsnew/3.10.rst:2230 +#: whatsnew/3.10.rst:2231 msgid "" "Removed undocumented macros ``Py_ALLOW_RECURSION`` and " "``Py_END_ALLOW_RECURSION`` and the ``recursion_critical`` field of the :c:" @@ -4083,7 +4090,7 @@ msgstr "" "structure :c:type:`PyInterpreterState` (contribution de *Serhiy Storchaka* " "dans :issue:`41936`)." -#: whatsnew/3.10.rst:2235 +#: whatsnew/3.10.rst:2236 msgid "" "Removed the undocumented ``PyOS_InitInterrupts()`` function. Initializing " "Python already implicitly installs signal handlers: see :c:member:`PyConfig." @@ -4094,7 +4101,7 @@ msgstr "" "façon implicite : voir :c:member:`PyConfig.install_signal_handlers` " "(contribution de *Victor Stinner* dans :issue:`41713`)." -#: whatsnew/3.10.rst:2240 +#: whatsnew/3.10.rst:2241 msgid "" "Remove the ``PyAST_Validate()`` function. It is no longer possible to build " "a AST object (``mod_ty`` type) with the public C API. The function was " @@ -4106,37 +4113,37 @@ msgstr "" "fonction était déjà retirée de l'API C limitée (:pep:`384`) (contribution de " "*Victor Stinner* dans :issue:`43244`)." -#: whatsnew/3.10.rst:2245 +#: whatsnew/3.10.rst:2246 msgid "Remove the ``symtable.h`` header file and the undocumented functions:" msgstr "" "Retrait du fichier d'en-tête ``symtable.h`` et des fonctions non-" "documentées :" -#: whatsnew/3.10.rst:2247 +#: whatsnew/3.10.rst:2248 msgid "``PyST_GetScope()``" msgstr "``PyST_GetScope()`` ;" -#: whatsnew/3.10.rst:2248 +#: whatsnew/3.10.rst:2249 msgid "``PySymtable_Build()``" msgstr "``PySymtable_Build()`` ;" -#: whatsnew/3.10.rst:2249 +#: whatsnew/3.10.rst:2250 msgid "``PySymtable_BuildObject()``" msgstr "``PySymtable_BuildObject()`` ;" -#: whatsnew/3.10.rst:2250 +#: whatsnew/3.10.rst:2251 msgid "``PySymtable_Free()``" msgstr "``PySymtable_Free()`` ;" -#: whatsnew/3.10.rst:2251 +#: whatsnew/3.10.rst:2252 msgid "``Py_SymtableString()``" msgstr "``Py_SymtableString()`` ;" -#: whatsnew/3.10.rst:2252 +#: whatsnew/3.10.rst:2253 msgid "``Py_SymtableStringObject()``" msgstr "``Py_SymtableStringObject()``." -#: whatsnew/3.10.rst:2254 +#: whatsnew/3.10.rst:2255 msgid "" "The ``Py_SymtableString()`` function was part the stable ABI by mistake but " "it could not be used, because the ``symtable.h`` header file was excluded " @@ -4146,7 +4153,7 @@ msgstr "" "stable, mais elle ne pouvait pas être utilisée, car le fichier d'en-tête " "``symtable.h`` était exclu de l'API C limitée." -#: whatsnew/3.10.rst:2258 +#: whatsnew/3.10.rst:2259 msgid "" "Use Python :mod:`symtable` module instead. (Contributed by Victor Stinner " "in :issue:`43244`.)" @@ -4154,7 +4161,7 @@ msgstr "" "Utilisez plutôt le module Python :mod:`symtable` (contribution de *Victor " "Stinner* dans :issue:`43244`)." -#: whatsnew/3.10.rst:2261 +#: whatsnew/3.10.rst:2262 msgid "" "Remove :c:func:`PyOS_ReadlineFunctionPointer` from the limited C API headers " "and from ``python3.dll``, the library that provides the stable ABI on " @@ -4167,7 +4174,7 @@ msgstr "" "argument, la stabilité de son interface binaire-programme ne peut pas être " "garantie (contribution de *Petr Viktorin* dans :issue:`43868`)." -#: whatsnew/3.10.rst:2267 +#: whatsnew/3.10.rst:2268 msgid "" "Remove ``ast.h``, ``asdl.h``, and ``Python-ast.h`` header files. These " "functions were undocumented and excluded from the limited C API. Most names " @@ -4186,7 +4193,7 @@ msgstr "" "Utilisez plutôt le module Python :mod:`ast` (contribution de *Victor " "Stinner* dans :issue:`43244`)." -#: whatsnew/3.10.rst:2275 +#: whatsnew/3.10.rst:2276 msgid "" "Remove the compiler and parser functions using ``struct _mod`` type, because " "the public AST C API was removed:" @@ -4195,47 +4202,47 @@ msgstr "" "le type ``struct _mod`` car l'API C publique pour manipuler les *AST* a été " "retirée :" -#: whatsnew/3.10.rst:2278 +#: whatsnew/3.10.rst:2279 msgid "``PyAST_Compile()``" msgstr "``PyAST_Compile()`` ;" -#: whatsnew/3.10.rst:2279 +#: whatsnew/3.10.rst:2280 msgid "``PyAST_CompileEx()``" msgstr "``PyAST_CompileEx()`` ;" -#: whatsnew/3.10.rst:2280 +#: whatsnew/3.10.rst:2281 msgid "``PyAST_CompileObject()``" msgstr "``PyAST_CompileObject()`` ;" -#: whatsnew/3.10.rst:2281 +#: whatsnew/3.10.rst:2282 msgid "``PyFuture_FromAST()``" msgstr "``PyFuture_FromAST()`` ;" -#: whatsnew/3.10.rst:2282 +#: whatsnew/3.10.rst:2283 msgid "``PyFuture_FromASTObject()``" msgstr "``PyFuture_FromASTObject()`` ;" -#: whatsnew/3.10.rst:2283 +#: whatsnew/3.10.rst:2284 msgid "``PyParser_ASTFromFile()``" msgstr "``PyParser_ASTFromFile()`` ;" -#: whatsnew/3.10.rst:2284 +#: whatsnew/3.10.rst:2285 msgid "``PyParser_ASTFromFileObject()``" msgstr "``PyParser_ASTFromFileObject()`` ;" -#: whatsnew/3.10.rst:2285 +#: whatsnew/3.10.rst:2286 msgid "``PyParser_ASTFromFilename()``" msgstr "``PyParser_ASTFromFilename()`` ;" -#: whatsnew/3.10.rst:2286 +#: whatsnew/3.10.rst:2287 msgid "``PyParser_ASTFromString()``" msgstr "``PyParser_ASTFromString()`` ;" -#: whatsnew/3.10.rst:2287 +#: whatsnew/3.10.rst:2288 msgid "``PyParser_ASTFromStringObject()``" msgstr "``PyParser_ASTFromStringObject()``." -#: whatsnew/3.10.rst:2289 +#: whatsnew/3.10.rst:2290 msgid "" "These functions were undocumented and excluded from the limited C API. " "(Contributed by Victor Stinner in :issue:`43244`.)" @@ -4243,27 +4250,27 @@ msgstr "" "Ces fonctions étaient non-documentées et exclues de l'API C limitée " "(contribution de *Victor Stinner* dans :issue:`43244`)." -#: whatsnew/3.10.rst:2292 +#: whatsnew/3.10.rst:2293 msgid "Remove the ``pyarena.h`` header file with functions:" msgstr "Retrait du fichier d'en-tête ``pyarena.h`` et des fonctions :" -#: whatsnew/3.10.rst:2294 +#: whatsnew/3.10.rst:2295 msgid "``PyArena_New()``" msgstr "``PyArena_New()`` ;" -#: whatsnew/3.10.rst:2295 +#: whatsnew/3.10.rst:2296 msgid "``PyArena_Free()``" msgstr "``PyArena_Free()`` ;" -#: whatsnew/3.10.rst:2296 +#: whatsnew/3.10.rst:2297 msgid "``PyArena_Malloc()``" msgstr "``PyArena_Malloc()`` ;" -#: whatsnew/3.10.rst:2297 +#: whatsnew/3.10.rst:2298 msgid "``PyArena_AddPyObject()``" msgstr "``PyArena_AddPyObject()``." -#: whatsnew/3.10.rst:2299 +#: whatsnew/3.10.rst:2300 msgid "" "These functions were undocumented, excluded from the limited C API, and were " "only used internally by the compiler. (Contributed by Victor Stinner in :" @@ -4273,7 +4280,7 @@ msgstr "" "n'étaient utilisées que par le compilateur dans l'implémentation interne " "(contribution de *Victor Stinner* dans :issue:`43244`)." -#: whatsnew/3.10.rst:2303 +#: whatsnew/3.10.rst:2304 msgid "" "The ``PyThreadState.use_tracing`` member has been removed to optimize " "Python. (Contributed by Mark Shannon in :issue:`43760`.)"