From ecdbeec7eed4cdc528f1e80700acbb8930381a12 Mon Sep 17 00:00:00 2001 From: Mathieu Dupuy Date: Mon, 20 May 2019 16:33:00 +0200 Subject: [PATCH 01/14] correction mineure: une majuscule pour Windows (#725) --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 59711f6a..1c1f0351 100644 --- a/README.rst +++ b/README.rst @@ -52,7 +52,7 @@ Contributing using Github Prerequisites: - A `github account `_. -- ``git`` `installed `_ (for windows, see +- ``git`` `installed `_ (for Windows, see https://gitforwindows.org/). - A ``.po`` file editor (Use `poedit `_ if you don't already have one). From 294e8b93c05d8d6105c93dd3845adbafc2a7805e Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Thu, 23 May 2019 18:59:19 +0200 Subject: [PATCH 02/14] Make Merge a3488e5902f5c26e5cc289aec2518e7b5058e5d1 (#729) * make merge * Update distributing/index.po * Update extending/extending.po * Apply suggestions from code review * powrap --- .travis.yml | 2 +- c-api/cell.po | 4 +- c-api/datetime.po | 60 ++- c-api/exceptions.po | 510 ++++++++++++------------ c-api/init.po | 249 ++++++------ c-api/intro.po | 160 ++++---- c-api/memory.po | 82 ++-- c-api/unicode.po | 27 +- distributing/index.po | 49 ++- distutils/packageindex.po | 296 +------------- distutils/setupscript.po | 49 ++- distutils/uploading.po | 11 +- extending/embedding.po | 74 ++-- extending/extending.po | 309 ++++++++------- extending/newtypes_tutorial.po | 216 +++++----- faq/extending.po | 14 +- faq/programming.po | 694 +++++++++++++++++---------------- glossary.po | 519 ++++++++++++------------ howto/logging.po | 4 +- howto/unicode.po | 209 +++++----- library/asyncio-eventloop.po | 7 +- library/asyncio-sync.po | 4 +- library/asyncio-task.po | 5 +- library/bz2.po | 50 ++- library/cmath.po | 117 +++--- library/codecs.po | 4 +- library/ctypes.po | 8 +- library/datetime.po | 229 ++++++----- library/doctest.po | 410 +++++++++---------- library/email.generator.po | 4 +- library/email.parser.po | 4 +- library/exceptions.po | 52 +-- library/gettext.po | 182 +++++---- library/http.cookies.po | 109 +++--- library/idle.po | 74 ++-- library/math.po | 7 +- library/os.path.po | 19 +- library/pathlib.po | 5 +- library/pty.po | 61 ++- library/pwd.po | 4 +- library/pyclbr.po | 4 +- library/random.po | 39 +- library/re.po | 234 +++++------ library/signal.po | 179 ++++----- library/sqlite3.po | 238 +++++------ library/stdtypes.po | 7 +- library/subprocess.po | 495 +++++++++++------------ library/sys.po | 8 +- library/textwrap.po | 6 +- library/threading.po | 7 +- library/time.po | 4 +- library/timeit.po | 100 ++--- library/typing.po | 83 ++-- library/unittest.mock.po | 4 +- library/urllib.request.po | 52 +-- library/venv.po | 12 +- library/weakref.po | 26 +- license.po | 5 +- reference/datamodel.po | 13 +- reference/executionmodel.po | 5 +- reference/expressions.po | 40 +- reference/import.po | 93 +++-- reference/lexical_analysis.po | 5 +- reference/simple_stmts.po | 73 ++-- tutorial/introduction.po | 5 +- tutorial/modules.po | 19 +- tutorial/whatnow.po | 19 +- using/windows.po | 553 +++++++++++++------------- 68 files changed, 3640 insertions(+), 3581 deletions(-) diff --git a/.travis.yml b/.travis.yml index 85b5b50b..520bff2f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,4 +11,4 @@ install: script: - powrap --check --quiet **/*.po - pospell -p dict -l fr_FR **/*.po - - make CPYTHON_CLONE=/tmp/cpython/ COMMIT=796698adf + - make CPYTHON_CLONE=/tmp/cpython/ COMMIT=a3488e5902f5c26e5cc289aec2518e7b5058e5d1 diff --git a/c-api/cell.po b/c-api/cell.po index 0e111ec4..44b2efd6 100644 --- a/c-api/cell.po +++ b/c-api/cell.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-02 22:11+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-05-09 10:14+0200\n" +"Last-Translator: \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: \n" "X-Generator: Poedit 2.2.1\n" #: ../Doc/c-api/cell.rst:6 diff --git a/c-api/datetime.po b/c-api/datetime.po index 553aa474..8096f7d2 100644 --- a/c-api/datetime.po +++ b/c-api/datetime.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-01-11 20:51+0100\n" "Last-Translator: Louis Portay \n" "Language-Team: FRENCH \n" @@ -156,6 +156,15 @@ msgstr "" "l'heure, la minute, la seconde et la microseconde spécifiés." #: ../Doc/c-api/datetime.rst:103 +#, fuzzy +msgid "" +"Return a :class:`datetime.datetime` object with the specified year, month, " +"day, hour, minute, second, microsecond and fold." +msgstr "" +"Renvoie un objet :class:`datetime.datetime` avec l'année, le mois, le jour, " +"l'heure, la minute, la seconde, la microseconde et le passage spécifiés." + +#: ../Doc/c-api/datetime.rst:111 msgid "" "Return a :class:`datetime.time` object with the specified hour, minute, " "second and microsecond." @@ -163,7 +172,16 @@ msgstr "" "Renvoie un objet :class:`datetime.time` avec l'heure, la minute, la seconde " "et la microseconde spécifiées." -#: ../Doc/c-api/datetime.rst:109 +#: ../Doc/c-api/datetime.rst:117 +#, fuzzy +msgid "" +"Return a :class:`datetime.time` object with the specified hour, minute, " +"second, microsecond and fold." +msgstr "" +"Renvoie un objet :class:`datetime.time` avec l'heure, la minute, la seconde, " +"la microseconde et le passage spécifiés." + +#: ../Doc/c-api/datetime.rst:125 msgid "" "Return a :class:`datetime.timedelta` object representing the given number of " "days, seconds and microseconds. Normalization is performed so that the " @@ -175,7 +193,7 @@ msgstr "" "normalisé pour que le nombre de microsecondes et de secondes tombe dans la " "plage documentée pour les objets :class:`datetime.timedelta`." -#: ../Doc/c-api/datetime.rst:116 +#: ../Doc/c-api/datetime.rst:132 msgid "" "Return a :class:`datetime.timezone` object with an unnamed fixed offset " "represented by the *offset* argument." @@ -183,7 +201,7 @@ msgstr "" "Renvoie un objet :class:`datetime.timezone` avec un décalage anonyme fixe " "représenté par l'argument *offset*." -#: ../Doc/c-api/datetime.rst:123 +#: ../Doc/c-api/datetime.rst:139 msgid "" "Return a :class:`datetime.timezone` object with a fixed offset represented " "by the *offset* argument and with tzname *name*." @@ -191,7 +209,7 @@ msgstr "" "Renvoie un objet :class:`datetime.timezone` avec un décalage fixe représenté " "par l'argument *offset* et avec le nom de fuseau horaire *name*." -#: ../Doc/c-api/datetime.rst:129 +#: ../Doc/c-api/datetime.rst:145 msgid "" "Macros to extract fields from date objects. The argument must be an " "instance of :c:data:`PyDateTime_Date`, including subclasses (such as :c:data:" @@ -203,19 +221,19 @@ msgstr "" "`PyDateTime_DateTime`). L'argument ne doit pas être *NULL*, et le type n'est " "pas vérifié :" -#: ../Doc/c-api/datetime.rst:136 +#: ../Doc/c-api/datetime.rst:152 msgid "Return the year, as a positive int." msgstr "Renvoie l'année, sous forme d'entier positif." -#: ../Doc/c-api/datetime.rst:141 +#: ../Doc/c-api/datetime.rst:157 msgid "Return the month, as an int from 1 through 12." msgstr "Renvoie le mois, sous forme d'entier allant de 1 à 12." -#: ../Doc/c-api/datetime.rst:146 +#: ../Doc/c-api/datetime.rst:162 msgid "Return the day, as an int from 1 through 31." msgstr "Renvoie le jour, sous forme d'entier allant de 1 à 31." -#: ../Doc/c-api/datetime.rst:149 +#: ../Doc/c-api/datetime.rst:165 msgid "" "Macros to extract fields from datetime objects. The argument must be an " "instance of :c:data:`PyDateTime_DateTime`, including subclasses. The " @@ -225,23 +243,23 @@ msgstr "" "une instance de :c:data:`PyDateTime_DateTime` ou une sous-classe de celle-" "ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" -#: ../Doc/c-api/datetime.rst:155 ../Doc/c-api/datetime.rst:179 +#: ../Doc/c-api/datetime.rst:171 ../Doc/c-api/datetime.rst:195 msgid "Return the hour, as an int from 0 through 23." msgstr "Renvoie l'heure, sous forme d'entier allant de 0 à 23." -#: ../Doc/c-api/datetime.rst:160 ../Doc/c-api/datetime.rst:184 +#: ../Doc/c-api/datetime.rst:176 ../Doc/c-api/datetime.rst:200 msgid "Return the minute, as an int from 0 through 59." msgstr "Renvoie la minute, sous forme d'entier allant de 0 à 59." -#: ../Doc/c-api/datetime.rst:165 ../Doc/c-api/datetime.rst:189 +#: ../Doc/c-api/datetime.rst:181 ../Doc/c-api/datetime.rst:205 msgid "Return the second, as an int from 0 through 59." msgstr "Renvoie la seconde, sous forme d'entier allant de 0 à 59." -#: ../Doc/c-api/datetime.rst:170 ../Doc/c-api/datetime.rst:194 +#: ../Doc/c-api/datetime.rst:186 ../Doc/c-api/datetime.rst:210 msgid "Return the microsecond, as an int from 0 through 999999." msgstr "Renvoie la microseconde, sous forme d'entier allant de 0 à 999999." -#: ../Doc/c-api/datetime.rst:173 +#: ../Doc/c-api/datetime.rst:189 msgid "" "Macros to extract fields from time objects. The argument must be an " "instance of :c:data:`PyDateTime_Time`, including subclasses. The argument " @@ -251,7 +269,7 @@ msgstr "" "instance de :c:data:`PyDateTime_Time` ou une sous-classe de celle-ci. " "L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" -#: ../Doc/c-api/datetime.rst:197 +#: ../Doc/c-api/datetime.rst:213 msgid "" "Macros to extract fields from time delta objects. The argument must be an " "instance of :c:data:`PyDateTime_Delta`, including subclasses. The argument " @@ -261,26 +279,26 @@ msgstr "" "être une instance de :c:data:`PyDateTime_Delta` ou une sous-classe de celle-" "ci. L'argument ne doit pas être *NULL*, et le type n'est pas vérifié :" -#: ../Doc/c-api/datetime.rst:203 +#: ../Doc/c-api/datetime.rst:219 msgid "Return the number of days, as an int from -999999999 to 999999999." msgstr "" "Renvoie le nombre de jours, sous forme d'entier allant de -999999999 à " "999999999." -#: ../Doc/c-api/datetime.rst:210 +#: ../Doc/c-api/datetime.rst:226 msgid "Return the number of seconds, as an int from 0 through 86399." msgstr "Renvoie le nombre de secondes sous forme d'entier allant de 0 à 86399." -#: ../Doc/c-api/datetime.rst:217 +#: ../Doc/c-api/datetime.rst:233 msgid "Return the number of microseconds, as an int from 0 through 999999." msgstr "" "Renvoie le nombre de microsecondes, sous forme d'entier allant de 0 à 999999." -#: ../Doc/c-api/datetime.rst:222 +#: ../Doc/c-api/datetime.rst:238 msgid "Macros for the convenience of modules implementing the DB API:" msgstr "Macros de confort pour les modules implémentant l'API DB :" -#: ../Doc/c-api/datetime.rst:226 +#: ../Doc/c-api/datetime.rst:242 msgid "" "Create and return a new :class:`datetime.datetime` object given an argument " "tuple suitable for passing to :meth:`datetime.datetime.fromtimestamp()`." @@ -288,7 +306,7 @@ msgstr "" "Crée et renvoie un nouvel objet :class:`datetime.datetime` à partir d'un n-" "uplet qui peut être passé à :meth:`datetime.datetime.fromtimestamp()`." -#: ../Doc/c-api/datetime.rst:232 +#: ../Doc/c-api/datetime.rst:248 msgid "" "Create and return a new :class:`datetime.date` object given an argument " "tuple suitable for passing to :meth:`datetime.date.fromtimestamp()`." diff --git a/c-api/exceptions.po b/c-api/exceptions.po index 271dec72..25cdcdd3 100644 --- a/c-api/exceptions.po +++ b/c-api/exceptions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-10-04 12:24+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -112,18 +112,22 @@ msgid "" "*obj* will be printed in the warning message." msgstr "" -#: ../Doc/c-api/exceptions.rst:86 +#: ../Doc/c-api/exceptions.rst:84 +msgid "An exception must be set when calling this function." +msgstr "" + +#: ../Doc/c-api/exceptions.rst:88 msgid "Raising exceptions" msgstr "Lever des exceptions" -#: ../Doc/c-api/exceptions.rst:88 +#: ../Doc/c-api/exceptions.rst:90 msgid "" "These functions help you set the current thread's error indicator. For " "convenience, some of these functions will always return a NULL pointer for " "use in a ``return`` statement." msgstr "" -#: ../Doc/c-api/exceptions.rst:95 +#: ../Doc/c-api/exceptions.rst:97 msgid "" "This is the most common way to set the error indicator. The first argument " "specifies the exception type; it is normally one of the standard exceptions, " @@ -132,13 +136,13 @@ msgid "" "``'utf-8``'." msgstr "" -#: ../Doc/c-api/exceptions.rst:103 +#: ../Doc/c-api/exceptions.rst:105 msgid "" "This function is similar to :c:func:`PyErr_SetString` but lets you specify " "an arbitrary Python object for the \"value\" of the exception." msgstr "" -#: ../Doc/c-api/exceptions.rst:109 +#: ../Doc/c-api/exceptions.rst:111 msgid "" "This function sets the error indicator and returns *NULL*. *exception* " "should be a Python exception class. The *format* and subsequent parameters " @@ -146,31 +150,31 @@ msgid "" "c:func:`PyUnicode_FromFormat`. *format* is an ASCII-encoded string." msgstr "" -#: ../Doc/c-api/exceptions.rst:118 +#: ../Doc/c-api/exceptions.rst:120 msgid "" "Same as :c:func:`PyErr_Format`, but taking a :c:type:`va_list` argument " "rather than a variable number of arguments." msgstr "" -#: ../Doc/c-api/exceptions.rst:126 +#: ../Doc/c-api/exceptions.rst:128 msgid "This is a shorthand for ``PyErr_SetObject(type, Py_None)``." msgstr "" -#: ../Doc/c-api/exceptions.rst:131 +#: ../Doc/c-api/exceptions.rst:133 msgid "" "This is a shorthand for ``PyErr_SetString(PyExc_TypeError, message)``, where " "*message* indicates that a built-in operation was invoked with an illegal " "argument. It is mostly for internal use." msgstr "" -#: ../Doc/c-api/exceptions.rst:138 +#: ../Doc/c-api/exceptions.rst:140 msgid "" "This is a shorthand for ``PyErr_SetNone(PyExc_MemoryError)``; it returns " "*NULL* so an object allocation function can write ``return PyErr_NoMemory();" "`` when it runs out of memory." msgstr "" -#: ../Doc/c-api/exceptions.rst:147 +#: ../Doc/c-api/exceptions.rst:149 msgid "" "This is a convenience function to raise an exception when a C library " "function has returned an error and set the C variable :c:data:`errno`. It " @@ -184,7 +188,7 @@ msgid "" "``return PyErr_SetFromErrno(type);`` when the system call returns an error." msgstr "" -#: ../Doc/c-api/exceptions.rst:161 +#: ../Doc/c-api/exceptions.rst:163 msgid "" "Similar to :c:func:`PyErr_SetFromErrno`, with the additional behavior that " "if *filenameObject* is not *NULL*, it is passed to the constructor of *type* " @@ -192,21 +196,21 @@ msgid "" "to define the :attr:`filename` attribute of the exception instance." msgstr "" -#: ../Doc/c-api/exceptions.rst:170 +#: ../Doc/c-api/exceptions.rst:172 msgid "" "Similar to :c:func:`PyErr_SetFromErrnoWithFilenameObject`, but takes a " "second filename object, for raising errors when a function that takes two " "filenames fails." msgstr "" -#: ../Doc/c-api/exceptions.rst:179 +#: ../Doc/c-api/exceptions.rst:181 msgid "" "Similar to :c:func:`PyErr_SetFromErrnoWithFilenameObject`, but the filename " "is given as a C string. *filename* is decoded from the filesystem encoding " "(:func:`os.fsdecode`)." msgstr "" -#: ../Doc/c-api/exceptions.rst:186 +#: ../Doc/c-api/exceptions.rst:188 msgid "" "This is a convenience function to raise :exc:`WindowsError`. If called with " "*ierr* of :c:data:`0`, the error code returned by a call to :c:func:" @@ -219,44 +223,44 @@ msgid "" "returns *NULL*." msgstr "" -#: ../Doc/c-api/exceptions.rst:195 ../Doc/c-api/exceptions.rst:203 -#: ../Doc/c-api/exceptions.rst:212 ../Doc/c-api/exceptions.rst:220 -#: ../Doc/c-api/exceptions.rst:229 ../Doc/c-api/exceptions.rst:238 +#: ../Doc/c-api/exceptions.rst:197 ../Doc/c-api/exceptions.rst:205 +#: ../Doc/c-api/exceptions.rst:214 ../Doc/c-api/exceptions.rst:222 +#: ../Doc/c-api/exceptions.rst:231 ../Doc/c-api/exceptions.rst:240 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: ../Doc/c-api/exceptions.rst:200 +#: ../Doc/c-api/exceptions.rst:202 msgid "" "Similar to :c:func:`PyErr_SetFromWindowsErr`, with an additional parameter " "specifying the exception type to be raised." msgstr "" -#: ../Doc/c-api/exceptions.rst:208 +#: ../Doc/c-api/exceptions.rst:210 msgid "" "Similar to :c:func:`PyErr_SetFromWindowsErrWithFilenameObject`, but the " "filename is given as a C string. *filename* is decoded from the filesystem " "encoding (:func:`os.fsdecode`)." msgstr "" -#: ../Doc/c-api/exceptions.rst:217 +#: ../Doc/c-api/exceptions.rst:219 msgid "" "Similar to :c:func:`PyErr_SetFromWindowsErrWithFilenameObject`, with an " "additional parameter specifying the exception type to be raised." msgstr "" -#: ../Doc/c-api/exceptions.rst:225 +#: ../Doc/c-api/exceptions.rst:227 msgid "" "Similar to :c:func:`PyErr_SetExcFromWindowsErrWithFilenameObject`, but " "accepts a second filename object." msgstr "" -#: ../Doc/c-api/exceptions.rst:235 +#: ../Doc/c-api/exceptions.rst:237 msgid "" "Similar to :c:func:`PyErr_SetFromWindowsErrWithFilename`, with an additional " "parameter specifying the exception type to be raised." msgstr "" -#: ../Doc/c-api/exceptions.rst:243 +#: ../Doc/c-api/exceptions.rst:245 msgid "" "This is a convenience function to raise :exc:`ImportError`. *msg* will be " "set as the exception's message string. *name* and *path*, both of which can " @@ -264,7 +268,7 @@ msgid "" "``path`` attributes." msgstr "" -#: ../Doc/c-api/exceptions.rst:253 +#: ../Doc/c-api/exceptions.rst:255 msgid "" "Set file, line, and offset information for the current exception. If the " "current exception is not a :exc:`SyntaxError`, then it sets additional " @@ -272,19 +276,19 @@ msgid "" "is a :exc:`SyntaxError`." msgstr "" -#: ../Doc/c-api/exceptions.rst:263 +#: ../Doc/c-api/exceptions.rst:265 msgid "" "Like :c:func:`PyErr_SyntaxLocationObject`, but *filename* is a byte string " "decoded from the filesystem encoding (:func:`os.fsdecode`)." msgstr "" -#: ../Doc/c-api/exceptions.rst:271 +#: ../Doc/c-api/exceptions.rst:273 msgid "" "Like :c:func:`PyErr_SyntaxLocationEx`, but the col_offset parameter is " "omitted." msgstr "" -#: ../Doc/c-api/exceptions.rst:277 +#: ../Doc/c-api/exceptions.rst:279 msgid "" "This is a shorthand for ``PyErr_SetString(PyExc_SystemError, message)``, " "where *message* indicates that an internal operation (e.g. a Python/C API " @@ -292,11 +296,11 @@ msgid "" "use." msgstr "" -#: ../Doc/c-api/exceptions.rst:284 +#: ../Doc/c-api/exceptions.rst:286 msgid "Issuing warnings" msgstr "" -#: ../Doc/c-api/exceptions.rst:286 +#: ../Doc/c-api/exceptions.rst:288 msgid "" "Use these functions to issue warnings from C code. They mirror similar " "functions exported by the Python :mod:`warnings` module. They normally " @@ -312,7 +316,7 @@ msgid "" "return an error value)." msgstr "" -#: ../Doc/c-api/exceptions.rst:301 +#: ../Doc/c-api/exceptions.rst:303 msgid "" "Issue a warning message. The *category* argument is a warning category (see " "below) or *NULL*; the *message* argument is a UTF-8 encoded string. " @@ -322,7 +326,7 @@ msgid "" "`PyErr_WarnEx`, 2 is the function above that, and so forth." msgstr "" -#: ../Doc/c-api/exceptions.rst:308 +#: ../Doc/c-api/exceptions.rst:310 msgid "" "Warning categories must be subclasses of :c:data:`PyExc_Warning`; :c:data:" "`PyExc_Warning` is a subclass of :c:data:`PyExc_Exception`; the default " @@ -331,20 +335,20 @@ msgid "" "enumerated at :ref:`standardwarningcategories`." msgstr "" -#: ../Doc/c-api/exceptions.rst:314 +#: ../Doc/c-api/exceptions.rst:316 msgid "" "For information about warning control, see the documentation for the :mod:" "`warnings` module and the :option:`-W` option in the command line " "documentation. There is no C API for warning control." msgstr "" -#: ../Doc/c-api/exceptions.rst:320 +#: ../Doc/c-api/exceptions.rst:322 msgid "" "Much like :c:func:`PyErr_SetImportError` but this function allows for " "specifying a subclass of :exc:`ImportError` to raise." msgstr "" -#: ../Doc/c-api/exceptions.rst:328 +#: ../Doc/c-api/exceptions.rst:330 msgid "" "Issue a warning message with explicit control over all warning attributes. " "This is a straightforward wrapper around the Python function :func:`warnings." @@ -352,31 +356,31 @@ msgid "" "arguments may be set to *NULL* to get the default effect described there." msgstr "" -#: ../Doc/c-api/exceptions.rst:339 +#: ../Doc/c-api/exceptions.rst:341 msgid "" "Similar to :c:func:`PyErr_WarnExplicitObject` except that *message* and " "*module* are UTF-8 encoded strings, and *filename* is decoded from the " "filesystem encoding (:func:`os.fsdecode`)." msgstr "" -#: ../Doc/c-api/exceptions.rst:346 +#: ../Doc/c-api/exceptions.rst:348 msgid "" "Function similar to :c:func:`PyErr_WarnEx`, but use :c:func:" "`PyUnicode_FromFormat` to format the warning message. *format* is an ASCII-" "encoded string." msgstr "" -#: ../Doc/c-api/exceptions.rst:355 +#: ../Doc/c-api/exceptions.rst:357 msgid "" "Function similar to :c:func:`PyErr_WarnFormat`, but *category* is :exc:" "`ResourceWarning` and pass *source* to :func:`warnings.WarningMessage`." msgstr "" -#: ../Doc/c-api/exceptions.rst:362 +#: ../Doc/c-api/exceptions.rst:364 msgid "Querying the error indicator" msgstr "" -#: ../Doc/c-api/exceptions.rst:366 +#: ../Doc/c-api/exceptions.rst:368 msgid "" "Test whether the error indicator is set. If set, return the exception " "*type* (the first argument to the last call to one of the :c:func:`PyErr_Set" @@ -385,7 +389,7 @@ msgid "" "func:`Py_DECREF` it." msgstr "" -#: ../Doc/c-api/exceptions.rst:374 +#: ../Doc/c-api/exceptions.rst:376 msgid "" "Do not compare the return value to a specific exception; use :c:func:" "`PyErr_ExceptionMatches` instead, shown below. (The comparison could easily " @@ -393,14 +397,14 @@ msgid "" "of a class exception, or it may be a subclass of the expected exception.)" msgstr "" -#: ../Doc/c-api/exceptions.rst:382 +#: ../Doc/c-api/exceptions.rst:384 msgid "" "Equivalent to ``PyErr_GivenExceptionMatches(PyErr_Occurred(), exc)``. This " "should only be called when an exception is actually set; a memory access " "violation will occur if no exception has been raised." msgstr "" -#: ../Doc/c-api/exceptions.rst:389 +#: ../Doc/c-api/exceptions.rst:391 msgid "" "Return true if the *given* exception matches the exception type in *exc*. " "If *exc* is a class object, this also returns true when *given* is an " @@ -408,7 +412,7 @@ msgid "" "tuple (and recursively in subtuples) are searched for a match." msgstr "" -#: ../Doc/c-api/exceptions.rst:397 +#: ../Doc/c-api/exceptions.rst:399 msgid "" "Retrieve the error indicator into three variables whose addresses are " "passed. If the error indicator is not set, set all three variables to " @@ -417,14 +421,14 @@ msgid "" "the type object is not." msgstr "" -#: ../Doc/c-api/exceptions.rst:404 +#: ../Doc/c-api/exceptions.rst:406 msgid "" "This function is normally only used by code that needs to catch exceptions " "or by code that needs to save and restore the error indicator temporarily, e." "g.::" msgstr "" -#: ../Doc/c-api/exceptions.rst:419 +#: ../Doc/c-api/exceptions.rst:421 msgid "" "Set the error indicator from the three objects. If the error indicator is " "already set, it is cleared first. If the objects are *NULL*, the error " @@ -437,14 +441,14 @@ msgid "" "function. I warned you.)" msgstr "" -#: ../Doc/c-api/exceptions.rst:431 +#: ../Doc/c-api/exceptions.rst:433 msgid "" "This function is normally only used by code that needs to save and restore " "the error indicator temporarily. Use :c:func:`PyErr_Fetch` to save the " "current error indicator." msgstr "" -#: ../Doc/c-api/exceptions.rst:438 +#: ../Doc/c-api/exceptions.rst:440 msgid "" "Under certain circumstances, the values returned by :c:func:`PyErr_Fetch` " "below can be \"unnormalized\", meaning that ``*exc`` is a class object but " @@ -454,14 +458,14 @@ msgid "" "improve performance." msgstr "" -#: ../Doc/c-api/exceptions.rst:446 +#: ../Doc/c-api/exceptions.rst:448 msgid "" "This function *does not* implicitly set the ``__traceback__`` attribute on " "the exception value. If setting the traceback appropriately is desired, the " "following additional snippet is needed::" msgstr "" -#: ../Doc/c-api/exceptions.rst:457 +#: ../Doc/c-api/exceptions.rst:459 msgid "" "Retrieve the exception info, as known from ``sys.exc_info()``. This refers " "to an exception that was *already caught*, not to an exception that was " @@ -469,7 +473,7 @@ msgid "" "may be *NULL*. Does not modify the exception info state." msgstr "" -#: ../Doc/c-api/exceptions.rst:464 +#: ../Doc/c-api/exceptions.rst:466 msgid "" "This function is not normally used by code that wants to handle exceptions. " "Rather, it can be used when code needs to save and restore the exception " @@ -477,7 +481,7 @@ msgid "" "exception state." msgstr "" -#: ../Doc/c-api/exceptions.rst:474 +#: ../Doc/c-api/exceptions.rst:476 msgid "" "Set the exception info, as known from ``sys.exc_info()``. This refers to an " "exception that was *already caught*, not to an exception that was freshly " @@ -486,7 +490,7 @@ msgid "" "about the three arguments, see :c:func:`PyErr_Restore`." msgstr "" -#: ../Doc/c-api/exceptions.rst:482 +#: ../Doc/c-api/exceptions.rst:484 msgid "" "This function is not normally used by code that wants to handle exceptions. " "Rather, it can be used when code needs to save and restore the exception " @@ -494,11 +498,11 @@ msgid "" "state." msgstr "" -#: ../Doc/c-api/exceptions.rst:491 +#: ../Doc/c-api/exceptions.rst:493 msgid "Signal Handling" msgstr "Traitement des signaux" -#: ../Doc/c-api/exceptions.rst:501 +#: ../Doc/c-api/exceptions.rst:503 msgid "" "This function interacts with Python's signal handling. It checks whether a " "signal has been sent to the processes and if so, invokes the corresponding " @@ -510,7 +514,7 @@ msgid "" "may not be cleared if it was previously set." msgstr "" -#: ../Doc/c-api/exceptions.rst:517 +#: ../Doc/c-api/exceptions.rst:519 msgid "" "This function simulates the effect of a :const:`SIGINT` signal arriving --- " "the next time :c:func:`PyErr_CheckSignals` is called, :exc:" @@ -518,14 +522,14 @@ msgid "" "interpreter lock." msgstr "" -#: ../Doc/c-api/exceptions.rst:527 +#: ../Doc/c-api/exceptions.rst:529 msgid "" "This utility function specifies a file descriptor to which the signal number " "is written as a single byte whenever a signal is received. *fd* must be non-" "blocking. It returns the previous such file descriptor." msgstr "" -#: ../Doc/c-api/exceptions.rst:531 +#: ../Doc/c-api/exceptions.rst:533 msgid "" "The value ``-1`` disables the feature; this is the initial state. This is " "equivalent to :func:`signal.set_wakeup_fd` in Python, but without any error " @@ -533,15 +537,15 @@ msgid "" "be called from the main thread." msgstr "" -#: ../Doc/c-api/exceptions.rst:536 +#: ../Doc/c-api/exceptions.rst:538 msgid "On Windows, the function now also supports socket handles." msgstr "" -#: ../Doc/c-api/exceptions.rst:541 +#: ../Doc/c-api/exceptions.rst:543 msgid "Exception Classes" msgstr "" -#: ../Doc/c-api/exceptions.rst:545 +#: ../Doc/c-api/exceptions.rst:547 msgid "" "This utility function creates and returns a new exception class. The *name* " "argument must be the name of the new exception, a C string of the form " @@ -550,7 +554,7 @@ msgid "" "as :c:data:`PyExc_Exception`)." msgstr "" -#: ../Doc/c-api/exceptions.rst:551 +#: ../Doc/c-api/exceptions.rst:553 msgid "" "The :attr:`__module__` attribute of the new class is set to the first part " "(up to the last dot) of the *name* argument, and the class name is set to " @@ -560,31 +564,31 @@ msgid "" "variables and methods." msgstr "" -#: ../Doc/c-api/exceptions.rst:560 +#: ../Doc/c-api/exceptions.rst:562 msgid "" "Same as :c:func:`PyErr_NewException`, except that the new exception class " "can easily be given a docstring: If *doc* is non-*NULL*, it will be used as " "the docstring for the exception class." msgstr "" -#: ../Doc/c-api/exceptions.rst:568 +#: ../Doc/c-api/exceptions.rst:570 msgid "Exception Objects" msgstr "Objets exception" -#: ../Doc/c-api/exceptions.rst:572 +#: ../Doc/c-api/exceptions.rst:574 msgid "" "Return the traceback associated with the exception as a new reference, as " "accessible from Python through :attr:`__traceback__`. If there is no " "traceback associated, this returns *NULL*." msgstr "" -#: ../Doc/c-api/exceptions.rst:579 +#: ../Doc/c-api/exceptions.rst:581 msgid "" "Set the traceback associated with the exception to *tb*. Use ``Py_None`` to " "clear it." msgstr "" -#: ../Doc/c-api/exceptions.rst:585 +#: ../Doc/c-api/exceptions.rst:587 msgid "" "Return the context (another exception instance during whose handling *ex* " "was raised) associated with the exception as a new reference, as accessible " @@ -592,111 +596,111 @@ msgid "" "this returns *NULL*." msgstr "" -#: ../Doc/c-api/exceptions.rst:593 +#: ../Doc/c-api/exceptions.rst:595 msgid "" "Set the context associated with the exception to *ctx*. Use *NULL* to clear " "it. There is no type check to make sure that *ctx* is an exception " "instance. This steals a reference to *ctx*." msgstr "" -#: ../Doc/c-api/exceptions.rst:600 +#: ../Doc/c-api/exceptions.rst:602 msgid "" "Return the cause (either an exception instance, or :const:`None`, set by " "``raise ... from ...``) associated with the exception as a new reference, as " "accessible from Python through :attr:`__cause__`." msgstr "" -#: ../Doc/c-api/exceptions.rst:607 +#: ../Doc/c-api/exceptions.rst:609 msgid "" "Set the cause associated with the exception to *cause*. Use *NULL* to clear " "it. There is no type check to make sure that *cause* is either an exception " "instance or :const:`None`. This steals a reference to *cause*." msgstr "" -#: ../Doc/c-api/exceptions.rst:611 +#: ../Doc/c-api/exceptions.rst:613 msgid "" ":attr:`__suppress_context__` is implicitly set to ``True`` by this function." msgstr "" -#: ../Doc/c-api/exceptions.rst:617 +#: ../Doc/c-api/exceptions.rst:619 msgid "Unicode Exception Objects" msgstr "Objets exception Unicode" -#: ../Doc/c-api/exceptions.rst:619 +#: ../Doc/c-api/exceptions.rst:621 msgid "" "The following functions are used to create and modify Unicode exceptions " "from C." msgstr "" -#: ../Doc/c-api/exceptions.rst:623 +#: ../Doc/c-api/exceptions.rst:625 msgid "" "Create a :class:`UnicodeDecodeError` object with the attributes *encoding*, " "*object*, *length*, *start*, *end* and *reason*. *encoding* and *reason* are " "UTF-8 encoded strings." msgstr "" -#: ../Doc/c-api/exceptions.rst:629 +#: ../Doc/c-api/exceptions.rst:631 msgid "" "Create a :class:`UnicodeEncodeError` object with the attributes *encoding*, " "*object*, *length*, *start*, *end* and *reason*. *encoding* and *reason* are " "UTF-8 encoded strings." msgstr "" -#: ../Doc/c-api/exceptions.rst:635 +#: ../Doc/c-api/exceptions.rst:637 msgid "" "Create a :class:`UnicodeTranslateError` object with the attributes *object*, " "*length*, *start*, *end* and *reason*. *reason* is a UTF-8 encoded string." msgstr "" -#: ../Doc/c-api/exceptions.rst:641 +#: ../Doc/c-api/exceptions.rst:643 msgid "Return the *encoding* attribute of the given exception object." msgstr "" -#: ../Doc/c-api/exceptions.rst:647 +#: ../Doc/c-api/exceptions.rst:649 msgid "Return the *object* attribute of the given exception object." msgstr "" -#: ../Doc/c-api/exceptions.rst:653 +#: ../Doc/c-api/exceptions.rst:655 msgid "" "Get the *start* attribute of the given exception object and place it into *" "\\*start*. *start* must not be *NULL*. Return ``0`` on success, ``-1`` on " "failure." msgstr "" -#: ../Doc/c-api/exceptions.rst:661 +#: ../Doc/c-api/exceptions.rst:663 msgid "" "Set the *start* attribute of the given exception object to *start*. Return " "``0`` on success, ``-1`` on failure." msgstr "" -#: ../Doc/c-api/exceptions.rst:668 +#: ../Doc/c-api/exceptions.rst:670 msgid "" "Get the *end* attribute of the given exception object and place it into *" "\\*end*. *end* must not be *NULL*. Return ``0`` on success, ``-1`` on " "failure." msgstr "" -#: ../Doc/c-api/exceptions.rst:676 +#: ../Doc/c-api/exceptions.rst:678 msgid "" "Set the *end* attribute of the given exception object to *end*. Return " "``0`` on success, ``-1`` on failure." msgstr "" -#: ../Doc/c-api/exceptions.rst:683 +#: ../Doc/c-api/exceptions.rst:685 msgid "Return the *reason* attribute of the given exception object." msgstr "" -#: ../Doc/c-api/exceptions.rst:689 +#: ../Doc/c-api/exceptions.rst:691 msgid "" "Set the *reason* attribute of the given exception object to *reason*. " "Return ``0`` on success, ``-1`` on failure." msgstr "" -#: ../Doc/c-api/exceptions.rst:694 +#: ../Doc/c-api/exceptions.rst:696 msgid "Recursion Control" msgstr "Contrôle de la récursion" -#: ../Doc/c-api/exceptions.rst:696 +#: ../Doc/c-api/exceptions.rst:698 msgid "" "These two functions provide a way to perform safe recursive calls at the C " "level, both in the core and in extension modules. They are needed if the " @@ -704,38 +708,38 @@ msgid "" "recursion depth automatically)." msgstr "" -#: ../Doc/c-api/exceptions.rst:703 +#: ../Doc/c-api/exceptions.rst:705 msgid "Marks a point where a recursive C-level call is about to be performed." msgstr "" -#: ../Doc/c-api/exceptions.rst:705 +#: ../Doc/c-api/exceptions.rst:707 msgid "" "If :const:`USE_STACKCHECK` is defined, this function checks if the OS stack " "overflowed using :c:func:`PyOS_CheckStack`. In this is the case, it sets a :" "exc:`MemoryError` and returns a nonzero value." msgstr "" -#: ../Doc/c-api/exceptions.rst:709 +#: ../Doc/c-api/exceptions.rst:711 msgid "" "The function then checks if the recursion limit is reached. If this is the " "case, a :exc:`RecursionError` is set and a nonzero value is returned. " "Otherwise, zero is returned." msgstr "" -#: ../Doc/c-api/exceptions.rst:713 +#: ../Doc/c-api/exceptions.rst:715 msgid "" "*where* should be a string such as ``\" in instance check\"`` to be " "concatenated to the :exc:`RecursionError` message caused by the recursion " "depth limit." msgstr "" -#: ../Doc/c-api/exceptions.rst:719 +#: ../Doc/c-api/exceptions.rst:721 msgid "" "Ends a :c:func:`Py_EnterRecursiveCall`. Must be called once for each " "*successful* invocation of :c:func:`Py_EnterRecursiveCall`." msgstr "" -#: ../Doc/c-api/exceptions.rst:722 +#: ../Doc/c-api/exceptions.rst:724 msgid "" "Properly implementing :c:member:`~PyTypeObject.tp_repr` for container types " "requires special recursion handling. In addition to protecting the stack, :" @@ -744,13 +748,13 @@ msgid "" "Effectively, these are the C equivalent to :func:`reprlib.recursive_repr`." msgstr "" -#: ../Doc/c-api/exceptions.rst:730 +#: ../Doc/c-api/exceptions.rst:732 msgid "" "Called at the beginning of the :c:member:`~PyTypeObject.tp_repr` " "implementation to detect cycles." msgstr "" -#: ../Doc/c-api/exceptions.rst:733 +#: ../Doc/c-api/exceptions.rst:735 msgid "" "If the object has already been processed, the function returns a positive " "integer. In that case the :c:member:`~PyTypeObject.tp_repr` implementation " @@ -758,30 +762,30 @@ msgid "" "`dict` objects return ``{...}`` and :class:`list` objects return ``[...]``." msgstr "" -#: ../Doc/c-api/exceptions.rst:739 +#: ../Doc/c-api/exceptions.rst:741 msgid "" "The function will return a negative integer if the recursion limit is " "reached. In that case the :c:member:`~PyTypeObject.tp_repr` implementation " "should typically return ``NULL``." msgstr "" -#: ../Doc/c-api/exceptions.rst:743 +#: ../Doc/c-api/exceptions.rst:745 msgid "" "Otherwise, the function returns zero and the :c:member:`~PyTypeObject." "tp_repr` implementation can continue normally." msgstr "" -#: ../Doc/c-api/exceptions.rst:748 +#: ../Doc/c-api/exceptions.rst:750 msgid "" "Ends a :c:func:`Py_ReprEnter`. Must be called once for each invocation of :" "c:func:`Py_ReprEnter` that returns zero." msgstr "" -#: ../Doc/c-api/exceptions.rst:755 +#: ../Doc/c-api/exceptions.rst:757 msgid "Standard Exceptions" msgstr "Exceptions standards" -#: ../Doc/c-api/exceptions.rst:757 +#: ../Doc/c-api/exceptions.rst:759 msgid "" "All standard Python exceptions are available as global variables whose names " "are ``PyExc_`` followed by the Python exception name. These have the type :" @@ -789,455 +793,455 @@ msgid "" "are all the variables:" msgstr "" -#: ../Doc/c-api/exceptions.rst:818 ../Doc/c-api/exceptions.rst:951 -#: ../Doc/c-api/exceptions.rst:999 +#: ../Doc/c-api/exceptions.rst:820 ../Doc/c-api/exceptions.rst:953 +#: ../Doc/c-api/exceptions.rst:1001 msgid "C Name" msgstr "Nom C" -#: ../Doc/c-api/exceptions.rst:818 ../Doc/c-api/exceptions.rst:999 +#: ../Doc/c-api/exceptions.rst:820 ../Doc/c-api/exceptions.rst:1001 msgid "Python Name" msgstr "Nom Python" -#: ../Doc/c-api/exceptions.rst:818 ../Doc/c-api/exceptions.rst:951 -#: ../Doc/c-api/exceptions.rst:999 +#: ../Doc/c-api/exceptions.rst:820 ../Doc/c-api/exceptions.rst:953 +#: ../Doc/c-api/exceptions.rst:1001 msgid "Notes" msgstr "Notes" -#: ../Doc/c-api/exceptions.rst:820 +#: ../Doc/c-api/exceptions.rst:822 msgid ":c:data:`PyExc_BaseException`" msgstr ":c:data:`PyExc_BaseException`" -#: ../Doc/c-api/exceptions.rst:820 +#: ../Doc/c-api/exceptions.rst:822 msgid ":exc:`BaseException`" msgstr ":exc:`BaseException`" -#: ../Doc/c-api/exceptions.rst:820 ../Doc/c-api/exceptions.rst:822 -#: ../Doc/c-api/exceptions.rst:824 ../Doc/c-api/exceptions.rst:870 -#: ../Doc/c-api/exceptions.rst:882 ../Doc/c-api/exceptions.rst:1001 +#: ../Doc/c-api/exceptions.rst:822 ../Doc/c-api/exceptions.rst:824 +#: ../Doc/c-api/exceptions.rst:826 ../Doc/c-api/exceptions.rst:872 +#: ../Doc/c-api/exceptions.rst:884 ../Doc/c-api/exceptions.rst:1003 msgid "\\(1)" msgstr "\\(1)" -#: ../Doc/c-api/exceptions.rst:822 +#: ../Doc/c-api/exceptions.rst:824 msgid ":c:data:`PyExc_Exception`" msgstr ":c:data:`PyExc_Exception`" -#: ../Doc/c-api/exceptions.rst:822 +#: ../Doc/c-api/exceptions.rst:824 msgid ":exc:`Exception`" msgstr ":exc:`Exception`" -#: ../Doc/c-api/exceptions.rst:824 +#: ../Doc/c-api/exceptions.rst:826 msgid ":c:data:`PyExc_ArithmeticError`" msgstr ":c:data:`PyExc_ArithmeticError`" -#: ../Doc/c-api/exceptions.rst:824 +#: ../Doc/c-api/exceptions.rst:826 msgid ":exc:`ArithmeticError`" msgstr ":exc:`ArithmeticError`" -#: ../Doc/c-api/exceptions.rst:826 +#: ../Doc/c-api/exceptions.rst:828 msgid ":c:data:`PyExc_AssertionError`" msgstr ":c:data:`PyExc_AssertionError`" -#: ../Doc/c-api/exceptions.rst:826 +#: ../Doc/c-api/exceptions.rst:828 msgid ":exc:`AssertionError`" msgstr ":exc:`AssertionError`" -#: ../Doc/c-api/exceptions.rst:828 +#: ../Doc/c-api/exceptions.rst:830 msgid ":c:data:`PyExc_AttributeError`" msgstr ":c:data:`PyExc_AttributeError`" -#: ../Doc/c-api/exceptions.rst:828 +#: ../Doc/c-api/exceptions.rst:830 msgid ":exc:`AttributeError`" msgstr ":exc:`AttributeError`" -#: ../Doc/c-api/exceptions.rst:830 +#: ../Doc/c-api/exceptions.rst:832 msgid ":c:data:`PyExc_BlockingIOError`" msgstr ":c:data:`PyExc_BlockingIOError`" -#: ../Doc/c-api/exceptions.rst:830 +#: ../Doc/c-api/exceptions.rst:832 msgid ":exc:`BlockingIOError`" msgstr ":exc:`BlockingIOError`" -#: ../Doc/c-api/exceptions.rst:832 +#: ../Doc/c-api/exceptions.rst:834 msgid ":c:data:`PyExc_BrokenPipeError`" msgstr ":c:data:`PyExc_BrokenPipeError`" -#: ../Doc/c-api/exceptions.rst:832 +#: ../Doc/c-api/exceptions.rst:834 msgid ":exc:`BrokenPipeError`" msgstr ":exc:`BrokenPipeError`" -#: ../Doc/c-api/exceptions.rst:834 +#: ../Doc/c-api/exceptions.rst:836 msgid ":c:data:`PyExc_BufferError`" msgstr ":c:data:`PyExc_BufferError`" -#: ../Doc/c-api/exceptions.rst:834 +#: ../Doc/c-api/exceptions.rst:836 msgid ":exc:`BufferError`" msgstr ":exc:`BufferError`" -#: ../Doc/c-api/exceptions.rst:836 +#: ../Doc/c-api/exceptions.rst:838 msgid ":c:data:`PyExc_ChildProcessError`" msgstr ":c:data:`PyExc_ChildProcessError`" -#: ../Doc/c-api/exceptions.rst:836 +#: ../Doc/c-api/exceptions.rst:838 msgid ":exc:`ChildProcessError`" msgstr ":exc:`ChildProcessError`" -#: ../Doc/c-api/exceptions.rst:838 +#: ../Doc/c-api/exceptions.rst:840 msgid ":c:data:`PyExc_ConnectionAbortedError`" msgstr ":c:data:`PyExc_ConnectionAbortedError`" -#: ../Doc/c-api/exceptions.rst:838 +#: ../Doc/c-api/exceptions.rst:840 msgid ":exc:`ConnectionAbortedError`" msgstr ":exc:`ConnectionAbortedError`" -#: ../Doc/c-api/exceptions.rst:840 +#: ../Doc/c-api/exceptions.rst:842 msgid ":c:data:`PyExc_ConnectionError`" msgstr ":c:data:`PyExc_ConnectionError`" -#: ../Doc/c-api/exceptions.rst:840 +#: ../Doc/c-api/exceptions.rst:842 msgid ":exc:`ConnectionError`" msgstr ":exc:`ConnectionError`" -#: ../Doc/c-api/exceptions.rst:842 +#: ../Doc/c-api/exceptions.rst:844 msgid ":c:data:`PyExc_ConnectionRefusedError`" msgstr ":c:data:`PyExc_ConnectionRefusedError`" -#: ../Doc/c-api/exceptions.rst:842 +#: ../Doc/c-api/exceptions.rst:844 msgid ":exc:`ConnectionRefusedError`" msgstr ":exc:`ConnectionRefusedError`" -#: ../Doc/c-api/exceptions.rst:844 +#: ../Doc/c-api/exceptions.rst:846 msgid ":c:data:`PyExc_ConnectionResetError`" msgstr ":c:data:`PyExc_ConnectionResetError`" -#: ../Doc/c-api/exceptions.rst:844 +#: ../Doc/c-api/exceptions.rst:846 msgid ":exc:`ConnectionResetError`" msgstr ":exc:`ConnectionResetError`" -#: ../Doc/c-api/exceptions.rst:846 +#: ../Doc/c-api/exceptions.rst:848 msgid ":c:data:`PyExc_EOFError`" msgstr ":c:data:`PyExc_EOFError`" -#: ../Doc/c-api/exceptions.rst:846 +#: ../Doc/c-api/exceptions.rst:848 msgid ":exc:`EOFError`" msgstr ":exc:`EOFError`" -#: ../Doc/c-api/exceptions.rst:848 +#: ../Doc/c-api/exceptions.rst:850 msgid ":c:data:`PyExc_FileExistsError`" msgstr ":c:data:`PyExc_FileExistsError`" -#: ../Doc/c-api/exceptions.rst:848 +#: ../Doc/c-api/exceptions.rst:850 msgid ":exc:`FileExistsError`" msgstr ":exc:`FileExistsError`" -#: ../Doc/c-api/exceptions.rst:850 +#: ../Doc/c-api/exceptions.rst:852 msgid ":c:data:`PyExc_FileNotFoundError`" msgstr ":c:data:`PyExc_FloatingPointError`" -#: ../Doc/c-api/exceptions.rst:850 +#: ../Doc/c-api/exceptions.rst:852 msgid ":exc:`FileNotFoundError`" msgstr ":exc:`FileNotFoundError`" -#: ../Doc/c-api/exceptions.rst:852 +#: ../Doc/c-api/exceptions.rst:854 msgid ":c:data:`PyExc_FloatingPointError`" msgstr ":c:data:`PyExc_FloatingPointError`" -#: ../Doc/c-api/exceptions.rst:852 +#: ../Doc/c-api/exceptions.rst:854 msgid ":exc:`FloatingPointError`" msgstr ":exc:`FloatingPointError`" -#: ../Doc/c-api/exceptions.rst:854 +#: ../Doc/c-api/exceptions.rst:856 msgid ":c:data:`PyExc_GeneratorExit`" msgstr ":c:data:`PyExc_GeneratorExit`" -#: ../Doc/c-api/exceptions.rst:854 +#: ../Doc/c-api/exceptions.rst:856 msgid ":exc:`GeneratorExit`" msgstr ":exc:`GeneratorExit`" -#: ../Doc/c-api/exceptions.rst:856 +#: ../Doc/c-api/exceptions.rst:858 msgid ":c:data:`PyExc_ImportError`" msgstr ":c:data:`PyExc_ImportError`" -#: ../Doc/c-api/exceptions.rst:856 +#: ../Doc/c-api/exceptions.rst:858 msgid ":exc:`ImportError`" msgstr ":exc:`ImportError`" -#: ../Doc/c-api/exceptions.rst:858 +#: ../Doc/c-api/exceptions.rst:860 msgid ":c:data:`PyExc_IndentationError`" msgstr ":c:data:`PyExc_IndentationError`" -#: ../Doc/c-api/exceptions.rst:858 +#: ../Doc/c-api/exceptions.rst:860 msgid ":exc:`IndentationError`" msgstr ":exc:`IndentationError`" -#: ../Doc/c-api/exceptions.rst:860 +#: ../Doc/c-api/exceptions.rst:862 msgid ":c:data:`PyExc_IndexError`" msgstr ":c:data:`PyExc_IndexError`" -#: ../Doc/c-api/exceptions.rst:860 +#: ../Doc/c-api/exceptions.rst:862 msgid ":exc:`IndexError`" msgstr ":exc:`IndexError`" -#: ../Doc/c-api/exceptions.rst:862 +#: ../Doc/c-api/exceptions.rst:864 msgid ":c:data:`PyExc_InterruptedError`" msgstr ":c:data:`PyExc_InterruptedError`" -#: ../Doc/c-api/exceptions.rst:862 +#: ../Doc/c-api/exceptions.rst:864 msgid ":exc:`InterruptedError`" msgstr ":exc:`InterruptedError`" -#: ../Doc/c-api/exceptions.rst:864 +#: ../Doc/c-api/exceptions.rst:866 msgid ":c:data:`PyExc_IsADirectoryError`" msgstr ":c:data:`PyExc_IsADirectoryError`" -#: ../Doc/c-api/exceptions.rst:864 +#: ../Doc/c-api/exceptions.rst:866 msgid ":exc:`IsADirectoryError`" msgstr ":exc:`IsADirectoryError`" -#: ../Doc/c-api/exceptions.rst:866 +#: ../Doc/c-api/exceptions.rst:868 msgid ":c:data:`PyExc_KeyError`" msgstr ":c:data:`PyExc_KeyError`" -#: ../Doc/c-api/exceptions.rst:866 +#: ../Doc/c-api/exceptions.rst:868 msgid ":exc:`KeyError`" msgstr ":exc:`KeyError`" -#: ../Doc/c-api/exceptions.rst:868 +#: ../Doc/c-api/exceptions.rst:870 msgid ":c:data:`PyExc_KeyboardInterrupt`" msgstr ":c:data:`PyExc_KeyboardInterrupt`" -#: ../Doc/c-api/exceptions.rst:868 +#: ../Doc/c-api/exceptions.rst:870 msgid ":exc:`KeyboardInterrupt`" msgstr ":exc:`KeyboardInterrupt`" -#: ../Doc/c-api/exceptions.rst:870 +#: ../Doc/c-api/exceptions.rst:872 msgid ":c:data:`PyExc_LookupError`" msgstr ":c:data:`PyExc_LookupError`" -#: ../Doc/c-api/exceptions.rst:870 +#: ../Doc/c-api/exceptions.rst:872 msgid ":exc:`LookupError`" msgstr ":exc:`LookupError`" -#: ../Doc/c-api/exceptions.rst:872 +#: ../Doc/c-api/exceptions.rst:874 msgid ":c:data:`PyExc_MemoryError`" msgstr ":c:data:`PyExc_MemoryError`" -#: ../Doc/c-api/exceptions.rst:872 +#: ../Doc/c-api/exceptions.rst:874 msgid ":exc:`MemoryError`" msgstr ":exc:`MemoryError`" -#: ../Doc/c-api/exceptions.rst:874 +#: ../Doc/c-api/exceptions.rst:876 msgid ":c:data:`PyExc_ModuleNotFoundError`" msgstr "" -#: ../Doc/c-api/exceptions.rst:874 +#: ../Doc/c-api/exceptions.rst:876 msgid ":exc:`ModuleNotFoundError`" msgstr "" -#: ../Doc/c-api/exceptions.rst:876 +#: ../Doc/c-api/exceptions.rst:878 msgid ":c:data:`PyExc_NameError`" msgstr ":c:data:`PyExc_NameError`" -#: ../Doc/c-api/exceptions.rst:876 +#: ../Doc/c-api/exceptions.rst:878 msgid ":exc:`NameError`" msgstr ":exc:`NameError`" -#: ../Doc/c-api/exceptions.rst:878 +#: ../Doc/c-api/exceptions.rst:880 msgid ":c:data:`PyExc_NotADirectoryError`" msgstr ":c:data:`PyExc_NotADirectoryError`" -#: ../Doc/c-api/exceptions.rst:878 +#: ../Doc/c-api/exceptions.rst:880 msgid ":exc:`NotADirectoryError`" msgstr ":exc:`NotADirectoryError`" -#: ../Doc/c-api/exceptions.rst:880 +#: ../Doc/c-api/exceptions.rst:882 msgid ":c:data:`PyExc_NotImplementedError`" msgstr ":c:data:`PyExc_NotImplementedError`" -#: ../Doc/c-api/exceptions.rst:880 +#: ../Doc/c-api/exceptions.rst:882 msgid ":exc:`NotImplementedError`" msgstr ":exc:`NotImplementedError`" -#: ../Doc/c-api/exceptions.rst:882 +#: ../Doc/c-api/exceptions.rst:884 msgid ":c:data:`PyExc_OSError`" msgstr ":c:data:`PyExc_OSError`" -#: ../Doc/c-api/exceptions.rst:882 +#: ../Doc/c-api/exceptions.rst:884 msgid ":exc:`OSError`" msgstr ":exc:`OSError`" -#: ../Doc/c-api/exceptions.rst:884 +#: ../Doc/c-api/exceptions.rst:886 msgid ":c:data:`PyExc_OverflowError`" msgstr ":c:data:`PyExc_OverflowError`" -#: ../Doc/c-api/exceptions.rst:884 +#: ../Doc/c-api/exceptions.rst:886 msgid ":exc:`OverflowError`" msgstr ":exc:`OverflowError`" -#: ../Doc/c-api/exceptions.rst:886 +#: ../Doc/c-api/exceptions.rst:888 msgid ":c:data:`PyExc_PermissionError`" msgstr ":c:data:`PyExc_PermissionError`" -#: ../Doc/c-api/exceptions.rst:886 +#: ../Doc/c-api/exceptions.rst:888 msgid ":exc:`PermissionError`" msgstr ":exc:`PermissionError`" -#: ../Doc/c-api/exceptions.rst:888 +#: ../Doc/c-api/exceptions.rst:890 msgid ":c:data:`PyExc_ProcessLookupError`" msgstr ":c:data:`PyExc_ProcessLookupError`" -#: ../Doc/c-api/exceptions.rst:888 +#: ../Doc/c-api/exceptions.rst:890 msgid ":exc:`ProcessLookupError`" msgstr ":exc:`ProcessLookupError`" -#: ../Doc/c-api/exceptions.rst:890 +#: ../Doc/c-api/exceptions.rst:892 msgid ":c:data:`PyExc_RecursionError`" msgstr ":c:data:`PyExc_ReferenceError`" -#: ../Doc/c-api/exceptions.rst:890 +#: ../Doc/c-api/exceptions.rst:892 msgid ":exc:`RecursionError`" msgstr "" -#: ../Doc/c-api/exceptions.rst:892 +#: ../Doc/c-api/exceptions.rst:894 msgid ":c:data:`PyExc_ReferenceError`" msgstr ":c:data:`PyExc_ReferenceError`" -#: ../Doc/c-api/exceptions.rst:892 +#: ../Doc/c-api/exceptions.rst:894 msgid ":exc:`ReferenceError`" msgstr ":exc:`ReferenceError`" -#: ../Doc/c-api/exceptions.rst:892 +#: ../Doc/c-api/exceptions.rst:894 msgid "\\(2)" msgstr "\\(2)" -#: ../Doc/c-api/exceptions.rst:894 +#: ../Doc/c-api/exceptions.rst:896 msgid ":c:data:`PyExc_RuntimeError`" msgstr ":c:data:`PyExc_RuntimeError`" -#: ../Doc/c-api/exceptions.rst:894 +#: ../Doc/c-api/exceptions.rst:896 msgid ":exc:`RuntimeError`" msgstr ":exc:`RuntimeError`" -#: ../Doc/c-api/exceptions.rst:896 +#: ../Doc/c-api/exceptions.rst:898 msgid ":c:data:`PyExc_StopAsyncIteration`" msgstr ":c:data:`PyExc_StopAsyncIteration`" -#: ../Doc/c-api/exceptions.rst:896 +#: ../Doc/c-api/exceptions.rst:898 msgid ":exc:`StopAsyncIteration`" msgstr ":exc:`StopAsyncIteration`" -#: ../Doc/c-api/exceptions.rst:898 +#: ../Doc/c-api/exceptions.rst:900 msgid ":c:data:`PyExc_StopIteration`" msgstr ":c:data:`PyExc_StopIteration`" -#: ../Doc/c-api/exceptions.rst:898 +#: ../Doc/c-api/exceptions.rst:900 msgid ":exc:`StopIteration`" msgstr ":exc:`StopIteration`" -#: ../Doc/c-api/exceptions.rst:900 +#: ../Doc/c-api/exceptions.rst:902 msgid ":c:data:`PyExc_SyntaxError`" msgstr ":c:data:`PyExc_SyntaxError`" -#: ../Doc/c-api/exceptions.rst:900 +#: ../Doc/c-api/exceptions.rst:902 msgid ":exc:`SyntaxError`" msgstr ":exc:`SyntaxError`" -#: ../Doc/c-api/exceptions.rst:902 +#: ../Doc/c-api/exceptions.rst:904 msgid ":c:data:`PyExc_SystemError`" msgstr ":c:data:`PyExc_SystemError`" -#: ../Doc/c-api/exceptions.rst:902 +#: ../Doc/c-api/exceptions.rst:904 msgid ":exc:`SystemError`" msgstr ":exc:`SystemError`" -#: ../Doc/c-api/exceptions.rst:904 +#: ../Doc/c-api/exceptions.rst:906 msgid ":c:data:`PyExc_SystemExit`" msgstr ":c:data:`PyExc_SystemExit`" -#: ../Doc/c-api/exceptions.rst:904 +#: ../Doc/c-api/exceptions.rst:906 msgid ":exc:`SystemExit`" msgstr ":exc:`SystemExit`" -#: ../Doc/c-api/exceptions.rst:906 +#: ../Doc/c-api/exceptions.rst:908 msgid ":c:data:`PyExc_TabError`" msgstr ":c:data:`PyExc_TabError`" -#: ../Doc/c-api/exceptions.rst:906 +#: ../Doc/c-api/exceptions.rst:908 msgid ":exc:`TabError`" msgstr ":exc:`TabError`" -#: ../Doc/c-api/exceptions.rst:908 +#: ../Doc/c-api/exceptions.rst:910 msgid ":c:data:`PyExc_TimeoutError`" msgstr ":c:data:`PyExc_ImportError`" -#: ../Doc/c-api/exceptions.rst:908 +#: ../Doc/c-api/exceptions.rst:910 msgid ":exc:`TimeoutError`" msgstr ":exc:`TimeoutError`" -#: ../Doc/c-api/exceptions.rst:910 +#: ../Doc/c-api/exceptions.rst:912 msgid ":c:data:`PyExc_TypeError`" msgstr ":c:data:`PyExc_TypeError`" -#: ../Doc/c-api/exceptions.rst:910 +#: ../Doc/c-api/exceptions.rst:912 msgid ":exc:`TypeError`" msgstr ":exc:`TypeError`" -#: ../Doc/c-api/exceptions.rst:912 +#: ../Doc/c-api/exceptions.rst:914 msgid ":c:data:`PyExc_UnboundLocalError`" msgstr ":c:data:`PyExc_UnboundLocalError`" -#: ../Doc/c-api/exceptions.rst:912 +#: ../Doc/c-api/exceptions.rst:914 msgid ":exc:`UnboundLocalError`" msgstr ":exc:`UnboundLocalError`" -#: ../Doc/c-api/exceptions.rst:914 +#: ../Doc/c-api/exceptions.rst:916 msgid ":c:data:`PyExc_UnicodeDecodeError`" msgstr ":c:data:`PyExc_UnicodeDecodeError`" -#: ../Doc/c-api/exceptions.rst:914 +#: ../Doc/c-api/exceptions.rst:916 msgid ":exc:`UnicodeDecodeError`" msgstr ":exc:`UnicodeDecodeError`" -#: ../Doc/c-api/exceptions.rst:916 +#: ../Doc/c-api/exceptions.rst:918 msgid ":c:data:`PyExc_UnicodeEncodeError`" msgstr ":c:data:`PyExc_UnicodeEncodeError`" -#: ../Doc/c-api/exceptions.rst:916 +#: ../Doc/c-api/exceptions.rst:918 msgid ":exc:`UnicodeEncodeError`" msgstr ":exc:`UnicodeEncodeError`" -#: ../Doc/c-api/exceptions.rst:918 +#: ../Doc/c-api/exceptions.rst:920 msgid ":c:data:`PyExc_UnicodeError`" msgstr ":c:data:`PyExc_UnicodeError`" -#: ../Doc/c-api/exceptions.rst:918 +#: ../Doc/c-api/exceptions.rst:920 msgid ":exc:`UnicodeError`" msgstr ":exc:`UnicodeError`" -#: ../Doc/c-api/exceptions.rst:920 +#: ../Doc/c-api/exceptions.rst:922 msgid ":c:data:`PyExc_UnicodeTranslateError`" msgstr ":c:data:`PyExc_UnicodeTranslateError`" -#: ../Doc/c-api/exceptions.rst:920 +#: ../Doc/c-api/exceptions.rst:922 msgid ":exc:`UnicodeTranslateError`" msgstr ":exc:`UnicodeTranslateError`" -#: ../Doc/c-api/exceptions.rst:922 +#: ../Doc/c-api/exceptions.rst:924 msgid ":c:data:`PyExc_ValueError`" msgstr ":c:data:`PyExc_ValueError`" -#: ../Doc/c-api/exceptions.rst:922 +#: ../Doc/c-api/exceptions.rst:924 msgid ":exc:`ValueError`" msgstr ":exc:`ValueError`" -#: ../Doc/c-api/exceptions.rst:924 +#: ../Doc/c-api/exceptions.rst:926 msgid ":c:data:`PyExc_ZeroDivisionError`" msgstr ":c:data:`PyExc_ZeroDivisionError`" -#: ../Doc/c-api/exceptions.rst:924 +#: ../Doc/c-api/exceptions.rst:926 msgid ":exc:`ZeroDivisionError`" msgstr ":exc:`ZeroDivisionError`" -#: ../Doc/c-api/exceptions.rst:927 +#: ../Doc/c-api/exceptions.rst:929 msgid "" ":c:data:`PyExc_BlockingIOError`, :c:data:`PyExc_BrokenPipeError`, :c:data:" "`PyExc_ChildProcessError`, :c:data:`PyExc_ConnectionError`, :c:data:" @@ -1249,61 +1253,61 @@ msgid "" "`PyExc_TimeoutError` were introduced following :pep:`3151`." msgstr "" -#: ../Doc/c-api/exceptions.rst:937 +#: ../Doc/c-api/exceptions.rst:939 msgid ":c:data:`PyExc_StopAsyncIteration` and :c:data:`PyExc_RecursionError`." msgstr ":c:data:`PyExc_StopAsyncIteration` et :c:data:`PyExc_RecursionError`." -#: ../Doc/c-api/exceptions.rst:940 +#: ../Doc/c-api/exceptions.rst:942 msgid ":c:data:`PyExc_ModuleNotFoundError`." msgstr ":c:data:`PyExc_ModuleNotFoundError`." -#: ../Doc/c-api/exceptions.rst:943 +#: ../Doc/c-api/exceptions.rst:945 msgid "These are compatibility aliases to :c:data:`PyExc_OSError`:" msgstr "" -#: ../Doc/c-api/exceptions.rst:953 +#: ../Doc/c-api/exceptions.rst:955 msgid ":c:data:`PyExc_EnvironmentError`" msgstr ":c:data:`PyExc_EnvironmentError`" -#: ../Doc/c-api/exceptions.rst:955 +#: ../Doc/c-api/exceptions.rst:957 msgid ":c:data:`PyExc_IOError`" msgstr ":c:data:`PyExc_IOError`" -#: ../Doc/c-api/exceptions.rst:957 +#: ../Doc/c-api/exceptions.rst:959 msgid ":c:data:`PyExc_WindowsError`" msgstr ":c:data:`PyExc_WindowsError`" -#: ../Doc/c-api/exceptions.rst:957 +#: ../Doc/c-api/exceptions.rst:959 msgid "\\(3)" msgstr "\\(3)" -#: ../Doc/c-api/exceptions.rst:960 +#: ../Doc/c-api/exceptions.rst:962 msgid "These aliases used to be separate exception types." msgstr "" -#: ../Doc/c-api/exceptions.rst:963 ../Doc/c-api/exceptions.rst:1027 +#: ../Doc/c-api/exceptions.rst:965 ../Doc/c-api/exceptions.rst:1029 msgid "Notes:" msgstr "Notes :" -#: ../Doc/c-api/exceptions.rst:966 +#: ../Doc/c-api/exceptions.rst:968 msgid "This is a base class for other standard exceptions." msgstr "C'est la classe de base pour les autres exceptions standards." -#: ../Doc/c-api/exceptions.rst:969 +#: ../Doc/c-api/exceptions.rst:971 msgid "This is the same as :exc:`weakref.ReferenceError`." msgstr "Identique à :exc:`weakref.ReferenceError`." -#: ../Doc/c-api/exceptions.rst:972 +#: ../Doc/c-api/exceptions.rst:974 msgid "" "Only defined on Windows; protect code that uses this by testing that the " "preprocessor macro ``MS_WINDOWS`` is defined." msgstr "" -#: ../Doc/c-api/exceptions.rst:978 +#: ../Doc/c-api/exceptions.rst:980 msgid "Standard Warning Categories" msgstr "" -#: ../Doc/c-api/exceptions.rst:980 +#: ../Doc/c-api/exceptions.rst:982 msgid "" "All standard Python warning categories are available as global variables " "whose names are ``PyExc_`` followed by the Python exception name. These have " @@ -1311,98 +1315,98 @@ msgid "" "completeness, here are all the variables:" msgstr "" -#: ../Doc/c-api/exceptions.rst:1001 +#: ../Doc/c-api/exceptions.rst:1003 msgid ":c:data:`PyExc_Warning`" msgstr ":c:data:`PyExc_Warning`" -#: ../Doc/c-api/exceptions.rst:1001 +#: ../Doc/c-api/exceptions.rst:1003 msgid ":exc:`Warning`" msgstr ":exc:`Warning`" -#: ../Doc/c-api/exceptions.rst:1003 +#: ../Doc/c-api/exceptions.rst:1005 msgid ":c:data:`PyExc_BytesWarning`" msgstr ":c:data:`PyExc_BytesWarning`" -#: ../Doc/c-api/exceptions.rst:1003 +#: ../Doc/c-api/exceptions.rst:1005 msgid ":exc:`BytesWarning`" msgstr ":exc:`BytesWarning`" -#: ../Doc/c-api/exceptions.rst:1005 +#: ../Doc/c-api/exceptions.rst:1007 msgid ":c:data:`PyExc_DeprecationWarning`" msgstr ":c:data:`PyExc_DeprecationWarning`" -#: ../Doc/c-api/exceptions.rst:1005 +#: ../Doc/c-api/exceptions.rst:1007 msgid ":exc:`DeprecationWarning`" msgstr ":exc:`DeprecationWarning`" -#: ../Doc/c-api/exceptions.rst:1007 +#: ../Doc/c-api/exceptions.rst:1009 msgid ":c:data:`PyExc_FutureWarning`" msgstr ":c:data:`PyExc_FutureWarning`" -#: ../Doc/c-api/exceptions.rst:1007 +#: ../Doc/c-api/exceptions.rst:1009 msgid ":exc:`FutureWarning`" msgstr ":exc:`FutureWarning`" -#: ../Doc/c-api/exceptions.rst:1009 +#: ../Doc/c-api/exceptions.rst:1011 msgid ":c:data:`PyExc_ImportWarning`" msgstr ":c:data:`PyExc_ImportWarning`" -#: ../Doc/c-api/exceptions.rst:1009 +#: ../Doc/c-api/exceptions.rst:1011 msgid ":exc:`ImportWarning`" msgstr ":exc:`ImportWarning`" -#: ../Doc/c-api/exceptions.rst:1011 +#: ../Doc/c-api/exceptions.rst:1013 msgid ":c:data:`PyExc_PendingDeprecationWarning`" msgstr ":c:data:`PyExc_PendingDeprecationWarning`" -#: ../Doc/c-api/exceptions.rst:1011 +#: ../Doc/c-api/exceptions.rst:1013 msgid ":exc:`PendingDeprecationWarning`" msgstr ":exc:`PendingDeprecationWarning`" -#: ../Doc/c-api/exceptions.rst:1013 +#: ../Doc/c-api/exceptions.rst:1015 msgid ":c:data:`PyExc_ResourceWarning`" msgstr ":c:data:`PyExc_ResourceWarning`" -#: ../Doc/c-api/exceptions.rst:1013 +#: ../Doc/c-api/exceptions.rst:1015 msgid ":exc:`ResourceWarning`" msgstr ":exc:`ResourceWarning`" -#: ../Doc/c-api/exceptions.rst:1015 +#: ../Doc/c-api/exceptions.rst:1017 msgid ":c:data:`PyExc_RuntimeWarning`" msgstr ":c:data:`PyExc_RuntimeWarning`" -#: ../Doc/c-api/exceptions.rst:1015 +#: ../Doc/c-api/exceptions.rst:1017 msgid ":exc:`RuntimeWarning`" msgstr ":exc:`RuntimeWarning`" -#: ../Doc/c-api/exceptions.rst:1017 +#: ../Doc/c-api/exceptions.rst:1019 msgid ":c:data:`PyExc_SyntaxWarning`" msgstr ":c:data:`PyExc_SyntaxWarning`" -#: ../Doc/c-api/exceptions.rst:1017 +#: ../Doc/c-api/exceptions.rst:1019 msgid ":exc:`SyntaxWarning`" msgstr ":exc:`SyntaxWarning`" -#: ../Doc/c-api/exceptions.rst:1019 +#: ../Doc/c-api/exceptions.rst:1021 msgid ":c:data:`PyExc_UnicodeWarning`" msgstr ":c:data:`PyExc_UnicodeWarning`" -#: ../Doc/c-api/exceptions.rst:1019 +#: ../Doc/c-api/exceptions.rst:1021 msgid ":exc:`UnicodeWarning`" msgstr ":exc:`UnicodeWarning`" -#: ../Doc/c-api/exceptions.rst:1021 +#: ../Doc/c-api/exceptions.rst:1023 msgid ":c:data:`PyExc_UserWarning`" msgstr ":c:data:`PyExc_UserWarning`" -#: ../Doc/c-api/exceptions.rst:1021 +#: ../Doc/c-api/exceptions.rst:1023 msgid ":exc:`UserWarning`" msgstr ":exc:`UserWarning`" -#: ../Doc/c-api/exceptions.rst:1024 +#: ../Doc/c-api/exceptions.rst:1026 msgid ":c:data:`PyExc_ResourceWarning`." msgstr ":c:data:`PyExc_ResourceWarning`." -#: ../Doc/c-api/exceptions.rst:1030 +#: ../Doc/c-api/exceptions.rst:1032 msgid "This is a base class for other standard warning categories." msgstr "C'est la classe de base pour les autres catégories de *warning*." diff --git a/c-api/init.po b/c-api/init.po index 4a358691..612174cc 100644 --- a/c-api/init.po +++ b/c-api/init.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-11-29 18:22+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -1010,34 +1010,43 @@ msgid "" "acquired it, otherwise deadlock ensues." msgstr "" -#: ../Doc/c-api/init.rst:862 +#: ../Doc/c-api/init.rst:860 ../Doc/c-api/init.rst:913 +msgid "" +"Calling this function from a thread when the runtime is finalizing will " +"terminate the thread, even if the thread was not created by Python. You can " +"use :c:func:`_Py_IsFinalizing` or :func:`sys.is_finalizing` to check if the " +"interpreter is in process of being finalized before calling this function to " +"avoid unwanted termination." +msgstr "" + +#: ../Doc/c-api/init.rst:868 msgid "" "Return the current thread state. The global interpreter lock must be held. " "When the current thread state is *NULL*, this issues a fatal error (so that " "the caller needn't check for *NULL*)." msgstr "" -#: ../Doc/c-api/init.rst:869 +#: ../Doc/c-api/init.rst:875 msgid "" "Swap the current thread state with the thread state given by the argument " "*tstate*, which may be *NULL*. The global interpreter lock must be held and " "is not released." msgstr "" -#: ../Doc/c-api/init.rst:876 +#: ../Doc/c-api/init.rst:882 msgid "" "This function is called from :c:func:`PyOS_AfterFork_Child` to ensure that " "newly created child processes don't hold locks referring to threads which " "are not running in the child process." msgstr "" -#: ../Doc/c-api/init.rst:881 +#: ../Doc/c-api/init.rst:887 msgid "" "The following functions use thread-local storage, and are not compatible " "with sub-interpreters:" msgstr "" -#: ../Doc/c-api/init.rst:886 +#: ../Doc/c-api/init.rst:892 msgid "" "Ensure that the current thread is ready to call the Python C API regardless " "of the current state of Python, or of the global interpreter lock. This may " @@ -1050,7 +1059,7 @@ msgid "" "is acceptable." msgstr "" -#: ../Doc/c-api/init.rst:896 +#: ../Doc/c-api/init.rst:902 msgid "" "The return value is an opaque \"handle\" to the thread state when :c:func:" "`PyGILState_Ensure` was called, and must be passed to :c:func:" @@ -1060,13 +1069,13 @@ msgid "" "func:`PyGILState_Release`." msgstr "" -#: ../Doc/c-api/init.rst:903 +#: ../Doc/c-api/init.rst:909 msgid "" "When the function returns, the current thread will hold the GIL and be able " "to call arbitrary Python code. Failure is a fatal error." msgstr "" -#: ../Doc/c-api/init.rst:909 +#: ../Doc/c-api/init.rst:921 msgid "" "Release any resources previously acquired. After this call, Python's state " "will be the same as it was prior to the corresponding :c:func:" @@ -1074,13 +1083,13 @@ msgid "" "caller, hence the use of the GILState API)." msgstr "" -#: ../Doc/c-api/init.rst:914 +#: ../Doc/c-api/init.rst:926 msgid "" "Every call to :c:func:`PyGILState_Ensure` must be matched by a call to :c:" "func:`PyGILState_Release` on the same thread." msgstr "" -#: ../Doc/c-api/init.rst:920 +#: ../Doc/c-api/init.rst:932 msgid "" "Get the current thread state for this thread. May return ``NULL`` if no " "GILState API has been used on the current thread. Note that the main thread " @@ -1088,7 +1097,7 @@ msgid "" "made on the main thread. This is mainly a helper/diagnostic function." msgstr "" -#: ../Doc/c-api/init.rst:928 +#: ../Doc/c-api/init.rst:940 msgid "" "Return ``1`` if the current thread is holding the GIL and ``0`` otherwise. " "This function can be called from any thread at any time. Only if it has had " @@ -1099,13 +1108,13 @@ msgid "" "otherwise behave differently." msgstr "" -#: ../Doc/c-api/init.rst:940 +#: ../Doc/c-api/init.rst:952 msgid "" "The following macros are normally used without a trailing semicolon; look " "for example usage in the Python source distribution." msgstr "" -#: ../Doc/c-api/init.rst:946 +#: ../Doc/c-api/init.rst:958 msgid "" "This macro expands to ``{ PyThreadState *_save; _save = PyEval_SaveThread();" "``. Note that it contains an opening brace; it must be matched with a " @@ -1113,7 +1122,7 @@ msgid "" "discussion of this macro." msgstr "" -#: ../Doc/c-api/init.rst:954 +#: ../Doc/c-api/init.rst:966 msgid "" "This macro expands to ``PyEval_RestoreThread(_save); }``. Note that it " "contains a closing brace; it must be matched with an earlier :c:macro:" @@ -1121,79 +1130,79 @@ msgid "" "macro." msgstr "" -#: ../Doc/c-api/init.rst:962 +#: ../Doc/c-api/init.rst:974 msgid "" "This macro expands to ``PyEval_RestoreThread(_save);``: it is equivalent to :" "c:macro:`Py_END_ALLOW_THREADS` without the closing brace." msgstr "" -#: ../Doc/c-api/init.rst:968 +#: ../Doc/c-api/init.rst:980 msgid "" "This macro expands to ``_save = PyEval_SaveThread();``: it is equivalent to :" "c:macro:`Py_BEGIN_ALLOW_THREADS` without the opening brace and variable " "declaration." msgstr "" -#: ../Doc/c-api/init.rst:974 +#: ../Doc/c-api/init.rst:986 msgid "Low-level API" msgstr "" -#: ../Doc/c-api/init.rst:976 +#: ../Doc/c-api/init.rst:988 msgid "" "All of the following functions must be called after :c:func:`Py_Initialize`." msgstr "" -#: ../Doc/c-api/init.rst:978 +#: ../Doc/c-api/init.rst:990 msgid ":c:func:`Py_Initialize()` now initializes the :term:`GIL`." msgstr "" -#: ../Doc/c-api/init.rst:984 +#: ../Doc/c-api/init.rst:996 msgid "" "Create a new interpreter state object. The global interpreter lock need not " "be held, but may be held if it is necessary to serialize calls to this " "function." msgstr "" -#: ../Doc/c-api/init.rst:991 +#: ../Doc/c-api/init.rst:1003 msgid "" "Reset all information in an interpreter state object. The global " "interpreter lock must be held." msgstr "" -#: ../Doc/c-api/init.rst:997 +#: ../Doc/c-api/init.rst:1009 msgid "" "Destroy an interpreter state object. The global interpreter lock need not " "be held. The interpreter state must have been reset with a previous call " "to :c:func:`PyInterpreterState_Clear`." msgstr "" -#: ../Doc/c-api/init.rst:1004 +#: ../Doc/c-api/init.rst:1016 msgid "" "Create a new thread state object belonging to the given interpreter object. " "The global interpreter lock need not be held, but may be held if it is " "necessary to serialize calls to this function." msgstr "" -#: ../Doc/c-api/init.rst:1011 +#: ../Doc/c-api/init.rst:1023 msgid "" "Reset all information in a thread state object. The global interpreter lock " "must be held." msgstr "" -#: ../Doc/c-api/init.rst:1017 +#: ../Doc/c-api/init.rst:1029 msgid "" "Destroy a thread state object. The global interpreter lock need not be " "held. The thread state must have been reset with a previous call to :c:func:" "`PyThreadState_Clear`." msgstr "" -#: ../Doc/c-api/init.rst:1024 +#: ../Doc/c-api/init.rst:1036 msgid "" "Return the interpreter's unique ID. If there was any error in doing so then " "``-1`` is returned and an error is set." msgstr "" -#: ../Doc/c-api/init.rst:1032 +#: ../Doc/c-api/init.rst:1044 msgid "" "Return a dictionary in which extensions can store thread-specific state " "information. Each extension should use a unique key to use to store state " @@ -1202,7 +1211,7 @@ msgid "" "raised and the caller should assume no current thread state is available." msgstr "" -#: ../Doc/c-api/init.rst:1041 +#: ../Doc/c-api/init.rst:1053 msgid "" "Asynchronously raise an exception in a thread. The *id* argument is the " "thread id of the target thread; *exc* is the exception object to be raised. " @@ -1214,26 +1223,26 @@ msgid "" "raises no exceptions." msgstr "" -#: ../Doc/c-api/init.rst:1049 +#: ../Doc/c-api/init.rst:1061 msgid "" "The type of the *id* parameter changed from :c:type:`long` to :c:type:" "`unsigned long`." msgstr "" -#: ../Doc/c-api/init.rst:1055 +#: ../Doc/c-api/init.rst:1067 msgid "" "Acquire the global interpreter lock and set the current thread state to " "*tstate*, which should not be *NULL*. The lock must have been created " "earlier. If this thread already has the lock, deadlock ensues." msgstr "" -#: ../Doc/c-api/init.rst:1059 +#: ../Doc/c-api/init.rst:1071 msgid "" ":c:func:`PyEval_RestoreThread` is a higher-level function which is always " "available (even when threads have not been initialized)." msgstr "" -#: ../Doc/c-api/init.rst:1065 +#: ../Doc/c-api/init.rst:1077 msgid "" "Reset the current thread state to *NULL* and release the global interpreter " "lock. The lock must have been created earlier and must be held by the " @@ -1242,41 +1251,41 @@ msgid "" "fatal error is reported." msgstr "" -#: ../Doc/c-api/init.rst:1071 +#: ../Doc/c-api/init.rst:1083 msgid "" ":c:func:`PyEval_SaveThread` is a higher-level function which is always " "available (even when threads have not been initialized)." msgstr "" -#: ../Doc/c-api/init.rst:1077 +#: ../Doc/c-api/init.rst:1089 msgid "" "Acquire the global interpreter lock. The lock must have been created " "earlier. If this thread already has the lock, a deadlock ensues." msgstr "" -#: ../Doc/c-api/init.rst:1080 +#: ../Doc/c-api/init.rst:1092 msgid "" "This function does not update the current thread state. Please use :c:func:" "`PyEval_RestoreThread` or :c:func:`PyEval_AcquireThread` instead." msgstr "" -#: ../Doc/c-api/init.rst:1088 +#: ../Doc/c-api/init.rst:1100 msgid "" "Release the global interpreter lock. The lock must have been created " "earlier." msgstr "" -#: ../Doc/c-api/init.rst:1090 +#: ../Doc/c-api/init.rst:1102 msgid "" "This function does not update the current thread state. Please use :c:func:" "`PyEval_SaveThread` or :c:func:`PyEval_ReleaseThread` instead." msgstr "" -#: ../Doc/c-api/init.rst:1099 +#: ../Doc/c-api/init.rst:1111 msgid "Sub-interpreter support" msgstr "" -#: ../Doc/c-api/init.rst:1101 +#: ../Doc/c-api/init.rst:1113 msgid "" "While in most uses, you will only embed a single Python interpreter, there " "are cases where you need to create several independent interpreters in the " @@ -1286,7 +1295,7 @@ msgid "" "following functions:" msgstr "" -#: ../Doc/c-api/init.rst:1119 +#: ../Doc/c-api/init.rst:1131 msgid "" "Create a new sub-interpreter. This is an (almost) totally separate " "environment for the execution of Python code. In particular, the new " @@ -1299,7 +1308,7 @@ msgid "" "underlying file descriptors)." msgstr "" -#: ../Doc/c-api/init.rst:1129 +#: ../Doc/c-api/init.rst:1141 msgid "" "The return value points to the first thread state created in the new sub-" "interpreter. This thread state is made in the current thread state. Note " @@ -1313,7 +1322,7 @@ msgid "" "state on entry.)" msgstr "" -#: ../Doc/c-api/init.rst:1144 +#: ../Doc/c-api/init.rst:1156 msgid "" "Extension modules are shared between (sub-)interpreters as follows: the " "first time a particular extension is imported, it is initialized normally, " @@ -1327,7 +1336,7 @@ msgid "" "called again." msgstr "" -#: ../Doc/c-api/init.rst:1161 +#: ../Doc/c-api/init.rst:1173 msgid "" "Destroy the (sub-)interpreter represented by the given thread state. The " "given thread state must be the current thread state. See the discussion of " @@ -1338,11 +1347,11 @@ msgid "" "sub-interpreters that haven't been explicitly destroyed at that point." msgstr "" -#: ../Doc/c-api/init.rst:1171 +#: ../Doc/c-api/init.rst:1183 msgid "Bugs and caveats" msgstr "" -#: ../Doc/c-api/init.rst:1173 +#: ../Doc/c-api/init.rst:1185 msgid "" "Because sub-interpreters (and the main interpreter) are part of the same " "process, the insulation between them isn't perfect --- for example, using " @@ -1359,7 +1368,7 @@ msgid "" "of loaded modules." msgstr "" -#: ../Doc/c-api/init.rst:1187 +#: ../Doc/c-api/init.rst:1199 msgid "" "Also note that combining this functionality with :c:func:`PyGILState_\\*` " "APIs is delicate, because these APIs assume a bijection between Python " @@ -1371,25 +1380,25 @@ msgid "" "created threads will probably be broken when using sub-interpreters." msgstr "" -#: ../Doc/c-api/init.rst:1198 +#: ../Doc/c-api/init.rst:1210 msgid "Asynchronous Notifications" msgstr "" -#: ../Doc/c-api/init.rst:1200 +#: ../Doc/c-api/init.rst:1212 msgid "" "A mechanism is provided to make asynchronous notifications to the main " "interpreter thread. These notifications take the form of a function pointer " "and a void pointer argument." msgstr "" -#: ../Doc/c-api/init.rst:1209 +#: ../Doc/c-api/init.rst:1221 msgid "" "Schedule a function to be called from the main interpreter thread. On " "success, ``0`` is returned and *func* is queued for being called in the main " "thread. On failure, ``-1`` is returned without setting any exception." msgstr "" -#: ../Doc/c-api/init.rst:1213 +#: ../Doc/c-api/init.rst:1225 msgid "" "When successfully queued, *func* will be *eventually* called from the main " "interpreter thread with the argument *arg*. It will be called " @@ -1397,17 +1406,17 @@ msgid "" "these conditions met:" msgstr "" -#: ../Doc/c-api/init.rst:1218 +#: ../Doc/c-api/init.rst:1230 msgid "on a :term:`bytecode` boundary;" msgstr "" -#: ../Doc/c-api/init.rst:1219 +#: ../Doc/c-api/init.rst:1231 msgid "" "with the main thread holding the :term:`global interpreter lock` (*func* can " "therefore use the full C API)." msgstr "" -#: ../Doc/c-api/init.rst:1222 +#: ../Doc/c-api/init.rst:1234 msgid "" "*func* must return ``0`` on success, or ``-1`` on failure with an exception " "set. *func* won't be interrupted to perform another asynchronous " @@ -1415,13 +1424,13 @@ msgid "" "if the global interpreter lock is released." msgstr "" -#: ../Doc/c-api/init.rst:1227 +#: ../Doc/c-api/init.rst:1239 msgid "" "This function doesn't need a current thread state to run, and it doesn't " "need the global interpreter lock." msgstr "" -#: ../Doc/c-api/init.rst:1231 +#: ../Doc/c-api/init.rst:1243 msgid "" "This is a low-level function, only useful for very special cases. There is " "no guarantee that *func* will be called as quick as possible. If the main " @@ -1431,18 +1440,18 @@ msgid "" "`PyGILState API`." msgstr "" -#: ../Doc/c-api/init.rst:1243 +#: ../Doc/c-api/init.rst:1255 msgid "Profiling and Tracing" msgstr "" -#: ../Doc/c-api/init.rst:1248 +#: ../Doc/c-api/init.rst:1260 msgid "" "The Python interpreter provides some low-level support for attaching " "profiling and execution tracing facilities. These are used for profiling, " "debugging, and coverage analysis tools." msgstr "" -#: ../Doc/c-api/init.rst:1252 +#: ../Doc/c-api/init.rst:1264 msgid "" "This C interface allows the profiling or tracing code to avoid the overhead " "of calling through Python-level callable objects, making a direct C function " @@ -1452,7 +1461,7 @@ msgid "" "reported to the Python-level trace functions in previous versions." msgstr "" -#: ../Doc/c-api/init.rst:1262 +#: ../Doc/c-api/init.rst:1274 msgid "" "The type of the trace function registered using :c:func:`PyEval_SetProfile` " "and :c:func:`PyEval_SetTrace`. The first parameter is the object passed to " @@ -1463,66 +1472,66 @@ msgid "" "or :const:`PyTrace_OPCODE`, and *arg* depends on the value of *what*:" msgstr "" -#: ../Doc/c-api/init.rst:1271 +#: ../Doc/c-api/init.rst:1283 msgid "Value of *what*" msgstr "" -#: ../Doc/c-api/init.rst:1271 +#: ../Doc/c-api/init.rst:1283 msgid "Meaning of *arg*" msgstr "" -#: ../Doc/c-api/init.rst:1273 +#: ../Doc/c-api/init.rst:1285 msgid ":const:`PyTrace_CALL`" msgstr "" -#: ../Doc/c-api/init.rst:1273 ../Doc/c-api/init.rst:1278 -#: ../Doc/c-api/init.rst:1289 +#: ../Doc/c-api/init.rst:1285 ../Doc/c-api/init.rst:1290 +#: ../Doc/c-api/init.rst:1301 msgid "Always :c:data:`Py_None`." msgstr "" -#: ../Doc/c-api/init.rst:1275 +#: ../Doc/c-api/init.rst:1287 msgid ":const:`PyTrace_EXCEPTION`" msgstr "" -#: ../Doc/c-api/init.rst:1275 +#: ../Doc/c-api/init.rst:1287 msgid "Exception information as returned by :func:`sys.exc_info`." msgstr "" -#: ../Doc/c-api/init.rst:1278 +#: ../Doc/c-api/init.rst:1290 msgid ":const:`PyTrace_LINE`" msgstr "" -#: ../Doc/c-api/init.rst:1280 +#: ../Doc/c-api/init.rst:1292 msgid ":const:`PyTrace_RETURN`" msgstr "" -#: ../Doc/c-api/init.rst:1280 +#: ../Doc/c-api/init.rst:1292 msgid "" "Value being returned to the caller, or *NULL* if caused by an exception." msgstr "" -#: ../Doc/c-api/init.rst:1283 +#: ../Doc/c-api/init.rst:1295 msgid ":const:`PyTrace_C_CALL`" msgstr "" -#: ../Doc/c-api/init.rst:1283 ../Doc/c-api/init.rst:1285 -#: ../Doc/c-api/init.rst:1287 +#: ../Doc/c-api/init.rst:1295 ../Doc/c-api/init.rst:1297 +#: ../Doc/c-api/init.rst:1299 msgid "Function object being called." msgstr "" -#: ../Doc/c-api/init.rst:1285 +#: ../Doc/c-api/init.rst:1297 msgid ":const:`PyTrace_C_EXCEPTION`" msgstr "" -#: ../Doc/c-api/init.rst:1287 +#: ../Doc/c-api/init.rst:1299 msgid ":const:`PyTrace_C_RETURN`" msgstr "" -#: ../Doc/c-api/init.rst:1289 +#: ../Doc/c-api/init.rst:1301 msgid ":const:`PyTrace_OPCODE`" msgstr "" -#: ../Doc/c-api/init.rst:1294 +#: ../Doc/c-api/init.rst:1306 msgid "" "The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " "a new call to a function or method is being reported, or a new entry into a " @@ -1531,7 +1540,7 @@ msgid "" "the corresponding frame." msgstr "" -#: ../Doc/c-api/init.rst:1303 +#: ../Doc/c-api/init.rst:1315 msgid "" "The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " "an exception has been raised. The callback function is called with this " @@ -1543,7 +1552,7 @@ msgid "" "profiler." msgstr "" -#: ../Doc/c-api/init.rst:1314 +#: ../Doc/c-api/init.rst:1326 msgid "" "The value passed as the *what* parameter to a :c:type:`Py_tracefunc` " "function (but not a profiling function) when a line-number event is being " @@ -1551,31 +1560,31 @@ msgid "" "*0* on that frame." msgstr "" -#: ../Doc/c-api/init.rst:1321 +#: ../Doc/c-api/init.rst:1333 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a call is about to return." msgstr "" -#: ../Doc/c-api/init.rst:1327 +#: ../Doc/c-api/init.rst:1339 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function is about to be called." msgstr "" -#: ../Doc/c-api/init.rst:1333 +#: ../Doc/c-api/init.rst:1345 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function has raised an exception." msgstr "" -#: ../Doc/c-api/init.rst:1339 +#: ../Doc/c-api/init.rst:1351 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " "a C function has returned." msgstr "" -#: ../Doc/c-api/init.rst:1345 +#: ../Doc/c-api/init.rst:1357 msgid "" "The value for the *what* parameter to :c:type:`Py_tracefunc` functions (but " "not profiling functions) when a new opcode is about to be executed. This " @@ -1583,7 +1592,7 @@ msgid "" "attr:`f_trace_opcodes` to *1* on the frame." msgstr "" -#: ../Doc/c-api/init.rst:1353 +#: ../Doc/c-api/init.rst:1365 msgid "" "Set the profiler function to *func*. The *obj* parameter is passed to the " "function as its first parameter, and may be any Python object, or *NULL*. " @@ -1593,7 +1602,7 @@ msgid "" "`PyTrace_LINE` :const:`PyTrace_OPCODE` and :const:`PyTrace_EXCEPTION`." msgstr "" -#: ../Doc/c-api/init.rst:1363 +#: ../Doc/c-api/init.rst:1375 msgid "" "Set the tracing function to *func*. This is similar to :c:func:" "`PyEval_SetProfile`, except the tracing function does receive line-number " @@ -1604,48 +1613,48 @@ msgid "" "parameter." msgstr "" -#: ../Doc/c-api/init.rst:1373 +#: ../Doc/c-api/init.rst:1385 msgid "Advanced Debugger Support" msgstr "Support avancé du débogueur" -#: ../Doc/c-api/init.rst:1378 +#: ../Doc/c-api/init.rst:1390 msgid "" "These functions are only intended to be used by advanced debugging tools." msgstr "" -#: ../Doc/c-api/init.rst:1383 +#: ../Doc/c-api/init.rst:1395 msgid "" "Return the interpreter state object at the head of the list of all such " "objects." msgstr "" -#: ../Doc/c-api/init.rst:1388 +#: ../Doc/c-api/init.rst:1400 msgid "Return the main interpreter state object." msgstr "" -#: ../Doc/c-api/init.rst:1393 +#: ../Doc/c-api/init.rst:1405 msgid "" "Return the next interpreter state object after *interp* from the list of all " "such objects." msgstr "" -#: ../Doc/c-api/init.rst:1399 +#: ../Doc/c-api/init.rst:1411 msgid "" "Return the pointer to the first :c:type:`PyThreadState` object in the list " "of threads associated with the interpreter *interp*." msgstr "" -#: ../Doc/c-api/init.rst:1405 +#: ../Doc/c-api/init.rst:1417 msgid "" "Return the next thread state object after *tstate* from the list of all such " "objects belonging to the same :c:type:`PyInterpreterState` object." msgstr "" -#: ../Doc/c-api/init.rst:1412 +#: ../Doc/c-api/init.rst:1424 msgid "Thread Local Storage Support" msgstr "" -#: ../Doc/c-api/init.rst:1416 +#: ../Doc/c-api/init.rst:1428 msgid "" "The Python interpreter provides low-level support for thread-local storage " "(TLS) which wraps the underlying native TLS implementation to support the " @@ -1655,19 +1664,19 @@ msgid "" "thread." msgstr "" -#: ../Doc/c-api/init.rst:1423 +#: ../Doc/c-api/init.rst:1435 msgid "" "The GIL does *not* need to be held when calling these functions; they supply " "their own locking." msgstr "" -#: ../Doc/c-api/init.rst:1426 +#: ../Doc/c-api/init.rst:1438 msgid "" "Note that :file:`Python.h` does not include the declaration of the TLS APIs, " "you need to include :file:`pythread.h` to use thread-local storage." msgstr "" -#: ../Doc/c-api/init.rst:1430 +#: ../Doc/c-api/init.rst:1442 msgid "" "None of these API functions handle memory management on behalf of the :c:" "type:`void\\*` values. You need to allocate and deallocate them yourself. " @@ -1675,22 +1684,22 @@ msgid "" "functions don't do refcount operations on them either." msgstr "" -#: ../Doc/c-api/init.rst:1438 +#: ../Doc/c-api/init.rst:1450 msgid "Thread Specific Storage (TSS) API" msgstr "" -#: ../Doc/c-api/init.rst:1440 +#: ../Doc/c-api/init.rst:1452 msgid "" "TSS API is introduced to supersede the use of the existing TLS API within " "the CPython interpreter. This API uses a new type :c:type:`Py_tss_t` " "instead of :c:type:`int` to represent thread keys." msgstr "" -#: ../Doc/c-api/init.rst:1446 +#: ../Doc/c-api/init.rst:1458 msgid "\"A New C-API for Thread-Local Storage in CPython\" (:pep:`539`)" msgstr "" -#: ../Doc/c-api/init.rst:1451 +#: ../Doc/c-api/init.rst:1463 msgid "" "This data structure represents the state of a thread key, the definition of " "which may depend on the underlying TLS implementation, and it has an " @@ -1698,52 +1707,52 @@ msgid "" "public members in this structure." msgstr "" -#: ../Doc/c-api/init.rst:1456 +#: ../Doc/c-api/init.rst:1468 msgid "" "When :ref:`Py_LIMITED_API ` is not defined, static allocation of " "this type by :c:macro:`Py_tss_NEEDS_INIT` is allowed." msgstr "" -#: ../Doc/c-api/init.rst:1462 +#: ../Doc/c-api/init.rst:1474 msgid "" "This macro expands to the initializer for :c:type:`Py_tss_t` variables. Note " "that this macro won't be defined with :ref:`Py_LIMITED_API `." msgstr "" -#: ../Doc/c-api/init.rst:1467 +#: ../Doc/c-api/init.rst:1479 msgid "Dynamic Allocation" msgstr "" -#: ../Doc/c-api/init.rst:1469 +#: ../Doc/c-api/init.rst:1481 msgid "" "Dynamic allocation of the :c:type:`Py_tss_t`, required in extension modules " "built with :ref:`Py_LIMITED_API `, where static allocation of this " "type is not possible due to its implementation being opaque at build time." msgstr "" -#: ../Doc/c-api/init.rst:1476 +#: ../Doc/c-api/init.rst:1488 msgid "" "Return a value which is the same state as a value initialized with :c:macro:" "`Py_tss_NEEDS_INIT`, or *NULL* in the case of dynamic allocation failure." msgstr "" -#: ../Doc/c-api/init.rst:1483 +#: ../Doc/c-api/init.rst:1495 msgid "" "Free the given *key* allocated by :c:func:`PyThread_tss_alloc`, after first " "calling :c:func:`PyThread_tss_delete` to ensure any associated thread locals " "have been unassigned. This is a no-op if the *key* argument is `NULL`." msgstr "" -#: ../Doc/c-api/init.rst:1489 +#: ../Doc/c-api/init.rst:1501 msgid "" "A freed key becomes a dangling pointer, you should reset the key to `NULL`." msgstr "" -#: ../Doc/c-api/init.rst:1494 +#: ../Doc/c-api/init.rst:1506 msgid "Methods" msgstr "Méthodes" -#: ../Doc/c-api/init.rst:1496 +#: ../Doc/c-api/init.rst:1508 msgid "" "The parameter *key* of these functions must not be *NULL*. Moreover, the " "behaviors of :c:func:`PyThread_tss_set` and :c:func:`PyThread_tss_get` are " @@ -1751,13 +1760,13 @@ msgid "" "func:`PyThread_tss_create`." msgstr "" -#: ../Doc/c-api/init.rst:1504 +#: ../Doc/c-api/init.rst:1516 msgid "" "Return a non-zero value if the given :c:type:`Py_tss_t` has been initialized " "by :c:func:`PyThread_tss_create`." msgstr "" -#: ../Doc/c-api/init.rst:1510 +#: ../Doc/c-api/init.rst:1522 msgid "" "Return a zero value on successful initialization of a TSS key. The behavior " "is undefined if the value pointed to by the *key* argument is not " @@ -1766,7 +1775,7 @@ msgid "" "no-op and immediately returns success." msgstr "" -#: ../Doc/c-api/init.rst:1519 +#: ../Doc/c-api/init.rst:1531 msgid "" "Destroy a TSS key to forget the values associated with the key across all " "threads, and change the key's initialization state to uninitialized. A " @@ -1775,31 +1784,31 @@ msgid "" "key -- calling it on an already destroyed key is a no-op." msgstr "" -#: ../Doc/c-api/init.rst:1528 +#: ../Doc/c-api/init.rst:1540 msgid "" "Return a zero value to indicate successfully associating a :c:type:`void\\*` " "value with a TSS key in the current thread. Each thread has a distinct " "mapping of the key to a :c:type:`void\\*` value." msgstr "" -#: ../Doc/c-api/init.rst:1535 +#: ../Doc/c-api/init.rst:1547 msgid "" "Return the :c:type:`void\\*` value associated with a TSS key in the current " "thread. This returns *NULL* if no value is associated with the key in the " "current thread." msgstr "" -#: ../Doc/c-api/init.rst:1543 +#: ../Doc/c-api/init.rst:1555 msgid "Thread Local Storage (TLS) API" msgstr "" -#: ../Doc/c-api/init.rst:1545 +#: ../Doc/c-api/init.rst:1557 msgid "" "This API is superseded by :ref:`Thread Specific Storage (TSS) API `." msgstr "" -#: ../Doc/c-api/init.rst:1550 +#: ../Doc/c-api/init.rst:1562 msgid "" "This version of the API does not support platforms where the native TLS key " "is defined in a way that cannot be safely cast to ``int``. On such " @@ -1808,7 +1817,7 @@ msgid "" "platforms." msgstr "" -#: ../Doc/c-api/init.rst:1555 +#: ../Doc/c-api/init.rst:1567 msgid "" "Due to the compatibility problem noted above, this version of the API should " "not be used in new code." diff --git a/c-api/intro.po b/c-api/intro.po index cb90ba83..5942ae3a 100644 --- a/c-api/intro.po +++ b/c-api/intro.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-28 15:29+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -72,14 +72,14 @@ msgid "" "included in your code by the following line::" msgstr "" -#: ../Doc/c-api/intro.rst:53 +#: ../Doc/c-api/intro.rst:54 msgid "" "This implies inclusion of the following standard headers: ````, " "````, ````, ````, ```` and ```` (if available)." msgstr "" -#: ../Doc/c-api/intro.rst:59 +#: ../Doc/c-api/intro.rst:60 msgid "" "Since Python may define some pre-processor definitions which affect the " "standard headers on some systems, you *must* include :file:`Python.h` before " @@ -89,7 +89,13 @@ msgstr "" "les têtes standard sur certains systèmes, vous *devez* inclure :file:`Python." "h` avant les en-têtes standards." -#: ../Doc/c-api/intro.rst:63 +#: ../Doc/c-api/intro.rst:64 +msgid "" +"It is recommended to always define ``PY_SSIZE_T_CLEAN`` before including " +"``Python.h``. See :ref:`arg-parsing` for a description of this macro." +msgstr "" + +#: ../Doc/c-api/intro.rst:67 msgid "" "All user visible names defined by Python.h (except those defined by the " "included standard headers) have one of the prefixes ``Py`` or ``_Py``. " @@ -98,7 +104,7 @@ msgid "" "names do not have a reserved prefix." msgstr "" -#: ../Doc/c-api/intro.rst:68 +#: ../Doc/c-api/intro.rst:72 msgid "" "**Important:** user code should never define names that begin with ``Py`` or " "``_Py``. This confuses the reader, and jeopardizes the portability of the " @@ -106,7 +112,7 @@ msgid "" "beginning with one of these prefixes." msgstr "" -#: ../Doc/c-api/intro.rst:73 +#: ../Doc/c-api/intro.rst:77 msgid "" "The header files are typically installed with Python. On Unix, these are " "located in the directories :file:`{prefix}/include/pythonversion/` and :file:" @@ -118,7 +124,7 @@ msgid "" "specified to the installer." msgstr "" -#: ../Doc/c-api/intro.rst:82 +#: ../Doc/c-api/intro.rst:86 msgid "" "To include the headers, place both directories (if different) on your " "compiler's search path for includes. Do *not* place the parent directories " @@ -128,18 +134,18 @@ msgid "" "`exec_prefix`." msgstr "" -#: ../Doc/c-api/intro.rst:89 +#: ../Doc/c-api/intro.rst:93 msgid "" "C++ users should note that though the API is defined entirely using C, the " "header files do properly declare the entry points to be ``extern \"C\"``, so " "there is no need to do anything special to use the API from C++." msgstr "" -#: ../Doc/c-api/intro.rst:95 +#: ../Doc/c-api/intro.rst:99 msgid "Useful macros" msgstr "" -#: ../Doc/c-api/intro.rst:97 +#: ../Doc/c-api/intro.rst:101 msgid "" "Several useful macros are defined in the Python header files. Many are " "defined closer to where they are useful (e.g. :c:macro:`Py_RETURN_NONE`). " @@ -147,7 +153,7 @@ msgid "" "a complete listing." msgstr "" -#: ../Doc/c-api/intro.rst:104 +#: ../Doc/c-api/intro.rst:108 msgid "" "Use this when you have a code path that you do not expect to be reached. For " "example, in the ``default:`` clause in a ``switch`` statement for which all " @@ -155,50 +161,50 @@ msgid "" "where you might be tempted to put an ``assert(0)`` or ``abort()`` call." msgstr "" -#: ../Doc/c-api/intro.rst:113 +#: ../Doc/c-api/intro.rst:117 msgid "Return the absolute value of ``x``." msgstr "" -#: ../Doc/c-api/intro.rst:119 +#: ../Doc/c-api/intro.rst:123 msgid "Return the minimum value between ``x`` and ``y``." msgstr "" -#: ../Doc/c-api/intro.rst:125 +#: ../Doc/c-api/intro.rst:129 msgid "Return the maximum value between ``x`` and ``y``." msgstr "" -#: ../Doc/c-api/intro.rst:131 +#: ../Doc/c-api/intro.rst:135 msgid "" "Convert ``x`` to a C string. E.g. ``Py_STRINGIFY(123)`` returns ``\"123\"``." msgstr "" -#: ../Doc/c-api/intro.rst:138 +#: ../Doc/c-api/intro.rst:142 msgid "Return the size of a structure (``type``) ``member`` in bytes." msgstr "" -#: ../Doc/c-api/intro.rst:144 +#: ../Doc/c-api/intro.rst:148 msgid "" "Argument must be a character or an integer in the range [-128, 127] or [0, " "255]. This macro returns ``c`` cast to an ``unsigned char``." msgstr "" -#: ../Doc/c-api/intro.rst:149 +#: ../Doc/c-api/intro.rst:153 msgid "" "Like ``getenv(s)``, but returns *NULL* if :option:`-E` was passed on the " "command line (i.e. if ``Py_IgnoreEnvironmentFlag`` is set)." msgstr "" -#: ../Doc/c-api/intro.rst:154 +#: ../Doc/c-api/intro.rst:158 msgid "" "Use this for unused arguments in a function definition to silence compiler " "warnings, e.g. ``PyObject* func(PyObject *Py_UNUSED(ignored))``." msgstr "" -#: ../Doc/c-api/intro.rst:163 +#: ../Doc/c-api/intro.rst:167 msgid "Objects, Types and Reference Counts" msgstr "" -#: ../Doc/c-api/intro.rst:167 +#: ../Doc/c-api/intro.rst:171 msgid "" "Most Python/C API functions have one or more arguments as well as a return " "value of type :c:type:`PyObject\\*`. This type is a pointer to an opaque " @@ -213,7 +219,7 @@ msgid "" "objects." msgstr "" -#: ../Doc/c-api/intro.rst:178 +#: ../Doc/c-api/intro.rst:182 msgid "" "All Python objects (even Python integers) have a :dfn:`type` and a :dfn:" "`reference count`. An object's type determines what kind of object it is (e." @@ -224,11 +230,11 @@ msgid "" "a Python list." msgstr "" -#: ../Doc/c-api/intro.rst:189 +#: ../Doc/c-api/intro.rst:193 msgid "Reference Counts" msgstr "" -#: ../Doc/c-api/intro.rst:191 +#: ../Doc/c-api/intro.rst:195 msgid "" "The reference count is important because today's computers have a finite " "(and often severely limited) memory size; it counts how many different " @@ -242,7 +248,7 @@ msgid "" "for now, the solution is \"don't do that.\")" msgstr "" -#: ../Doc/c-api/intro.rst:206 +#: ../Doc/c-api/intro.rst:210 msgid "" "Reference counts are always manipulated explicitly. The normal way is to " "use the macro :c:func:`Py_INCREF` to increment an object's reference count " @@ -260,7 +266,7 @@ msgid "" "reference count increment is a simple operation." msgstr "" -#: ../Doc/c-api/intro.rst:220 +#: ../Doc/c-api/intro.rst:224 msgid "" "It is not necessary to increment an object's reference count for every " "local variable that contains a pointer to an object. In theory, the " @@ -277,7 +283,7 @@ msgid "" "to hold a reference to every argument for the duration of the call." msgstr "" -#: ../Doc/c-api/intro.rst:234 +#: ../Doc/c-api/intro.rst:238 msgid "" "However, a common pitfall is to extract an object from a list and hold on to " "it for a while without incrementing its reference count. Some other " @@ -288,7 +294,7 @@ msgid "" "from a :c:func:`Py_DECREF`, so almost any operation is potentially dangerous." msgstr "" -#: ../Doc/c-api/intro.rst:242 +#: ../Doc/c-api/intro.rst:246 msgid "" "A safe approach is to always use the generic operations (functions whose " "name begins with ``PyObject_``, ``PyNumber_``, ``PySequence_`` or " @@ -298,11 +304,11 @@ msgid "" "becomes second nature." msgstr "" -#: ../Doc/c-api/intro.rst:252 +#: ../Doc/c-api/intro.rst:256 msgid "Reference Count Details" msgstr "" -#: ../Doc/c-api/intro.rst:254 +#: ../Doc/c-api/intro.rst:258 msgid "" "The reference count behavior of functions in the Python/C API is best " "explained in terms of *ownership of references*. Ownership pertains to " @@ -319,7 +325,7 @@ msgid "" "reference." msgstr "" -#: ../Doc/c-api/intro.rst:267 +#: ../Doc/c-api/intro.rst:271 msgid "" "Conversely, when a calling function passes in a reference to an object, " "there are two possibilities: the function *steals* a reference to the " @@ -328,7 +334,7 @@ msgid "" "reference, and you are not responsible for it any longer." msgstr "" -#: ../Doc/c-api/intro.rst:277 +#: ../Doc/c-api/intro.rst:281 msgid "" "Few functions steal references; the two notable exceptions are :c:func:" "`PyList_SetItem` and :c:func:`PyTuple_SetItem`, which steal a reference to " @@ -340,7 +346,7 @@ msgid "" "below)::" msgstr "" -#: ../Doc/c-api/intro.rst:292 +#: ../Doc/c-api/intro.rst:296 msgid "" "Here, :c:func:`PyLong_FromLong` returns a new reference which is immediately " "stolen by :c:func:`PyTuple_SetItem`. When you want to keep using an object " @@ -348,7 +354,7 @@ msgid "" "another reference before calling the reference-stealing function." msgstr "" -#: ../Doc/c-api/intro.rst:297 +#: ../Doc/c-api/intro.rst:301 msgid "" "Incidentally, :c:func:`PyTuple_SetItem` is the *only* way to set tuple " "items; :c:func:`PySequence_SetItem` and :c:func:`PyObject_SetItem` refuse to " @@ -356,13 +362,13 @@ msgid "" "func:`PyTuple_SetItem` for tuples that you are creating yourself." msgstr "" -#: ../Doc/c-api/intro.rst:302 +#: ../Doc/c-api/intro.rst:306 msgid "" "Equivalent code for populating a list can be written using :c:func:" "`PyList_New` and :c:func:`PyList_SetItem`." msgstr "" -#: ../Doc/c-api/intro.rst:305 +#: ../Doc/c-api/intro.rst:309 msgid "" "However, in practice, you will rarely use these ways of creating and " "populating a tuple or list. There's a generic function, :c:func:" @@ -371,7 +377,7 @@ msgid "" "be replaced by the following (which also takes care of the error checking)::" msgstr "" -#: ../Doc/c-api/intro.rst:316 +#: ../Doc/c-api/intro.rst:320 msgid "" "It is much more common to use :c:func:`PyObject_SetItem` and friends with " "items whose references you are only borrowing, like arguments that were " @@ -382,7 +388,7 @@ msgid "" "sequence) to a given item::" msgstr "" -#: ../Doc/c-api/intro.rst:346 +#: ../Doc/c-api/intro.rst:350 msgid "" "The situation is slightly different for function return values. While " "passing a reference to most functions does not change your ownership " @@ -395,7 +401,7 @@ msgid "" "becomes the owner of the reference)." msgstr "" -#: ../Doc/c-api/intro.rst:355 +#: ../Doc/c-api/intro.rst:359 msgid "" "It is important to realize that whether you own a reference returned by a " "function depends on which function you call only --- *the plumage* (the type " @@ -406,18 +412,18 @@ msgid "" "the same arguments), you do own a reference to the returned object." msgstr "" -#: ../Doc/c-api/intro.rst:367 +#: ../Doc/c-api/intro.rst:371 msgid "" "Here is an example of how you could write a function that computes the sum " "of the items in a list of integers; once using :c:func:`PyList_GetItem`, " "and once using :c:func:`PySequence_GetItem`. ::" msgstr "" -#: ../Doc/c-api/intro.rst:431 +#: ../Doc/c-api/intro.rst:435 msgid "Types" msgstr "" -#: ../Doc/c-api/intro.rst:433 +#: ../Doc/c-api/intro.rst:437 msgid "" "There are few other data types that play a significant role in the Python/C " "API; most are simple C types such as :c:type:`int`, :c:type:`long`, :c:type:" @@ -428,11 +434,11 @@ msgid "" "that use them." msgstr "" -#: ../Doc/c-api/intro.rst:445 +#: ../Doc/c-api/intro.rst:449 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/c-api/intro.rst:447 +#: ../Doc/c-api/intro.rst:451 msgid "" "The Python programmer only needs to deal with exceptions if specific error " "handling is required; unhandled exceptions are automatically propagated to " @@ -441,7 +447,7 @@ msgid "" "stack traceback." msgstr "" -#: ../Doc/c-api/intro.rst:455 +#: ../Doc/c-api/intro.rst:459 msgid "" "For C programmers, however, error checking always has to be explicit. All " "functions in the Python/C API can raise exceptions, unless an explicit claim " @@ -456,7 +462,7 @@ msgid "" "explicitly documented." msgstr "" -#: ../Doc/c-api/intro.rst:470 +#: ../Doc/c-api/intro.rst:474 msgid "" "Exception state is maintained in per-thread storage (this is equivalent to " "using global storage in an unthreaded application). A thread can be in one " @@ -469,7 +475,7 @@ msgid "" "clears the exception state." msgstr "" -#: ../Doc/c-api/intro.rst:480 +#: ../Doc/c-api/intro.rst:484 msgid "" "The full exception state consists of three objects (all of which can be " "*NULL*): the exception type, the corresponding exception value, and the " @@ -482,7 +488,7 @@ msgid "" "``sys.exc_info()`` and friends." msgstr "" -#: ../Doc/c-api/intro.rst:492 +#: ../Doc/c-api/intro.rst:496 msgid "" "Note that starting with Python 1.5, the preferred, thread-safe way to access " "the exception state from Python code is to call the function :func:`sys." @@ -496,7 +502,7 @@ msgid "" "referenced by the stack frames in the traceback." msgstr "" -#: ../Doc/c-api/intro.rst:503 +#: ../Doc/c-api/intro.rst:507 msgid "" "As a general principle, a function that calls another function to perform " "some task should check whether the called function raised an exception, and " @@ -507,7 +513,7 @@ msgid "" "of the error." msgstr "" -#: ../Doc/c-api/intro.rst:512 +#: ../Doc/c-api/intro.rst:516 msgid "" "A simple example of detecting exceptions and passing them on is shown in " "the :c:func:`sum_sequence` example above. It so happens that this example " @@ -516,11 +522,11 @@ msgid "" "why you like Python, we show the equivalent Python code::" msgstr "" -#: ../Doc/c-api/intro.rst:527 +#: ../Doc/c-api/intro.rst:531 msgid "Here is the corresponding C code, in all its glory::" msgstr "" -#: ../Doc/c-api/intro.rst:579 +#: ../Doc/c-api/intro.rst:583 msgid "" "This example represents an endorsed use of the ``goto`` statement in C! It " "illustrates the use of :c:func:`PyErr_ExceptionMatches` and :c:func:" @@ -533,11 +539,11 @@ msgid "" "success after the final call made is successful." msgstr "" -#: ../Doc/c-api/intro.rst:593 +#: ../Doc/c-api/intro.rst:597 msgid "Embedding Python" msgstr "Embarquer Python" -#: ../Doc/c-api/intro.rst:595 +#: ../Doc/c-api/intro.rst:599 msgid "" "The one important task that only embedders (as opposed to extension writers) " "of the Python interpreter have to worry about is the initialization, and " @@ -545,7 +551,7 @@ msgid "" "the interpreter can only be used after the interpreter has been initialized." msgstr "" -#: ../Doc/c-api/intro.rst:608 +#: ../Doc/c-api/intro.rst:612 msgid "" "The basic initialization function is :c:func:`Py_Initialize`. This " "initializes the table of loaded modules, and creates the fundamental " @@ -553,7 +559,7 @@ msgid "" "initializes the module search path (``sys.path``)." msgstr "" -#: ../Doc/c-api/intro.rst:615 +#: ../Doc/c-api/intro.rst:619 msgid "" ":c:func:`Py_Initialize` does not set the \"script argument list\" (``sys." "argv``). If this variable is needed by Python code that will be executed " @@ -561,7 +567,7 @@ msgid "" "argv, updatepath)`` after the call to :c:func:`Py_Initialize`." msgstr "" -#: ../Doc/c-api/intro.rst:620 +#: ../Doc/c-api/intro.rst:624 msgid "" "On most systems (in particular, on Unix and Windows, although the details " "are slightly different), :c:func:`Py_Initialize` calculates the module " @@ -573,7 +579,7 @@ msgid "" "on the shell command search path (the environment variable :envvar:`PATH`)." msgstr "" -#: ../Doc/c-api/intro.rst:629 +#: ../Doc/c-api/intro.rst:633 msgid "" "For instance, if the Python executable is found in :file:`/usr/local/bin/" "python`, it will assume that the libraries are in :file:`/usr/local/lib/" @@ -584,7 +590,7 @@ msgid "" "in front of the standard path by setting :envvar:`PYTHONPATH`." msgstr "" -#: ../Doc/c-api/intro.rst:644 +#: ../Doc/c-api/intro.rst:648 msgid "" "The embedding application can steer the search by calling " "``Py_SetProgramName(file)`` *before* calling :c:func:`Py_Initialize`. Note " @@ -595,7 +601,7 @@ msgid "" "func:`Py_GetProgramFullPath` (all defined in :file:`Modules/getpath.c`)." msgstr "" -#: ../Doc/c-api/intro.rst:654 +#: ../Doc/c-api/intro.rst:658 msgid "" "Sometimes, it is desirable to \"uninitialize\" Python. For instance, the " "application may want to start over (make another call to :c:func:" @@ -609,18 +615,18 @@ msgid "" "released." msgstr "" -#: ../Doc/c-api/intro.rst:668 +#: ../Doc/c-api/intro.rst:672 msgid "Debugging Builds" msgstr "" -#: ../Doc/c-api/intro.rst:670 +#: ../Doc/c-api/intro.rst:674 msgid "" "Python can be built with several macros to enable extra checks of the " "interpreter and extension modules. These checks tend to add a large amount " "of overhead to the runtime so they are not enabled by default." msgstr "" -#: ../Doc/c-api/intro.rst:674 +#: ../Doc/c-api/intro.rst:678 msgid "" "A full list of the various types of debugging builds is in the file :file:" "`Misc/SpecialBuilds.txt` in the Python source distribution. Builds are " @@ -630,7 +636,7 @@ msgid "" "section." msgstr "" -#: ../Doc/c-api/intro.rst:680 +#: ../Doc/c-api/intro.rst:684 msgid "" "Compiling the interpreter with the :c:macro:`Py_DEBUG` macro defined " "produces what is generally meant by \"a debug build\" of Python. :c:macro:" @@ -640,61 +646,61 @@ msgid "" "enabled in the Unix build, compiler optimization is disabled." msgstr "" -#: ../Doc/c-api/intro.rst:687 +#: ../Doc/c-api/intro.rst:691 msgid "" "In addition to the reference count debugging described below, the following " "extra checks are performed:" msgstr "" -#: ../Doc/c-api/intro.rst:690 +#: ../Doc/c-api/intro.rst:694 msgid "Extra checks are added to the object allocator." msgstr "" -#: ../Doc/c-api/intro.rst:692 +#: ../Doc/c-api/intro.rst:696 msgid "Extra checks are added to the parser and compiler." msgstr "" -#: ../Doc/c-api/intro.rst:694 +#: ../Doc/c-api/intro.rst:698 msgid "" "Downcasts from wide types to narrow types are checked for loss of " "information." msgstr "" -#: ../Doc/c-api/intro.rst:696 +#: ../Doc/c-api/intro.rst:700 msgid "" "A number of assertions are added to the dictionary and set implementations. " "In addition, the set object acquires a :meth:`test_c_api` method." msgstr "" -#: ../Doc/c-api/intro.rst:699 +#: ../Doc/c-api/intro.rst:703 msgid "Sanity checks of the input arguments are added to frame creation." msgstr "" -#: ../Doc/c-api/intro.rst:701 +#: ../Doc/c-api/intro.rst:705 msgid "" "The storage for ints is initialized with a known invalid pattern to catch " "reference to uninitialized digits." msgstr "" -#: ../Doc/c-api/intro.rst:704 +#: ../Doc/c-api/intro.rst:708 msgid "" "Low-level tracing and extra exception checking are added to the runtime " "virtual machine." msgstr "" -#: ../Doc/c-api/intro.rst:707 +#: ../Doc/c-api/intro.rst:711 msgid "Extra checks are added to the memory arena implementation." msgstr "" -#: ../Doc/c-api/intro.rst:709 +#: ../Doc/c-api/intro.rst:713 msgid "Extra debugging is added to the thread module." msgstr "" -#: ../Doc/c-api/intro.rst:711 +#: ../Doc/c-api/intro.rst:715 msgid "There may be additional checks not mentioned here." msgstr "" -#: ../Doc/c-api/intro.rst:713 +#: ../Doc/c-api/intro.rst:717 msgid "" "Defining :c:macro:`Py_TRACE_REFS` enables reference tracing. When defined, " "a circular doubly linked list of active objects is maintained by adding two " @@ -704,7 +710,7 @@ msgid "" "macro:`Py_DEBUG`." msgstr "" -#: ../Doc/c-api/intro.rst:719 +#: ../Doc/c-api/intro.rst:723 msgid "" "Please refer to :file:`Misc/SpecialBuilds.txt` in the Python source " "distribution for more detailed information." diff --git a/c-api/memory.po b/c-api/memory.po index 4e1993bd..be0291c6 100644 --- a/c-api/memory.po +++ b/c-api/memory.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-17 21:38+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -486,19 +486,19 @@ msgid "" "fields:" msgstr "" -#: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:506 +#: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:513 msgid "Field" msgstr "" -#: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:506 +#: ../Doc/c-api/memory.rst:368 ../Doc/c-api/memory.rst:513 msgid "Meaning" msgstr "Signification" -#: ../Doc/c-api/memory.rst:370 ../Doc/c-api/memory.rst:508 +#: ../Doc/c-api/memory.rst:370 ../Doc/c-api/memory.rst:515 msgid "``void *ctx``" msgstr "``void *ctx``" -#: ../Doc/c-api/memory.rst:370 ../Doc/c-api/memory.rst:508 +#: ../Doc/c-api/memory.rst:370 ../Doc/c-api/memory.rst:515 msgid "user context passed as first argument" msgstr "" @@ -631,36 +631,37 @@ msgstr "" #: ../Doc/c-api/memory.rst:443 msgid "" -"Newly allocated memory is filled with the byte ``0xCB``, freed memory is " -"filled with the byte ``0xDB``." +"Newly allocated memory is filled with the byte ``0xCD`` (``CLEANBYTE``), " +"freed memory is filled with the byte ``0xDD`` (``DEADBYTE``). Memory blocks " +"are surrounded by \"forbidden bytes\" (``FORBIDDENBYTE``: byte ``0xFD``)." msgstr "" -#: ../Doc/c-api/memory.rst:446 +#: ../Doc/c-api/memory.rst:447 msgid "Runtime checks:" msgstr "" -#: ../Doc/c-api/memory.rst:448 +#: ../Doc/c-api/memory.rst:449 msgid "" "Detect API violations, ex: :c:func:`PyObject_Free` called on a buffer " "allocated by :c:func:`PyMem_Malloc`" msgstr "" -#: ../Doc/c-api/memory.rst:450 +#: ../Doc/c-api/memory.rst:451 msgid "Detect write before the start of the buffer (buffer underflow)" msgstr "" -#: ../Doc/c-api/memory.rst:451 +#: ../Doc/c-api/memory.rst:452 msgid "Detect write after the end of the buffer (buffer overflow)" msgstr "" -#: ../Doc/c-api/memory.rst:452 +#: ../Doc/c-api/memory.rst:453 msgid "" "Check that the :term:`GIL ` is held when allocator " "functions of :c:data:`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) and :" "c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) domains are called" msgstr "" -#: ../Doc/c-api/memory.rst:457 +#: ../Doc/c-api/memory.rst:458 msgid "" "On error, the debug hooks use the :mod:`tracemalloc` module to get the " "traceback where a memory block was allocated. The traceback is only " @@ -668,7 +669,7 @@ msgid "" "memory block was traced." msgstr "" -#: ../Doc/c-api/memory.rst:462 +#: ../Doc/c-api/memory.rst:463 msgid "" "These hooks are :ref:`installed by default ` if " "Python is compiled in debug mode. The :envvar:`PYTHONMALLOC` environment " @@ -676,7 +677,7 @@ msgid "" "mode." msgstr "" -#: ../Doc/c-api/memory.rst:467 +#: ../Doc/c-api/memory.rst:468 msgid "" "This function now also works on Python compiled in release mode. On error, " "the debug hooks now use :mod:`tracemalloc` to get the traceback where a " @@ -685,11 +686,18 @@ msgid "" "`PYMEM_DOMAIN_MEM` domains are called." msgstr "" -#: ../Doc/c-api/memory.rst:478 +#: ../Doc/c-api/memory.rst:475 +msgid "" +"Byte patterns ``0xCB`` (``CLEANBYTE``), ``0xDB`` (``DEADBYTE``) and ``0xFB`` " +"(``FORBIDDENBYTE``) have been replaced with ``0xCD``, ``0xDD`` and ``0xFD`` " +"to use the same values than Windows CRT debug ``malloc()`` and ``free()``." +msgstr "" + +#: ../Doc/c-api/memory.rst:485 msgid "The pymalloc allocator" msgstr "" -#: ../Doc/c-api/memory.rst:480 +#: ../Doc/c-api/memory.rst:487 msgid "" "Python has a *pymalloc* allocator optimized for small objects (smaller or " "equal to 512 bytes) with a short lifetime. It uses memory mappings called " @@ -698,83 +706,83 @@ msgid "" "512 bytes." msgstr "" -#: ../Doc/c-api/memory.rst:485 +#: ../Doc/c-api/memory.rst:492 msgid "" "*pymalloc* is the :ref:`default allocator ` of " "the :c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) and :c:data:" "`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) domains." msgstr "" -#: ../Doc/c-api/memory.rst:489 +#: ../Doc/c-api/memory.rst:496 msgid "The arena allocator uses the following functions:" msgstr "" -#: ../Doc/c-api/memory.rst:491 +#: ../Doc/c-api/memory.rst:498 msgid ":c:func:`VirtualAlloc` and :c:func:`VirtualFree` on Windows," msgstr "" -#: ../Doc/c-api/memory.rst:492 +#: ../Doc/c-api/memory.rst:499 msgid ":c:func:`mmap` and :c:func:`munmap` if available," msgstr "" -#: ../Doc/c-api/memory.rst:493 +#: ../Doc/c-api/memory.rst:500 msgid ":c:func:`malloc` and :c:func:`free` otherwise." msgstr "" -#: ../Doc/c-api/memory.rst:496 +#: ../Doc/c-api/memory.rst:503 msgid "Customize pymalloc Arena Allocator" msgstr "" -#: ../Doc/c-api/memory.rst:502 +#: ../Doc/c-api/memory.rst:509 msgid "" "Structure used to describe an arena allocator. The structure has three " "fields:" msgstr "" -#: ../Doc/c-api/memory.rst:510 +#: ../Doc/c-api/memory.rst:517 msgid "``void* alloc(void *ctx, size_t size)``" msgstr "``void* alloc(void *ctx, size_t size)``" -#: ../Doc/c-api/memory.rst:510 +#: ../Doc/c-api/memory.rst:517 msgid "allocate an arena of size bytes" msgstr "" -#: ../Doc/c-api/memory.rst:512 +#: ../Doc/c-api/memory.rst:519 msgid "``void free(void *ctx, size_t size, void *ptr)``" msgstr "``void free(void *ctx, size_t size, void *ptr)``" -#: ../Doc/c-api/memory.rst:512 +#: ../Doc/c-api/memory.rst:519 msgid "free an arena" msgstr "" -#: ../Doc/c-api/memory.rst:517 +#: ../Doc/c-api/memory.rst:524 msgid "Get the arena allocator." msgstr "" -#: ../Doc/c-api/memory.rst:521 +#: ../Doc/c-api/memory.rst:528 msgid "Set the arena allocator." msgstr "" -#: ../Doc/c-api/memory.rst:525 +#: ../Doc/c-api/memory.rst:532 msgid "tracemalloc C API" msgstr "" -#: ../Doc/c-api/memory.rst:549 +#: ../Doc/c-api/memory.rst:556 msgid "Examples" msgstr "Exemples" -#: ../Doc/c-api/memory.rst:551 +#: ../Doc/c-api/memory.rst:558 msgid "" "Here is the example from section :ref:`memoryoverview`, rewritten so that " "the I/O buffer is allocated from the Python heap by using the first function " "set::" msgstr "" -#: ../Doc/c-api/memory.rst:564 +#: ../Doc/c-api/memory.rst:571 msgid "The same code using the type-oriented function set::" msgstr "" -#: ../Doc/c-api/memory.rst:576 +#: ../Doc/c-api/memory.rst:583 msgid "" "Note that in the two examples above, the buffer is always manipulated via " "functions belonging to the same set. Indeed, it is required to use the same " @@ -784,14 +792,14 @@ msgid "" "different allocators operating on different heaps. ::" msgstr "" -#: ../Doc/c-api/memory.rst:591 +#: ../Doc/c-api/memory.rst:598 msgid "" "In addition to the functions aimed at handling raw memory blocks from the " "Python heap, objects in Python are allocated and released with :c:func:" "`PyObject_New`, :c:func:`PyObject_NewVar` and :c:func:`PyObject_Del`." msgstr "" -#: ../Doc/c-api/memory.rst:595 +#: ../Doc/c-api/memory.rst:602 msgid "" "These will be explained in the next chapter on defining and implementing new " "object types in C." diff --git a/c-api/unicode.po b/c-api/unicode.po index 5e4c172d..dff8775f 100644 --- a/c-api/unicode.po +++ b/c-api/unicode.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-28 15:29+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-10-04 12:27+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -42,20 +42,20 @@ msgstr "" #: ../Doc/c-api/unicode.rst:25 msgid "" -"Due to the transition between the old APIs and the new APIs, unicode objects " +"Due to the transition between the old APIs and the new APIs, Unicode objects " "can internally be in two states depending on how they were created:" msgstr "" #: ../Doc/c-api/unicode.rst:28 msgid "" -"\"canonical\" unicode objects are all objects created by a non-deprecated " -"unicode API. They use the most efficient representation allowed by the " +"\"canonical\" Unicode objects are all objects created by a non-deprecated " +"Unicode API. They use the most efficient representation allowed by the " "implementation." msgstr "" #: ../Doc/c-api/unicode.rst:32 msgid "" -"\"legacy\" unicode objects have been created through one of the deprecated " +"\"legacy\" Unicode objects have been created through one of the deprecated " "APIs (typically :c:func:`PyUnicode_FromUnicode`) and only bear the :c:type:" "`Py_UNICODE*` representation; you will have to call :c:func:" "`PyUnicode_READY` on them before calling any other API." @@ -162,7 +162,7 @@ msgstr "" #: ../Doc/c-api/unicode.rst:155 msgid "" -"Return a void pointer to the raw unicode buffer. *o* has to be a Unicode " +"Return a void pointer to the raw Unicode buffer. *o* has to be a Unicode " "object in the \"canonical\" representation (not checked)." msgstr "" @@ -429,7 +429,7 @@ msgstr "" #: ../Doc/c-api/unicode.rst:432 msgid "" "Take a C :c:func:`printf`\\ -style *format* string and a variable number of " -"arguments, calculate the size of the resulting Python unicode string and " +"arguments, calculate the size of the resulting Python Unicode string and " "return a string with the values formatted into it. The variable arguments " "must be C types and must correspond exactly to the format characters in the " "*format* ASCII-encoded string. The following format characters are allowed:" @@ -649,7 +649,8 @@ msgid ":attr:`%U`" msgstr "" #: ../Doc/c-api/unicode.rst:507 -msgid "A unicode object." +#, fuzzy +msgid "A Unicode object." msgstr "Un objet Unicode." #: ../Doc/c-api/unicode.rst:509 @@ -662,7 +663,7 @@ msgstr "" #: ../Doc/c-api/unicode.rst:509 msgid "" -"A unicode object (which may be *NULL*) and a null-terminated C character " +"A Unicode object (which may be *NULL*) and a null-terminated C character " "array as a second parameter (which will be used, if the first parameter is " "*NULL*)." msgstr "" @@ -1905,7 +1906,7 @@ msgstr "" #: ../Doc/c-api/unicode.rst:1673 msgid "" -"Compare a unicode object, *uni*, with *string* and return ``-1``, ``0``, " +"Compare a Unicode object, *uni*, with *string* and return ``-1``, ``0``, " "``1`` for less than, equal, and greater than, respectively. It is best to " "pass only ASCII-encoded strings, but the function interprets the input " "string as ISO-8859-1 if it contains non-ASCII characters." @@ -1916,7 +1917,7 @@ msgid "This function does not raise exceptions." msgstr "" #: ../Doc/c-api/unicode.rst:1683 -msgid "Rich compare two unicode strings and return one of the following:" +msgid "Rich compare two Unicode strings and return one of the following:" msgstr "" #: ../Doc/c-api/unicode.rst:1685 @@ -1958,7 +1959,7 @@ msgstr "" #: ../Doc/c-api/unicode.rst:1710 msgid "" "Intern the argument *\\*string* in place. The argument must be the address " -"of a pointer variable pointing to a Python unicode string object. If there " +"of a pointer variable pointing to a Python Unicode string object. If there " "is an existing interned string that is the same as *\\*string*, it sets *" "\\*string* to it (decrementing the reference count of the old string object " "and incrementing the reference count of the interned string object), " @@ -1971,7 +1972,7 @@ msgstr "" #: ../Doc/c-api/unicode.rst:1723 msgid "" "A combination of :c:func:`PyUnicode_FromString` and :c:func:" -"`PyUnicode_InternInPlace`, returning either a new unicode string object that " +"`PyUnicode_InternInPlace`, returning either a new Unicode string object that " "has been interned, or a new (\"owned\") reference to an earlier interned " "string object with the same value." msgstr "" diff --git a/distributing/index.po b/distributing/index.po index a15f25f8..53e6fe30 100644 --- a/distributing/index.po +++ b/distributing/index.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-28 15:29+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-08-01 00:05+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -250,56 +250,60 @@ msgstr "" "Le *Python Packaging User Guide* contient plus de détails sur les `(en) " "outils actuellement recommandés `_." -#: ../Doc/distributing/index.rst:117 -msgid "Reading the guide" -msgstr "Lire le manuel" +#: ../Doc/distributing/index.rst:123 +#, fuzzy +msgid "Reading the Python Packaging User Guide" +msgstr "" +"`(en) Téléverser le projet sur le Python Packaging Index `_" -#: ../Doc/distributing/index.rst:119 +#: ../Doc/distributing/index.rst:125 +#, fuzzy msgid "" "The Python Packaging User Guide covers the various key steps and elements " -"involved in creating a project:" +"involved in creating and publishing a project:" msgstr "" "Le *Python Packaging User Guide* couvre les différentes étapes et les " -"éléments clés de la création d'un projet :" +"éléments clés de la création et publication d'un projet :" -#: ../Doc/distributing/index.rst:122 +#: ../Doc/distributing/index.rst:128 msgid "`Project structure`_" msgstr "`(en) Structure d'un projet `_" -#: ../Doc/distributing/index.rst:123 +#: ../Doc/distributing/index.rst:129 msgid "`Building and packaging the project`_" msgstr "" "`(en) Construire et empaqueter le projet `_" -#: ../Doc/distributing/index.rst:124 +#: ../Doc/distributing/index.rst:130 msgid "`Uploading the project to the Python Packaging Index`_" msgstr "" "`(en) Téléverser le projet sur le Python Packaging Index `_" -#: ../Doc/distributing/index.rst:135 +#: ../Doc/distributing/index.rst:141 msgid "How do I...?" msgstr "Comment puis-je ...?" -#: ../Doc/distributing/index.rst:137 +#: ../Doc/distributing/index.rst:143 msgid "These are quick answers or links for some common tasks." msgstr "" "Ce sont des réponses rapides ou des liens pour certaines tâches courantes." -#: ../Doc/distributing/index.rst:140 +#: ../Doc/distributing/index.rst:146 msgid "... choose a name for my project?" msgstr "... choisir un nom pour mon projet ?" -#: ../Doc/distributing/index.rst:142 +#: ../Doc/distributing/index.rst:148 msgid "This isn't an easy topic, but here are a few tips:" msgstr "Ce n'est pas un sujet facile, mais voici quelques conseils :" -#: ../Doc/distributing/index.rst:144 +#: ../Doc/distributing/index.rst:150 msgid "check the Python Packaging Index to see if the name is already in use" msgstr "vérifiez dans le *Python Packaging Index* si le nom est déjà utilisé" -#: ../Doc/distributing/index.rst:145 +#: ../Doc/distributing/index.rst:151 msgid "" "check popular hosting sites like GitHub, BitBucket, etc to see if there is " "already a project with that name" @@ -307,12 +311,12 @@ msgstr "" "vérifiez sur quelques sites d'hébergement populaires tels que GitHub, " "BitBucket, etc pour voir s'il y existe déjà un projet avec ce nom" -#: ../Doc/distributing/index.rst:147 +#: ../Doc/distributing/index.rst:153 msgid "check what comes up in a web search for the name you're considering" msgstr "" "vérifiez ce qui sort en recherchant sur le web le nom que vous envisagez" -#: ../Doc/distributing/index.rst:148 +#: ../Doc/distributing/index.rst:154 msgid "" "avoid particularly common words, especially ones with multiple meanings, as " "they can make it difficult for users to find your software when searching " @@ -322,11 +326,11 @@ msgstr "" "significations, car pour vos utilisateurs, cela complique la recherche de " "votre logiciel" -#: ../Doc/distributing/index.rst:154 +#: ../Doc/distributing/index.rst:160 msgid "... create and distribute binary extensions?" msgstr "... créer et distribuer des extensions binaires ?" -#: ../Doc/distributing/index.rst:156 +#: ../Doc/distributing/index.rst:162 msgid "" "This is actually quite a complex topic, with a variety of alternatives " "available depending on exactly what you're aiming to achieve. See the Python " @@ -336,10 +340,13 @@ msgstr "" "disponibles dont le choix dépend de votre objectif exact. Voir le *Python " "Packaging User Guide* pour plus d'informations et de recommandations." -#: ../Doc/distributing/index.rst:162 +#: ../Doc/distributing/index.rst:168 msgid "" "`Python Packaging User Guide: Binary Extensions `__" msgstr "" "`Python Packaging User Guide: Binary Extensions `__" + +#~ msgid "Reading the guide" +#~ msgstr "Lire le manuel" diff --git a/distutils/packageindex.po b/distutils/packageindex.po index c4eecfc0..230dbae9 100644 --- a/distutils/packageindex.po +++ b/distutils/packageindex.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-04-29 00:24+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -14,297 +14,19 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../Doc/distutils/packageindex.rst:9 +#: ../Doc/distutils/packageindex.rst:7 msgid "The Python Package Index (PyPI)" msgstr "" -#: ../Doc/distutils/packageindex.rst:11 +#: ../Doc/distutils/packageindex.rst:9 msgid "" -"The `Python Package Index (PyPI)`_ stores :ref:`meta-data ` " -"describing distributions packaged with distutils, as well as package data " -"like distribution files if a package author wishes." +"The `Python Package Index (PyPI)`_ stores metadata describing distributions " +"packaged with distutils and other publishing tools, as well the distribution " +"archives themselves." msgstr "" -#: ../Doc/distutils/packageindex.rst:15 +#: ../Doc/distutils/packageindex.rst:13 msgid "" -"Distutils provides the :command:`register` and :command:`upload` commands " -"for pushing meta-data and distribution files to PyPI, respectively. See :" -"ref:`package-commands` for information on these commands." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:21 -msgid "PyPI overview" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:23 -msgid "" -"PyPI lets you submit any number of versions of your distribution to the " -"index. If you alter the meta-data for a particular version, you can submit " -"it again and the index will be updated." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:27 -msgid "" -"PyPI holds a record for each (name, version) combination submitted. The " -"first user to submit information for a given name is designated the Owner of " -"that name. Changes can be submitted through the :command:`register` command " -"or through the web interface. Owners can designate other users as Owners or " -"Maintainers. Maintainers can edit the package information, but not " -"designate new Owners or Maintainers." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:34 -msgid "" -"By default PyPI displays only the newest version of a given package. The " -"web interface lets one change this default behavior and manually select " -"which versions to display and hide." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:38 -msgid "" -"For each version, PyPI displays a home page. The home page is created from " -"the ``long_description`` which can be submitted via the :command:`register` " -"command. See :ref:`package-display` for more information." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:46 -msgid "Distutils commands" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:48 -msgid "" -"Distutils exposes two commands for submitting package data to PyPI: the :ref:" -"`register ` command for submitting meta-data to PyPI and " -"the :ref:`upload ` command for submitting distribution " -"files. Both commands read configuration data from a special file called a :" -"ref:`.pypirc file `." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:58 -msgid "The ``register`` command" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:60 -msgid "" -"The distutils command :command:`register` is used to submit your " -"distribution's meta-data to an index server. It is invoked as follows::" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:65 -msgid "Distutils will respond with the following prompt::" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:75 -msgid "" -"Note: if your username and password are saved locally, you will not see this " -"menu. Also, refer to :ref:`pypirc` for how to store your credentials in a :" -"file:`.pypirc` file." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:79 -msgid "" -"If you have not registered with PyPI, then you will need to do so now. You " -"should choose option 2, and enter your details as required. Soon after " -"submitting your details, you will receive an email which will be used to " -"confirm your registration." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:84 -msgid "" -"Once you are registered, you may choose option 1 from the menu. You will be " -"prompted for your PyPI username and password, and :command:`register` will " -"then submit your meta-data to the index." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:88 -msgid "" -"See :ref:`package-cmdoptions` for options to the :command:`register` command." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:94 -msgid "The ``upload`` command" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:96 -msgid "" -"The distutils command :command:`upload` pushes the distribution files to " -"PyPI." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:98 -msgid "" -"The command is invoked immediately after building one or more distribution " -"files. For example, the command ::" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:103 -msgid "" -"will cause the source distribution and the Windows installer to be uploaded " -"to PyPI. Note that these will be uploaded even if they are built using an " -"earlier invocation of :file:`setup.py`, but that only distributions named on " -"the command line for the invocation including the :command:`upload` command " -"are uploaded." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:108 -msgid "" -"If a :command:`register` command was previously called in the same command, " -"and if the password was entered in the prompt, :command:`upload` will reuse " -"the entered password. This is useful if you do not want to store a password " -"in clear text in a :file:`.pypirc` file." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:113 -msgid "" -"You can use the ``--sign`` option to tell :command:`upload` to sign each " -"uploaded file using GPG (GNU Privacy Guard). The :program:`gpg` program " -"must be available for execution on the system :envvar:`PATH`. You can also " -"specify which key to use for signing using the ``--identity=name`` option." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:118 -msgid "" -"See :ref:`package-cmdoptions` for additional options to the :command:" -"`upload` command." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:125 -msgid "Additional command options" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:127 -msgid "" -"This section describes options common to both the :command:`register` and :" -"command:`upload` commands." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:130 -msgid "" -"The ``--repository`` or ``-r`` option lets you specify a PyPI server " -"different from the default. For example::" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:135 -msgid "" -"For convenience, a name can be used in place of the URL when the :file:`." -"pypirc` file is configured to do so. For example::" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:140 -msgid "See :ref:`pypirc` for more information on defining alternate servers." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:142 -msgid "" -"The ``--show-response`` option displays the full response text from the PyPI " -"server, which is useful when debugging problems with registering and " -"uploading." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:153 -msgid "The ``.pypirc`` file" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:155 -msgid "" -"The :command:`register` and :command:`upload` commands both check for the " -"existence of a :file:`.pypirc` file at the location :file:`$HOME/.pypirc`. " -"If this file exists, the command uses the username, password, and repository " -"URL configured in the file. The format of a :file:`.pypirc` file is as " -"follows:" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:172 -msgid "" -"The *distutils* section defines an *index-servers* variable that lists the " -"name of all sections describing a repository." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:175 -msgid "Each section describing a repository defines three variables:" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:177 -msgid "*repository*, that defines the url of the PyPI server. Defaults to" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:178 -msgid "``https://upload.pypi.org/legacy/``." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:179 -msgid "*username*, which is the registered username on the PyPI server." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:181 -msgid "*password*, that will be used to authenticate. If omitted the user" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:181 -msgid "will be prompt to type it when needed." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:183 -msgid "" -"If you want to define another server a new section can be created and listed " -"in the *index-servers* variable:" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:203 -msgid "" -"This allows the :command:`register` and :command:`upload` commands to be " -"called with the ``--repository`` option as described in :ref:`package-" -"cmdoptions`." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:207 -msgid "" -"Specifically, you might want to add the `PyPI Test Repository `_ to your ``.pypirc`` to facilitate testing before " -"doing your first upload to ``PyPI`` itself." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:215 -msgid "PyPI package display" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:217 -msgid "" -"The ``long_description`` field plays a special role at PyPI. It is used by " -"the server to display a home page for the registered package." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:220 -msgid "" -"If you use the `reStructuredText `_ syntax for this field, PyPI will parse it and display an HTML output " -"for the package home page." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:224 -msgid "" -"The ``long_description`` field can be attached to a text file located in the " -"package::" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:235 -msgid "" -"In that case, :file:`README.txt` is a regular reStructuredText text file " -"located in the root of the package besides :file:`setup.py`." -msgstr "" - -#: ../Doc/distutils/packageindex.rst:238 -msgid "" -"To prevent registering broken reStructuredText content, you can use the :" -"program:`rst2html` program that is provided by the :mod:`docutils` package " -"and check the ``long_description`` from the command line:" -msgstr "" - -#: ../Doc/distutils/packageindex.rst:246 -msgid "" -":mod:`docutils` will display a warning if there's something wrong with your " -"syntax. Because PyPI applies additional checks (e.g. by passing ``--no-" -"raw`` to ``rst2html.py`` in the command above), being able to run the " -"command above without warnings does not guarantee that PyPI will convert the " -"content successfully." +"References to up to date PyPI documentation can be found at :ref:`publishing-" +"python-packages`." msgstr "" diff --git a/distutils/setupscript.po b/distutils/setupscript.po index 4b755fb7..1e269ab8 100644 --- a/distutils/setupscript.po +++ b/distutils/setupscript.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -904,12 +904,11 @@ msgstr "" #: ../Doc/distutils/setupscript.rst:615 msgid "" -"The ``long_description`` field is used by PyPI when you are :ref:" -"`registering ` a package, to :ref:`build its home page " -"`." +"The ``long_description`` field is used by PyPI when you publish a package, " +"to build its project page." msgstr "" -#: ../Doc/distutils/setupscript.rst:620 +#: ../Doc/distutils/setupscript.rst:619 msgid "" "The ``license`` field is a text indicating the license covering the package " "where the license is not a selection from the \"License\" Trove classifiers. " @@ -917,49 +916,49 @@ msgid "" "option which is deprecated but still acts as an alias for ``license``." msgstr "" -#: ../Doc/distutils/setupscript.rst:627 +#: ../Doc/distutils/setupscript.rst:626 msgid "This field must be a list." msgstr "" -#: ../Doc/distutils/setupscript.rst:630 +#: ../Doc/distutils/setupscript.rst:629 msgid "" "The valid classifiers are listed on `PyPI `_." msgstr "" -#: ../Doc/distutils/setupscript.rst:634 +#: ../Doc/distutils/setupscript.rst:633 msgid "" "To preserve backward compatibility, this field also accepts a string. If you " "pass a comma-separated string ``'foo, bar'``, it will be converted to " "``['foo', 'bar']``, Otherwise, it will be converted to a list of one string." msgstr "" -#: ../Doc/distutils/setupscript.rst:640 +#: ../Doc/distutils/setupscript.rst:639 msgid "'short string'" msgstr "'chaîne courte'" -#: ../Doc/distutils/setupscript.rst:640 +#: ../Doc/distutils/setupscript.rst:639 msgid "A single line of text, not more than 200 characters." msgstr "" -#: ../Doc/distutils/setupscript.rst:644 +#: ../Doc/distutils/setupscript.rst:643 msgid "'long string'" msgstr "'chaîne longue'" -#: ../Doc/distutils/setupscript.rst:643 +#: ../Doc/distutils/setupscript.rst:642 msgid "" "Multiple lines of plain text in reStructuredText format (see http://docutils." "sourceforge.net/)." msgstr "" -#: ../Doc/distutils/setupscript.rst:647 +#: ../Doc/distutils/setupscript.rst:646 msgid "'list of strings'" msgstr "'liste de chaînes'" -#: ../Doc/distutils/setupscript.rst:647 +#: ../Doc/distutils/setupscript.rst:646 msgid "See below." msgstr "" -#: ../Doc/distutils/setupscript.rst:649 +#: ../Doc/distutils/setupscript.rst:648 msgid "" "Encoding the version information is an art in itself. Python packages " "generally adhere to the version format *major.minor[.patch][sub]*. The major " @@ -974,43 +973,43 @@ msgid "" "testing). Some examples:" msgstr "" -#: ../Doc/distutils/setupscript.rst:661 +#: ../Doc/distutils/setupscript.rst:660 msgid "0.1.0" msgstr "" -#: ../Doc/distutils/setupscript.rst:661 +#: ../Doc/distutils/setupscript.rst:660 msgid "the first, experimental release of a package" msgstr "" -#: ../Doc/distutils/setupscript.rst:664 +#: ../Doc/distutils/setupscript.rst:663 msgid "1.0.1a2" msgstr "" -#: ../Doc/distutils/setupscript.rst:664 +#: ../Doc/distutils/setupscript.rst:663 msgid "the second alpha release of the first patch version of 1.0" msgstr "" -#: ../Doc/distutils/setupscript.rst:666 +#: ../Doc/distutils/setupscript.rst:665 msgid "``classifiers`` must be specified in a list::" msgstr "" -#: ../Doc/distutils/setupscript.rst:687 +#: ../Doc/distutils/setupscript.rst:686 msgid "" ":class:`~distutils.core.setup` now warns when ``classifiers``, ``keywords`` " "or ``platforms`` fields are not specified as a list or a string." msgstr "" -#: ../Doc/distutils/setupscript.rst:694 +#: ../Doc/distutils/setupscript.rst:693 msgid "Debugging the setup script" msgstr "" -#: ../Doc/distutils/setupscript.rst:696 +#: ../Doc/distutils/setupscript.rst:695 msgid "" "Sometimes things go wrong, and the setup script doesn't do what the " "developer wants." msgstr "" -#: ../Doc/distutils/setupscript.rst:699 +#: ../Doc/distutils/setupscript.rst:698 msgid "" "Distutils catches any exceptions when running the setup script, and print a " "simple error message before the script is terminated. The motivation for " @@ -1021,7 +1020,7 @@ msgid "" "down to the bottom and see that it's a permission problem." msgstr "" -#: ../Doc/distutils/setupscript.rst:707 +#: ../Doc/distutils/setupscript.rst:706 msgid "" "On the other hand, this doesn't help the developer to find the cause of the " "failure. For this purpose, the :envvar:`DISTUTILS_DEBUG` environment " diff --git a/distutils/uploading.po b/distutils/uploading.po index 794d6bca..b914e4e4 100644 --- a/distutils/uploading.po +++ b/distutils/uploading.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-02 22:11+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2017-10-18 09:24+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -20,6 +20,11 @@ msgstr "Téléverser des paquets dans *Python Package Index*" #: ../Doc/distutils/uploading.rst:7 msgid "" -"The contents of this page have moved to the section :ref:`package-index`." +"References to up to date PyPI documentation can be found at :ref:`publishing-" +"python-packages`." msgstr "" -"Le contenu de cette page à déménagé dans la section :ref:`package-index`." + +#~ msgid "" +#~ "The contents of this page have moved to the section :ref:`package-index`." +#~ msgstr "" +#~ "Le contenu de cette page à déménagé dans la section :ref:`package-index`." diff --git a/extending/embedding.po b/extending/embedding.po index 11720639..98cb7ef6 100644 --- a/extending/embedding.po +++ b/extending/embedding.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-05-27 19:40+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-10-04 16:18+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -114,7 +114,7 @@ msgstr "" "sans avoir à interagir avec directement. C'est utile, par exemple, pour " "effectuer une opération sur un fichier. ::" -#: ../Doc/extending/embedding.rst:77 +#: ../Doc/extending/embedding.rst:78 msgid "" "The :c:func:`Py_SetProgramName` function should be called before :c:func:" "`Py_Initialize` to inform the interpreter about paths to Python run-time " @@ -140,11 +140,11 @@ msgstr "" "`PyRun_SimplFile`, qui vous économise le travail d'allouer de la mémoire et " "de charger le contenu du fichier." -#: ../Doc/extending/embedding.rst:92 +#: ../Doc/extending/embedding.rst:93 msgid "Beyond Very High Level Embedding: An overview" msgstr "Au delà de l'intégration de haut niveau: survol" -#: ../Doc/extending/embedding.rst:94 +#: ../Doc/extending/embedding.rst:95 msgid "" "The high level interface gives you the ability to execute arbitrary pieces " "of Python code from your application, but exchanging data values is quite " @@ -158,7 +158,7 @@ msgstr "" "appels de niveau plus bas. Il vous en coûtera plus de lignes de C à écrire, " "mais vous pourrez presque tout faire." -#: ../Doc/extending/embedding.rst:99 +#: ../Doc/extending/embedding.rst:100 msgid "" "It should be noted that extending Python and embedding Python is quite the " "same activity, despite the different intent. Most topics discussed in the " @@ -170,27 +170,27 @@ msgstr "" "dans les chapitres précédents sont toujours valides. Pour le prouver, " "regardez ce qu'un code d'extension de Python vers C fait réellement :" -#: ../Doc/extending/embedding.rst:104 +#: ../Doc/extending/embedding.rst:105 msgid "Convert data values from Python to C," msgstr "Convertir des valeurs de Python vers le C," -#: ../Doc/extending/embedding.rst:106 +#: ../Doc/extending/embedding.rst:107 msgid "Perform a function call to a C routine using the converted values, and" msgstr "Appeler une fonction C en utilisant les valeurs converties, et" -#: ../Doc/extending/embedding.rst:108 +#: ../Doc/extending/embedding.rst:109 msgid "Convert the data values from the call from C to Python." msgstr "Convertir les résultats de l'appel à la fonction C pour Python." -#: ../Doc/extending/embedding.rst:110 +#: ../Doc/extending/embedding.rst:111 msgid "When embedding Python, the interface code does:" msgstr "Lors de l'intégration de Python, le code de l'interface fait :" -#: ../Doc/extending/embedding.rst:112 +#: ../Doc/extending/embedding.rst:113 msgid "Convert data values from C to Python," msgstr "Convertir les valeurs depuis le C vers Python," -#: ../Doc/extending/embedding.rst:114 +#: ../Doc/extending/embedding.rst:115 msgid "" "Perform a function call to a Python interface routine using the converted " "values, and" @@ -198,11 +198,11 @@ msgstr "" "Effectuer un appel de fonction de l'interface Python en utilisant les " "valeurs converties, et" -#: ../Doc/extending/embedding.rst:117 +#: ../Doc/extending/embedding.rst:118 msgid "Convert the data values from the call from Python to C." msgstr "Convertir les valeurs de l'appel Python pour le C." -#: ../Doc/extending/embedding.rst:119 +#: ../Doc/extending/embedding.rst:120 msgid "" "As you can see, the data conversion steps are simply swapped to accommodate " "the different direction of the cross-language transfer. The only difference " @@ -215,7 +215,7 @@ msgstr "" "données. Lors de l'extension, vous appelez une fonction C, lors de " "l'intégration vous appelez une fonction Python." -#: ../Doc/extending/embedding.rst:124 +#: ../Doc/extending/embedding.rst:125 msgid "" "This chapter will not discuss how to convert data from Python to C and vice " "versa. Also, proper use of references and dealing with errors is assumed to " @@ -228,11 +228,11 @@ msgstr "" "l'extension de l'interpréteur, vous pouvez vous référer aux chapitres " "précédents." -#: ../Doc/extending/embedding.rst:133 +#: ../Doc/extending/embedding.rst:134 msgid "Pure Embedding" msgstr "Intégration pure" -#: ../Doc/extending/embedding.rst:135 +#: ../Doc/extending/embedding.rst:136 msgid "" "The first program aims to execute a function in a Python script. Like in the " "section about the very high level interface, the Python interpreter does not " @@ -244,11 +244,11 @@ msgstr "" "l'interpréteur n'interagit pas directement avec l'application (mais le fera " "dans la section suivante)." -#: ../Doc/extending/embedding.rst:140 +#: ../Doc/extending/embedding.rst:141 msgid "The code to run a function defined in a Python script is:" msgstr "Le code pour appeler une fonction définie dans un script Python est :" -#: ../Doc/extending/embedding.rst:145 +#: ../Doc/extending/embedding.rst:146 msgid "" "This code loads a Python script using ``argv[1]``, and calls the function " "named in ``argv[2]``. Its integer arguments are the other values of the " @@ -262,11 +262,11 @@ msgstr "" "programme (appelons l'exécutable :program:`call`), et l'appelez pour " "exécuter un script Python, tel que :" -#: ../Doc/extending/embedding.rst:160 +#: ../Doc/extending/embedding.rst:161 msgid "then the result should be:" msgstr "alors, le résultat sera:" -#: ../Doc/extending/embedding.rst:168 +#: ../Doc/extending/embedding.rst:169 msgid "" "Although the program is quite large for its functionality, most of the code " "is for data conversion between Python and C, and for error reporting. The " @@ -277,7 +277,7 @@ msgstr "" "rapporter les erreurs. La partie intéressante, qui concerne l'intégration de " "Python débute par : ::" -#: ../Doc/extending/embedding.rst:177 +#: ../Doc/extending/embedding.rst:178 msgid "" "After initializing the interpreter, the script is loaded using :c:func:" "`PyImport_Import`. This routine needs a Python string as its argument, " @@ -289,7 +289,7 @@ msgstr "" "argument, elle même construite en utilisant la fonction de conversion :c:" "func:`PyUnicode_FromString`." -#: ../Doc/extending/embedding.rst:190 +#: ../Doc/extending/embedding.rst:191 msgid "" "Once the script is loaded, the name we're looking for is retrieved using :c:" "func:`PyObject_GetAttrString`. If the name exists, and the object returned " @@ -303,7 +303,7 @@ msgstr "" "programme continue, classiquement, par la construction de n-uplet " "d'arguments. L'appel à la fonction Python est alors effectué avec : ::" -#: ../Doc/extending/embedding.rst:198 +#: ../Doc/extending/embedding.rst:199 msgid "" "Upon return of the function, ``pValue`` is either *NULL* or it contains a " "reference to the return value of the function. Be sure to release the " @@ -313,11 +313,11 @@ msgstr "" "référence sur la valeur donnée par la fonction. Assurez-vous de libérer la " "référence après avoir utilisé la valeur." -#: ../Doc/extending/embedding.rst:206 +#: ../Doc/extending/embedding.rst:207 msgid "Extending Embedded Python" msgstr "Étendre un Python intégré" -#: ../Doc/extending/embedding.rst:208 +#: ../Doc/extending/embedding.rst:209 msgid "" "Until now, the embedded Python interpreter had no access to functionality " "from the application itself. The Python API allows this by extending the " @@ -338,7 +338,7 @@ msgstr "" "à Python, tout comme vous écririez une extension Python normale. Par " "exemple : ::" -#: ../Doc/extending/embedding.rst:245 +#: ../Doc/extending/embedding.rst:246 msgid "" "Insert the above code just above the :c:func:`main` function. Also, insert " "the following two statements before the call to :c:func:`Py_Initialize`::" @@ -347,7 +347,7 @@ msgstr "" "aussi les deux instructions suivantes avant l'appel à :c:func:" "`Py_Initialize` ::" -#: ../Doc/extending/embedding.rst:251 +#: ../Doc/extending/embedding.rst:252 msgid "" "These two lines initialize the ``numargs`` variable, and make the :func:`emb." "numargs` function accessible to the embedded Python interpreter. With these " @@ -357,7 +357,7 @@ msgstr "" "func:`emb.numargs` accessible à l'interpréteur intégré. Avec ces ajouts, le " "script Python petit maintenant faire des choses comme" -#: ../Doc/extending/embedding.rst:260 +#: ../Doc/extending/embedding.rst:261 msgid "" "In a real application, the methods will expose an API of the application to " "Python." @@ -365,11 +365,11 @@ msgstr "" "Dans un cas réel, les méthodes exposeraient une API de l'application a " "Python." -#: ../Doc/extending/embedding.rst:270 +#: ../Doc/extending/embedding.rst:271 msgid "Embedding Python in C++" msgstr "Intégrer Python dans du C++" -#: ../Doc/extending/embedding.rst:272 +#: ../Doc/extending/embedding.rst:273 msgid "" "It is also possible to embed Python in a C++ program; precisely how this is " "done will depend on the details of the C++ system used; in general you will " @@ -383,11 +383,11 @@ msgstr "" "compilateur C++ pour compiler et lier votre programme. Il n'y a pas besoin " "de recompiler Python en utilisant C++." -#: ../Doc/extending/embedding.rst:281 +#: ../Doc/extending/embedding.rst:282 msgid "Compiling and Linking under Unix-like systems" msgstr "Compiler et Lier en environnement Unix ou similaire" -#: ../Doc/extending/embedding.rst:283 +#: ../Doc/extending/embedding.rst:284 msgid "" "It is not necessarily trivial to find the right flags to pass to your " "compiler (and linker) in order to embed the Python interpreter into your " @@ -399,7 +399,7 @@ msgstr "" "Python ayant besoin de charger des extensions sous forme de bibliothèques " "dynamiques en C (des :file:`.so`) pour se lier avec." -#: ../Doc/extending/embedding.rst:289 +#: ../Doc/extending/embedding.rst:290 msgid "" "To find out the required compiler and linker flags, you can execute the :" "file:`python{X.Y}-config` script which is generated as part of the " @@ -412,7 +412,7 @@ msgstr "" "(un script :file:`python3-config` peut aussi être disponible). Ce script a " "quelques options, celles-ci vous seront utiles :" -#: ../Doc/extending/embedding.rst:295 +#: ../Doc/extending/embedding.rst:296 msgid "" "``pythonX.Y-config --cflags`` will give you the recommended flags when " "compiling:" @@ -420,7 +420,7 @@ msgstr "" "``pythonX.Y-config --cflags`` vous donnera les options recommandées pour " "compiler:" -#: ../Doc/extending/embedding.rst:303 +#: ../Doc/extending/embedding.rst:304 msgid "" "``pythonX.Y-config --ldflags`` will give you the recommended flags when " "linking:" @@ -428,7 +428,7 @@ msgstr "" "``pythonX.Y-config --ldflags`` vous donnera les drapeaux recommandés lors de " "l'édition de lien:" -#: ../Doc/extending/embedding.rst:312 +#: ../Doc/extending/embedding.rst:313 msgid "" "To avoid confusion between several Python installations (and especially " "between the system Python and your own compiled Python), it is recommended " @@ -440,7 +440,7 @@ msgstr "" "recommandé d'utiliser un chemin absolu vers :file:`python{X.Y}-config`, " "comme dans l'exemple précédent." -#: ../Doc/extending/embedding.rst:317 +#: ../Doc/extending/embedding.rst:318 msgid "" "If this procedure doesn't work for you (it is not guaranteed to work for all " "Unix-like platforms; however, we welcome :ref:`bug reports \n" "Language-Team: FRENCH \n" @@ -109,10 +109,11 @@ msgstr "" "``spammify``, le nom du module peut être juste :file:`spammify.c`.)" #: ../Doc/extending/extending.rst:58 -msgid "The first line of our file can be::" -msgstr "La première ligne de notre fichier peut être : ::" +#, fuzzy +msgid "The first two lines of our file can be::" +msgstr "Les deux premières lignes de notre fichier peuvent être : ::" -#: ../Doc/extending/extending.rst:62 +#: ../Doc/extending/extending.rst:63 msgid "" "which pulls in the Python API (you can add a comment describing the purpose " "of the module and a copyright notice if you like)." @@ -120,7 +121,7 @@ msgstr "" "qui récupère l'API Python (vous pouvez ajouter un commentaire décrivant le " "but du module et un avis de droit d'auteur si vous le souhaitez)." -#: ../Doc/extending/extending.rst:67 +#: ../Doc/extending/extending.rst:68 msgid "" "Since Python may define some pre-processor definitions which affect the " "standard headers on some systems, you *must* include :file:`Python.h` before " @@ -130,7 +131,13 @@ msgstr "" "les têtes standard sur certains systèmes, vous *devez* inclure :file:`Python." "h` avant les en-têtes standards." -#: ../Doc/extending/extending.rst:71 +#: ../Doc/extending/extending.rst:72 +msgid "" +"It is recommended to always define ``PY_SSIZE_T_CLEAN`` before including " +"``Python.h``. See :ref:`parsetuple` for a description of this macro." +msgstr "" + +#: ../Doc/extending/extending.rst:75 msgid "" "All user-visible symbols defined by :file:`Python.h` have a prefix of ``Py`` " "or ``PY``, except those defined in standard header files. For convenience, " @@ -148,7 +155,7 @@ msgstr "" "sur votre système, il déclare les fonctions :c:func:`malloc`, :c:func:`free` " "et :c:func:`realloc` directement." -#: ../Doc/extending/extending.rst:79 +#: ../Doc/extending/extending.rst:83 msgid "" "The next thing we add to our module file is the C function that will be " "called when the Python expression ``spam.system(string)`` is evaluated " @@ -159,7 +166,7 @@ msgstr "" "system(chaîne)`` sera évaluée (nous verrons bientôt comment elle finit par " "être appelée) ::" -#: ../Doc/extending/extending.rst:95 +#: ../Doc/extending/extending.rst:99 msgid "" "There is a straightforward translation from the argument list in Python (for " "example, the single expression ``\"ls -l\"``) to the arguments passed to the " @@ -171,7 +178,7 @@ msgstr "" "La fonction C a toujours deux arguments, appelés par convention *self* et " "*args*." -#: ../Doc/extending/extending.rst:100 +#: ../Doc/extending/extending.rst:104 msgid "" "The *self* argument points to the module object for module-level functions; " "for a method it would point to the object instance." @@ -179,7 +186,7 @@ msgstr "" "Pour les fonctions au niveau du module, l'argument *self* pointe sur l'objet " "module, pour une méthode, il pointe sur l'instance de l'objet." -#: ../Doc/extending/extending.rst:103 +#: ../Doc/extending/extending.rst:107 msgid "" "The *args* argument will be a pointer to a Python tuple object containing " "the arguments. Each item of the tuple corresponds to an argument in the " @@ -200,7 +207,7 @@ msgstr "" "ainsi que les types de variables C dans lequel stocker les valeurs " "converties. Nous en verront plus, plus tard." -#: ../Doc/extending/extending.rst:112 +#: ../Doc/extending/extending.rst:116 msgid "" ":c:func:`PyArg_ParseTuple` returns true (nonzero) if all arguments have the " "right type and its components have been stored in the variables whose " @@ -216,11 +223,11 @@ msgstr "" "exception appropriée de sorte que la fonction d'appel puisse renvoyer *NULL* " "immédiatement (comme nous l'avons vu dans l'exemple)." -#: ../Doc/extending/extending.rst:122 +#: ../Doc/extending/extending.rst:126 msgid "Intermezzo: Errors and Exceptions" msgstr "Intermezzo: Les erreurs et exceptions" -#: ../Doc/extending/extending.rst:124 +#: ../Doc/extending/extending.rst:128 msgid "" "An important convention throughout the Python interpreter is the following: " "when a function fails, it should set an exception condition and return an " @@ -247,7 +254,7 @@ msgstr "" "Reference*). Il est important de les connaître pour comprendre comment les " "erreurs sont propagées." -#: ../Doc/extending/extending.rst:135 +#: ../Doc/extending/extending.rst:139 msgid "" "The Python API defines a number of functions to set various types of " "exceptions." @@ -255,7 +262,7 @@ msgstr "" "L'API Python définit un certain nombre de fonctions pour créer différents " "types d'exceptions." -#: ../Doc/extending/extending.rst:137 +#: ../Doc/extending/extending.rst:141 msgid "" "The most common one is :c:func:`PyErr_SetString`. Its arguments are an " "exception object and a C string. The exception object is usually a " @@ -269,7 +276,7 @@ msgstr "" "cause de l'erreur et est convertie en une chaîne Python puis stockée en tant " "que \"valeur associée\" à l'exception." -#: ../Doc/extending/extending.rst:143 +#: ../Doc/extending/extending.rst:147 msgid "" "Another useful function is :c:func:`PyErr_SetFromErrno`, which only takes an " "exception argument and constructs the associated value by inspection of the " @@ -284,7 +291,7 @@ msgstr "" "arguments: l'exception et sa valeur associée. Vous ne devez pas appliquer :c:" "func:`Py_INCREF` aux objets transmis à ces fonctions." -#: ../Doc/extending/extending.rst:150 +#: ../Doc/extending/extending.rst:154 msgid "" "You can test non-destructively whether an exception has been set with :c:" "func:`PyErr_Occurred`. This returns the current exception object, or *NULL* " @@ -299,7 +306,7 @@ msgstr "" "survenue durant l'appel d'une fonction, puisque vous devriez être en mesure " "de le déterminer à partir de la valeur de retour." -#: ../Doc/extending/extending.rst:156 +#: ../Doc/extending/extending.rst:160 msgid "" "When a function *f* that calls another function *g* detects that the latter " "fails, *f* should itself return an error value (usually *NULL* or ``-1``). " @@ -324,7 +331,7 @@ msgstr "" "d'exécution et essaie de trouver un gestionnaire d'exception spécifié par le " "développeur Python." -#: ../Doc/extending/extending.rst:166 +#: ../Doc/extending/extending.rst:170 msgid "" "(There are situations where a module can actually give a more detailed error " "message by calling another :c:func:`PyErr_\\*` function, and in such cases " @@ -339,7 +346,7 @@ msgstr "" "sur la cause de l'erreur: la plupart des opérations peuvent échouer pour " "tout un tas de raisons)." -#: ../Doc/extending/extending.rst:172 +#: ../Doc/extending/extending.rst:176 msgid "" "To ignore an exception set by a function call that failed, the exception " "condition must be cleared explicitly by calling :c:func:`PyErr_Clear`. The " @@ -354,7 +361,7 @@ msgstr "" "l'interpréteur, mais souhaite la gérer lui-même (peut-être en essayant " "quelque chose d'autre, ou en prétendant que rien n'a mal tourné)." -#: ../Doc/extending/extending.rst:178 +#: ../Doc/extending/extending.rst:182 msgid "" "Every failing :c:func:`malloc` call must be turned into an exception --- the " "direct caller of :c:func:`malloc` (or :c:func:`realloc`) must call :c:func:" @@ -369,7 +376,7 @@ msgstr "" "`PyLong_FromLong`) le font déjà, donc cette note ne concerne que ceux qui " "appellent :c:func:`malloc` directement." -#: ../Doc/extending/extending.rst:184 +#: ../Doc/extending/extending.rst:188 msgid "" "Also note that, with the important exception of :c:func:`PyArg_ParseTuple` " "and friends, functions that return an integer status usually return a " @@ -381,7 +388,7 @@ msgstr "" "donnent généralement une valeur positive ou zéro en cas de succès et ``-1`` " "en cas d'échec, comme les appels du système Unix." -#: ../Doc/extending/extending.rst:188 +#: ../Doc/extending/extending.rst:192 msgid "" "Finally, be careful to clean up garbage (by making :c:func:`Py_XDECREF` or :" "c:func:`Py_DECREF` calls for objects you have already created) when you " @@ -391,7 +398,7 @@ msgstr "" "de nettoyage (en appelant :c:func:`Py_XDECREF` ou :c:func:`Py_DECREF` avec " "les objets que vous auriez déjà créés) !" -#: ../Doc/extending/extending.rst:192 +#: ../Doc/extending/extending.rst:196 msgid "" "The choice of which exception to raise is entirely yours. There are " "predeclared C objects corresponding to all built-in Python exceptions, such " @@ -415,7 +422,7 @@ msgstr "" "satisfaire d'autres conditions, :c:data:`PyExc_ValueError` sera plus " "appropriée." -#: ../Doc/extending/extending.rst:202 +#: ../Doc/extending/extending.rst:206 msgid "" "You can also define a new exception that is unique to your module. For this, " "you usually declare a static object variable at the beginning of your file::" @@ -424,7 +431,7 @@ msgstr "" "cela, déclarez simplement une variable statique au début de votre " "fichier : ::" -#: ../Doc/extending/extending.rst:207 +#: ../Doc/extending/extending.rst:211 msgid "" "and initialize it in your module's initialization function (:c:func:" "`PyInit_spam`) with an exception object (leaving out the error checking for " @@ -434,7 +441,7 @@ msgstr "" "`PyInit_spam`) avec un objet exception (Passons, pour le moment, la " "vérification des codes d'erreur) ::" -#: ../Doc/extending/extending.rst:225 +#: ../Doc/extending/extending.rst:229 msgid "" "Note that the Python name for the exception object is :exc:`spam.error`. " "The :c:func:`PyErr_NewException` function may create a class with the base " @@ -446,7 +453,7 @@ msgstr "" "`Exception` (à moins qu'une autre classe ne lui soit fournie à la place de " "*NULL*), voir :ref:`bltin-exceptions`." -#: ../Doc/extending/extending.rst:230 +#: ../Doc/extending/extending.rst:234 msgid "" "Note also that the :c:data:`SpamError` variable retains a reference to the " "newly created exception class; this is intentional! Since the exception " @@ -464,7 +471,7 @@ msgstr "" "défaillant, le C code qui lève l'exception peut engendrer un rejet central " "ou des effets secondaires inattendus." -#: ../Doc/extending/extending.rst:237 +#: ../Doc/extending/extending.rst:241 msgid "" "We discuss the use of ``PyMODINIT_FUNC`` as a function return type later in " "this sample." @@ -472,7 +479,7 @@ msgstr "" "Nous traiterons de l'utilisation de ``PyMODINIT_FUNC`` comme un type de " "retour de fonction plus tard dans cette section." -#: ../Doc/extending/extending.rst:240 +#: ../Doc/extending/extending.rst:244 msgid "" "The :exc:`spam.error` exception can be raised in your extension module using " "a call to :c:func:`PyErr_SetString` as shown below::" @@ -480,11 +487,11 @@ msgstr "" "L'exception :exc:`spam.error` peut être levée dans votre module d'extension " "en appelant :c:func:`PyErr_SetString` comme montré ci-dessous ::" -#: ../Doc/extending/extending.rst:263 +#: ../Doc/extending/extending.rst:267 msgid "Back to the Example" msgstr "Retour vers l'exemple" -#: ../Doc/extending/extending.rst:265 +#: ../Doc/extending/extending.rst:269 msgid "" "Going back to our example function, you should now be able to understand " "this statement::" @@ -492,7 +499,7 @@ msgstr "" "En revenant vers notre fonction exemple, vous devriez maintenant être " "capable de comprendre cette affirmation ::" -#: ../Doc/extending/extending.rst:271 +#: ../Doc/extending/extending.rst:275 msgid "" "It returns *NULL* (the error indicator for functions returning object " "pointers) if an error is detected in the argument list, relying on the " @@ -511,7 +518,7 @@ msgstr "" "la variable :c:data:`command` doit être clairement déclarée comme ``const " "char *command``)." -#: ../Doc/extending/extending.rst:279 +#: ../Doc/extending/extending.rst:283 msgid "" "The next statement is a call to the Unix function :c:func:`system`, passing " "it the string we just got from :c:func:`PyArg_ParseTuple`::" @@ -520,7 +527,7 @@ msgstr "" "en lui passant la chaîne que nous venons d'obtenir à partir de :c:func:" "`PyArg_ParseTuple` ::" -#: ../Doc/extending/extending.rst:284 +#: ../Doc/extending/extending.rst:288 msgid "" "Our :func:`spam.system` function must return the value of :c:data:`sts` as a " "Python object. This is done using the function :c:func:`PyLong_FromLong`. ::" @@ -529,7 +536,7 @@ msgstr "" "comme un objet Python. Cela est effectué par l'utilisation de la fonction :c:" "func:`PyLong_FromLong`. ::" -#: ../Doc/extending/extending.rst:289 +#: ../Doc/extending/extending.rst:293 msgid "" "In this case, it will return an integer object. (Yes, even integers are " "objects on the heap in Python!)" @@ -537,7 +544,7 @@ msgstr "" "Dans ce cas, elle renverra un objet entier. (Oui, même les entiers sont des " "objets dans le tas en Python!)" -#: ../Doc/extending/extending.rst:292 +#: ../Doc/extending/extending.rst:296 msgid "" "If you have a C function that returns no useful argument (a function " "returning :c:type:`void`), the corresponding Python function must return " @@ -549,7 +556,7 @@ msgstr "" "renvoyer ``None``. Vous aurez besoin de cette locution pour cela (qui est " "implémentée par la macro :c:macro:`Py_RETURN_NONE`) ::" -#: ../Doc/extending/extending.rst:300 +#: ../Doc/extending/extending.rst:304 msgid "" ":c:data:`Py_None` is the C name for the special Python object ``None``. It " "is a genuine Python object rather than a *NULL* pointer, which means \"error" @@ -560,17 +567,17 @@ msgstr "" "qu'une erreur est survenue, dans la plupart des situations, comme nous " "l'avons vu." -#: ../Doc/extending/extending.rst:308 +#: ../Doc/extending/extending.rst:312 msgid "The Module's Method Table and Initialization Function" msgstr "" -#: ../Doc/extending/extending.rst:310 +#: ../Doc/extending/extending.rst:314 msgid "" "I promised to show how :c:func:`spam_system` is called from Python programs. " "First, we need to list its name and address in a \"method table\"::" msgstr "" -#: ../Doc/extending/extending.rst:321 +#: ../Doc/extending/extending.rst:325 msgid "" "Note the third entry (``METH_VARARGS``). This is a flag telling the " "interpreter the calling convention to be used for the C function. It should " @@ -579,14 +586,14 @@ msgid "" "is used." msgstr "" -#: ../Doc/extending/extending.rst:326 +#: ../Doc/extending/extending.rst:330 msgid "" "When using only ``METH_VARARGS``, the function should expect the Python-" "level parameters to be passed in as a tuple acceptable for parsing via :c:" "func:`PyArg_ParseTuple`; more information on this function is provided below." msgstr "" -#: ../Doc/extending/extending.rst:330 +#: ../Doc/extending/extending.rst:334 msgid "" "The :const:`METH_KEYWORDS` bit may be set in the third field if keyword " "arguments should be passed to the function. In this case, the C function " @@ -595,12 +602,12 @@ msgid "" "to such a function." msgstr "" -#: ../Doc/extending/extending.rst:336 +#: ../Doc/extending/extending.rst:340 msgid "" "The method table must be referenced in the module definition structure::" msgstr "" -#: ../Doc/extending/extending.rst:347 +#: ../Doc/extending/extending.rst:351 msgid "" "This structure, in turn, must be passed to the interpreter in the module's " "initialization function. The initialization function must be named :c:func:" @@ -608,14 +615,14 @@ msgid "" "only non-\\ ``static`` item defined in the module file::" msgstr "" -#: ../Doc/extending/extending.rst:358 +#: ../Doc/extending/extending.rst:362 msgid "" "Note that PyMODINIT_FUNC declares the function as ``PyObject *`` return " "type, declares any special linkage declarations required by the platform, " "and for C++ declares the function as ``extern \"C\"``." msgstr "" -#: ../Doc/extending/extending.rst:362 +#: ../Doc/extending/extending.rst:366 msgid "" "When the Python program imports module :mod:`spam` for the first time, :c:" "func:`PyInit_spam` is called. (See below for comments about embedding " @@ -629,7 +636,7 @@ msgid "" "gets inserted into ``sys.modules``." msgstr "" -#: ../Doc/extending/extending.rst:373 +#: ../Doc/extending/extending.rst:377 msgid "" "When embedding Python, the :c:func:`PyInit_spam` function is not called " "automatically unless there's an entry in the :c:data:`PyImport_Inittab` " @@ -637,7 +644,7 @@ msgid "" "`PyImport_AppendInittab`, optionally followed by an import of the module::" msgstr "" -#: ../Doc/extending/extending.rst:409 +#: ../Doc/extending/extending.rst:413 msgid "" "Removing entries from ``sys.modules`` or importing compiled modules into " "multiple interpreters within a process (or following a :c:func:`fork` " @@ -646,14 +653,14 @@ msgid "" "initializing internal data structures." msgstr "" -#: ../Doc/extending/extending.rst:415 +#: ../Doc/extending/extending.rst:419 msgid "" "A more substantial example module is included in the Python source " "distribution as :file:`Modules/xxmodule.c`. This file may be used as a " "template or simply read as an example." msgstr "" -#: ../Doc/extending/extending.rst:421 +#: ../Doc/extending/extending.rst:425 msgid "" "Unlike our ``spam`` example, ``xxmodule`` uses *multi-phase initialization* " "(new in Python 3.5), where a PyModuleDef structure is returned from " @@ -661,11 +668,11 @@ msgid "" "For details on multi-phase initialization, see :PEP:`489`." msgstr "" -#: ../Doc/extending/extending.rst:430 +#: ../Doc/extending/extending.rst:434 msgid "Compilation and Linkage" msgstr "" -#: ../Doc/extending/extending.rst:432 +#: ../Doc/extending/extending.rst:436 msgid "" "There are two more things to do before you can use your new extension: " "compiling and linking it with the Python system. If you use dynamic " @@ -675,7 +682,7 @@ msgid "" "Windows (chapter :ref:`building-on-windows`) for more information about this." msgstr "" -#: ../Doc/extending/extending.rst:439 +#: ../Doc/extending/extending.rst:443 msgid "" "If you can't use dynamic loading, or if you want to make your module a " "permanent part of the Python interpreter, you will have to change the " @@ -685,7 +692,7 @@ msgid "" "line to the file :file:`Modules/Setup.local` describing your file:" msgstr "" -#: ../Doc/extending/extending.rst:450 +#: ../Doc/extending/extending.rst:454 msgid "" "and rebuild the interpreter by running :program:`make` in the toplevel " "directory. You can also run :program:`make` in the :file:`Modules/` " @@ -694,17 +701,17 @@ msgid "" "the :file:`Setup` file.)" msgstr "" -#: ../Doc/extending/extending.rst:456 +#: ../Doc/extending/extending.rst:460 msgid "" "If your module requires additional libraries to link with, these can be " "listed on the line in the configuration file as well, for instance:" msgstr "" -#: ../Doc/extending/extending.rst:467 +#: ../Doc/extending/extending.rst:471 msgid "Calling Python Functions from C" msgstr "" -#: ../Doc/extending/extending.rst:469 +#: ../Doc/extending/extending.rst:473 msgid "" "So far we have concentrated on making C functions callable from Python. The " "reverse is also useful: calling Python functions from C. This is especially " @@ -715,7 +722,7 @@ msgid "" "uses are also imaginable." msgstr "" -#: ../Doc/extending/extending.rst:477 +#: ../Doc/extending/extending.rst:481 msgid "" "Fortunately, the Python interpreter is easily called recursively, and there " "is a standard interface to call a Python function. (I won't dwell on how to " @@ -724,7 +731,7 @@ msgid "" "line option in :file:`Modules/main.c` from the Python source code.)" msgstr "" -#: ../Doc/extending/extending.rst:483 +#: ../Doc/extending/extending.rst:487 msgid "" "Calling a Python function is easy. First, the Python program must somehow " "pass you the Python function object. You should provide a function (or some " @@ -734,7 +741,7 @@ msgid "" "function might be part of a module definition::" msgstr "" -#: ../Doc/extending/extending.rst:513 +#: ../Doc/extending/extending.rst:517 msgid "" "This function must be registered with the interpreter using the :const:" "`METH_VARARGS` flag; this is described in section :ref:`methodtable`. The :" @@ -742,7 +749,7 @@ msgid "" "section :ref:`parsetuple`." msgstr "" -#: ../Doc/extending/extending.rst:518 +#: ../Doc/extending/extending.rst:522 msgid "" "The macros :c:func:`Py_XINCREF` and :c:func:`Py_XDECREF` increment/decrement " "the reference count of an object and are safe in the presence of *NULL* " @@ -750,7 +757,7 @@ msgid "" "info on them in section :ref:`refcounts`." msgstr "" -#: ../Doc/extending/extending.rst:525 +#: ../Doc/extending/extending.rst:529 msgid "" "Later, when it is time to call the function, you call the C function :c:func:" "`PyObject_CallObject`. This function has two arguments, both pointers to " @@ -762,7 +769,7 @@ msgid "" "or more format codes between parentheses. For example::" msgstr "" -#: ../Doc/extending/extending.rst:545 +#: ../Doc/extending/extending.rst:549 msgid "" ":c:func:`PyObject_CallObject` returns a Python object pointer: this is the " "return value of the Python function. :c:func:`PyObject_CallObject` is " @@ -771,7 +778,7 @@ msgid "" "`Py_DECREF`\\ -ed immediately after the :c:func:`PyObject_CallObject` call." msgstr "" -#: ../Doc/extending/extending.rst:552 +#: ../Doc/extending/extending.rst:556 msgid "" "The return value of :c:func:`PyObject_CallObject` is \"new\": either it is a " "brand new object, or it is an existing object whose reference count has been " @@ -780,7 +787,7 @@ msgid "" "not interested in its value." msgstr "" -#: ../Doc/extending/extending.rst:558 +#: ../Doc/extending/extending.rst:562 msgid "" "Before you do this, however, it is important to check that the return value " "isn't *NULL*. If it is, the Python function terminated by raising an " @@ -791,7 +798,7 @@ msgid "" "should be cleared by calling :c:func:`PyErr_Clear`. For example::" msgstr "" -#: ../Doc/extending/extending.rst:571 +#: ../Doc/extending/extending.rst:575 msgid "" "Depending on the desired interface to the Python callback function, you may " "also have to provide an argument list to :c:func:`PyObject_CallObject`. In " @@ -803,7 +810,7 @@ msgid "" "you want to pass an integral event code, you might use the following code::" msgstr "" -#: ../Doc/extending/extending.rst:590 +#: ../Doc/extending/extending.rst:594 msgid "" "Note the placement of ``Py_DECREF(arglist)`` immediately after the call, " "before the error check! Also note that strictly speaking this code is not " @@ -811,22 +818,22 @@ msgid "" "checked." msgstr "" -#: ../Doc/extending/extending.rst:594 +#: ../Doc/extending/extending.rst:598 msgid "" "You may also call a function with keyword arguments by using :c:func:" "`PyObject_Call`, which supports arguments and keyword arguments. As in the " "above example, we use :c:func:`Py_BuildValue` to construct the dictionary. ::" msgstr "" -#: ../Doc/extending/extending.rst:612 +#: ../Doc/extending/extending.rst:616 msgid "Extracting Parameters in Extension Functions" msgstr "" -#: ../Doc/extending/extending.rst:616 +#: ../Doc/extending/extending.rst:620 msgid "The :c:func:`PyArg_ParseTuple` function is declared as follows::" msgstr "" -#: ../Doc/extending/extending.rst:620 +#: ../Doc/extending/extending.rst:624 msgid "" "The *arg* argument must be a tuple object containing an argument list passed " "from Python to a C function. The *format* argument must be a format string, " @@ -835,7 +842,7 @@ msgid "" "whose type is determined by the format string." msgstr "" -#: ../Doc/extending/extending.rst:626 +#: ../Doc/extending/extending.rst:630 msgid "" "Note that while :c:func:`PyArg_ParseTuple` checks that the Python arguments " "have the required types, it cannot check the validity of the addresses of C " @@ -843,7 +850,7 @@ msgid "" "probably crash or at least overwrite random bits in memory. So be careful!" msgstr "" -#: ../Doc/extending/extending.rst:631 +#: ../Doc/extending/extending.rst:635 msgid "" "Note that any Python object references which are provided to the caller are " "*borrowed* references; do not decrement their reference count!" @@ -852,20 +859,20 @@ msgstr "" "à l'appelant sont des références *empruntées* ; ne décrémentez pas leur " "compteur de références !" -#: ../Doc/extending/extending.rst:634 +#: ../Doc/extending/extending.rst:638 msgid "Some example calls::" msgstr "" -#: ../Doc/extending/extending.rst:704 +#: ../Doc/extending/extending.rst:708 msgid "Keyword Parameters for Extension Functions" msgstr "" -#: ../Doc/extending/extending.rst:708 +#: ../Doc/extending/extending.rst:712 msgid "" "The :c:func:`PyArg_ParseTupleAndKeywords` function is declared as follows::" msgstr "" -#: ../Doc/extending/extending.rst:713 +#: ../Doc/extending/extending.rst:717 msgid "" "The *arg* and *format* parameters are identical to those of the :c:func:" "`PyArg_ParseTuple` function. The *kwdict* parameter is the dictionary of " @@ -876,30 +883,30 @@ msgid "" "returns true, otherwise it returns false and raises an appropriate exception." msgstr "" -#: ../Doc/extending/extending.rst:723 +#: ../Doc/extending/extending.rst:727 msgid "" "Nested tuples cannot be parsed when using keyword arguments! Keyword " "parameters passed in which are not present in the *kwlist* will cause :exc:" "`TypeError` to be raised." msgstr "" -#: ../Doc/extending/extending.rst:729 +#: ../Doc/extending/extending.rst:733 msgid "" "Here is an example module which uses keywords, based on an example by Geoff " "Philbrick (philbrick@hks.com)::" msgstr "" -#: ../Doc/extending/extending.rst:783 +#: ../Doc/extending/extending.rst:788 msgid "Building Arbitrary Values" msgstr "" -#: ../Doc/extending/extending.rst:785 +#: ../Doc/extending/extending.rst:790 msgid "" "This function is the counterpart to :c:func:`PyArg_ParseTuple`. It is " "declared as follows::" msgstr "" -#: ../Doc/extending/extending.rst:790 +#: ../Doc/extending/extending.rst:795 msgid "" "It recognizes a set of format units similar to the ones recognized by :c:" "func:`PyArg_ParseTuple`, but the arguments (which are input to the function, " @@ -907,7 +914,7 @@ msgid "" "object, suitable for returning from a C function called from Python." msgstr "" -#: ../Doc/extending/extending.rst:795 +#: ../Doc/extending/extending.rst:800 msgid "" "One difference with :c:func:`PyArg_ParseTuple`: while the latter requires " "its first argument to be a tuple (since Python argument lists are always " @@ -919,16 +926,16 @@ msgid "" "parenthesize the format string." msgstr "" -#: ../Doc/extending/extending.rst:803 +#: ../Doc/extending/extending.rst:808 msgid "" "Examples (to the left the call, to the right the resulting Python value):" msgstr "" -#: ../Doc/extending/extending.rst:829 +#: ../Doc/extending/extending.rst:834 msgid "Reference Counts" msgstr "" -#: ../Doc/extending/extending.rst:831 +#: ../Doc/extending/extending.rst:836 msgid "" "In languages like C or C++, the programmer is responsible for dynamic " "allocation and deallocation of memory on the heap. In C, this is done using " @@ -937,7 +944,7 @@ msgid "" "restrict the following discussion to the C case." msgstr "" -#: ../Doc/extending/extending.rst:837 +#: ../Doc/extending/extending.rst:842 msgid "" "Every block of memory allocated with :c:func:`malloc` should eventually be " "returned to the pool of available memory by exactly one call to :c:func:" @@ -952,7 +959,7 @@ msgid "" "crashes." msgstr "" -#: ../Doc/extending/extending.rst:848 +#: ../Doc/extending/extending.rst:853 msgid "" "Common causes of memory leaks are unusual paths through the code. For " "instance, a function may allocate a block of memory, do some calculation, " @@ -969,7 +976,7 @@ msgid "" "of errors." msgstr "" -#: ../Doc/extending/extending.rst:861 +#: ../Doc/extending/extending.rst:866 msgid "" "Since Python makes heavy use of :c:func:`malloc` and :c:func:`free`, it " "needs a strategy to avoid memory leaks as well as the use of freed memory. " @@ -980,7 +987,7 @@ msgid "" "reference to the object has been deleted and the object is freed." msgstr "" -#: ../Doc/extending/extending.rst:869 +#: ../Doc/extending/extending.rst:874 msgid "" "An alternative strategy is called :dfn:`automatic garbage collection`. " "(Sometimes, reference counting is also referred to as a garbage collection " @@ -996,7 +1003,7 @@ msgid "" "with reference counts." msgstr "" -#: ../Doc/extending/extending.rst:881 +#: ../Doc/extending/extending.rst:886 msgid "" "While Python uses the traditional reference counting implementation, it also " "offers a cycle detector that works to detect reference cycles. This allows " @@ -1010,7 +1017,7 @@ msgid "" "though there are no further references to the cycle itself." msgstr "" -#: ../Doc/extending/extending.rst:892 +#: ../Doc/extending/extending.rst:897 msgid "" "The cycle detector is able to detect garbage cycles and can reclaim them. " "The :mod:`gc` module exposes a way to run the detector (the :func:`~gc." @@ -1022,11 +1029,11 @@ msgid "" "detector is disabled in this way, the :mod:`gc` module will not be available." msgstr "" -#: ../Doc/extending/extending.rst:906 +#: ../Doc/extending/extending.rst:911 msgid "Reference Counting in Python" msgstr "" -#: ../Doc/extending/extending.rst:908 +#: ../Doc/extending/extending.rst:913 msgid "" "There are two macros, ``Py_INCREF(x)`` and ``Py_DECREF(x)``, which handle " "the incrementing and decrementing of the reference count. :c:func:" @@ -1037,7 +1044,7 @@ msgid "" "object." msgstr "" -#: ../Doc/extending/extending.rst:915 +#: ../Doc/extending/extending.rst:920 msgid "" "The big question now remains: when to use ``Py_INCREF(x)`` and " "``Py_DECREF(x)``? Let's first introduce some terms. Nobody \"owns\" an " @@ -1050,7 +1057,7 @@ msgid "" "reference creates a memory leak." msgstr "" -#: ../Doc/extending/extending.rst:924 +#: ../Doc/extending/extending.rst:929 msgid "" "It is also possible to :dfn:`borrow` [#]_ a reference to an object. The " "borrower of a reference should not call :c:func:`Py_DECREF`. The borrower " @@ -1059,7 +1066,7 @@ msgid "" "risks using freed memory and should be avoided completely [#]_." msgstr "" -#: ../Doc/extending/extending.rst:930 +#: ../Doc/extending/extending.rst:935 msgid "" "The advantage of borrowing over owning a reference is that you don't need to " "take care of disposing of the reference on all possible paths through the " @@ -1070,7 +1077,7 @@ msgid "" "borrowed has in fact disposed of it." msgstr "" -#: ../Doc/extending/extending.rst:938 +#: ../Doc/extending/extending.rst:943 msgid "" "A borrowed reference can be changed into an owned reference by calling :c:" "func:`Py_INCREF`. This does not affect the status of the owner from which " @@ -1079,18 +1086,18 @@ msgid "" "properly, as well as the previous owner)." msgstr "" -#: ../Doc/extending/extending.rst:948 +#: ../Doc/extending/extending.rst:953 msgid "Ownership Rules" msgstr "" -#: ../Doc/extending/extending.rst:950 +#: ../Doc/extending/extending.rst:955 msgid "" "Whenever an object reference is passed into or out of a function, it is part " "of the function's interface specification whether ownership is transferred " "with the reference or not." msgstr "" -#: ../Doc/extending/extending.rst:954 +#: ../Doc/extending/extending.rst:959 msgid "" "Most functions that return a reference to an object pass on ownership with " "the reference. In particular, all functions whose function it is to create " @@ -1101,7 +1108,7 @@ msgid "" "reference to a cached item." msgstr "" -#: ../Doc/extending/extending.rst:962 +#: ../Doc/extending/extending.rst:967 msgid "" "Many functions that extract objects from other objects also transfer " "ownership with the reference, for instance :c:func:" @@ -1112,14 +1119,14 @@ msgid "" "list or dictionary." msgstr "" -#: ../Doc/extending/extending.rst:969 +#: ../Doc/extending/extending.rst:974 msgid "" "The function :c:func:`PyImport_AddModule` also returns a borrowed reference, " "even though it may actually create the object it returns: this is possible " "because an owned reference to the object is stored in ``sys.modules``." msgstr "" -#: ../Doc/extending/extending.rst:973 +#: ../Doc/extending/extending.rst:978 msgid "" "When you pass an object reference into another function, in general, the " "function borrows the reference from you --- if it needs to store it, it will " @@ -1130,7 +1137,7 @@ msgid "" "don't take over ownership --- they are \"normal.\")" msgstr "" -#: ../Doc/extending/extending.rst:981 +#: ../Doc/extending/extending.rst:986 msgid "" "When a C function is called from Python, it borrows references to its " "arguments from the caller. The caller owns a reference to the object, so " @@ -1139,18 +1146,18 @@ msgid "" "turned into an owned reference by calling :c:func:`Py_INCREF`." msgstr "" -#: ../Doc/extending/extending.rst:987 +#: ../Doc/extending/extending.rst:992 msgid "" "The object reference returned from a C function that is called from Python " "must be an owned reference --- ownership is transferred from the function to " "its caller." msgstr "" -#: ../Doc/extending/extending.rst:995 +#: ../Doc/extending/extending.rst:1000 msgid "Thin Ice" msgstr "" -#: ../Doc/extending/extending.rst:997 +#: ../Doc/extending/extending.rst:1002 msgid "" "There are a few situations where seemingly harmless use of a borrowed " "reference can lead to problems. These all have to do with implicit " @@ -1158,21 +1165,21 @@ msgid "" "dispose of it." msgstr "" -#: ../Doc/extending/extending.rst:1001 +#: ../Doc/extending/extending.rst:1006 msgid "" "The first and most important case to know about is using :c:func:`Py_DECREF` " "on an unrelated object while borrowing a reference to a list item. For " "instance::" msgstr "" -#: ../Doc/extending/extending.rst:1013 +#: ../Doc/extending/extending.rst:1018 msgid "" "This function first borrows a reference to ``list[0]``, then replaces " "``list[1]`` with the value ``0``, and finally prints the borrowed reference. " "Looks harmless, right? But it's not!" msgstr "" -#: ../Doc/extending/extending.rst:1017 +#: ../Doc/extending/extending.rst:1022 msgid "" "Let's follow the control flow into :c:func:`PyList_SetItem`. The list owns " "references to all its items, so when item 1 is replaced, it has to dispose " @@ -1182,7 +1189,7 @@ msgid "" "count of 1, disposing of it will call its :meth:`__del__` method." msgstr "" -#: ../Doc/extending/extending.rst:1024 +#: ../Doc/extending/extending.rst:1029 msgid "" "Since it is written in Python, the :meth:`__del__` method can execute " "arbitrary Python code. Could it perhaps do something to invalidate the " @@ -1193,20 +1200,20 @@ msgid "" "associated with it, thereby invalidating ``item``." msgstr "" -#: ../Doc/extending/extending.rst:1032 +#: ../Doc/extending/extending.rst:1037 msgid "" "The solution, once you know the source of the problem, is easy: temporarily " "increment the reference count. The correct version of the function reads::" msgstr "" -#: ../Doc/extending/extending.rst:1046 +#: ../Doc/extending/extending.rst:1051 msgid "" "This is a true story. An older version of Python contained variants of this " "bug and someone spent a considerable amount of time in a C debugger to " "figure out why his :meth:`__del__` methods would fail..." msgstr "" -#: ../Doc/extending/extending.rst:1050 +#: ../Doc/extending/extending.rst:1055 msgid "" "The second case of problems with a borrowed reference is a variant involving " "threads. Normally, multiple threads in the Python interpreter can't get in " @@ -1219,11 +1226,11 @@ msgid "" "previous one::" msgstr "" -#: ../Doc/extending/extending.rst:1073 +#: ../Doc/extending/extending.rst:1078 msgid "NULL Pointers" msgstr "" -#: ../Doc/extending/extending.rst:1075 +#: ../Doc/extending/extending.rst:1080 msgid "" "In general, functions that take object references as arguments do not expect " "you to pass them *NULL* pointers, and will dump core (or cause later core " @@ -1235,21 +1242,21 @@ msgid "" "slowly." msgstr "" -#: ../Doc/extending/extending.rst:1083 +#: ../Doc/extending/extending.rst:1088 msgid "" "It is better to test for *NULL* only at the \"source:\" when a pointer that " "may be *NULL* is received, for example, from :c:func:`malloc` or from a " "function that may raise an exception." msgstr "" -#: ../Doc/extending/extending.rst:1087 +#: ../Doc/extending/extending.rst:1092 msgid "" "The macros :c:func:`Py_INCREF` and :c:func:`Py_DECREF` do not check for " "*NULL* pointers --- however, their variants :c:func:`Py_XINCREF` and :c:func:" "`Py_XDECREF` do." msgstr "" -#: ../Doc/extending/extending.rst:1091 +#: ../Doc/extending/extending.rst:1096 msgid "" "The macros for checking for a particular object type (``Pytype_Check()``) " "don't check for *NULL* pointers --- again, there is much code that calls " @@ -1258,24 +1265,24 @@ msgid "" "variants with *NULL* checking." msgstr "" -#: ../Doc/extending/extending.rst:1097 +#: ../Doc/extending/extending.rst:1102 msgid "" "The C function calling mechanism guarantees that the argument list passed to " "C functions (``args`` in the examples) is never *NULL* --- in fact it " "guarantees that it is always a tuple [#]_." msgstr "" -#: ../Doc/extending/extending.rst:1101 +#: ../Doc/extending/extending.rst:1106 msgid "" "It is a severe error to ever let a *NULL* pointer \"escape\" to the Python " "user." msgstr "" -#: ../Doc/extending/extending.rst:1112 +#: ../Doc/extending/extending.rst:1117 msgid "Writing Extensions in C++" msgstr "" -#: ../Doc/extending/extending.rst:1114 +#: ../Doc/extending/extending.rst:1119 msgid "" "It is possible to write extension modules in C++. Some restrictions apply. " "If the main program (the Python interpreter) is compiled and linked by the C " @@ -1288,11 +1295,11 @@ msgid "" "(all recent C++ compilers define this symbol)." msgstr "" -#: ../Doc/extending/extending.rst:1128 +#: ../Doc/extending/extending.rst:1133 msgid "Providing a C API for an Extension Module" msgstr "" -#: ../Doc/extending/extending.rst:1133 +#: ../Doc/extending/extending.rst:1138 msgid "" "Many extension modules just provide new functions and types to be used from " "Python, but sometimes the code in an extension module can be useful for " @@ -1303,7 +1310,7 @@ msgid "" "functions for direct manipulation from other extension modules." msgstr "" -#: ../Doc/extending/extending.rst:1141 +#: ../Doc/extending/extending.rst:1146 msgid "" "At first sight this seems easy: just write the functions (without declaring " "them ``static``, of course), provide an appropriate header file, and " @@ -1319,7 +1326,7 @@ msgid "" "call might not have been loaded yet!" msgstr "" -#: ../Doc/extending/extending.rst:1153 +#: ../Doc/extending/extending.rst:1158 msgid "" "Portability therefore requires not to make any assumptions about symbol " "visibility. This means that all symbols in extension modules should be " @@ -1329,7 +1336,7 @@ msgid "" "accessible from other extension modules must be exported in a different way." msgstr "" -#: ../Doc/extending/extending.rst:1160 +#: ../Doc/extending/extending.rst:1165 msgid "" "Python provides a special mechanism to pass C-level information (pointers) " "from one extension module to another one: Capsules. A Capsule is a Python " @@ -1341,7 +1348,7 @@ msgid "" "the Capsule." msgstr "" -#: ../Doc/extending/extending.rst:1168 +#: ../Doc/extending/extending.rst:1173 msgid "" "There are many ways in which Capsules can be used to export the C API of an " "extension module. Each function could get its own Capsule, or all C API " @@ -1351,7 +1358,7 @@ msgid "" "client modules." msgstr "" -#: ../Doc/extending/extending.rst:1174 +#: ../Doc/extending/extending.rst:1179 msgid "" "Whichever method you choose, it's important to name your Capsules properly. " "The function :c:func:`PyCapsule_New` takes a name parameter (:c:type:`const " @@ -1361,13 +1368,13 @@ msgid "" "from another." msgstr "" -#: ../Doc/extending/extending.rst:1181 +#: ../Doc/extending/extending.rst:1186 msgid "" "In particular, Capsules used to expose C APIs should be given a name " "following this convention::" msgstr "" -#: ../Doc/extending/extending.rst:1186 +#: ../Doc/extending/extending.rst:1191 msgid "" "The convenience function :c:func:`PyCapsule_Import` makes it easy to load a " "C API provided via a Capsule, but only if the Capsule's name matches this " @@ -1375,7 +1382,7 @@ msgid "" "the Capsule they load contains the correct C API." msgstr "" -#: ../Doc/extending/extending.rst:1191 +#: ../Doc/extending/extending.rst:1196 msgid "" "The following example demonstrates an approach that puts most of the burden " "on the writer of the exporting module, which is appropriate for commonly " @@ -1386,7 +1393,7 @@ msgid "" "modules only have to call this macro before accessing the C API." msgstr "" -#: ../Doc/extending/extending.rst:1199 +#: ../Doc/extending/extending.rst:1204 msgid "" "The exporting module is a modification of the :mod:`spam` module from " "section :ref:`extending-simpleexample`. The function :func:`spam.system` " @@ -1396,25 +1403,25 @@ msgid "" "function :c:func:`PySpam_System` is also exported to other extension modules." msgstr "" -#: ../Doc/extending/extending.rst:1206 +#: ../Doc/extending/extending.rst:1211 msgid "" "The function :c:func:`PySpam_System` is a plain C function, declared " "``static`` like everything else::" msgstr "" -#: ../Doc/extending/extending.rst:1215 +#: ../Doc/extending/extending.rst:1220 msgid "The function :c:func:`spam_system` is modified in a trivial way::" msgstr "" -#: ../Doc/extending/extending.rst:1229 +#: ../Doc/extending/extending.rst:1234 msgid "In the beginning of the module, right after the line ::" msgstr "" -#: ../Doc/extending/extending.rst:1233 +#: ../Doc/extending/extending.rst:1238 msgid "two more lines must be added::" msgstr "" -#: ../Doc/extending/extending.rst:1238 +#: ../Doc/extending/extending.rst:1243 msgid "" "The ``#define`` is used to tell the header file that it is being included in " "the exporting module, not a client module. Finally, the module's " @@ -1422,33 +1429,33 @@ msgid "" "array::" msgstr "" -#: ../Doc/extending/extending.rst:1264 +#: ../Doc/extending/extending.rst:1269 msgid "" "Note that ``PySpam_API`` is declared ``static``; otherwise the pointer array " "would disappear when :func:`PyInit_spam` terminates!" msgstr "" -#: ../Doc/extending/extending.rst:1267 +#: ../Doc/extending/extending.rst:1272 msgid "" "The bulk of the work is in the header file :file:`spammodule.h`, which looks " "like this::" msgstr "" -#: ../Doc/extending/extending.rst:1318 +#: ../Doc/extending/extending.rst:1323 msgid "" "All that a client module must do in order to have access to the function :c:" "func:`PySpam_System` is to call the function (or rather macro) :c:func:" "`import_spam` in its initialization function::" msgstr "" -#: ../Doc/extending/extending.rst:1336 +#: ../Doc/extending/extending.rst:1341 msgid "" "The main disadvantage of this approach is that the file :file:`spammodule.h` " "is rather complicated. However, the basic structure is the same for each " "function that is exported, so it has to be learned only once." msgstr "" -#: ../Doc/extending/extending.rst:1340 +#: ../Doc/extending/extending.rst:1345 msgid "" "Finally it should be mentioned that Capsules offer additional functionality, " "which is especially useful for memory allocation and deallocation of the " @@ -1458,30 +1465,30 @@ msgid "" "in the Python source code distribution)." msgstr "" -#: ../Doc/extending/extending.rst:1348 +#: ../Doc/extending/extending.rst:1353 msgid "Footnotes" msgstr "Notes" -#: ../Doc/extending/extending.rst:1349 +#: ../Doc/extending/extending.rst:1354 msgid "" "An interface for this function already exists in the standard module :mod:" "`os` --- it was chosen as a simple and straightforward example." msgstr "" -#: ../Doc/extending/extending.rst:1352 +#: ../Doc/extending/extending.rst:1357 msgid "" "The metaphor of \"borrowing\" a reference is not completely correct: the " "owner still has a copy of the reference." msgstr "" -#: ../Doc/extending/extending.rst:1355 +#: ../Doc/extending/extending.rst:1360 msgid "" "Checking that the reference count is at least 1 **does not work** --- the " "reference count itself could be in freed memory and may thus be reused for " "another object!" msgstr "" -#: ../Doc/extending/extending.rst:1359 +#: ../Doc/extending/extending.rst:1364 msgid "" "These guarantees don't hold when you use the \"old\" style calling " "convention --- this is still found in much existing code." diff --git a/extending/newtypes_tutorial.po b/extending/newtypes_tutorial.po index aaadbb32..8b368470 100644 --- a/extending/newtypes_tutorial.po +++ b/extending/newtypes_tutorial.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-05-02 00:10+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-06-17 10:15+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -120,14 +120,14 @@ msgstr "" msgid "The second bit is the definition of the type object. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:99 +#: ../Doc/extending/newtypes_tutorial.rst:100 msgid "" "We recommend using C99-style designated initializers as above, to avoid " "listing all the :c:type:`PyTypeObject` fields that you don't care about and " "also to avoid caring about the fields' declaration order." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:103 +#: ../Doc/extending/newtypes_tutorial.rst:104 msgid "" "The actual definition of :c:type:`PyTypeObject` in :file:`object.h` has many " "more :ref:`fields ` than the definition above. The remaining " @@ -135,23 +135,23 @@ msgid "" "to not specify them explicitly unless you need them." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:108 +#: ../Doc/extending/newtypes_tutorial.rst:109 msgid "We're going to pick it apart, one field at a time::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:112 +#: ../Doc/extending/newtypes_tutorial.rst:113 msgid "" "This line is mandatory boilerplate to initialize the ``ob_base`` field " "mentioned above. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:117 +#: ../Doc/extending/newtypes_tutorial.rst:118 msgid "" "The name of our type. This will appear in the default textual " "representation of our objects and in some error messages, for example:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:127 +#: ../Doc/extending/newtypes_tutorial.rst:128 msgid "" "Note that the name is a dotted name that includes both the module name and " "the name of the type within the module. The module in this case is :mod:" @@ -160,14 +160,14 @@ msgid "" "type compatible with the :mod:`pydoc` and :mod:`pickle` modules. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:136 +#: ../Doc/extending/newtypes_tutorial.rst:137 msgid "" "This is so that Python knows how much memory to allocate when creating new :" "class:`Custom` instances. :c:member:`~PyTypeObject.tp_itemsize` is only " "used for variable-sized objects and should otherwise be zero." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:142 +#: ../Doc/extending/newtypes_tutorial.rst:143 msgid "" "If you want your type to be subclassable from Python, and your type has the " "same :c:member:`~PyTypeObject.tp_basicsize` as its base type, you may have " @@ -181,23 +181,23 @@ msgid "" "your base type, and therefore increasing its size." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:152 +#: ../Doc/extending/newtypes_tutorial.rst:153 msgid "We set the class flags to :const:`Py_TPFLAGS_DEFAULT`. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:156 +#: ../Doc/extending/newtypes_tutorial.rst:157 msgid "" "All types should include this constant in their flags. It enables all of " "the members defined until at least Python 3.3. If you need further members, " "you will need to OR the corresponding flags." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:160 +#: ../Doc/extending/newtypes_tutorial.rst:161 msgid "" "We provide a doc string for the type in :c:member:`~PyTypeObject.tp_doc`. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:164 +#: ../Doc/extending/newtypes_tutorial.rst:165 msgid "" "To enable object creation, we have to provide a :c:member:`~PyTypeObject." "tp_new` handler. This is the equivalent of the Python method :meth:" @@ -206,53 +206,53 @@ msgid "" "`PyType_GenericNew`. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:171 +#: ../Doc/extending/newtypes_tutorial.rst:172 msgid "" "Everything else in the file should be familiar, except for some code in :c:" "func:`PyInit_custom`::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:177 +#: ../Doc/extending/newtypes_tutorial.rst:178 msgid "" "This initializes the :class:`Custom` type, filling in a number of members to " "the appropriate default values, including :attr:`ob_type` that we initially " "set to *NULL*. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:183 +#: ../Doc/extending/newtypes_tutorial.rst:184 msgid "" "This adds the type to the module dictionary. This allows us to create :" "class:`Custom` instances by calling the :class:`Custom` class:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:191 +#: ../Doc/extending/newtypes_tutorial.rst:192 msgid "" "That's it! All that remains is to build it; put the above code in a file " "called :file:`custom.c` and:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:200 +#: ../Doc/extending/newtypes_tutorial.rst:201 msgid "in a file called :file:`setup.py`; then typing" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:206 +#: ../Doc/extending/newtypes_tutorial.rst:207 msgid "" "at a shell should produce a file :file:`custom.so` in a subdirectory; move " "to that directory and fire up Python --- you should be able to ``import " "custom`` and play around with Custom objects." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:210 +#: ../Doc/extending/newtypes_tutorial.rst:211 msgid "That wasn't so hard, was it?" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:212 +#: ../Doc/extending/newtypes_tutorial.rst:213 msgid "" "Of course, the current Custom type is pretty uninteresting. It has no data " "and doesn't do anything. It can't even be subclassed." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:216 +#: ../Doc/extending/newtypes_tutorial.rst:217 msgid "" "While this documentation showcases the standard :mod:`distutils` module for " "building C extensions, it is recommended in real-world use cases to use the " @@ -262,32 +262,32 @@ msgid "" "packages/>`_." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:224 +#: ../Doc/extending/newtypes_tutorial.rst:225 msgid "Adding data and methods to the Basic example" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:226 +#: ../Doc/extending/newtypes_tutorial.rst:227 msgid "" "Let's extend the basic example to add some data and methods. Let's also " "make the type usable as a base class. We'll create a new module, :mod:" "`custom2` that adds these capabilities:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:233 +#: ../Doc/extending/newtypes_tutorial.rst:234 msgid "This version of the module has a number of changes." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:235 +#: ../Doc/extending/newtypes_tutorial.rst:236 msgid "We've added an extra include::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:239 +#: ../Doc/extending/newtypes_tutorial.rst:240 msgid "" "This include provides declarations that we use to handle attributes, as " "described a bit later." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:242 +#: ../Doc/extending/newtypes_tutorial.rst:243 msgid "" "The :class:`Custom` type now has three data attributes in its C struct, " "*first*, *last*, and *number*. The *first* and *last* variables are Python " @@ -295,21 +295,21 @@ msgid "" "integer." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:246 +#: ../Doc/extending/newtypes_tutorial.rst:247 msgid "The object structure is updated accordingly::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:255 +#: ../Doc/extending/newtypes_tutorial.rst:256 msgid "" "Because we now have data to manage, we have to be more careful about object " "allocation and deallocation. At a minimum, we need a deallocation method::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:266 +#: ../Doc/extending/newtypes_tutorial.rst:267 msgid "which is assigned to the :c:member:`~PyTypeObject.tp_dealloc` member::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:270 +#: ../Doc/extending/newtypes_tutorial.rst:271 msgid "" "This method first clears the reference counts of the two Python attributes. :" "c:func:`Py_XDECREF` correctly handles the case where its argument is *NULL* " @@ -320,7 +320,7 @@ msgid "" "subclass." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:279 +#: ../Doc/extending/newtypes_tutorial.rst:280 msgid "" "The explicit cast to ``destructor`` above is needed because we defined " "``Custom_dealloc`` to take a ``CustomObject *`` argument, but the " @@ -329,17 +329,17 @@ msgid "" "oriented polymorphism, in C!" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:285 +#: ../Doc/extending/newtypes_tutorial.rst:286 msgid "" "We want to make sure that the first and last names are initialized to empty " "strings, so we provide a ``tp_new`` implementation::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:309 +#: ../Doc/extending/newtypes_tutorial.rst:310 msgid "and install it in the :c:member:`~PyTypeObject.tp_new` member::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:313 +#: ../Doc/extending/newtypes_tutorial.rst:314 msgid "" "The ``tp_new`` handler is responsible for creating (as opposed to " "initializing) objects of the type. It is exposed in Python as the :meth:" @@ -350,7 +350,7 @@ msgid "" "attributes to non-*NULL* default values." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:321 +#: ../Doc/extending/newtypes_tutorial.rst:322 msgid "" "``tp_new`` is passed the type being instantiated (not necessarily " "``CustomType``, if a subclass is instantiated) and any arguments passed when " @@ -360,25 +360,25 @@ msgid "" "k.a. ``tp_init`` in C or ``__init__`` in Python) methods." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:329 +#: ../Doc/extending/newtypes_tutorial.rst:330 msgid "" "``tp_new`` shouldn't call ``tp_init`` explicitly, as the interpreter will do " "it itself." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:332 +#: ../Doc/extending/newtypes_tutorial.rst:333 msgid "" "The ``tp_new`` implementation calls the :c:member:`~PyTypeObject.tp_alloc` " "slot to allocate memory::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:337 +#: ../Doc/extending/newtypes_tutorial.rst:338 msgid "" "Since memory allocation may fail, we must check the :c:member:`~PyTypeObject." "tp_alloc` result against *NULL* before proceeding." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:341 +#: ../Doc/extending/newtypes_tutorial.rst:342 msgid "" "We didn't fill the :c:member:`~PyTypeObject.tp_alloc` slot ourselves. " "Rather :c:func:`PyType_Ready` fills it for us by inheriting it from our base " @@ -386,7 +386,7 @@ msgid "" "allocation strategy." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:347 +#: ../Doc/extending/newtypes_tutorial.rst:348 msgid "" "If you are creating a co-operative :c:member:`~PyTypeObject.tp_new` (one " "that calls a base type's :c:member:`~PyTypeObject.tp_new` or :meth:" @@ -399,17 +399,17 @@ msgid "" "subclasses without getting a :exc:`TypeError`.)" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:357 +#: ../Doc/extending/newtypes_tutorial.rst:358 msgid "" "We also define an initialization function which accepts arguments to provide " "initial values for our instance::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:386 +#: ../Doc/extending/newtypes_tutorial.rst:387 msgid "by filling the :c:member:`~PyTypeObject.tp_init` slot. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:390 +#: ../Doc/extending/newtypes_tutorial.rst:391 msgid "" "The :c:member:`~PyTypeObject.tp_init` slot is exposed in Python as the :meth:" "`__init__` method. It is used to initialize an object after it's created. " @@ -417,7 +417,7 @@ msgid "" "return either ``0`` on success or ``-1`` on error." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:395 +#: ../Doc/extending/newtypes_tutorial.rst:396 msgid "" "Unlike the ``tp_new`` handler, there is no guarantee that ``tp_init`` is " "called at all (for example, the :mod:`pickle` module by default doesn't " @@ -428,7 +428,7 @@ msgid "" "``first`` member like this::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:409 +#: ../Doc/extending/newtypes_tutorial.rst:410 msgid "" "But this would be risky. Our type doesn't restrict the type of the " "``first`` member, so it could be any kind of object. It could have a " @@ -438,49 +438,49 @@ msgid "" "and modifies our object." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:416 +#: ../Doc/extending/newtypes_tutorial.rst:417 msgid "" "To be paranoid and protect ourselves against this possibility, we almost " "always reassign members before decrementing their reference counts. When " "don't we have to do this?" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:420 +#: ../Doc/extending/newtypes_tutorial.rst:421 msgid "when we absolutely know that the reference count is greater than 1;" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:422 +#: ../Doc/extending/newtypes_tutorial.rst:423 msgid "" "when we know that deallocation of the object [#]_ will neither release the :" "term:`GIL` nor cause any calls back into our type's code;" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:425 +#: ../Doc/extending/newtypes_tutorial.rst:426 msgid "" "when decrementing a reference count in a :c:member:`~PyTypeObject." "tp_dealloc` handler on a type which doesn't support cyclic garbage " "collection [#]_." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:428 +#: ../Doc/extending/newtypes_tutorial.rst:429 msgid "" "We want to expose our instance variables as attributes. There are a number " "of ways to do that. The simplest way is to define member definitions::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:441 +#: ../Doc/extending/newtypes_tutorial.rst:442 msgid "" "and put the definitions in the :c:member:`~PyTypeObject.tp_members` slot::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:445 +#: ../Doc/extending/newtypes_tutorial.rst:446 msgid "" "Each member definition has a member name, type, offset, access flags and " "documentation string. See the :ref:`Generic-Attribute-Management` section " "below for details." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:449 +#: ../Doc/extending/newtypes_tutorial.rst:450 msgid "" "A disadvantage of this approach is that it doesn't provide a way to restrict " "the types of objects that can be assigned to the Python attributes. We " @@ -491,13 +491,13 @@ msgid "" "deleted." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:456 +#: ../Doc/extending/newtypes_tutorial.rst:457 msgid "" "We define a single method, :meth:`Custom.name()`, that outputs the objects " "name as the concatenation of the first and last names. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:473 +#: ../Doc/extending/newtypes_tutorial.rst:474 msgid "" "The method is implemented as a C function that takes a :class:`Custom` (or :" "class:`Custom` subclass) instance as the first argument. Methods always " @@ -507,7 +507,7 @@ msgid "" "method is equivalent to the Python method:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:485 +#: ../Doc/extending/newtypes_tutorial.rst:486 msgid "" "Note that we have to check for the possibility that our :attr:`first` and :" "attr:`last` members are *NULL*. This is because they can be deleted, in " @@ -516,23 +516,23 @@ msgid "" "We'll see how to do that in the next section." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:491 +#: ../Doc/extending/newtypes_tutorial.rst:492 msgid "" "Now that we've defined the method, we need to create an array of method " "definitions::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:501 +#: ../Doc/extending/newtypes_tutorial.rst:502 msgid "" "(note that we used the :const:`METH_NOARGS` flag to indicate that the method " "is expecting no arguments other than *self*)" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:504 +#: ../Doc/extending/newtypes_tutorial.rst:505 msgid "and assign it to the :c:member:`~PyTypeObject.tp_methods` slot::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:508 +#: ../Doc/extending/newtypes_tutorial.rst:509 msgid "" "Finally, we'll make our type usable as a base class for subclassing. We've " "written our methods carefully so far so that they don't make any assumptions " @@ -540,22 +540,22 @@ msgid "" "to add the :const:`Py_TPFLAGS_BASETYPE` to our class flag definition::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:515 +#: ../Doc/extending/newtypes_tutorial.rst:516 msgid "" "We rename :c:func:`PyInit_custom` to :c:func:`PyInit_custom2`, update the " "module name in the :c:type:`PyModuleDef` struct, and update the full class " "name in the :c:type:`PyTypeObject` struct." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:519 +#: ../Doc/extending/newtypes_tutorial.rst:520 msgid "Finally, we update our :file:`setup.py` file to build the new module:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:532 +#: ../Doc/extending/newtypes_tutorial.rst:533 msgid "Providing finer control over data attributes" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:534 +#: ../Doc/extending/newtypes_tutorial.rst:535 msgid "" "In this section, we'll provide finer control over how the :attr:`first` and :" "attr:`last` attributes are set in the :class:`Custom` example. In the " @@ -564,14 +564,14 @@ msgid "" "make sure that these attributes always contain strings." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:543 +#: ../Doc/extending/newtypes_tutorial.rst:544 msgid "" "To provide greater control, over the :attr:`first` and :attr:`last` " "attributes, we'll use custom getter and setter functions. Here are the " "functions for getting and setting the :attr:`first` attribute::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:574 +#: ../Doc/extending/newtypes_tutorial.rst:575 msgid "" "The getter function is passed a :class:`Custom` object and a \"closure\", " "which is a void pointer. In this case, the closure is ignored. (The " @@ -581,7 +581,7 @@ msgid "" "data in the closure.)" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:580 +#: ../Doc/extending/newtypes_tutorial.rst:581 msgid "" "The setter function is passed the :class:`Custom` object, the new value, and " "the closure. The new value may be *NULL*, in which case the attribute is " @@ -589,32 +589,32 @@ msgid "" "or if its new value is not a string." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:585 +#: ../Doc/extending/newtypes_tutorial.rst:586 msgid "We create an array of :c:type:`PyGetSetDef` structures::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:595 +#: ../Doc/extending/newtypes_tutorial.rst:596 msgid "and register it in the :c:member:`~PyTypeObject.tp_getset` slot::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:599 +#: ../Doc/extending/newtypes_tutorial.rst:600 msgid "" "The last item in a :c:type:`PyGetSetDef` structure is the \"closure\" " "mentioned above. In this case, we aren't using a closure, so we just pass " "*NULL*." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:602 +#: ../Doc/extending/newtypes_tutorial.rst:603 msgid "We also remove the member definitions for these attributes::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:610 +#: ../Doc/extending/newtypes_tutorial.rst:611 msgid "" "We also need to update the :c:member:`~PyTypeObject.tp_init` handler to only " "allow strings [#]_ to be passed::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:639 +#: ../Doc/extending/newtypes_tutorial.rst:640 msgid "" "With these changes, we can assure that the ``first`` and ``last`` members " "are never *NULL* so we can remove checks for *NULL* values in almost all " @@ -624,25 +624,25 @@ msgid "" "possibility that the initialization of these members failed in ``tp_new``." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:646 +#: ../Doc/extending/newtypes_tutorial.rst:647 msgid "" "We also rename the module initialization function and module name in the " "initialization function, as we did before, and we add an extra definition to " "the :file:`setup.py` file." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:652 +#: ../Doc/extending/newtypes_tutorial.rst:653 msgid "Supporting cyclic garbage collection" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:654 +#: ../Doc/extending/newtypes_tutorial.rst:655 msgid "" "Python has a :term:`cyclic garbage collector (GC) ` that " "can identify unneeded objects even when their reference counts are not zero. " "This can happen when objects are involved in cycles. For example, consider:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:664 +#: ../Doc/extending/newtypes_tutorial.rst:665 msgid "" "In this example, we create a list that contains itself. When we delete it, " "it still has a reference from itself. Its reference count doesn't drop to " @@ -650,7 +650,7 @@ msgid "" "out that the list is garbage and free it." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:669 +#: ../Doc/extending/newtypes_tutorial.rst:670 msgid "" "In the second version of the :class:`Custom` example, we allowed any kind of " "object to be stored in the :attr:`first` or :attr:`last` attributes [#]_. " @@ -659,7 +659,7 @@ msgid "" "reasons, :class:`Custom` objects can participate in cycles:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:683 +#: ../Doc/extending/newtypes_tutorial.rst:684 msgid "" "To allow a :class:`Custom` instance participating in a reference cycle to be " "properly detected and collected by the cyclic GC, our :class:`Custom` type " @@ -667,13 +667,13 @@ msgid "" "slots:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:690 +#: ../Doc/extending/newtypes_tutorial.rst:691 msgid "" "First, the traversal method lets the cyclic GC know about subobjects that " "could participate in cycles::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:710 +#: ../Doc/extending/newtypes_tutorial.rst:711 msgid "" "For each subobject that can participate in cycles, we need to call the :c:" "func:`visit` function, which is passed to the traversal method. The :c:func:" @@ -682,26 +682,26 @@ msgid "" "be returned if it is non-zero." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:716 +#: ../Doc/extending/newtypes_tutorial.rst:717 msgid "" "Python provides a :c:func:`Py_VISIT` macro that automates calling visit " "functions. With :c:func:`Py_VISIT`, we can minimize the amount of " "boilerplate in ``Custom_traverse``::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:729 +#: ../Doc/extending/newtypes_tutorial.rst:730 msgid "" "The :c:member:`~PyTypeObject.tp_traverse` implementation must name its " "arguments exactly *visit* and *arg* in order to use :c:func:`Py_VISIT`." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:732 +#: ../Doc/extending/newtypes_tutorial.rst:733 msgid "" "Second, we need to provide a method for clearing any subobjects that can " "participate in cycles::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:743 +#: ../Doc/extending/newtypes_tutorial.rst:744 msgid "" "Notice the use of the :c:func:`Py_CLEAR` macro. It is the recommended and " "safe way to clear data attributes of arbitrary types while decrementing " @@ -711,18 +711,18 @@ msgid "" "again (*especially* if there is a reference cycle)." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:751 +#: ../Doc/extending/newtypes_tutorial.rst:752 msgid "You could emulate :c:func:`Py_CLEAR` by writing::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:758 +#: ../Doc/extending/newtypes_tutorial.rst:759 msgid "" "Nevertheless, it is much easier and less error-prone to always use :c:func:" "`Py_CLEAR` when deleting an attribute. Don't try to micro-optimize at the " "expense of robustness!" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:762 +#: ../Doc/extending/newtypes_tutorial.rst:763 msgid "" "The deallocator ``Custom_dealloc`` may call arbitrary code when clearing " "attributes. It means the circular GC can be triggered inside the function. " @@ -732,12 +732,12 @@ msgid "" "`PyObject_GC_UnTrack` and ``Custom_clear``::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:777 +#: ../Doc/extending/newtypes_tutorial.rst:778 msgid "" "Finally, we add the :const:`Py_TPFLAGS_HAVE_GC` flag to the class flags::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:781 +#: ../Doc/extending/newtypes_tutorial.rst:782 msgid "" "That's pretty much it. If we had written custom :c:member:`~PyTypeObject." "tp_alloc` or :c:member:`~PyTypeObject.tp_free` handlers, we'd need to modify " @@ -745,11 +745,11 @@ msgid "" "automatically provided." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:787 +#: ../Doc/extending/newtypes_tutorial.rst:788 msgid "Subclassing other types" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:789 +#: ../Doc/extending/newtypes_tutorial.rst:790 msgid "" "It is possible to create new extension types that are derived from existing " "types. It is easiest to inherit from the built in types, since an extension " @@ -757,7 +757,7 @@ msgid "" "share these :c:type:`PyTypeObject` structures between extension modules." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:794 +#: ../Doc/extending/newtypes_tutorial.rst:795 msgid "" "In this example we will create a :class:`SubList` type that inherits from " "the built-in :class:`list` type. The new type will be completely compatible " @@ -765,34 +765,34 @@ msgid "" "that increases an internal counter:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:814 +#: ../Doc/extending/newtypes_tutorial.rst:815 msgid "" "As you can see, the source code closely resembles the :class:`Custom` " "examples in previous sections. We will break down the main differences " "between them. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:822 +#: ../Doc/extending/newtypes_tutorial.rst:823 msgid "" "The primary difference for derived type objects is that the base type's " "object structure must be the first value. The base type will already " "include the :c:func:`PyObject_HEAD` at the beginning of its structure." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:826 +#: ../Doc/extending/newtypes_tutorial.rst:827 msgid "" "When a Python object is a :class:`SubList` instance, its ``PyObject *`` " "pointer can be safely cast to both ``PyListObject *`` and ``SubListObject " "*``::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:838 +#: ../Doc/extending/newtypes_tutorial.rst:839 msgid "" "We see above how to call through to the :attr:`__init__` method of the base " "type." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:841 +#: ../Doc/extending/newtypes_tutorial.rst:842 msgid "" "This pattern is important when writing a type with custom :c:member:" "`~PyTypeObject.tp_new` and :c:member:`~PyTypeObject.tp_dealloc` members. " @@ -801,7 +801,7 @@ msgid "" "the base class handle it by calling its own :c:member:`~PyTypeObject.tp_new`." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:847 +#: ../Doc/extending/newtypes_tutorial.rst:848 msgid "" "The :c:type:`PyTypeObject` struct supports a :c:member:`~PyTypeObject." "tp_base` specifying the type's concrete base class. Due to cross-platform " @@ -810,7 +810,7 @@ msgid "" "function::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:870 +#: ../Doc/extending/newtypes_tutorial.rst:871 msgid "" "Before calling :c:func:`PyType_Ready`, the type structure must have the :c:" "member:`~PyTypeObject.tp_base` slot filled in. When we are deriving an " @@ -819,29 +819,29 @@ msgid "" "from the base type will be inherited." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:876 +#: ../Doc/extending/newtypes_tutorial.rst:877 msgid "" "After that, calling :c:func:`PyType_Ready` and adding the type object to the " "module is the same as with the basic :class:`Custom` examples." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:881 +#: ../Doc/extending/newtypes_tutorial.rst:882 msgid "Footnotes" msgstr "Notes" -#: ../Doc/extending/newtypes_tutorial.rst:882 +#: ../Doc/extending/newtypes_tutorial.rst:883 msgid "" "This is true when we know that the object is a basic type, like a string or " "a float." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:885 +#: ../Doc/extending/newtypes_tutorial.rst:886 msgid "" "We relied on this in the :c:member:`~PyTypeObject.tp_dealloc` handler in " "this example, because our type doesn't support garbage collection." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:888 +#: ../Doc/extending/newtypes_tutorial.rst:889 msgid "" "We now know that the first and last members are strings, so perhaps we could " "be less careful about decrementing their reference counts, however, we " @@ -851,7 +851,7 @@ msgid "" "objects." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:894 +#: ../Doc/extending/newtypes_tutorial.rst:895 msgid "" "Also, even with our attributes restricted to strings instances, the user " "could pass arbitrary :class:`str` subclasses and therefore still create " diff --git a/faq/extending.po b/faq/extending.po index 1d2c8f69..8500930c 100644 --- a/faq/extending.po +++ b/faq/extending.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-17 21:38+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-02-15 00:37+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -346,7 +346,7 @@ msgid "" "sample code fragment, untested, inspired by code from Alex Farber::" msgstr "" -#: ../Doc/faq/extending.rst:309 +#: ../Doc/faq/extending.rst:310 msgid "" "Another solution is trying to compile the received string with :c:func:" "`Py_CompileString`. If it compiles without errors, try to execute the " @@ -358,30 +358,30 @@ msgid "" "to ignore **SIGINT** while calling readline())::" msgstr "" -#: ../Doc/faq/extending.rst:430 +#: ../Doc/faq/extending.rst:432 msgid "How do I find undefined g++ symbols __builtin_new or __pure_virtual?" msgstr "" -#: ../Doc/faq/extending.rst:432 +#: ../Doc/faq/extending.rst:434 msgid "" "To dynamically load g++ extension modules, you must recompile Python, relink " "it using g++ (change LINKCC in the Python Modules Makefile), and link your " "extension module using g++ (e.g., ``g++ -shared -o mymodule.so mymodule.o``)." msgstr "" -#: ../Doc/faq/extending.rst:438 +#: ../Doc/faq/extending.rst:440 msgid "" "Can I create an object class with some methods implemented in C and others " "in Python (e.g. through inheritance)?" msgstr "" -#: ../Doc/faq/extending.rst:440 +#: ../Doc/faq/extending.rst:442 msgid "" "Yes, you can inherit from built-in classes such as :class:`int`, :class:" "`list`, :class:`dict`, etc." msgstr "" -#: ../Doc/faq/extending.rst:443 +#: ../Doc/faq/extending.rst:445 msgid "" "The Boost Python Library (BPL, http://www.boost.org/libs/python/doc/index." "html) provides a way of doing this from C++ (i.e. you can inherit from an " diff --git a/faq/programming.po b/faq/programming.po index 6909f064..df4e2466 100644 --- a/faq/programming.po +++ b/faq/programming.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-24 11:30+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -33,26 +33,32 @@ msgid "" "etc.?" msgstr "" -#: ../Doc/faq/programming.rst:17 ../Doc/faq/programming.rst:60 +#: ../Doc/faq/programming.rst:17 ../Doc/faq/programming.rst:63 msgid "Yes." msgstr "Oui." #: ../Doc/faq/programming.rst:19 msgid "" +"Several debuggers for Python are described below, and the built-in function :" +"func:`breakpoint` allows you to drop into any of them." +msgstr "" + +#: ../Doc/faq/programming.rst:22 +msgid "" "The pdb module is a simple but adequate console-mode debugger for Python. It " "is part of the standard Python library, and is :mod:`documented in the " "Library Reference Manual `. You can also write your own debugger by " "using the code for pdb as an example." msgstr "" -#: ../Doc/faq/programming.rst:24 +#: ../Doc/faq/programming.rst:27 msgid "" "The IDLE interactive development environment, which is part of the standard " "Python distribution (normally available as Tools/scripts/idle), includes a " "graphical debugger." msgstr "" -#: ../Doc/faq/programming.rst:28 +#: ../Doc/faq/programming.rst:31 msgid "" "PythonWin is a Python IDE that includes a GUI debugger based on pdb. The " "Pythonwin debugger colors breakpoints and has quite a few cool features such " @@ -62,7 +68,7 @@ msgid "" "activestate.com/activepython\\ )." msgstr "" -#: ../Doc/faq/programming.rst:35 +#: ../Doc/faq/programming.rst:38 msgid "" "`Boa Constructor `_ is an IDE and " "GUI builder that uses wxWidgets. It offers visual frame creation and " @@ -71,13 +77,13 @@ msgid "" "an advanced debugger, integrated help, and Zope support." msgstr "" -#: ../Doc/faq/programming.rst:41 +#: ../Doc/faq/programming.rst:44 msgid "" "`Eric `_ is an IDE built on PyQt and " "the Scintilla editing component." msgstr "" -#: ../Doc/faq/programming.rst:44 +#: ../Doc/faq/programming.rst:47 msgid "" "Pydb is a version of the standard Python debugger pdb, modified for use with " "DDD (Data Display Debugger), a popular graphical debugger front end. Pydb " @@ -85,36 +91,36 @@ msgid "" "https://www.gnu.org/software/ddd." msgstr "" -#: ../Doc/faq/programming.rst:49 +#: ../Doc/faq/programming.rst:52 msgid "" "There are a number of commercial Python IDEs that include graphical " "debuggers. They include:" msgstr "" -#: ../Doc/faq/programming.rst:52 +#: ../Doc/faq/programming.rst:55 msgid "Wing IDE (https://wingware.com/)" msgstr "" -#: ../Doc/faq/programming.rst:53 +#: ../Doc/faq/programming.rst:56 msgid "Komodo IDE (https://komodoide.com/)" msgstr "" -#: ../Doc/faq/programming.rst:54 +#: ../Doc/faq/programming.rst:57 msgid "PyCharm (https://www.jetbrains.com/pycharm/)" msgstr "" -#: ../Doc/faq/programming.rst:58 +#: ../Doc/faq/programming.rst:61 msgid "Is there a tool to help find bugs or perform static analysis?" msgstr "" -#: ../Doc/faq/programming.rst:62 +#: ../Doc/faq/programming.rst:65 msgid "" "PyChecker is a static analysis tool that finds bugs in Python source code " "and warns about code complexity and style. You can get PyChecker from " "http://pychecker.sourceforge.net/." msgstr "" -#: ../Doc/faq/programming.rst:66 +#: ../Doc/faq/programming.rst:69 msgid "" "`Pylint `_ is another tool that checks if a module " "satisfies a coding standard, and also makes it possible to write plug-ins to " @@ -125,18 +131,18 @@ msgid "" "https://docs.pylint.org/ provides a full list of Pylint's features." msgstr "" -#: ../Doc/faq/programming.rst:74 +#: ../Doc/faq/programming.rst:77 msgid "" "Static type checkers such as `Mypy `_, `Pyre `_, and `Pytype `_ can " "check type hints in Python source code." msgstr "" -#: ../Doc/faq/programming.rst:81 +#: ../Doc/faq/programming.rst:84 msgid "How can I create a stand-alone binary from a Python script?" msgstr "" -#: ../Doc/faq/programming.rst:83 +#: ../Doc/faq/programming.rst:86 msgid "" "You don't need the ability to compile Python to C code if all you want is a " "stand-alone program that users can download and run without having to " @@ -145,7 +151,7 @@ msgid "" "together with a Python binary to produce a single executable." msgstr "" -#: ../Doc/faq/programming.rst:89 +#: ../Doc/faq/programming.rst:92 msgid "" "One is to use the freeze tool, which is included in the Python source tree " "as ``Tools/freeze``. It converts Python byte code to C arrays; a C compiler " @@ -153,7 +159,7 @@ msgid "" "the standard Python modules." msgstr "" -#: ../Doc/faq/programming.rst:94 +#: ../Doc/faq/programming.rst:97 msgid "" "It works by scanning your source recursively for import statements (in both " "forms) and looking for the modules in the standard Python path as well as in " @@ -166,60 +172,60 @@ msgid "" "exactly like your script." msgstr "" -#: ../Doc/faq/programming.rst:103 +#: ../Doc/faq/programming.rst:106 msgid "" "Obviously, freeze requires a C compiler. There are several other utilities " "which don't. One is Thomas Heller's py2exe (Windows only) at" msgstr "" -#: ../Doc/faq/programming.rst:106 +#: ../Doc/faq/programming.rst:109 msgid "http://www.py2exe.org/" msgstr "" -#: ../Doc/faq/programming.rst:108 +#: ../Doc/faq/programming.rst:111 msgid "" "Another tool is Anthony Tuininga's `cx_Freeze `_." msgstr "" -#: ../Doc/faq/programming.rst:112 +#: ../Doc/faq/programming.rst:115 msgid "Are there coding standards or a style guide for Python programs?" msgstr "" -#: ../Doc/faq/programming.rst:114 +#: ../Doc/faq/programming.rst:117 msgid "" "Yes. The coding style required for standard library modules is documented " "as :pep:`8`." msgstr "" -#: ../Doc/faq/programming.rst:119 +#: ../Doc/faq/programming.rst:122 msgid "Core Language" msgstr "" -#: ../Doc/faq/programming.rst:122 +#: ../Doc/faq/programming.rst:125 msgid "Why am I getting an UnboundLocalError when the variable has a value?" msgstr "" -#: ../Doc/faq/programming.rst:124 +#: ../Doc/faq/programming.rst:127 msgid "" "It can be a surprise to get the UnboundLocalError in previously working code " "when it is modified by adding an assignment statement somewhere in the body " "of a function." msgstr "" -#: ../Doc/faq/programming.rst:128 +#: ../Doc/faq/programming.rst:131 msgid "This code:" msgstr "" -#: ../Doc/faq/programming.rst:136 +#: ../Doc/faq/programming.rst:139 msgid "works, but this code:" msgstr "" -#: ../Doc/faq/programming.rst:143 +#: ../Doc/faq/programming.rst:146 msgid "results in an UnboundLocalError:" msgstr "" -#: ../Doc/faq/programming.rst:150 +#: ../Doc/faq/programming.rst:153 msgid "" "This is because when you make an assignment to a variable in a scope, that " "variable becomes local to that scope and shadows any similarly named " @@ -229,30 +235,30 @@ msgid "" "uninitialized local variable and an error results." msgstr "" -#: ../Doc/faq/programming.rst:157 +#: ../Doc/faq/programming.rst:160 msgid "" "In the example above you can access the outer scope variable by declaring it " "global:" msgstr "" -#: ../Doc/faq/programming.rst:168 +#: ../Doc/faq/programming.rst:171 msgid "" "This explicit declaration is required in order to remind you that (unlike " "the superficially analogous situation with class and instance variables) you " "are actually modifying the value of the variable in the outer scope:" msgstr "" -#: ../Doc/faq/programming.rst:175 +#: ../Doc/faq/programming.rst:178 msgid "" "You can do a similar thing in a nested scope using the :keyword:`nonlocal` " "keyword:" msgstr "" -#: ../Doc/faq/programming.rst:192 +#: ../Doc/faq/programming.rst:195 msgid "What are the rules for local and global variables in Python?" msgstr "" -#: ../Doc/faq/programming.rst:194 +#: ../Doc/faq/programming.rst:197 msgid "" "In Python, variables that are only referenced inside a function are " "implicitly global. If a variable is assigned a value anywhere within the " @@ -260,7 +266,7 @@ msgid "" "global." msgstr "" -#: ../Doc/faq/programming.rst:198 +#: ../Doc/faq/programming.rst:201 msgid "" "Though a bit surprising at first, a moment's consideration explains this. " "On one hand, requiring :keyword:`global` for assigned variables provides a " @@ -271,19 +277,19 @@ msgid "" "of the ``global`` declaration for identifying side-effects." msgstr "" -#: ../Doc/faq/programming.rst:208 +#: ../Doc/faq/programming.rst:211 msgid "" "Why do lambdas defined in a loop with different values all return the same " "result?" msgstr "" -#: ../Doc/faq/programming.rst:210 +#: ../Doc/faq/programming.rst:213 msgid "" "Assume you use a for loop to define a few different lambdas (or even plain " "functions), e.g.::" msgstr "" -#: ../Doc/faq/programming.rst:217 +#: ../Doc/faq/programming.rst:220 msgid "" "This gives you a list that contains 5 lambdas that calculate ``x**2``. You " "might expect that, when called, they would return, respectively, ``0``, " @@ -291,7 +297,7 @@ msgid "" "see that they all return ``16``::" msgstr "" -#: ../Doc/faq/programming.rst:227 +#: ../Doc/faq/programming.rst:230 msgid "" "This happens because ``x`` is not local to the lambdas, but is defined in " "the outer scope, and it is accessed when the lambda is called --- not when " @@ -300,13 +306,13 @@ msgid "" "changing the value of ``x`` and see how the results of the lambdas change::" msgstr "" -#: ../Doc/faq/programming.rst:237 +#: ../Doc/faq/programming.rst:240 msgid "" "In order to avoid this, you need to save the values in variables local to " "the lambdas, so that they don't rely on the value of the global ``x``::" msgstr "" -#: ../Doc/faq/programming.rst:244 +#: ../Doc/faq/programming.rst:247 msgid "" "Here, ``n=x`` creates a new variable ``n`` local to the lambda and computed " "when the lambda is defined so that it has the same value that ``x`` had at " @@ -315,17 +321,17 @@ msgid "" "Therefore each lambda will now return the correct result::" msgstr "" -#: ../Doc/faq/programming.rst:255 +#: ../Doc/faq/programming.rst:258 msgid "" "Note that this behaviour is not peculiar to lambdas, but applies to regular " "functions too." msgstr "" -#: ../Doc/faq/programming.rst:260 +#: ../Doc/faq/programming.rst:263 msgid "How do I share global variables across modules?" msgstr "" -#: ../Doc/faq/programming.rst:262 +#: ../Doc/faq/programming.rst:265 msgid "" "The canonical way to share information across modules within a single " "program is to create a special module (often called config or cfg). Just " @@ -335,36 +341,36 @@ msgid "" "everywhere. For example:" msgstr "" -#: ../Doc/faq/programming.rst:268 +#: ../Doc/faq/programming.rst:271 msgid "config.py::" msgstr "" -#: ../Doc/faq/programming.rst:272 +#: ../Doc/faq/programming.rst:275 msgid "mod.py::" msgstr "" -#: ../Doc/faq/programming.rst:277 +#: ../Doc/faq/programming.rst:280 msgid "main.py::" msgstr "" -#: ../Doc/faq/programming.rst:283 +#: ../Doc/faq/programming.rst:286 msgid "" "Note that using a module is also the basis for implementing the Singleton " "design pattern, for the same reason." msgstr "" -#: ../Doc/faq/programming.rst:288 +#: ../Doc/faq/programming.rst:291 msgid "What are the \"best practices\" for using import in a module?" msgstr "" -#: ../Doc/faq/programming.rst:290 +#: ../Doc/faq/programming.rst:293 msgid "" "In general, don't use ``from modulename import *``. Doing so clutters the " "importer's namespace, and makes it much harder for linters to detect " "undefined names." msgstr "" -#: ../Doc/faq/programming.rst:294 +#: ../Doc/faq/programming.rst:297 msgid "" "Import modules at the top of a file. Doing so makes it clear what other " "modules your code requires and avoids questions of whether the module name " @@ -372,31 +378,31 @@ msgid "" "module imports, but using multiple imports per line uses less screen space." msgstr "" -#: ../Doc/faq/programming.rst:299 +#: ../Doc/faq/programming.rst:302 msgid "It's good practice if you import modules in the following order:" msgstr "" -#: ../Doc/faq/programming.rst:301 +#: ../Doc/faq/programming.rst:304 msgid "standard library modules -- e.g. ``sys``, ``os``, ``getopt``, ``re``" msgstr "" -#: ../Doc/faq/programming.rst:302 +#: ../Doc/faq/programming.rst:305 msgid "" "third-party library modules (anything installed in Python's site-packages " "directory) -- e.g. mx.DateTime, ZODB, PIL.Image, etc." msgstr "" -#: ../Doc/faq/programming.rst:304 +#: ../Doc/faq/programming.rst:307 msgid "locally-developed modules" msgstr "" -#: ../Doc/faq/programming.rst:306 +#: ../Doc/faq/programming.rst:309 msgid "" "It is sometimes necessary to move imports to a function or class to avoid " "problems with circular imports. Gordon McMillan says:" msgstr "" -#: ../Doc/faq/programming.rst:309 +#: ../Doc/faq/programming.rst:312 msgid "" "Circular imports are fine where both modules use the \"import \" " "form of import. They fail when the 2nd module wants to grab a name out of " @@ -405,7 +411,7 @@ msgid "" "module is busy importing the 2nd." msgstr "" -#: ../Doc/faq/programming.rst:315 +#: ../Doc/faq/programming.rst:318 msgid "" "In this case, if the second module is only used in one function, then the " "import can easily be moved into that function. By the time the import is " @@ -413,7 +419,7 @@ msgid "" "module can do its import." msgstr "" -#: ../Doc/faq/programming.rst:320 +#: ../Doc/faq/programming.rst:323 msgid "" "It may also be necessary to move imports out of the top level of code if " "some of the modules are platform-specific. In that case, it may not even be " @@ -422,7 +428,7 @@ msgid "" "a good option." msgstr "" -#: ../Doc/faq/programming.rst:325 +#: ../Doc/faq/programming.rst:328 msgid "" "Only move imports into a local scope, such as inside a function definition, " "if it's necessary to solve a problem such as avoiding a circular import or " @@ -436,24 +442,24 @@ msgid "" "of scope, the module is probably available in :data:`sys.modules`." msgstr "" -#: ../Doc/faq/programming.rst:338 +#: ../Doc/faq/programming.rst:341 msgid "Why are default values shared between objects?" msgstr "" -#: ../Doc/faq/programming.rst:340 +#: ../Doc/faq/programming.rst:343 msgid "" "This type of bug commonly bites neophyte programmers. Consider this " "function::" msgstr "" -#: ../Doc/faq/programming.rst:347 +#: ../Doc/faq/programming.rst:350 msgid "" "The first time you call this function, ``mydict`` contains a single item. " "The second time, ``mydict`` contains two items because when ``foo()`` begins " "executing, ``mydict`` starts out with an item already in it." msgstr "" -#: ../Doc/faq/programming.rst:351 +#: ../Doc/faq/programming.rst:354 msgid "" "It is often expected that a function call creates new objects for default " "values. This is not what happens. Default values are created exactly once, " @@ -462,14 +468,14 @@ msgid "" "this changed object." msgstr "" -#: ../Doc/faq/programming.rst:356 +#: ../Doc/faq/programming.rst:359 msgid "" "By definition, immutable objects such as numbers, strings, tuples, and " "``None``, are safe from change. Changes to mutable objects such as " "dictionaries, lists, and class instances can lead to confusion." msgstr "" -#: ../Doc/faq/programming.rst:360 +#: ../Doc/faq/programming.rst:363 msgid "" "Because of this feature, it is good programming practice to not use mutable " "objects as default values. Instead, use ``None`` as the default value and " @@ -477,11 +483,11 @@ msgid "" "list/dictionary/whatever if it is. For example, don't write::" msgstr "" -#: ../Doc/faq/programming.rst:368 +#: ../Doc/faq/programming.rst:371 msgid "but::" msgstr "" -#: ../Doc/faq/programming.rst:374 +#: ../Doc/faq/programming.rst:377 msgid "" "This feature can be useful. When you have a function that's time-consuming " "to compute, a common technique is to cache the parameters and the resulting " @@ -490,18 +496,18 @@ msgid "" "implemented like this::" msgstr "" -#: ../Doc/faq/programming.rst:389 +#: ../Doc/faq/programming.rst:392 msgid "" "You could use a global variable containing a dictionary instead of the " "default value; it's a matter of taste." msgstr "" -#: ../Doc/faq/programming.rst:394 +#: ../Doc/faq/programming.rst:397 msgid "" "How can I pass optional or keyword parameters from one function to another?" msgstr "" -#: ../Doc/faq/programming.rst:396 +#: ../Doc/faq/programming.rst:399 msgid "" "Collect the arguments using the ``*`` and ``**`` specifiers in the " "function's parameter list; this gives you the positional arguments as a " @@ -509,11 +515,11 @@ msgid "" "arguments when calling another function by using ``*`` and ``**``::" msgstr "" -#: ../Doc/faq/programming.rst:415 +#: ../Doc/faq/programming.rst:418 msgid "What is the difference between arguments and parameters?" msgstr "" -#: ../Doc/faq/programming.rst:417 +#: ../Doc/faq/programming.rst:420 msgid "" ":term:`Parameters ` are defined by the names that appear in a " "function definition, whereas :term:`arguments ` are the values " @@ -522,34 +528,34 @@ msgid "" "definition::" msgstr "" -#: ../Doc/faq/programming.rst:425 +#: ../Doc/faq/programming.rst:428 msgid "" "*foo*, *bar* and *kwargs* are parameters of ``func``. However, when calling " "``func``, for example::" msgstr "" -#: ../Doc/faq/programming.rst:430 +#: ../Doc/faq/programming.rst:433 msgid "the values ``42``, ``314``, and ``somevar`` are arguments." msgstr "" -#: ../Doc/faq/programming.rst:434 +#: ../Doc/faq/programming.rst:437 msgid "Why did changing list 'y' also change list 'x'?" msgstr "" -#: ../Doc/faq/programming.rst:436 +#: ../Doc/faq/programming.rst:439 msgid "If you wrote code like::" msgstr "Si vous avez écrit du code comme : ::" -#: ../Doc/faq/programming.rst:446 +#: ../Doc/faq/programming.rst:449 msgid "" "you might be wondering why appending an element to ``y`` changed ``x`` too." msgstr "" -#: ../Doc/faq/programming.rst:448 +#: ../Doc/faq/programming.rst:451 msgid "There are two factors that produce this result:" msgstr "" -#: ../Doc/faq/programming.rst:450 +#: ../Doc/faq/programming.rst:453 msgid "" "Variables are simply names that refer to objects. Doing ``y = x`` doesn't " "create a copy of the list -- it creates a new variable ``y`` that refers to " @@ -557,23 +563,23 @@ msgid "" "(the list), and both ``x`` and ``y`` refer to it." msgstr "" -#: ../Doc/faq/programming.rst:454 +#: ../Doc/faq/programming.rst:457 msgid "" "Lists are :term:`mutable`, which means that you can change their content." msgstr "" -#: ../Doc/faq/programming.rst:456 +#: ../Doc/faq/programming.rst:459 msgid "" "After the call to :meth:`~list.append`, the content of the mutable object " "has changed from ``[]`` to ``[10]``. Since both the variables refer to the " "same object, using either name accesses the modified value ``[10]``." msgstr "" -#: ../Doc/faq/programming.rst:460 +#: ../Doc/faq/programming.rst:463 msgid "If we instead assign an immutable object to ``x``::" msgstr "" -#: ../Doc/faq/programming.rst:470 +#: ../Doc/faq/programming.rst:473 msgid "" "we can see that in this case ``x`` and ``y`` are not equal anymore. This is " "because integers are :term:`immutable`, and when we do ``x = x + 1`` we are " @@ -584,7 +590,7 @@ msgid "" "(``x`` now refers to ``6`` but ``y`` still refers to ``5``)." msgstr "" -#: ../Doc/faq/programming.rst:478 +#: ../Doc/faq/programming.rst:481 msgid "" "Some operations (for example ``y.append(10)`` and ``y.sort()``) mutate the " "object, whereas superficially similar operations (for example ``y = y + " @@ -596,7 +602,7 @@ msgid "" "your program to generate an easily diagnosed error." msgstr "" -#: ../Doc/faq/programming.rst:487 +#: ../Doc/faq/programming.rst:490 msgid "" "However, there is one class of operations where the same operation sometimes " "has different behaviors with different types: the augmented assignment " @@ -606,18 +612,18 @@ msgid "" "1`` create new objects)." msgstr "" -#: ../Doc/faq/programming.rst:494 +#: ../Doc/faq/programming.rst:497 msgid "In other words:" msgstr "" -#: ../Doc/faq/programming.rst:496 +#: ../Doc/faq/programming.rst:499 msgid "" "If we have a mutable object (:class:`list`, :class:`dict`, :class:`set`, " "etc.), we can use some specific operations to mutate it and all the " "variables that refer to it will see the change." msgstr "" -#: ../Doc/faq/programming.rst:499 +#: ../Doc/faq/programming.rst:502 msgid "" "If we have an immutable object (:class:`str`, :class:`int`, :class:`tuple`, " "etc.), all the variables that refer to it will always see the same value, " @@ -625,17 +631,17 @@ msgid "" "new object." msgstr "" -#: ../Doc/faq/programming.rst:504 +#: ../Doc/faq/programming.rst:507 msgid "" "If you want to know if two variables refer to the same object or not, you " "can use the :keyword:`is` operator, or the built-in function :func:`id`." msgstr "" -#: ../Doc/faq/programming.rst:509 +#: ../Doc/faq/programming.rst:512 msgid "How do I write a function with output parameters (call by reference)?" msgstr "" -#: ../Doc/faq/programming.rst:511 +#: ../Doc/faq/programming.rst:514 msgid "" "Remember that arguments are passed by assignment in Python. Since " "assignment just creates references to objects, there's no alias between an " @@ -643,50 +649,50 @@ msgid "" "You can achieve the desired effect in a number of ways." msgstr "" -#: ../Doc/faq/programming.rst:516 +#: ../Doc/faq/programming.rst:519 msgid "By returning a tuple of the results::" msgstr "" -#: ../Doc/faq/programming.rst:527 +#: ../Doc/faq/programming.rst:530 msgid "This is almost always the clearest solution." msgstr "" -#: ../Doc/faq/programming.rst:529 +#: ../Doc/faq/programming.rst:532 msgid "" "By using global variables. This isn't thread-safe, and is not recommended." msgstr "" "En utilisant des variables globales. Ce qui n'est pas *thread-safe*, et " "n'est donc pas recommandé." -#: ../Doc/faq/programming.rst:531 +#: ../Doc/faq/programming.rst:534 msgid "By passing a mutable (changeable in-place) object::" msgstr "En passant un objet muable (modifiable sur place) ::" -#: ../Doc/faq/programming.rst:541 +#: ../Doc/faq/programming.rst:544 msgid "By passing in a dictionary that gets mutated::" msgstr "En passant un dictionnaire, qui sera modifié : ::" -#: ../Doc/faq/programming.rst:551 +#: ../Doc/faq/programming.rst:554 msgid "Or bundle up values in a class instance::" msgstr "Ou regrouper les valeurs dans une instance de classe ::" -#: ../Doc/faq/programming.rst:567 +#: ../Doc/faq/programming.rst:570 msgid "There's almost never a good reason to get this complicated." msgstr "" "Il n'y a pratiquement jamais de bonne raison de faire quelque chose d'aussi " "compliqué." -#: ../Doc/faq/programming.rst:569 +#: ../Doc/faq/programming.rst:572 msgid "Your best choice is to return a tuple containing the multiple results." msgstr "" "Votre meilleure option est de renvoyer un *tuple* contenant les multiples " "résultats." -#: ../Doc/faq/programming.rst:573 +#: ../Doc/faq/programming.rst:576 msgid "How do you make a higher order function in Python?" msgstr "Comment construire une fonction d'ordre supérieur en Python ?" -#: ../Doc/faq/programming.rst:575 +#: ../Doc/faq/programming.rst:578 msgid "" "You have two choices: you can use nested scopes or you can use callable " "objects. For example, suppose you wanted to define ``linear(a,b)`` which " @@ -698,19 +704,19 @@ msgstr "" "vouliez définir ``linear(a, b)`` qui renvoie une fonction ``f(x)`` qui " "calcule la valeur ``a*x+b``. En utilisant les portées imbriquées : ::" -#: ../Doc/faq/programming.rst:584 +#: ../Doc/faq/programming.rst:587 msgid "Or using a callable object::" msgstr "Ou en utilisant un objet appelable : ::" -#: ../Doc/faq/programming.rst:594 +#: ../Doc/faq/programming.rst:597 msgid "In both cases, ::" msgstr "dans les deux cas, ::" -#: ../Doc/faq/programming.rst:598 +#: ../Doc/faq/programming.rst:601 msgid "gives a callable object where ``taxes(10e6) == 0.3 * 10e6 + 2``." msgstr "donne un objet appelable où ``taxes(10e6) == 0.3 * 10e6 + 2``." -#: ../Doc/faq/programming.rst:600 +#: ../Doc/faq/programming.rst:603 msgid "" "The callable object approach has the disadvantage that it is a bit slower " "and results in slightly longer code. However, note that a collection of " @@ -721,11 +727,11 @@ msgstr "" "collection d'objet appelables peuvent partager leur signatures par " "héritage : ::" -#: ../Doc/faq/programming.rst:609 +#: ../Doc/faq/programming.rst:612 msgid "Object can encapsulate state for several methods::" msgstr "Les objets peuvent encapsuler un état pour plusieurs méthodes ::" -#: ../Doc/faq/programming.rst:627 +#: ../Doc/faq/programming.rst:630 msgid "" "Here ``inc()``, ``dec()`` and ``reset()`` act like functions which share the " "same counting variable." @@ -733,11 +739,11 @@ msgstr "" "Ici ``inc()``, ``dec()`` et ``reset()`` agissent comme des fonctions " "partageant une même variable compteur." -#: ../Doc/faq/programming.rst:632 +#: ../Doc/faq/programming.rst:635 msgid "How do I copy an object in Python?" msgstr "Comment copier un objet en Python?" -#: ../Doc/faq/programming.rst:634 +#: ../Doc/faq/programming.rst:637 msgid "" "In general, try :func:`copy.copy` or :func:`copy.deepcopy` for the general " "case. Not all objects can be copied, but most can." @@ -746,7 +752,7 @@ msgstr "" "général. Tout les objets ne peuvent pas être copiés, mais la plupart le " "peuvent." -#: ../Doc/faq/programming.rst:637 +#: ../Doc/faq/programming.rst:640 msgid "" "Some objects can be copied more easily. Dictionaries have a :meth:`~dict." "copy` method::" @@ -754,15 +760,15 @@ msgstr "" "Certains objets peuvent être copiés plus facilement. Les Dictionnaires ont " "une méthode :meth:`~dict.copy` ::" -#: ../Doc/faq/programming.rst:642 +#: ../Doc/faq/programming.rst:645 msgid "Sequences can be copied by slicing::" msgstr "Les séquences peuvent être copiées via la syntaxe des tranches ::" -#: ../Doc/faq/programming.rst:648 +#: ../Doc/faq/programming.rst:651 msgid "How can I find the methods or attributes of an object?" msgstr "Comment puis-je trouver les méthodes ou les attribues d'un objet?" -#: ../Doc/faq/programming.rst:650 +#: ../Doc/faq/programming.rst:653 msgid "" "For an instance x of a user-defined class, ``dir(x)`` returns an " "alphabetized list of the names containing the instance attributes and " @@ -772,11 +778,11 @@ msgstr "" "renvoie une liste alphabétique des noms contenants les attributs de " "l'instance, et les attributs et méthodes définies par sa classe." -#: ../Doc/faq/programming.rst:656 +#: ../Doc/faq/programming.rst:659 msgid "How can my code discover the name of an object?" msgstr "Comment mon code peut il découvrir le nom d'un objet?" -#: ../Doc/faq/programming.rst:658 +#: ../Doc/faq/programming.rst:661 msgid "" "Generally speaking, it can't, because objects don't really have names. " "Essentially, assignment always binds a name to a value; The same is true of " @@ -789,7 +795,7 @@ msgstr "" "différence que dans ce cas la valeur est appelable. Par exemple, dans le " "code suivant : ::" -#: ../Doc/faq/programming.rst:674 +#: ../Doc/faq/programming.rst:677 msgid "" "Arguably the class has a name: even though it is bound to two names and " "invoked through the name B the created instance is still reported as an " @@ -802,7 +808,7 @@ msgstr "" "dire si le nom de l'instance est a ou b, les deux noms sont attachés à la " "même valeur." -#: ../Doc/faq/programming.rst:679 +#: ../Doc/faq/programming.rst:682 msgid "" "Generally speaking it should not be necessary for your code to \"know the " "names\" of particular values. Unless you are deliberately writing " @@ -814,7 +820,7 @@ msgstr "" "délibérément en train d'écrire un programme introspectif, c'est souvent une " "indication qu'un changement d'approche pourrait être bénéfique." -#: ../Doc/faq/programming.rst:684 +#: ../Doc/faq/programming.rst:687 msgid "" "In comp.lang.python, Fredrik Lundh once gave an excellent analogy in answer " "to this question:" @@ -822,7 +828,7 @@ msgstr "" "Sur *comp.lang.python*, Fredrik Lundh a donné un jour une excellente " "analogie pour répondre à cette question:" -#: ../Doc/faq/programming.rst:687 +#: ../Doc/faq/programming.rst:690 msgid "" "The same way as you get the name of that cat you found on your porch: the " "cat (object) itself cannot tell you its name, and it doesn't really care -- " @@ -834,7 +840,7 @@ msgstr "" "-- alors le meilleur moyen de savoir comment il s'appelle est de demander à " "tous vos voisins (espaces de nommage) si c'est leur chat (objet)…." -#: ../Doc/faq/programming.rst:692 +#: ../Doc/faq/programming.rst:695 msgid "" "....and don't be surprised if you'll find that it's known by many names, or " "no name at all!" @@ -842,16 +848,16 @@ msgstr "" "…et ne soyez pas surpris si vous découvrez qu'il est connus sous plusieurs " "noms différents, ou pas de nom du tout!" -#: ../Doc/faq/programming.rst:697 +#: ../Doc/faq/programming.rst:700 msgid "What's up with the comma operator's precedence?" msgstr "Qu'en est-il de la précédence de l'opérateur virgule ?" -#: ../Doc/faq/programming.rst:699 +#: ../Doc/faq/programming.rst:702 msgid "Comma is not an operator in Python. Consider this session::" msgstr "" "La virgule n'est pas un opérateur en Python. Observez la session suivante ::" -#: ../Doc/faq/programming.rst:704 +#: ../Doc/faq/programming.rst:707 msgid "" "Since the comma is not an operator, but a separator between expressions the " "above is evaluated as if you had entered::" @@ -860,11 +866,11 @@ msgstr "" "expression, l'expression ci dessus, est évaluée de la même façon que si vous " "aviez écrit ::" -#: ../Doc/faq/programming.rst:709 +#: ../Doc/faq/programming.rst:712 msgid "not::" msgstr "et non ::" -#: ../Doc/faq/programming.rst:713 +#: ../Doc/faq/programming.rst:716 msgid "" "The same is true of the various assignment operators (``=``, ``+=`` etc). " "They are not truly operators but syntactic delimiters in assignment " @@ -874,34 +880,34 @@ msgstr "" "Ce ne sont pas vraiment des opérateurs mais des délimiteurs syntaxiques dans " "les instructions d'assignation." -#: ../Doc/faq/programming.rst:718 +#: ../Doc/faq/programming.rst:721 msgid "Is there an equivalent of C's \"?:\" ternary operator?" msgstr "Existe-t-il un équivalent à l'opérateur ternaire \"?:\" du C ?" -#: ../Doc/faq/programming.rst:720 +#: ../Doc/faq/programming.rst:723 msgid "Yes, there is. The syntax is as follows::" msgstr "Oui, il y en a un. Sa syntaxe est la suivante : ::" -#: ../Doc/faq/programming.rst:727 +#: ../Doc/faq/programming.rst:730 msgid "" "Before this syntax was introduced in Python 2.5, a common idiom was to use " "logical operators::" msgstr "" -#: ../Doc/faq/programming.rst:732 +#: ../Doc/faq/programming.rst:735 msgid "" "However, this idiom is unsafe, as it can give wrong results when *on_true* " "has a false boolean value. Therefore, it is always better to use the ``... " "if ... else ...`` form." msgstr "" -#: ../Doc/faq/programming.rst:738 +#: ../Doc/faq/programming.rst:741 msgid "Is it possible to write obfuscated one-liners in Python?" msgstr "" "Est-il possible d'écrire des programmes obscurcis (*obfuscated*) d'une ligne " "en Python ?" -#: ../Doc/faq/programming.rst:740 +#: ../Doc/faq/programming.rst:743 #, fuzzy msgid "" "Yes. Usually this is done by nesting :keyword:`lambda` within :keyword:`!" @@ -910,15 +916,15 @@ msgstr "" "Oui. Cela est généralement réalisé en imbriquant les :keyword:`lambda` dans " "des :keyword:`lambda`. Observez les trois exemples suivants de Ulf Bartelt ::" -#: ../Doc/faq/programming.rst:767 +#: ../Doc/faq/programming.rst:770 msgid "Don't try this at home, kids!" msgstr "Les enfants, ne faîtes pas ça chez vous !" -#: ../Doc/faq/programming.rst:773 +#: ../Doc/faq/programming.rst:776 msgid "What does the slash(/) in the parameter list of a function mean?" msgstr "" -#: ../Doc/faq/programming.rst:775 +#: ../Doc/faq/programming.rst:778 msgid "" "A slash in the argument list of a function denotes that the parameters prior " "to it are positional-only. Positional-only parameters are the ones without " @@ -928,29 +934,29 @@ msgid "" "only parameters. Its documentation looks like this::" msgstr "" -#: ../Doc/faq/programming.rst:791 +#: ../Doc/faq/programming.rst:794 msgid "" "The slash at the end of the parameter list means that all three parameters " "are positional-only. Thus, calling :func:`pow` with keyword aguments would " "lead to an error::" msgstr "" -#: ../Doc/faq/programming.rst:800 +#: ../Doc/faq/programming.rst:803 msgid "" "Note that as of this writing this is only documentational and no valid " "syntax in Python, although there is :pep:`570`, which proposes a syntax for " "position-only parameters in Python." msgstr "" -#: ../Doc/faq/programming.rst:806 +#: ../Doc/faq/programming.rst:809 msgid "Numbers and strings" msgstr "Nombres et chaînes de caractères" -#: ../Doc/faq/programming.rst:809 +#: ../Doc/faq/programming.rst:812 msgid "How do I specify hexadecimal and octal integers?" msgstr "Comment puis-je écrire des entiers hexadécimaux ou octaux ?" -#: ../Doc/faq/programming.rst:811 +#: ../Doc/faq/programming.rst:814 msgid "" "To specify an octal digit, precede the octal value with a zero, and then a " "lower or uppercase \"o\". For example, to set the variable \"a\" to the " @@ -960,7 +966,7 @@ msgstr "" "puis un \"o\" majuscule ou minuscule. Par exemple assigner la valeur octale " "\"10\" (8 en décimal) à la variable \"a\", tapez ::" -#: ../Doc/faq/programming.rst:819 +#: ../Doc/faq/programming.rst:822 msgid "" "Hexadecimal is just as easy. Simply precede the hexadecimal number with a " "zero, and then a lower or uppercase \"x\". Hexadecimal digits can be " @@ -971,11 +977,11 @@ msgstr "" "peuvent être écrit en majuscules ou en minuscules. Par exemple, dans " "l'interpréteur Python ::" -#: ../Doc/faq/programming.rst:832 +#: ../Doc/faq/programming.rst:835 msgid "Why does -22 // 10 return -3?" msgstr "Pourquoi ``-22 // 10`` donne-t-il ``-3`` ?" -#: ../Doc/faq/programming.rst:834 +#: ../Doc/faq/programming.rst:837 msgid "" "It's primarily driven by the desire that ``i % j`` have the same sign as " "``j``. If you want that, and also want::" @@ -983,7 +989,7 @@ msgstr "" "Cela est principalement due à la volonté que ``i % j`` ait le même signe que " "j. Si vous voulez cela, vous voulez aussi : ::" -#: ../Doc/faq/programming.rst:839 +#: ../Doc/faq/programming.rst:842 msgid "" "then integer division has to return the floor. C also requires that " "identity to hold, and then compilers that truncate ``i // j`` need to make " @@ -993,7 +999,7 @@ msgstr "" "aussi à ce que cette égalité soit vérifiée, et donc les compilateur qui " "tronquent ``i // j`` ont besoin que ``i % j`` ait le même signe que ``i``." -#: ../Doc/faq/programming.rst:843 +#: ../Doc/faq/programming.rst:846 msgid "" "There are few real use cases for ``i % j`` when ``j`` is negative. When " "``j`` is positive, there are many, and in virtually all of them it's more " @@ -1007,11 +1013,11 @@ msgstr "" "maintenant, que disait-elle il y a 200 heures? ``-190%12 == 2`` est utile; " "``-192 % 12 == -10`` est un bug qui attends pour mordre." -#: ../Doc/faq/programming.rst:851 +#: ../Doc/faq/programming.rst:854 msgid "How do I convert a string to a number?" msgstr "Comment puis-je convertir une chaine de caractère en nombre?" -#: ../Doc/faq/programming.rst:853 +#: ../Doc/faq/programming.rst:856 msgid "" "For integers, use the built-in :func:`int` type constructor, e.g. " "``int('144') == 144``. Similarly, :func:`float` converts to floating-point, " @@ -1021,7 +1027,7 @@ msgstr "" "constructeur, par exemple ``int('144') == 144``. De façon similaire, :func:" "`float` convertit en valeur flottante, par exemple ``float('144') == 144.0``." -#: ../Doc/faq/programming.rst:857 +#: ../Doc/faq/programming.rst:860 msgid "" "By default, these interpret the number as decimal, so that ``int('0144') == " "144`` and ``int('0x144')`` raises :exc:`ValueError`. ``int(string, base)`` " @@ -1038,7 +1044,7 @@ msgstr "" "Python: un préfixe ``0o`` indique de l'octal, et ``0x`` indique de " "l'hexadécimal." -#: ../Doc/faq/programming.rst:863 +#: ../Doc/faq/programming.rst:866 msgid "" "Do not use the built-in function :func:`eval` if all you need is to convert " "strings to numbers. :func:`eval` will be significantly slower and it " @@ -1055,7 +1061,7 @@ msgstr "" "system(\"rm -rf $HOME\")`` ce qui aurait pour effet d'effacer votre " "répertoire d’accueil." -#: ../Doc/faq/programming.rst:870 +#: ../Doc/faq/programming.rst:873 msgid "" ":func:`eval` also has the effect of interpreting numbers as Python " "expressions, so that e.g. ``eval('09')`` gives a syntax error because Python " @@ -1066,11 +1072,11 @@ msgstr "" "que Python ne permet pas les '0' en tête d'un nombre décimal (à l'exception " "du nombre '0')." -#: ../Doc/faq/programming.rst:876 +#: ../Doc/faq/programming.rst:879 msgid "How do I convert a number to a string?" msgstr "Comment convertir un nombre en chaine de caractère?" -#: ../Doc/faq/programming.rst:878 +#: ../Doc/faq/programming.rst:881 msgid "" "To convert, e.g., the number 144 to the string '144', use the built-in type " "constructor :func:`str`. If you want a hexadecimal or octal representation, " @@ -1080,11 +1086,11 @@ msgid "" "format(1.0/3.0)`` yields ``'0.333'``." msgstr "" -#: ../Doc/faq/programming.rst:887 +#: ../Doc/faq/programming.rst:890 msgid "How do I modify a string in place?" msgstr "Comment modifier une chaine de caractère \"en place\"?" -#: ../Doc/faq/programming.rst:889 +#: ../Doc/faq/programming.rst:892 msgid "" "You can't, because strings are immutable. In most situations, you should " "simply construct a new string from the various parts you want to assemble it " @@ -1093,17 +1099,17 @@ msgid "" "module::" msgstr "" -#: ../Doc/faq/programming.rst:919 +#: ../Doc/faq/programming.rst:922 msgid "How do I use strings to call functions/methods?" msgstr "" "Comment utiliser des chaines de caractères pour appeler des fonctions/" "méthodes?" -#: ../Doc/faq/programming.rst:921 +#: ../Doc/faq/programming.rst:924 msgid "There are various techniques." msgstr "Il y a différentes techniques." -#: ../Doc/faq/programming.rst:923 +#: ../Doc/faq/programming.rst:926 msgid "" "The best is to use a dictionary that maps strings to functions. The primary " "advantage of this technique is that the strings do not need to match the " @@ -1116,11 +1122,11 @@ msgstr "" "fonctions. C'est aussi la principale façon d'imiter la construction \"case" "\" ::" -#: ../Doc/faq/programming.rst:938 +#: ../Doc/faq/programming.rst:941 msgid "Use the built-in function :func:`getattr`::" msgstr "Utiliser la fonction :func:`getattr` ::" -#: ../Doc/faq/programming.rst:943 +#: ../Doc/faq/programming.rst:946 msgid "" "Note that :func:`getattr` works on any object, including classes, class " "instances, modules, and so on." @@ -1128,18 +1134,18 @@ msgstr "" "Notez que :func:`getattr` marche sur n'importe quel objet, ceci inclut les " "classes, les instances de classes, les modules et ainsi de suite." -#: ../Doc/faq/programming.rst:946 +#: ../Doc/faq/programming.rst:949 msgid "This is used in several places in the standard library, like this::" msgstr "" "Ceci est utilisé dans plusieurs endroit de la bibliothèque standard, de " "cette façon ::" -#: ../Doc/faq/programming.rst:959 +#: ../Doc/faq/programming.rst:962 msgid "Use :func:`locals` or :func:`eval` to resolve the function name::" msgstr "" "Utilisez :func:`locals` ou :func:`eval` pour résoudre le nom de fonction ::" -#: ../Doc/faq/programming.rst:972 +#: ../Doc/faq/programming.rst:975 msgid "" "Note: Using :func:`eval` is slow and dangerous. If you don't have absolute " "control over the contents of the string, someone could pass a string that " @@ -1150,7 +1156,7 @@ msgstr "" "passer une chaine de caractère pouvant résulter en l'exécution de code " "arbitraire." -#: ../Doc/faq/programming.rst:977 +#: ../Doc/faq/programming.rst:980 msgid "" "Is there an equivalent to Perl's chomp() for removing trailing newlines from " "strings?" @@ -1158,7 +1164,7 @@ msgstr "" "Existe-t-il un équivalent à la fonction ``chomp()`` de Perl, pour retirer " "les caractères de fin de ligne d'une chaine de caractère ?" -#: ../Doc/faq/programming.rst:979 +#: ../Doc/faq/programming.rst:982 msgid "" "You can use ``S.rstrip(\"\\r\\n\")`` to remove all occurrences of any line " "terminator from the end of the string ``S`` without removing other trailing " @@ -1172,7 +1178,7 @@ msgstr "" "ligne, avec plusieurs lignes vides, les marqueurs de fin de de lignes de " "chaque lignes vides seront retirés : ::" -#: ../Doc/faq/programming.rst:991 +#: ../Doc/faq/programming.rst:994 msgid "" "Since this is typically only desired when reading text one line at a time, " "using ``S.rstrip()`` this way works well." @@ -1180,15 +1186,15 @@ msgstr "" "Du fait que ce soit principalement utile en lisant un texte ligne à ligne, " "utiliser ``S.rstrip()`` devrait marcher correctement." -#: ../Doc/faq/programming.rst:996 +#: ../Doc/faq/programming.rst:999 msgid "Is there a scanf() or sscanf() equivalent?" msgstr "Existe-t-il un équivalent à ``scanf()`` ou ``sscanf()`` ?" -#: ../Doc/faq/programming.rst:998 +#: ../Doc/faq/programming.rst:1001 msgid "Not as such." msgstr "Pas exactement." -#: ../Doc/faq/programming.rst:1000 +#: ../Doc/faq/programming.rst:1003 msgid "" "For simple input parsing, the easiest approach is usually to split the line " "into whitespace-delimited words using the :meth:`~str.split` method of " @@ -1205,7 +1211,7 @@ msgstr "" "paramètre optionnel \"sep\" qui est utile si la ligne utilise autre chose " "que des espaces comme séparateur." -#: ../Doc/faq/programming.rst:1006 +#: ../Doc/faq/programming.rst:1009 msgid "" "For more complicated input parsing, regular expressions are more powerful " "than C's :c:func:`sscanf` and better suited for the task." @@ -1214,81 +1220,81 @@ msgstr "" "puissantes que la fonction :c:func:`sscanf` de C et mieux adaptées à la " "tâche." -#: ../Doc/faq/programming.rst:1011 +#: ../Doc/faq/programming.rst:1014 msgid "What does 'UnicodeDecodeError' or 'UnicodeEncodeError' error mean?" msgstr "" "Que signifient les erreurs ``UnicodeDecodeError`` ou ``UnicodeEncodeError`` ?" -#: ../Doc/faq/programming.rst:1013 +#: ../Doc/faq/programming.rst:1016 msgid "See the :ref:`unicode-howto`." msgstr "Regardez :ref:`unicode-howto`." -#: ../Doc/faq/programming.rst:1017 +#: ../Doc/faq/programming.rst:1020 msgid "Performance" msgstr "" -#: ../Doc/faq/programming.rst:1020 +#: ../Doc/faq/programming.rst:1023 msgid "My program is too slow. How do I speed it up?" msgstr "" -#: ../Doc/faq/programming.rst:1022 +#: ../Doc/faq/programming.rst:1025 msgid "" "That's a tough one, in general. First, here are a list of things to " "remember before diving further:" msgstr "" -#: ../Doc/faq/programming.rst:1025 +#: ../Doc/faq/programming.rst:1028 msgid "" "Performance characteristics vary across Python implementations. This FAQ " "focusses on :term:`CPython`." msgstr "" -#: ../Doc/faq/programming.rst:1027 +#: ../Doc/faq/programming.rst:1030 msgid "" "Behaviour can vary across operating systems, especially when talking about I/" "O or multi-threading." msgstr "" -#: ../Doc/faq/programming.rst:1029 +#: ../Doc/faq/programming.rst:1032 msgid "" "You should always find the hot spots in your program *before* attempting to " "optimize any code (see the :mod:`profile` module)." msgstr "" -#: ../Doc/faq/programming.rst:1031 +#: ../Doc/faq/programming.rst:1034 msgid "" "Writing benchmark scripts will allow you to iterate quickly when searching " "for improvements (see the :mod:`timeit` module)." msgstr "" -#: ../Doc/faq/programming.rst:1033 +#: ../Doc/faq/programming.rst:1036 msgid "" "It is highly recommended to have good code coverage (through unit testing or " "any other technique) before potentially introducing regressions hidden in " "sophisticated optimizations." msgstr "" -#: ../Doc/faq/programming.rst:1037 +#: ../Doc/faq/programming.rst:1040 msgid "" "That being said, there are many tricks to speed up Python code. Here are " "some general principles which go a long way towards reaching acceptable " "performance levels:" msgstr "" -#: ../Doc/faq/programming.rst:1041 +#: ../Doc/faq/programming.rst:1044 msgid "" "Making your algorithms faster (or changing to faster ones) can yield much " "larger benefits than trying to sprinkle micro-optimization tricks all over " "your code." msgstr "" -#: ../Doc/faq/programming.rst:1045 +#: ../Doc/faq/programming.rst:1048 msgid "" "Use the right data structures. Study documentation for the :ref:`bltin-" "types` and the :mod:`collections` module." msgstr "" -#: ../Doc/faq/programming.rst:1048 +#: ../Doc/faq/programming.rst:1051 msgid "" "When the standard library provides a primitive for doing something, it is " "likely (although not guaranteed) to be faster than any alternative you may " @@ -1299,7 +1305,7 @@ msgid "" "advanced usage)." msgstr "" -#: ../Doc/faq/programming.rst:1056 +#: ../Doc/faq/programming.rst:1059 msgid "" "Abstractions tend to create indirections and force the interpreter to work " "more. If the levels of indirection outweigh the amount of useful work done, " @@ -1308,7 +1314,7 @@ msgid "" "detrimental to readability)." msgstr "" -#: ../Doc/faq/programming.rst:1062 +#: ../Doc/faq/programming.rst:1065 msgid "" "If you have reached the limit of what pure Python can allow, there are tools " "to take you further away. For example, `Cython `_ can " @@ -1320,17 +1326,17 @@ msgid "" "yourself." msgstr "" -#: ../Doc/faq/programming.rst:1072 +#: ../Doc/faq/programming.rst:1075 msgid "" "The wiki page devoted to `performance tips `_." msgstr "" -#: ../Doc/faq/programming.rst:1078 +#: ../Doc/faq/programming.rst:1081 msgid "What is the most efficient way to concatenate many strings together?" msgstr "" -#: ../Doc/faq/programming.rst:1080 +#: ../Doc/faq/programming.rst:1083 msgid "" ":class:`str` and :class:`bytes` objects are immutable, therefore " "concatenating many strings together is inefficient as each concatenation " @@ -1338,32 +1344,32 @@ msgid "" "quadratic in the total string length." msgstr "" -#: ../Doc/faq/programming.rst:1085 +#: ../Doc/faq/programming.rst:1088 msgid "" "To accumulate many :class:`str` objects, the recommended idiom is to place " "them into a list and call :meth:`str.join` at the end::" msgstr "" -#: ../Doc/faq/programming.rst:1093 +#: ../Doc/faq/programming.rst:1096 msgid "(another reasonably efficient idiom is to use :class:`io.StringIO`)" msgstr "" -#: ../Doc/faq/programming.rst:1095 +#: ../Doc/faq/programming.rst:1098 msgid "" "To accumulate many :class:`bytes` objects, the recommended idiom is to " "extend a :class:`bytearray` object using in-place concatenation (the ``+=`` " "operator)::" msgstr "" -#: ../Doc/faq/programming.rst:1104 +#: ../Doc/faq/programming.rst:1107 msgid "Sequences (Tuples/Lists)" msgstr "Sequences (Tuples/Lists)" -#: ../Doc/faq/programming.rst:1107 +#: ../Doc/faq/programming.rst:1110 msgid "How do I convert between tuples and lists?" msgstr "Comment convertir les listes en tuples et inversement?" -#: ../Doc/faq/programming.rst:1109 +#: ../Doc/faq/programming.rst:1112 msgid "" "The type constructor ``tuple(seq)`` converts any sequence (actually, any " "iterable) into a tuple with the same items in the same order." @@ -1371,7 +1377,7 @@ msgstr "" "Le constructeur de type ``tuple(seq)`` convertit toute séquence (en fait " "tout itérable) en un tuple avec les mêmes éléments dans le même ordre…." -#: ../Doc/faq/programming.rst:1112 +#: ../Doc/faq/programming.rst:1115 msgid "" "For example, ``tuple([1, 2, 3])`` yields ``(1, 2, 3)`` and ``tuple('abc')`` " "yields ``('a', 'b', 'c')``. If the argument is a tuple, it does not make a " @@ -1384,7 +1390,7 @@ msgstr "" "économique à appeler quand vous ne savez pas si votre objet est déjà un " "tuple." -#: ../Doc/faq/programming.rst:1117 +#: ../Doc/faq/programming.rst:1120 msgid "" "The type constructor ``list(seq)`` converts any sequence or iterable into a " "list with the same items in the same order. For example, ``list((1, 2, " @@ -1397,11 +1403,11 @@ msgstr "" "``['a','b','c']``. Si l'argument est une liste, il renvoie une copie, de la " "même façon que ``seq[:]``." -#: ../Doc/faq/programming.rst:1124 +#: ../Doc/faq/programming.rst:1127 msgid "What's a negative index?" msgstr "Qu'est-ce qu'un indexe négatif?" -#: ../Doc/faq/programming.rst:1126 +#: ../Doc/faq/programming.rst:1129 msgid "" "Python sequences are indexed with positive numbers and negative numbers. " "For positive numbers 0 is the first index 1 is the second index and so " @@ -1415,7 +1421,7 @@ msgstr "" "index, ``-2`` est le pénultième (avant dernier), et ainsi de suite. On peut " "aussi dire que ``seq[-n]`` est équivalent à ``seq[len(seq)-n]``." -#: ../Doc/faq/programming.rst:1131 +#: ../Doc/faq/programming.rst:1134 msgid "" "Using negative indices can be very convenient. For example ``S[:-1]`` is " "all of the string except for its last character, which is useful for " @@ -1426,18 +1432,18 @@ msgstr "" "qui est pratique pour retirer un caractère de fin de ligne en fin d'une " "chaine." -#: ../Doc/faq/programming.rst:1137 +#: ../Doc/faq/programming.rst:1140 msgid "How do I iterate over a sequence in reverse order?" msgstr "Comment itérer à rebours sur une séquence?" -#: ../Doc/faq/programming.rst:1139 +#: ../Doc/faq/programming.rst:1142 msgid "" "Use the :func:`reversed` built-in function, which is new in Python 2.4::" msgstr "" "Utilisez la fonction embarquée :func:`reversed`, qui est apparue en Python " "2.4 ::" -#: ../Doc/faq/programming.rst:1144 +#: ../Doc/faq/programming.rst:1147 msgid "" "This won't touch your original sequence, but build a new copy with reversed " "order to iterate over." @@ -1445,25 +1451,25 @@ msgstr "" "Cela ne modifiera pas votre séquence initiale, mais construira à la place " "une copie en ordre inverse pour itérer dessus." -#: ../Doc/faq/programming.rst:1147 +#: ../Doc/faq/programming.rst:1150 msgid "With Python 2.3, you can use an extended slice syntax::" msgstr "Avec Python 2.3 vous pouvez utiliser la syntaxe étendue de tranches ::" -#: ../Doc/faq/programming.rst:1154 +#: ../Doc/faq/programming.rst:1157 msgid "How do you remove duplicates from a list?" msgstr "Comment retirer les doublons d'une liste?" -#: ../Doc/faq/programming.rst:1156 +#: ../Doc/faq/programming.rst:1159 msgid "See the Python Cookbook for a long discussion of many ways to do this:" msgstr "" "Lisez le Python Cookbook pour trouver une longue discussion sur les " "nombreuses façons de faire cela:" -#: ../Doc/faq/programming.rst:1158 +#: ../Doc/faq/programming.rst:1161 msgid "https://code.activestate.com/recipes/52560/" msgstr "" -#: ../Doc/faq/programming.rst:1160 +#: ../Doc/faq/programming.rst:1163 msgid "" "If you don't mind reordering the list, sort it and then scan from the end of " "the list, deleting duplicates as you go::" @@ -1472,7 +1478,7 @@ msgstr "" "celle ci, puis parcourez la d'un bout à l'autre, en supprimant les doublons " "trouvés en chemin ::" -#: ../Doc/faq/programming.rst:1172 +#: ../Doc/faq/programming.rst:1175 msgid "" "If all elements of the list may be used as set keys (i.e. they are all :term:" "`hashable`) this is often faster ::" @@ -1481,7 +1487,7 @@ msgstr "" "dictionnaire (c'est à dire, qu'elles sont toutes :term:`hachables " "`) ceci est souvent plus rapide : ::" -#: ../Doc/faq/programming.rst:1177 +#: ../Doc/faq/programming.rst:1180 msgid "" "This converts the list into a set, thereby removing duplicates, and then " "back into a list." @@ -1489,15 +1495,15 @@ msgstr "" "Ceci convertis la liste en un ensemble, ce qui supprime automatiquement les " "doublons, puis la transforme à nouveau en liste." -#: ../Doc/faq/programming.rst:1182 +#: ../Doc/faq/programming.rst:1185 msgid "How do you make an array in Python?" msgstr "Comment construire un tableau en Python?" -#: ../Doc/faq/programming.rst:1184 +#: ../Doc/faq/programming.rst:1187 msgid "Use a list::" msgstr "Utilisez une liste ::" -#: ../Doc/faq/programming.rst:1188 +#: ../Doc/faq/programming.rst:1191 msgid "" "Lists are equivalent to C or Pascal arrays in their time complexity; the " "primary difference is that a Python list can contain objects of many " @@ -1507,7 +1513,7 @@ msgstr "" "principale différence est qu'une liste Python peut contenir des objets de " "différents types." -#: ../Doc/faq/programming.rst:1191 +#: ../Doc/faq/programming.rst:1194 msgid "" "The ``array`` module also provides methods for creating arrays of fixed " "types with compact representations, but they are slower to index than " @@ -1520,14 +1526,14 @@ msgstr "" "fournissent différentes structures de types tableaux, avec des " "caractéristiques différentes." -#: ../Doc/faq/programming.rst:1196 +#: ../Doc/faq/programming.rst:1199 msgid "" "To get Lisp-style linked lists, you can emulate cons cells using tuples::" msgstr "" "Pour obtenir des listes chainées de type Lisp, vous pouvez émuler les *cons " "cells* en utilisant des tuples ::" -#: ../Doc/faq/programming.rst:1200 +#: ../Doc/faq/programming.rst:1203 msgid "" "If mutability is desired, you could use lists instead of tuples. Here the " "analogue of lisp car is ``lisp_list[0]`` and the analogue of cdr is " @@ -1540,26 +1546,26 @@ msgstr "" "que si vous êtes réellement sûr d'en avoir besoin, cette méthode est en " "générale bien plus lente que les listes Python." -#: ../Doc/faq/programming.rst:1209 +#: ../Doc/faq/programming.rst:1212 msgid "How do I create a multidimensional list?" msgstr "Comment puis-je créer une liste à plusieurs dimensions?" -#: ../Doc/faq/programming.rst:1211 +#: ../Doc/faq/programming.rst:1214 msgid "You probably tried to make a multidimensional array like this::" msgstr "" "Vous avez probablement essayé de créer une liste à plusieurs dimensions de " "cette façon ::" -#: ../Doc/faq/programming.rst:1215 +#: ../Doc/faq/programming.rst:1218 msgid "This looks correct if you print it:" msgstr "" -#: ../Doc/faq/programming.rst:1226 +#: ../Doc/faq/programming.rst:1229 msgid "But when you assign a value, it shows up in multiple places:" msgstr "" "Mais quand vous assignez une valeur, elle apparait en de multiples endroits::" -#: ../Doc/faq/programming.rst:1238 +#: ../Doc/faq/programming.rst:1241 msgid "" "The reason is that replicating a list with ``*`` doesn't create copies, it " "only creates references to the existing objects. The ``*3`` creates a list " @@ -1572,7 +1578,7 @@ msgstr "" "Un changement dans une colonne apparaîtra donc dans toutes les colonnes. Ce " "qui n'est de façon quasi certaine, pas ce que vous souhaitez." -#: ../Doc/faq/programming.rst:1243 +#: ../Doc/faq/programming.rst:1246 msgid "" "The suggested approach is to create a list of the desired length first and " "then fill in each element with a newly created list::" @@ -1580,7 +1586,7 @@ msgstr "" "L'approche suggérée est de créer une liste de la longueur désiré d'abords, " "puis de remplir tous les éléments avec une chaîne nouvellement créée ::" -#: ../Doc/faq/programming.rst:1250 +#: ../Doc/faq/programming.rst:1253 msgid "" "This generates a list containing 3 different lists of length two. You can " "also use a list comprehension::" @@ -1588,44 +1594,44 @@ msgstr "" "Cette liste générée contient trois listes différentes de longueur deux. Vous " "pouvez aussi utilisez la notation de compréhension de listes ::" -#: ../Doc/faq/programming.rst:1256 +#: ../Doc/faq/programming.rst:1259 msgid "" "Or, you can use an extension that provides a matrix datatype; `NumPy `_ is the best known." msgstr "" -#: ../Doc/faq/programming.rst:1261 +#: ../Doc/faq/programming.rst:1264 msgid "How do I apply a method to a sequence of objects?" msgstr "Comment appliquer une méthode à une séquence d'objets?" -#: ../Doc/faq/programming.rst:1263 +#: ../Doc/faq/programming.rst:1266 msgid "Use a list comprehension::" msgstr "Utilisez une compréhension de liste ::" -#: ../Doc/faq/programming.rst:1270 +#: ../Doc/faq/programming.rst:1273 msgid "" "Why does a_tuple[i] += ['item'] raise an exception when the addition works?" msgstr "" -#: ../Doc/faq/programming.rst:1272 +#: ../Doc/faq/programming.rst:1275 msgid "" "This is because of a combination of the fact that augmented assignment " "operators are *assignment* operators, and the difference between mutable and " "immutable objects in Python." msgstr "" -#: ../Doc/faq/programming.rst:1276 +#: ../Doc/faq/programming.rst:1279 msgid "" "This discussion applies in general when augmented assignment operators are " "applied to elements of a tuple that point to mutable objects, but we'll use " "a ``list`` and ``+=`` as our exemplar." msgstr "" -#: ../Doc/faq/programming.rst:1280 +#: ../Doc/faq/programming.rst:1283 msgid "If you wrote::" msgstr "Si vous écrivez : ::" -#: ../Doc/faq/programming.rst:1288 +#: ../Doc/faq/programming.rst:1291 msgid "" "The reason for the exception should be immediately clear: ``1`` is added to " "the object ``a_tuple[0]`` points to (``1``), producing the result object, " @@ -1634,29 +1640,29 @@ msgid "" "an element of a tuple points to." msgstr "" -#: ../Doc/faq/programming.rst:1294 +#: ../Doc/faq/programming.rst:1297 msgid "" "Under the covers, what this augmented assignment statement is doing is " "approximately this::" msgstr "" -#: ../Doc/faq/programming.rst:1303 +#: ../Doc/faq/programming.rst:1306 msgid "" "It is the assignment part of the operation that produces the error, since a " "tuple is immutable." msgstr "" -#: ../Doc/faq/programming.rst:1306 +#: ../Doc/faq/programming.rst:1309 msgid "When you write something like::" msgstr "" -#: ../Doc/faq/programming.rst:1314 +#: ../Doc/faq/programming.rst:1317 msgid "" "The exception is a bit more surprising, and even more surprising is the fact " "that even though there was an error, the append worked::" msgstr "" -#: ../Doc/faq/programming.rst:1320 +#: ../Doc/faq/programming.rst:1323 msgid "" "To see why this happens, you need to know that (a) if an object implements " "an ``__iadd__`` magic method, it gets called when the ``+=`` augmented " @@ -1666,11 +1672,11 @@ msgid "" "that for lists, ``+=`` is a \"shorthand\" for ``list.extend``::" msgstr "" -#: ../Doc/faq/programming.rst:1332 +#: ../Doc/faq/programming.rst:1335 msgid "This is equivalent to::" msgstr "C’est équivalent à ::" -#: ../Doc/faq/programming.rst:1337 +#: ../Doc/faq/programming.rst:1340 msgid "" "The object pointed to by a_list has been mutated, and the pointer to the " "mutated object is assigned back to ``a_list``. The end result of the " @@ -1678,11 +1684,11 @@ msgid "" "``a_list`` was previously pointing to, but the assignment still happens." msgstr "" -#: ../Doc/faq/programming.rst:1342 +#: ../Doc/faq/programming.rst:1345 msgid "Thus, in our tuple example what is happening is equivalent to::" msgstr "" -#: ../Doc/faq/programming.rst:1350 +#: ../Doc/faq/programming.rst:1353 msgid "" "The ``__iadd__`` succeeds, and thus the list is extended, but even though " "``result`` points to the same object that ``a_tuple[0]`` already points to, " @@ -1690,7 +1696,7 @@ msgid "" "immutable." msgstr "" -#: ../Doc/faq/programming.rst:1356 +#: ../Doc/faq/programming.rst:1359 msgid "" "I want to do a complicated sort: can you do a Schwartzian Transform in " "Python?" @@ -1698,7 +1704,7 @@ msgstr "" "Je souhaite faire un tri compliqué: peut on faire une transformation de " "Schwartz en Python?" -#: ../Doc/faq/programming.rst:1358 +#: ../Doc/faq/programming.rst:1361 msgid "" "The technique, attributed to Randal Schwartz of the Perl community, sorts " "the elements of a list by a metric which maps each element to its \"sort " @@ -1706,12 +1712,12 @@ msgid "" "method::" msgstr "" -#: ../Doc/faq/programming.rst:1367 +#: ../Doc/faq/programming.rst:1370 msgid "How can I sort one list by values from another list?" msgstr "" "Comment puis-je trier une liste en fonction des valeurs d'une autre liste?" -#: ../Doc/faq/programming.rst:1369 +#: ../Doc/faq/programming.rst:1372 msgid "" "Merge them into an iterator of tuples, sort the resulting list, and then " "pick out the element you want. ::" @@ -1719,11 +1725,11 @@ msgstr "" "Fusionnez les dans un itérateur de tuples, triez la liste obtenue, puis " "choisissez l'élément que vous voulez. ::" -#: ../Doc/faq/programming.rst:1383 +#: ../Doc/faq/programming.rst:1386 msgid "An alternative for the last step is::" msgstr "Une alternative pour la dernière étape est : ::" -#: ../Doc/faq/programming.rst:1388 +#: ../Doc/faq/programming.rst:1391 msgid "" "If you find this more legible, you might prefer to use this instead of the " "final list comprehension. However, it is almost twice as slow for long " @@ -1742,15 +1748,15 @@ msgstr "" "exige une recherche d'attribut supplémentaire, et enfin, tous ces appels de " "fonction impactent la vitesse d'exécution." -#: ../Doc/faq/programming.rst:1398 +#: ../Doc/faq/programming.rst:1401 msgid "Objects" msgstr "Objets" -#: ../Doc/faq/programming.rst:1401 +#: ../Doc/faq/programming.rst:1404 msgid "What is a class?" msgstr "Qu'est-ce qu'une classe?" -#: ../Doc/faq/programming.rst:1403 +#: ../Doc/faq/programming.rst:1406 msgid "" "A class is the particular object type created by executing a class " "statement. Class objects are used as templates to create instance objects, " @@ -1762,7 +1768,7 @@ msgstr "" "créer des objets, qui incarnent à la fois les données (attributs) et le code " "(méthodes) spécifiques à un type de données." -#: ../Doc/faq/programming.rst:1407 +#: ../Doc/faq/programming.rst:1410 msgid "" "A class can be based on one or more other classes, called its base " "class(es). It then inherits the attributes and methods of its base classes. " @@ -1779,11 +1785,11 @@ msgstr "" "classes telles que ``MboxMailbox``, ``MaildirMailbox``, ``OutlookMailbox`` " "qui gèrent les différents formats de boîtes aux lettres spécifiques." -#: ../Doc/faq/programming.rst:1416 +#: ../Doc/faq/programming.rst:1419 msgid "What is a method?" msgstr "Qu'est-ce qu'une méthode?" -#: ../Doc/faq/programming.rst:1418 +#: ../Doc/faq/programming.rst:1421 msgid "" "A method is a function on some object ``x`` that you normally call as ``x." "name(arguments...)``. Methods are defined as functions inside the class " @@ -1793,11 +1799,11 @@ msgstr "" "``x.name(arguments…)``. Les méthodes sont définies comme des fonctions à " "l'intérieur de la définition de classe ::" -#: ../Doc/faq/programming.rst:1428 +#: ../Doc/faq/programming.rst:1431 msgid "What is self?" msgstr "Qu'est-ce que self?" -#: ../Doc/faq/programming.rst:1430 +#: ../Doc/faq/programming.rst:1433 msgid "" "Self is merely a conventional name for the first argument of a method. A " "method defined as ``meth(self, a, b, c)`` should be called as ``x.meth(a, b, " @@ -1810,11 +1816,11 @@ msgstr "" "laquelle elle est définie, la méthode appelée considérera qu'elle est " "appelée ``meth(x, a, b, c)``." -#: ../Doc/faq/programming.rst:1435 +#: ../Doc/faq/programming.rst:1438 msgid "See also :ref:`why-self`." msgstr "Voir aussi :ref:`why-self`." -#: ../Doc/faq/programming.rst:1439 +#: ../Doc/faq/programming.rst:1442 msgid "" "How do I check if an object is an instance of a given class or of a subclass " "of it?" @@ -1822,7 +1828,7 @@ msgstr "" "Comment puis-je vérifier si un objet est une instance d'une classe donnée ou " "d'une sous-classe de celui-ci?" -#: ../Doc/faq/programming.rst:1441 +#: ../Doc/faq/programming.rst:1444 msgid "" "Use the built-in function ``isinstance(obj, cls)``. You can check if an " "object is an instance of any of a number of classes by providing a tuple " @@ -1837,7 +1843,7 @@ msgstr "" "objet est l'un des types natifs de Python, par exemple, ``isinstance(obj, " "str)`` ou ``isinstance(obj, (int, float, complex))``." -#: ../Doc/faq/programming.rst:1447 +#: ../Doc/faq/programming.rst:1450 msgid "" "Note that most programs do not use :func:`isinstance` on user-defined " "classes very often. If you are developing the classes yourself, a more " @@ -1854,7 +1860,7 @@ msgstr "" "chose de différent en fonction de sa classe. Par exemple, si vous avez une " "fonction qui fait quelque chose : ::" -#: ../Doc/faq/programming.rst:1461 +#: ../Doc/faq/programming.rst:1464 msgid "" "A better approach is to define a ``search()`` method on all the classes and " "just call it::" @@ -1862,11 +1868,11 @@ msgstr "" "Une meilleure approche est de définir une méthode ``search()`` sur toutes " "les classes et qu'il suffit d'appeler ::" -#: ../Doc/faq/programming.rst:1476 +#: ../Doc/faq/programming.rst:1479 msgid "What is delegation?" msgstr "Qu'est-ce que la délégation?" -#: ../Doc/faq/programming.rst:1478 +#: ../Doc/faq/programming.rst:1481 msgid "" "Delegation is an object oriented technique (also called a design pattern). " "Let's say you have an object ``x`` and want to change the behaviour of just " @@ -1881,7 +1887,7 @@ msgstr "" "vous intéresse dans l'évolution et les délégués de toutes les autres " "méthodes la méthode correspondante de ``x``." -#: ../Doc/faq/programming.rst:1484 +#: ../Doc/faq/programming.rst:1487 msgid "" "Python programmers can easily implement delegation. For example, the " "following class implements a class that behaves like a file but converts all " @@ -1891,7 +1897,7 @@ msgstr "" "Par exemple, la classe suivante implémente une classe qui se comporte comme " "un fichier, mais convertit toutes les données écrites en majuscules ::" -#: ../Doc/faq/programming.rst:1499 +#: ../Doc/faq/programming.rst:1502 msgid "" "Here the ``UpperOut`` class redefines the ``write()`` method to convert the " "argument string to uppercase before calling the underlying ``self.__outfile." @@ -1907,7 +1913,7 @@ msgstr "" "``__getattr__``, consulter :ref:`the language reference ` " "pour plus d'informations sur le contrôle d'accès d'attribut." -#: ../Doc/faq/programming.rst:1506 +#: ../Doc/faq/programming.rst:1509 msgid "" "Note that for more general cases delegation can get trickier. When " "attributes must be set as well as retrieved, the class must define a :meth:" @@ -1921,7 +1927,7 @@ msgstr "" "et il doit le faire avec soin. La mise en œuvre basique de la méthode :meth:" "`__setattr__` est à peu près équivalent à ce qui suit ::" -#: ../Doc/faq/programming.rst:1517 +#: ../Doc/faq/programming.rst:1520 msgid "" "Most :meth:`__setattr__` implementations must modify ``self.__dict__`` to " "store local state for self without causing an infinite recursion." @@ -1930,7 +1936,7 @@ msgstr "" "``self.__dict__`` pour stocker l'état locale de self sans provoquer une " "récursion infinie." -#: ../Doc/faq/programming.rst:1522 +#: ../Doc/faq/programming.rst:1525 msgid "" "How do I call a method defined in a base class from a derived class that " "overrides it?" @@ -1938,11 +1944,11 @@ msgstr "" "Comment appeler une méthode définie dans une classe de base depuis une " "classe dérivée qui la surcharge?" -#: ../Doc/faq/programming.rst:1524 +#: ../Doc/faq/programming.rst:1527 msgid "Use the built-in :func:`super` function::" msgstr "Utiliser la fonction native :func:`super` : ::" -#: ../Doc/faq/programming.rst:1530 +#: ../Doc/faq/programming.rst:1533 msgid "" "For version prior to 3.0, you may be using classic classes: For a class " "definition such as ``class Derived(Base): ...`` you can call method " @@ -1957,13 +1963,13 @@ msgstr "" "Ici, ``Base.meth`` est une méthode non liée, vous devez donc fournir " "l'argument ``self``." -#: ../Doc/faq/programming.rst:1538 +#: ../Doc/faq/programming.rst:1541 msgid "How can I organize my code to make it easier to change the base class?" msgstr "" "Comment puis-je organiser mon code pour permettre de changer la classe de " "base plus facilement?" -#: ../Doc/faq/programming.rst:1540 +#: ../Doc/faq/programming.rst:1543 msgid "" "You could define an alias for the base class, assign the real base class to " "it before your class definition, and use the alias throughout your class. " @@ -1979,13 +1985,13 @@ msgstr "" "voulez décider dynamiquement (par exemple en fonction de la disponibilité " "des ressources) la classe de base à utiliser. Exemple ::" -#: ../Doc/faq/programming.rst:1555 +#: ../Doc/faq/programming.rst:1558 msgid "How do I create static class data and static class methods?" msgstr "" "Comment puis-je créer des données statiques de classe et des méthodes " "statiques de classe?" -#: ../Doc/faq/programming.rst:1557 +#: ../Doc/faq/programming.rst:1560 msgid "" "Both static data and static methods (in the sense of C++ or Java) are " "supported in Python." @@ -1993,7 +1999,7 @@ msgstr "" "Tant les données statiques que les méthodes statiques (dans le sens de C + + " "ou Java) sont pris en charge en Python." -#: ../Doc/faq/programming.rst:1560 +#: ../Doc/faq/programming.rst:1563 msgid "" "For static data, simply define a class attribute. To assign a new value to " "the attribute, you have to explicitly use the class name in the assignment::" @@ -2002,7 +2008,7 @@ msgstr "" "attribuer une nouvelle valeur à l'attribut, vous devez explicitement " "utiliser le nom de classe dans l'affectation ::" -#: ../Doc/faq/programming.rst:1572 +#: ../Doc/faq/programming.rst:1575 msgid "" "``c.count`` also refers to ``C.count`` for any ``c`` such that " "``isinstance(c, C)`` holds, unless overridden by ``c`` itself or by some " @@ -2013,7 +2019,7 @@ msgstr "" "une classe sur le chemin de recherche de classe de base de ``c.__class__`` " "jusqu'à ``C``." -#: ../Doc/faq/programming.rst:1576 +#: ../Doc/faq/programming.rst:1579 msgid "" "Caution: within a method of C, an assignment like ``self.count = 42`` " "creates a new and unrelated instance named \"count\" in ``self``'s own " @@ -2026,11 +2032,11 @@ msgstr "" "statique de classe doit toujours spécifier la classe que l'on soit à " "l'intérieur d'une méthode ou non ::" -#: ../Doc/faq/programming.rst:1583 +#: ../Doc/faq/programming.rst:1586 msgid "Static methods are possible::" msgstr "Les méthodes statiques sont possibles : ::" -#: ../Doc/faq/programming.rst:1591 +#: ../Doc/faq/programming.rst:1594 msgid "" "However, a far more straightforward way to get the effect of a static method " "is via a simple module-level function::" @@ -2038,7 +2044,7 @@ msgstr "" "Cependant, d'une manière beaucoup plus simple pour obtenir l'effet d'une " "méthode statique se fait par une simple fonction au niveau du module ::" -#: ../Doc/faq/programming.rst:1597 +#: ../Doc/faq/programming.rst:1600 msgid "" "If your code is structured so as to define one class (or tightly related " "class hierarchy) per module, this supplies the desired encapsulation." @@ -2047,11 +2053,11 @@ msgstr "" "hiérarchie des classes connexes) par module, ceci fournira l'encapsulation " "souhaitée." -#: ../Doc/faq/programming.rst:1602 +#: ../Doc/faq/programming.rst:1605 msgid "How can I overload constructors (or methods) in Python?" msgstr "Comment puis-je surcharger les constructeurs (ou méthodes) en Python?" -#: ../Doc/faq/programming.rst:1604 +#: ../Doc/faq/programming.rst:1607 msgid "" "This answer actually applies to all methods, but the question usually comes " "up first in the context of constructors." @@ -2059,11 +2065,11 @@ msgstr "" "Cette réponse s'applique en fait à toutes les méthodes, mais la question " "vient généralement en premier dans le contexte des constructeurs." -#: ../Doc/faq/programming.rst:1607 +#: ../Doc/faq/programming.rst:1610 msgid "In C++ you'd write" msgstr "In C++ you'd write" -#: ../Doc/faq/programming.rst:1616 +#: ../Doc/faq/programming.rst:1619 msgid "" "In Python you have to write a single constructor that catches all cases " "using default arguments. For example::" @@ -2071,29 +2077,29 @@ msgstr "" "En Python, vous devez écrire un constructeur unique qui considère tous les " "cas en utilisant des arguments par défaut. Par exemple ::" -#: ../Doc/faq/programming.rst:1626 +#: ../Doc/faq/programming.rst:1629 msgid "This is not entirely equivalent, but close enough in practice." msgstr "" "Ce n'est pas tout à fait équivalent, mais suffisamment proche dans la " "pratique." -#: ../Doc/faq/programming.rst:1628 +#: ../Doc/faq/programming.rst:1631 msgid "You could also try a variable-length argument list, e.g. ::" msgstr "" "Vous pouvez aussi utiliser une liste d'arguments de longueur variable, par " "exemple : ::" -#: ../Doc/faq/programming.rst:1633 +#: ../Doc/faq/programming.rst:1636 msgid "The same approach works for all method definitions." msgstr "La même approche fonctionne pour toutes les définitions de méthode." -#: ../Doc/faq/programming.rst:1637 +#: ../Doc/faq/programming.rst:1640 msgid "I try to use __spam and I get an error about _SomeClassName__spam." msgstr "" "J'essaie d'utiliser ``__spam`` et j'obtiens une erreur à propos de " "``_SomeClassName__spam``." -#: ../Doc/faq/programming.rst:1639 +#: ../Doc/faq/programming.rst:1642 msgid "" "Variable names with double leading underscores are \"mangled\" to provide a " "simple but effective way to define class private variables. Any identifier " @@ -2109,7 +2115,7 @@ msgstr "" "``_classname__spam``, où ``classname`` est le nom de la classe en cours dont " "les éventuels tirets bas ont été retirés." -#: ../Doc/faq/programming.rst:1645 +#: ../Doc/faq/programming.rst:1648 msgid "" "This doesn't guarantee privacy: an outside user can still deliberately " "access the \"_classname__spam\" attribute, and private values are visible in " @@ -2122,17 +2128,17 @@ msgstr "" "programmeurs Python ne prennent jamais la peine d'utiliser des noms de " "variable privée." -#: ../Doc/faq/programming.rst:1652 +#: ../Doc/faq/programming.rst:1655 msgid "My class defines __del__ but it is not called when I delete the object." msgstr "" "Ma classe définit ``__del__`` mais il n'est pas appelé lorsque je supprime " "l'objet." -#: ../Doc/faq/programming.rst:1654 +#: ../Doc/faq/programming.rst:1657 msgid "There are several possible reasons for this." msgstr "Il y a plusieurs raisons possibles pour cela." -#: ../Doc/faq/programming.rst:1656 +#: ../Doc/faq/programming.rst:1659 msgid "" "The del statement does not necessarily call :meth:`__del__` -- it simply " "decrements the object's reference count, and if this reaches zero :meth:" @@ -2142,7 +2148,7 @@ msgstr "" "simplement le compteur de références de l'objet, et si celui ci arrive à " "zéro :meth:`__del__` est appelée." -#: ../Doc/faq/programming.rst:1660 +#: ../Doc/faq/programming.rst:1663 msgid "" "If your data structures contain circular links (e.g. a tree where each child " "has a parent reference and each parent has a list of children) the reference " @@ -2156,7 +2162,7 @@ msgid "" "cases where objects will never be collected." msgstr "" -#: ../Doc/faq/programming.rst:1671 +#: ../Doc/faq/programming.rst:1674 msgid "" "Despite the cycle collector, it's still a good idea to define an explicit " "``close()`` method on objects to be called whenever you're done with them. " @@ -2166,7 +2172,7 @@ msgid "" "once for the same object." msgstr "" -#: ../Doc/faq/programming.rst:1678 +#: ../Doc/faq/programming.rst:1681 msgid "" "Another way to avoid cyclical references is to use the :mod:`weakref` " "module, which allows you to point to objects without incrementing their " @@ -2174,28 +2180,28 @@ msgid "" "references for their parent and sibling references (if they need them!)." msgstr "" -#: ../Doc/faq/programming.rst:1691 +#: ../Doc/faq/programming.rst:1694 msgid "" "Finally, if your :meth:`__del__` method raises an exception, a warning " "message is printed to :data:`sys.stderr`." msgstr "" -#: ../Doc/faq/programming.rst:1696 +#: ../Doc/faq/programming.rst:1699 msgid "How do I get a list of all instances of a given class?" msgstr "" -#: ../Doc/faq/programming.rst:1698 +#: ../Doc/faq/programming.rst:1701 msgid "" "Python does not keep track of all instances of a class (or of a built-in " "type). You can program the class's constructor to keep track of all " "instances by keeping a list of weak references to each instance." msgstr "" -#: ../Doc/faq/programming.rst:1704 +#: ../Doc/faq/programming.rst:1707 msgid "Why does the result of ``id()`` appear to be not unique?" msgstr "" -#: ../Doc/faq/programming.rst:1706 +#: ../Doc/faq/programming.rst:1709 msgid "" "The :func:`id` builtin returns an integer that is guaranteed to be unique " "during the lifetime of the object. Since in CPython, this is the object's " @@ -2204,7 +2210,7 @@ msgid "" "memory. This is illustrated by this example:" msgstr "" -#: ../Doc/faq/programming.rst:1717 +#: ../Doc/faq/programming.rst:1720 msgid "" "The two ids belong to different integer objects that are created before, and " "deleted immediately after execution of the ``id()`` call. To be sure that " @@ -2212,15 +2218,15 @@ msgid "" "reference to the object:" msgstr "" -#: ../Doc/faq/programming.rst:1730 +#: ../Doc/faq/programming.rst:1733 msgid "Modules" msgstr "Modules" -#: ../Doc/faq/programming.rst:1733 +#: ../Doc/faq/programming.rst:1736 msgid "How do I create a .pyc file?" msgstr "" -#: ../Doc/faq/programming.rst:1735 +#: ../Doc/faq/programming.rst:1738 msgid "" "When a module is imported for the first time (or when the source file has " "changed since the current compiled file was created) a ``.pyc`` file " @@ -2231,7 +2237,7 @@ msgid "" "particular ``python`` binary that created it. (See :pep:`3147` for details.)" msgstr "" -#: ../Doc/faq/programming.rst:1743 +#: ../Doc/faq/programming.rst:1746 msgid "" "One reason that a ``.pyc`` file may not be created is a permissions problem " "with the directory containing the source file, meaning that the " @@ -2240,7 +2246,7 @@ msgid "" "testing with a web server." msgstr "" -#: ../Doc/faq/programming.rst:1748 +#: ../Doc/faq/programming.rst:1751 msgid "" "Unless the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable is set, " "creation of a .pyc file is automatic if you're importing a module and Python " @@ -2249,7 +2255,7 @@ msgid "" "subdirectory." msgstr "" -#: ../Doc/faq/programming.rst:1753 +#: ../Doc/faq/programming.rst:1756 msgid "" "Running Python on a top level script is not considered an import and no ``." "pyc`` will be created. For example, if you have a top-level module ``foo." @@ -2259,27 +2265,27 @@ msgid "" "for ``foo`` since ``foo.py`` isn't being imported." msgstr "" -#: ../Doc/faq/programming.rst:1760 +#: ../Doc/faq/programming.rst:1763 msgid "" "If you need to create a ``.pyc`` file for ``foo`` -- that is, to create a ``." "pyc`` file for a module that is not imported -- you can, using the :mod:" "`py_compile` and :mod:`compileall` modules." msgstr "" -#: ../Doc/faq/programming.rst:1764 +#: ../Doc/faq/programming.rst:1767 msgid "" "The :mod:`py_compile` module can manually compile any module. One way is to " "use the ``compile()`` function in that module interactively::" msgstr "" -#: ../Doc/faq/programming.rst:1770 +#: ../Doc/faq/programming.rst:1773 msgid "" "This will write the ``.pyc`` to a ``__pycache__`` subdirectory in the same " "location as ``foo.py`` (or you can override that with the optional parameter " "``cfile``)." msgstr "" -#: ../Doc/faq/programming.rst:1774 +#: ../Doc/faq/programming.rst:1777 msgid "" "You can also automatically compile all files in a directory or directories " "using the :mod:`compileall` module. You can do it from the shell prompt by " @@ -2287,11 +2293,11 @@ msgid "" "Python files to compile::" msgstr "" -#: ../Doc/faq/programming.rst:1783 +#: ../Doc/faq/programming.rst:1786 msgid "How do I find the current module name?" msgstr "" -#: ../Doc/faq/programming.rst:1785 +#: ../Doc/faq/programming.rst:1788 msgid "" "A module can find out its own module name by looking at the predefined " "global variable ``__name__``. If this has the value ``'__main__'``, the " @@ -2300,76 +2306,76 @@ msgid "" "only execute this code after checking ``__name__``::" msgstr "" -#: ../Doc/faq/programming.rst:1800 +#: ../Doc/faq/programming.rst:1803 msgid "How can I have modules that mutually import each other?" msgstr "" -#: ../Doc/faq/programming.rst:1802 +#: ../Doc/faq/programming.rst:1805 msgid "Suppose you have the following modules:" msgstr "" -#: ../Doc/faq/programming.rst:1804 +#: ../Doc/faq/programming.rst:1807 msgid "foo.py::" msgstr "" -#: ../Doc/faq/programming.rst:1809 +#: ../Doc/faq/programming.rst:1812 msgid "bar.py::" msgstr "" -#: ../Doc/faq/programming.rst:1814 +#: ../Doc/faq/programming.rst:1817 msgid "The problem is that the interpreter will perform the following steps:" msgstr "" -#: ../Doc/faq/programming.rst:1816 +#: ../Doc/faq/programming.rst:1819 msgid "main imports foo" msgstr "" -#: ../Doc/faq/programming.rst:1817 +#: ../Doc/faq/programming.rst:1820 msgid "Empty globals for foo are created" msgstr "" -#: ../Doc/faq/programming.rst:1818 +#: ../Doc/faq/programming.rst:1821 msgid "foo is compiled and starts executing" msgstr "" -#: ../Doc/faq/programming.rst:1819 +#: ../Doc/faq/programming.rst:1822 msgid "foo imports bar" msgstr "" -#: ../Doc/faq/programming.rst:1820 +#: ../Doc/faq/programming.rst:1823 msgid "Empty globals for bar are created" msgstr "" -#: ../Doc/faq/programming.rst:1821 +#: ../Doc/faq/programming.rst:1824 msgid "bar is compiled and starts executing" msgstr "" -#: ../Doc/faq/programming.rst:1822 +#: ../Doc/faq/programming.rst:1825 msgid "" "bar imports foo (which is a no-op since there already is a module named foo)" msgstr "" -#: ../Doc/faq/programming.rst:1823 +#: ../Doc/faq/programming.rst:1826 msgid "bar.foo_var = foo.foo_var" msgstr "" -#: ../Doc/faq/programming.rst:1825 +#: ../Doc/faq/programming.rst:1828 msgid "" "The last step fails, because Python isn't done with interpreting ``foo`` yet " "and the global symbol dictionary for ``foo`` is still empty." msgstr "" -#: ../Doc/faq/programming.rst:1828 +#: ../Doc/faq/programming.rst:1831 msgid "" "The same thing happens when you use ``import foo``, and then try to access " "``foo.foo_var`` in global code." msgstr "" -#: ../Doc/faq/programming.rst:1831 +#: ../Doc/faq/programming.rst:1834 msgid "There are (at least) three possible workarounds for this problem." msgstr "" -#: ../Doc/faq/programming.rst:1833 +#: ../Doc/faq/programming.rst:1836 msgid "" "Guido van Rossum recommends avoiding all uses of ``from import ..." "``, and placing all code inside functions. Initializations of global " @@ -2378,59 +2384,59 @@ msgid "" "``.``." msgstr "" -#: ../Doc/faq/programming.rst:1838 +#: ../Doc/faq/programming.rst:1841 msgid "" "Jim Roskind suggests performing steps in the following order in each module:" msgstr "" -#: ../Doc/faq/programming.rst:1840 +#: ../Doc/faq/programming.rst:1843 msgid "" "exports (globals, functions, and classes that don't need imported base " "classes)" msgstr "" -#: ../Doc/faq/programming.rst:1842 +#: ../Doc/faq/programming.rst:1845 msgid "``import`` statements" msgstr "" -#: ../Doc/faq/programming.rst:1843 +#: ../Doc/faq/programming.rst:1846 msgid "" "active code (including globals that are initialized from imported values)." msgstr "" -#: ../Doc/faq/programming.rst:1845 +#: ../Doc/faq/programming.rst:1848 msgid "" "van Rossum doesn't like this approach much because the imports appear in a " "strange place, but it does work." msgstr "" -#: ../Doc/faq/programming.rst:1848 +#: ../Doc/faq/programming.rst:1851 msgid "" "Matthias Urlichs recommends restructuring your code so that the recursive " "import is not necessary in the first place." msgstr "" -#: ../Doc/faq/programming.rst:1851 +#: ../Doc/faq/programming.rst:1854 msgid "These solutions are not mutually exclusive." msgstr "" -#: ../Doc/faq/programming.rst:1855 +#: ../Doc/faq/programming.rst:1858 msgid "__import__('x.y.z') returns ; how do I get z?" msgstr "" -#: ../Doc/faq/programming.rst:1857 +#: ../Doc/faq/programming.rst:1860 msgid "" "Consider using the convenience function :func:`~importlib.import_module` " "from :mod:`importlib` instead::" msgstr "" -#: ../Doc/faq/programming.rst:1864 +#: ../Doc/faq/programming.rst:1867 msgid "" "When I edit an imported module and reimport it, the changes don't show up. " "Why does this happen?" msgstr "" -#: ../Doc/faq/programming.rst:1866 +#: ../Doc/faq/programming.rst:1869 msgid "" "For reasons of efficiency as well as consistency, Python only reads the " "module file on the first time a module is imported. If it didn't, in a " @@ -2439,13 +2445,13 @@ msgid "" "re-reading of a changed module, do this::" msgstr "" -#: ../Doc/faq/programming.rst:1876 +#: ../Doc/faq/programming.rst:1879 msgid "" "Warning: this technique is not 100% fool-proof. In particular, modules " "containing statements like ::" msgstr "" -#: ../Doc/faq/programming.rst:1881 +#: ../Doc/faq/programming.rst:1884 msgid "" "will continue to work with the old version of the imported objects. If the " "module contains class definitions, existing class instances will *not* be " @@ -2453,7 +2459,7 @@ msgid "" "paradoxical behaviour::" msgstr "" -#: ../Doc/faq/programming.rst:1894 +#: ../Doc/faq/programming.rst:1897 msgid "" "The nature of the problem is made clear if you print out the \"identity\" of " "the class objects::" diff --git a/glossary.po b/glossary.po index 1fb43a10..e934329e 100644 --- a/glossary.po +++ b/glossary.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 21:41+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -37,9 +37,10 @@ msgid "``...``" msgstr "``...``" #: ../Doc/glossary.rst:16 +#, fuzzy msgid "" -"The default Python prompt of the interactive shell when entering code for an " -"indented code block, when within a pair of matching left and right " +"The default Python prompt of the interactive shell when entering the code " +"for an indented code block, when within a pair of matching left and right " "delimiters (parentheses, square brackets, curly braces or triple quotes), or " "after specifying a decorator." msgstr "" @@ -539,11 +540,21 @@ msgstr "" "définissant les méthodes :meth:`__enter__` et :meth:`__exit__`. Consultez " "la :pep:`343`." -#: ../Doc/glossary.rst:223 +#: ../Doc/glossary.rst:224 +msgid "" +"ntext variable A variable which can have different values depending on its " +"context. This is similar to Thread-Local Storage in which each execution " +"thread may have a different value for a variable. However, with context " +"variables, there may be several contexts in one execution thread and the " +"main usage for context variables is to keep track of variables in concurrent " +"asynchronous tasks. See :mod:`contextvars`." +msgstr "" + +#: ../Doc/glossary.rst:232 msgid "contiguous" msgstr "contigu" -#: ../Doc/glossary.rst:227 +#: ../Doc/glossary.rst:236 msgid "" "A buffer is considered contiguous exactly if it is either *C-contiguous* or " "*Fortran contiguous*. Zero-dimensional buffers are C and Fortran " @@ -563,11 +574,11 @@ msgstr "" "leur adresse mémoire. À l'inverse, dans les tableaux Fortran-contigu, c’est " "le premier indice qui doit varier le plus rapidement." -#: ../Doc/glossary.rst:235 +#: ../Doc/glossary.rst:244 msgid "coroutine" msgstr "coroutine" -#: ../Doc/glossary.rst:237 +#: ../Doc/glossary.rst:246 msgid "" "Coroutines is a more generalized form of subroutines. Subroutines are " "entered at one point and exited at another point. Coroutines can be " @@ -580,11 +591,11 @@ msgstr "" "être implémentées en utilisant l'instruction :keyword:`async def`. Voir " "aussi la :pep:`492`." -#: ../Doc/glossary.rst:242 +#: ../Doc/glossary.rst:251 msgid "coroutine function" msgstr "fonction coroutine" -#: ../Doc/glossary.rst:244 +#: ../Doc/glossary.rst:253 msgid "" "A function which returns a :term:`coroutine` object. A coroutine function " "may be defined with the :keyword:`async def` statement, and may contain :" @@ -596,11 +607,11 @@ msgstr "" "mots clés :keyword:`await`, :keyword:`async for` ainsi que :keyword:`async " "with`. A été introduit par la :pep:`492`." -#: ../Doc/glossary.rst:249 +#: ../Doc/glossary.rst:258 msgid "CPython" msgstr "CPython" -#: ../Doc/glossary.rst:251 +#: ../Doc/glossary.rst:260 msgid "" "The canonical implementation of the Python programming language, as " "distributed on `python.org `_. The term \"CPython\" " @@ -612,11 +623,11 @@ msgstr "" "est utilisé dans certains contextes lorsqu'il est nécessaire de distinguer " "cette implémentation des autres comme *Jython* ou *IronPython*." -#: ../Doc/glossary.rst:255 +#: ../Doc/glossary.rst:264 msgid "decorator" msgstr "décorateur" -#: ../Doc/glossary.rst:257 +#: ../Doc/glossary.rst:266 msgid "" "A function returning another function, usually applied as a function " "transformation using the ``@wrapper`` syntax. Common examples for " @@ -627,7 +638,7 @@ msgstr "" "``@wrapper``, dont les exemples typiques sont : :func:`classmethod` et :func:" "`staticmethod`." -#: ../Doc/glossary.rst:261 +#: ../Doc/glossary.rst:270 msgid "" "The decorator syntax is merely syntactic sugar, the following two function " "definitions are semantically equivalent::" @@ -635,7 +646,7 @@ msgstr "" "La syntaxe des décorateurs est simplement du sucre syntaxique, les " "définitions des deux fonctions suivantes sont sémantiquement équivalentes ::" -#: ../Doc/glossary.rst:272 +#: ../Doc/glossary.rst:281 msgid "" "The same concept exists for classes, but is less commonly used there. See " "the documentation for :ref:`function definitions ` and :ref:`class " @@ -645,11 +656,11 @@ msgstr "" "Consultez la documentation :ref:`définitions de fonctions ` et :" "ref:`définitions de classes ` pour en savoir plus sur les décorateurs." -#: ../Doc/glossary.rst:275 +#: ../Doc/glossary.rst:284 msgid "descriptor" msgstr "descripteur" -#: ../Doc/glossary.rst:277 +#: ../Doc/glossary.rst:286 msgid "" "Any object which defines the methods :meth:`__get__`, :meth:`__set__`, or :" "meth:`__delete__`. When a class attribute is a descriptor, its special " @@ -673,18 +684,18 @@ msgstr "" "propriétés, méthodes de classes, méthodes statiques et les références aux " "classes parentes." -#: ../Doc/glossary.rst:287 +#: ../Doc/glossary.rst:296 msgid "" "For more information about descriptors' methods, see :ref:`descriptors`." msgstr "" "Pour plus d'informations sur les méthodes des descripteurs, consultez :ref:" "`descriptors`." -#: ../Doc/glossary.rst:288 +#: ../Doc/glossary.rst:297 msgid "dictionary" msgstr "dictionnaire" -#: ../Doc/glossary.rst:290 +#: ../Doc/glossary.rst:299 msgid "" "An associative array, where arbitrary keys are mapped to values. The keys " "can be any object with :meth:`__hash__` and :meth:`__eq__` methods. Called a " @@ -694,11 +705,11 @@ msgstr "" "n'importe quel objet possédant les méthodes :meth:`__hash__` et :meth:" "`__eq__`. En Perl, les dictionnaires sont appelés \"*hash*\"." -#: ../Doc/glossary.rst:293 +#: ../Doc/glossary.rst:302 msgid "dictionary view" msgstr "vue de dictionnaire" -#: ../Doc/glossary.rst:295 +#: ../Doc/glossary.rst:304 msgid "" "The objects returned from :meth:`dict.keys`, :meth:`dict.values`, and :meth:" "`dict.items` are called dictionary views. They provide a dynamic view on the " @@ -712,11 +723,11 @@ msgstr "" "change. Pour transformer une vue en vraie liste, utilisez " "``list(dictview)``. Voir :ref:`dict-views`." -#: ../Doc/glossary.rst:301 +#: ../Doc/glossary.rst:310 msgid "docstring" msgstr "*docstring*" -#: ../Doc/glossary.rst:303 +#: ../Doc/glossary.rst:312 msgid "" "A string literal which appears as the first expression in a class, function " "or module. While ignored when the suite is executed, it is recognized by " @@ -730,11 +741,11 @@ msgstr "" "fonction ou du module. Comme cette chaîne est disponible par introspection, " "c'est l'endroit idéal pour documenter l'objet." -#: ../Doc/glossary.rst:309 +#: ../Doc/glossary.rst:318 msgid "duck-typing" msgstr "*duck-typing*" -#: ../Doc/glossary.rst:311 +#: ../Doc/glossary.rst:320 msgid "" "A programming style which does not look at an object's type to determine if " "it has the right interface; instead, the method or attribute is simply " @@ -758,11 +769,11 @@ msgstr "" "*duck-typing* utilise plutôt :func:`hasattr` ou la programmation :term:" "`EAFP`." -#: ../Doc/glossary.rst:320 +#: ../Doc/glossary.rst:329 msgid "EAFP" msgstr "EAFP" -#: ../Doc/glossary.rst:322 +#: ../Doc/glossary.rst:331 msgid "" "Easier to ask for forgiveness than permission. This common Python coding " "style assumes the existence of valid keys or attributes and catches " @@ -779,11 +790,11 @@ msgstr "" "keyword:`except`. Cette technique de programmation contraste avec le style :" "term:`LBYL` utilisé couramment dans les langages tels que C." -#: ../Doc/glossary.rst:328 +#: ../Doc/glossary.rst:337 msgid "expression" msgstr "expression" -#: ../Doc/glossary.rst:330 +#: ../Doc/glossary.rst:339 msgid "" "A piece of syntax which can be evaluated to some value. In other words, an " "expression is an accumulation of expression elements like literals, names, " @@ -803,11 +814,11 @@ msgstr "" "expressions, tel que :keyword:`while`. Les affectations sont également des " "instructions et non des expressions." -#: ../Doc/glossary.rst:337 +#: ../Doc/glossary.rst:346 msgid "extension module" msgstr "module d'extension" -#: ../Doc/glossary.rst:339 +#: ../Doc/glossary.rst:348 msgid "" "A module written in C or C++, using Python's C API to interact with the core " "and with user code." @@ -815,11 +826,11 @@ msgstr "" "Module écrit en C ou C++, utilisant l'API C de Python pour interagir avec " "Python et le code de l'utilisateur." -#: ../Doc/glossary.rst:341 +#: ../Doc/glossary.rst:350 msgid "f-string" msgstr "f-string" -#: ../Doc/glossary.rst:343 +#: ../Doc/glossary.rst:352 msgid "" "String literals prefixed with ``'f'`` or ``'F'`` are commonly called \"f-" "strings\" which is short for :ref:`formatted string literals `. " @@ -829,11 +840,11 @@ msgstr "" "raccourci pour :ref:`formatted string literals `. Voir la :pep:" "`498`." -#: ../Doc/glossary.rst:346 +#: ../Doc/glossary.rst:355 msgid "file object" msgstr "objet fichier" -#: ../Doc/glossary.rst:348 +#: ../Doc/glossary.rst:357 msgid "" "An object exposing a file-oriented API (with methods such as :meth:`read()` " "or :meth:`write()`) to an underlying resource. Depending on the way it was " @@ -850,7 +861,7 @@ msgstr "" "réseau, ...). Les objets fichiers sont aussi appelés :dfn:`file-like-" "objects` ou :dfn:`streams`." -#: ../Doc/glossary.rst:356 +#: ../Doc/glossary.rst:365 msgid "" "There are actually three categories of file objects: raw :term:`binary files " "`, buffered :term:`binary files ` and :term:`text " @@ -865,19 +876,19 @@ msgstr "" "Le moyen le plus simple et direct de créer un objet fichier est d'utiliser " "la fonction :func:`open`." -#: ../Doc/glossary.rst:361 +#: ../Doc/glossary.rst:370 msgid "file-like object" msgstr "objet fichier-compatible" -#: ../Doc/glossary.rst:363 +#: ../Doc/glossary.rst:372 msgid "A synonym for :term:`file object`." msgstr "Synonyme de :term:`objet fichier`." -#: ../Doc/glossary.rst:364 +#: ../Doc/glossary.rst:373 msgid "finder" msgstr "chercheur" -#: ../Doc/glossary.rst:366 +#: ../Doc/glossary.rst:375 msgid "" "An object that tries to find the :term:`loader` for a module that is being " "imported." @@ -885,7 +896,7 @@ msgstr "" "Objet qui essaie de trouver un :term:`chargeur ` pour le module en " "cours d'importation." -#: ../Doc/glossary.rst:369 +#: ../Doc/glossary.rst:378 msgid "" "Since Python 3.3, there are two types of finder: :term:`meta path finders " "` for use with :data:`sys.meta_path`, and :term:`path " @@ -896,15 +907,15 @@ msgstr "" "`sys.meta_path` ; les :term:`chercheurs d'entrée dans path ` à utiliser avec :data:`sys.path_hooks`." -#: ../Doc/glossary.rst:373 +#: ../Doc/glossary.rst:382 msgid "See :pep:`302`, :pep:`420` and :pep:`451` for much more detail." msgstr "Voir les :pep:`302`, :pep:`420` et :pep:`451` pour plus de détails." -#: ../Doc/glossary.rst:374 +#: ../Doc/glossary.rst:383 msgid "floor division" msgstr "division entière" -#: ../Doc/glossary.rst:376 +#: ../Doc/glossary.rst:385 msgid "" "Mathematical division that rounds down to nearest integer. The floor " "division operator is ``//``. For example, the expression ``11 // 4`` " @@ -918,11 +929,11 @@ msgstr "" "4`` vaut ``-3`` car l'arrondi se fait à l'entier inférieur. Voir la :pep:" "`328`." -#: ../Doc/glossary.rst:381 +#: ../Doc/glossary.rst:390 msgid "function" msgstr "fonction" -#: ../Doc/glossary.rst:383 +#: ../Doc/glossary.rst:392 msgid "" "A series of statements which returns some value to a caller. It can also be " "passed zero or more :term:`arguments ` which may be used in the " @@ -934,15 +945,15 @@ msgstr "" "corps de la fonction. Voir aussi :term:`paramètre`, :term:`méthode` et :ref:" "`function`." -#: ../Doc/glossary.rst:387 +#: ../Doc/glossary.rst:396 msgid "function annotation" msgstr "annotation de fonction" -#: ../Doc/glossary.rst:389 +#: ../Doc/glossary.rst:398 msgid "An :term:`annotation` of a function parameter or return value." msgstr ":term:`annotation` d'un paramètre de fonction ou valeur de retour." -#: ../Doc/glossary.rst:391 +#: ../Doc/glossary.rst:400 msgid "" "Function annotations are usually used for :term:`type hints `: " "for example, this function is expected to take two :class:`int` arguments " @@ -953,13 +964,13 @@ msgstr "" "prendre deux arguments :class:`int` et devrait également avoir une valeur de " "retour de type :class:`int` ::" -#: ../Doc/glossary.rst:399 +#: ../Doc/glossary.rst:408 msgid "Function annotation syntax is explained in section :ref:`function`." msgstr "" "L'annotation syntaxique de la fonction est expliquée dans la section :ref:" "`function`." -#: ../Doc/glossary.rst:401 +#: ../Doc/glossary.rst:410 msgid "" "See :term:`variable annotation` and :pep:`484`, which describe this " "functionality." @@ -967,11 +978,11 @@ msgstr "" "Voir :term:`variable annotation` et :pep:` 484`, qui décrivent cette " "fonctionnalité." -#: ../Doc/glossary.rst:403 +#: ../Doc/glossary.rst:412 msgid "__future__" msgstr "__future__" -#: ../Doc/glossary.rst:405 +#: ../Doc/glossary.rst:414 msgid "" "A pseudo-module which programmers can use to enable new language features " "which are not compatible with the current interpreter." @@ -980,7 +991,7 @@ msgstr "" "nouvelles fonctionnalités du langage qui ne sont pas compatibles avec " "l'interpréteur utilisé." -#: ../Doc/glossary.rst:408 +#: ../Doc/glossary.rst:417 msgid "" "By importing the :mod:`__future__` module and evaluating its variables, you " "can see when a new feature was first added to the language and when it " @@ -990,11 +1001,11 @@ msgstr "" "pouvez voir à quel moment une nouvelle fonctionnalité a été rajoutée dans le " "langage et quand elle devient le comportement par défaut : ::" -#: ../Doc/glossary.rst:415 +#: ../Doc/glossary.rst:424 msgid "garbage collection" msgstr "ramasse-miettes" -#: ../Doc/glossary.rst:417 +#: ../Doc/glossary.rst:426 msgid "" "The process of freeing memory when it is not used anymore. Python performs " "garbage collection via reference counting and a cyclic garbage collector " @@ -1007,11 +1018,11 @@ msgstr "" "et casser les références circulaires. Le ramasse-miettes peut être contrôlé " "en utilisant le module :mod:`gc`." -#: ../Doc/glossary.rst:423 +#: ../Doc/glossary.rst:432 msgid "generator" msgstr "générateur" -#: ../Doc/glossary.rst:425 +#: ../Doc/glossary.rst:434 msgid "" "A function which returns a :term:`generator iterator`. It looks like a " "normal function except that it contains :keyword:`yield` expressions for " @@ -1023,7 +1034,7 @@ msgstr "" "expressions :keyword:`yield` produisant une série de valeurs utilisable dans " "une boucle *for* ou récupérées une à une via la fonction :func:`next`." -#: ../Doc/glossary.rst:430 +#: ../Doc/glossary.rst:439 msgid "" "Usually refers to a generator function, but may refer to a *generator " "iterator* in some contexts. In cases where the intended meaning isn't " @@ -1034,15 +1045,15 @@ msgstr "" "cas où le sens voulu n'est pas clair, utiliser les termes complets lève " "l’ambigüité." -#: ../Doc/glossary.rst:433 +#: ../Doc/glossary.rst:442 msgid "generator iterator" msgstr "itérateur de générateur" -#: ../Doc/glossary.rst:435 +#: ../Doc/glossary.rst:444 msgid "An object created by a :term:`generator` function." msgstr "Objet créé par une fonction :term:`générateur`." -#: ../Doc/glossary.rst:437 +#: ../Doc/glossary.rst:446 msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " "location execution state (including local variables and pending try-" @@ -1055,11 +1066,11 @@ msgstr "" "il en était (contrairement à une fonction qui prendrait un nouveau départ à " "chaque invocation)." -#: ../Doc/glossary.rst:444 +#: ../Doc/glossary.rst:453 msgid "generator expression" msgstr "expression génératrice" -#: ../Doc/glossary.rst:446 +#: ../Doc/glossary.rst:455 msgid "" "An expression that returns an iterator. It looks like a normal expression " "followed by a :keyword:`!for` clause defining a loop variable, range, and an " @@ -1071,11 +1082,11 @@ msgstr "" "intervalle et une clause :keyword:`!if` optionnelle. Toute cette expression " "génère des valeurs pour la fonction qui l'entoure : ::" -#: ../Doc/glossary.rst:453 +#: ../Doc/glossary.rst:462 msgid "generic function" msgstr "fonction générique" -#: ../Doc/glossary.rst:455 +#: ../Doc/glossary.rst:464 msgid "" "A function composed of multiple functions implementing the same operation " "for different types. Which implementation should be used during a call is " @@ -1085,7 +1096,7 @@ msgstr "" "pour différents types. L'implémentation à utiliser est déterminée lors de " "l'appel par l'algorithme de répartition." -#: ../Doc/glossary.rst:459 +#: ../Doc/glossary.rst:468 msgid "" "See also the :term:`single dispatch` glossary entry, the :func:`functools." "singledispatch` decorator, and :pep:`443`." @@ -1093,19 +1104,19 @@ msgstr "" "Voir aussi :term:`single dispatch`, le décorateur :func:`functools." "singledispatch` et la :pep:`443`." -#: ../Doc/glossary.rst:462 +#: ../Doc/glossary.rst:471 msgid "GIL" msgstr "GIL" -#: ../Doc/glossary.rst:464 +#: ../Doc/glossary.rst:473 msgid "See :term:`global interpreter lock`." msgstr "Voir :term:`global interpreter lock`." -#: ../Doc/glossary.rst:465 +#: ../Doc/glossary.rst:474 msgid "global interpreter lock" msgstr "verrou global de l'interpréteur" -#: ../Doc/glossary.rst:467 +#: ../Doc/glossary.rst:476 msgid "" "The mechanism used by the :term:`CPython` interpreter to assure that only " "one thread executes Python :term:`bytecode` at a time. This simplifies the " @@ -1125,7 +1136,7 @@ msgstr "" "au détriment malheureusement de beaucoup du parallélisme possible sur les " "machines ayant plusieurs processeurs." -#: ../Doc/glossary.rst:476 +#: ../Doc/glossary.rst:485 msgid "" "However, some extension modules, either standard or third-party, are " "designed so as to release the GIL when doing computationally-intensive tasks " @@ -1137,7 +1148,7 @@ msgstr "" "compression ou le hachage. De la même manière, le GIL est toujours libéré " "lors des entrées / sorties." -#: ../Doc/glossary.rst:481 +#: ../Doc/glossary.rst:490 msgid "" "Past efforts to create a \"free-threaded\" interpreter (one which locks " "shared data at a much finer granularity) have not been successful because " @@ -1151,11 +1162,11 @@ msgstr "" "corriger ce problème de performance induit mènerait à une implémentation " "beaucoup plus compliquée et donc plus coûteuse à maintenir." -#: ../Doc/glossary.rst:487 +#: ../Doc/glossary.rst:496 msgid "hash-based pyc" msgstr "*pyc* utilisant le hachage" -#: ../Doc/glossary.rst:489 +#: ../Doc/glossary.rst:498 msgid "" "A bytecode cache file that uses the hash rather than the last-modified time " "of the corresponding source file to determine its validity. See :ref:`pyc-" @@ -1166,11 +1177,11 @@ msgstr "" "source correspondant pour déterminer sa validité. Voir :ref:`pyc-" "invalidation`." -#: ../Doc/glossary.rst:492 +#: ../Doc/glossary.rst:501 msgid "hashable" msgstr "hachable" -#: ../Doc/glossary.rst:494 +#: ../Doc/glossary.rst:503 msgid "" "An object is *hashable* if it has a hash value which never changes during " "its lifetime (it needs a :meth:`__hash__` method), and can be compared to " @@ -1183,7 +1194,7 @@ msgstr "" "hachables dont la comparaison par ``__eq__`` est vraie doivent avoir la même " "empreinte." -#: ../Doc/glossary.rst:499 +#: ../Doc/glossary.rst:508 msgid "" "Hashability makes an object usable as a dictionary key and a set member, " "because these data structures use the hash value internally." @@ -1192,7 +1203,7 @@ msgstr "" "en tant que membre d'un ensemble (type *set*), car ces structures de données " "utilisent ce *hash*." -#: ../Doc/glossary.rst:502 +#: ../Doc/glossary.rst:511 msgid "" "All of Python's immutable built-in objects are hashable; mutable containers " "(such as lists or dictionaries) are not. Objects which are instances of " @@ -1206,11 +1217,11 @@ msgstr "" "par défaut. Elles sont toutes considérées différentes (sauf avec elles-" "mêmes) et leur valeur de hachage est calculée à partir de leur :func:`id`." -#: ../Doc/glossary.rst:507 +#: ../Doc/glossary.rst:516 msgid "IDLE" msgstr "IDLE" -#: ../Doc/glossary.rst:509 +#: ../Doc/glossary.rst:518 msgid "" "An Integrated Development Environment for Python. IDLE is a basic editor " "and interpreter environment which ships with the standard distribution of " @@ -1219,11 +1230,11 @@ msgstr "" "Environnement de développement intégré pour Python. IDLE est un éditeur " "basique et un interpréteur livré avec la distribution standard de Python." -#: ../Doc/glossary.rst:512 +#: ../Doc/glossary.rst:521 msgid "immutable" msgstr "immuable" -#: ../Doc/glossary.rst:514 +#: ../Doc/glossary.rst:523 msgid "" "An object with a fixed value. Immutable objects include numbers, strings " "and tuples. Such an object cannot be altered. A new object has to be " @@ -1237,11 +1248,11 @@ msgstr "" "quand une valeur de *hash* constante est requise, typiquement en clé de " "dictionnaire." -#: ../Doc/glossary.rst:519 +#: ../Doc/glossary.rst:528 msgid "import path" msgstr "chemin des imports" -#: ../Doc/glossary.rst:521 +#: ../Doc/glossary.rst:530 msgid "" "A list of locations (or :term:`path entries `) that are searched " "by the :term:`path based finder` for modules to import. During import, this " @@ -1254,21 +1265,21 @@ msgstr "" "pour les sous-paquets, elle peut aussi venir de l'attribut ``__path__`` du " "paquet parent." -#: ../Doc/glossary.rst:526 +#: ../Doc/glossary.rst:535 msgid "importing" msgstr "importer" -#: ../Doc/glossary.rst:528 +#: ../Doc/glossary.rst:537 msgid "" "The process by which Python code in one module is made available to Python " "code in another module." msgstr "Processus rendant le code Python d'un module disponible dans un autre." -#: ../Doc/glossary.rst:530 +#: ../Doc/glossary.rst:539 msgid "importer" msgstr "importateur" -#: ../Doc/glossary.rst:532 +#: ../Doc/glossary.rst:541 msgid "" "An object that both finds and loads a module; both a :term:`finder` and :" "term:`loader` object." @@ -1276,11 +1287,11 @@ msgstr "" "Objet qui trouve et charge un module, en même temps un :term:`chercheur " "` et un :term:`chargeur `." -#: ../Doc/glossary.rst:534 +#: ../Doc/glossary.rst:543 msgid "interactive" msgstr "interactif" -#: ../Doc/glossary.rst:536 +#: ../Doc/glossary.rst:545 msgid "" "Python has an interactive interpreter which means you can enter statements " "and expressions at the interpreter prompt, immediately execute them and see " @@ -1295,11 +1306,11 @@ msgstr "" "de votre ordinateur). C'est un moyen puissant pour tester de nouvelles idées " "ou étudier de nouveaux modules (souvenez-vous de ``help(x)``)." -#: ../Doc/glossary.rst:542 +#: ../Doc/glossary.rst:551 msgid "interpreted" msgstr "interprété" -#: ../Doc/glossary.rst:544 +#: ../Doc/glossary.rst:553 msgid "" "Python is an interpreted language, as opposed to a compiled one, though the " "distinction can be blurry because of the presence of the bytecode compiler. " @@ -1316,11 +1327,11 @@ msgstr "" "développement / débogage plus court que les langages compilés. Cependant, " "ils s'exécutent généralement plus lentement. Voir aussi :term:`interactif`." -#: ../Doc/glossary.rst:551 +#: ../Doc/glossary.rst:560 msgid "interpreter shutdown" msgstr "arrêt de l'interpréteur" -#: ../Doc/glossary.rst:553 +#: ../Doc/glossary.rst:562 msgid "" "When asked to shut down, the Python interpreter enters a special phase where " "it gradually releases all allocated resources, such as modules and various " @@ -1340,7 +1351,7 @@ msgstr "" "ressources auxquelles il fait appel pourraient ne plus fonctionner, " "(typiquement les modules des bibliothèques ou le mécanisme de *warning*)." -#: ../Doc/glossary.rst:562 +#: ../Doc/glossary.rst:571 msgid "" "The main reason for interpreter shutdown is that the ``__main__`` module or " "the script being run has finished executing." @@ -1348,11 +1359,11 @@ msgstr "" "La principale raison d'arrêt de l'interpréteur est que le module " "``__main__`` ou le script en cours d'exécution a terminé de s'exécuter." -#: ../Doc/glossary.rst:564 +#: ../Doc/glossary.rst:573 msgid "iterable" msgstr "itérable" -#: ../Doc/glossary.rst:566 +#: ../Doc/glossary.rst:575 msgid "" "An object capable of returning its members one at a time. Examples of " "iterables include all sequence types (such as :class:`list`, :class:`str`, " @@ -1367,7 +1378,7 @@ msgstr "" "tout objet d'une classe ayant une méthode :meth:`__iter__` ou :meth:" "`__getitem__` qui implémente la sémantique d'une :term:`Sequence`." -#: ../Doc/glossary.rst:573 +#: ../Doc/glossary.rst:582 msgid "" "Iterables can be used in a :keyword:`for` loop and in many other places " "where a sequence is needed (:func:`zip`, :func:`map`, ...). When an " @@ -1390,11 +1401,11 @@ msgstr "" "une variable temporaire anonyme pour garder l'itérateur durant la boucle. " "Voir aussi :term:`itérateur`, :term:`séquence` et :term:`générateur`." -#: ../Doc/glossary.rst:583 +#: ../Doc/glossary.rst:592 msgid "iterator" msgstr "itérateur" -#: ../Doc/glossary.rst:585 +#: ../Doc/glossary.rst:594 msgid "" "An object representing a stream of data. Repeated calls to the iterator's :" "meth:`~iterator.__next__` method (or passing it to the built-in function :" @@ -1427,15 +1438,15 @@ msgstr "" "itérateur donnerait simplement le même objet itérateur épuisé utilisé dans " "son itération précédente, le faisant ressembler à un conteneur vide." -#: ../Doc/glossary.rst:600 +#: ../Doc/glossary.rst:609 msgid "More information can be found in :ref:`typeiter`." msgstr "Vous trouverez davantage d'informations dans :ref:`typeiter`." -#: ../Doc/glossary.rst:601 +#: ../Doc/glossary.rst:610 msgid "key function" msgstr "fonction clé" -#: ../Doc/glossary.rst:603 +#: ../Doc/glossary.rst:612 msgid "" "A key function or collation function is a callable that returns a value used " "for sorting or ordering. For example, :func:`locale.strxfrm` is used to " @@ -1446,7 +1457,7 @@ msgstr "" "utilisée pour générer une clé de classement prenant en compte les " "conventions de classement spécifiques aux paramètres régionaux courants." -#: ../Doc/glossary.rst:608 +#: ../Doc/glossary.rst:617 msgid "" "A number of tools in Python accept key functions to control how elements are " "ordered or grouped. They include :func:`min`, :func:`max`, :func:`sorted`, :" @@ -1459,7 +1470,7 @@ msgstr "" "merge`, :func:`heapq.nsmallest`, :func:`heapq.nlargest` et :func:`itertools." "groupby`." -#: ../Doc/glossary.rst:614 +#: ../Doc/glossary.rst:623 msgid "" "There are several ways to create a key function. For example. the :meth:" "`str.lower` method can serve as a key function for case insensitive sorts. " @@ -1480,19 +1491,19 @@ msgstr "" "Trier ` pour des exemples de création et d'utilisation de " "fonctions clefs." -#: ../Doc/glossary.rst:622 +#: ../Doc/glossary.rst:631 msgid "keyword argument" msgstr "argument nommé" -#: ../Doc/glossary.rst:624 ../Doc/glossary.rst:888 +#: ../Doc/glossary.rst:633 ../Doc/glossary.rst:897 msgid "See :term:`argument`." msgstr "Voir :term:`argument`." -#: ../Doc/glossary.rst:625 +#: ../Doc/glossary.rst:634 msgid "lambda" msgstr "lambda" -#: ../Doc/glossary.rst:627 +#: ../Doc/glossary.rst:636 msgid "" "An anonymous inline function consisting of a single :term:`expression` which " "is evaluated when the function is called. The syntax to create a lambda " @@ -1503,11 +1514,11 @@ msgstr "" "syntaxe pour créer des fonctions lambda est: ``lambda [parameters]: " "expression``" -#: ../Doc/glossary.rst:630 +#: ../Doc/glossary.rst:639 msgid "LBYL" msgstr "LBYL" -#: ../Doc/glossary.rst:632 +#: ../Doc/glossary.rst:641 msgid "" "Look before you leap. This coding style explicitly tests for pre-conditions " "before making calls or lookups. This style contrasts with the :term:`EAFP` " @@ -1519,7 +1530,7 @@ msgstr "" "appels ou des accès. Ce style contraste avec le style :term:`EAFP` et se " "caractérise par la présence de beaucoup d'instructions :keyword:`if`." -#: ../Doc/glossary.rst:637 +#: ../Doc/glossary.rst:646 msgid "" "In a multi-threaded environment, the LBYL approach can risk introducing a " "race condition between \"the looking\" and \"the leaping\". For example, " @@ -1535,11 +1546,11 @@ msgstr "" "l'accès. Ce problème peut être résolu avec des verrous (*locks*) ou avec " "l'approche EAFP." -#: ../Doc/glossary.rst:642 +#: ../Doc/glossary.rst:651 msgid "list" msgstr "*list*" -#: ../Doc/glossary.rst:644 +#: ../Doc/glossary.rst:653 msgid "" "A built-in Python :term:`sequence`. Despite its name it is more akin to an " "array in other languages than to a linked list since access to elements is " @@ -1549,11 +1560,11 @@ msgstr "" "``list`` ressemble plus à un tableau (*array* dans la plupart des langages) " "qu'à une liste chaînée puisque les accès se font en O(1)." -#: ../Doc/glossary.rst:647 +#: ../Doc/glossary.rst:656 msgid "list comprehension" msgstr "liste en compréhension (ou liste en intension)" -#: ../Doc/glossary.rst:649 +#: ../Doc/glossary.rst:658 msgid "" "A compact way to process all or part of the elements in a sequence and " "return a list with the results. ``result = ['{:#04x}'.format(x) for x in " @@ -1568,11 +1579,11 @@ msgstr "" "hexadécimal (``0x``...). La clause :keyword:`if` est optionnelle. Si elle " "est omise, tous les éléments du ``range(256)`` seront utilisés." -#: ../Doc/glossary.rst:655 +#: ../Doc/glossary.rst:664 msgid "loader" msgstr "chargeur" -#: ../Doc/glossary.rst:657 +#: ../Doc/glossary.rst:666 msgid "" "An object that loads a module. It must define a method named :meth:" "`load_module`. A loader is typically returned by a :term:`finder`. See :pep:" @@ -1584,19 +1595,19 @@ msgstr "" "`. Voir la :pep:`302` pour plus de détails et :class:`importlib.ABC." "Loader` pour sa :term:`classe de base abstraite`." -#: ../Doc/glossary.rst:661 +#: ../Doc/glossary.rst:670 msgid "magic method" msgstr "méthode magique" -#: ../Doc/glossary.rst:665 +#: ../Doc/glossary.rst:674 msgid "An informal synonym for :term:`special method`." msgstr "Un synonyme informel de :term:`special method`." -#: ../Doc/glossary.rst:666 +#: ../Doc/glossary.rst:675 msgid "mapping" msgstr "tableau de correspondances" -#: ../Doc/glossary.rst:668 +#: ../Doc/glossary.rst:677 msgid "" "A container object that supports arbitrary key lookups and implements the " "methods specified in the :class:`~collections.abc.Mapping` or :class:" @@ -1613,11 +1624,11 @@ msgstr "" "`dict`, :class:`collections.defaultdict`, :class:`collections.OrderedDict` " "et :class:`collections.Counter`." -#: ../Doc/glossary.rst:674 +#: ../Doc/glossary.rst:683 msgid "meta path finder" msgstr "chercheur dans les méta-chemins" -#: ../Doc/glossary.rst:676 +#: ../Doc/glossary.rst:685 msgid "" "A :term:`finder` returned by a search of :data:`sys.meta_path`. Meta path " "finders are related to, but different from :term:`path entry finders `." -#: ../Doc/glossary.rst:680 +#: ../Doc/glossary.rst:689 msgid "" "See :class:`importlib.abc.MetaPathFinder` for the methods that meta path " "finders implement." @@ -1635,11 +1646,11 @@ msgstr "" "Voir :class:`importlib.abc.MetaPathFinder` pour les méthodes que les " "chercheurs dans les méta-chemins doivent implémenter." -#: ../Doc/glossary.rst:682 +#: ../Doc/glossary.rst:691 msgid "metaclass" msgstr "métaclasse" -#: ../Doc/glossary.rst:684 +#: ../Doc/glossary.rst:693 msgid "" "The class of a class. Class definitions create a class name, a class " "dictionary, and a list of base classes. The metaclass is responsible for " @@ -1663,15 +1674,15 @@ msgstr "" "suivre la création d'objets, implémenter des singletons et bien d'autres " "tâches." -#: ../Doc/glossary.rst:694 +#: ../Doc/glossary.rst:703 msgid "More information can be found in :ref:`metaclasses`." msgstr "Plus d'informations sont disponibles dans : :ref:`metaclasses`." -#: ../Doc/glossary.rst:695 +#: ../Doc/glossary.rst:704 msgid "method" msgstr "méthode" -#: ../Doc/glossary.rst:697 +#: ../Doc/glossary.rst:706 msgid "" "A function which is defined inside a class body. If called as an attribute " "of an instance of that class, the method will get the instance object as its " @@ -1683,11 +1694,11 @@ msgstr "" "premier :term:`argument` (qui, par convention, est habituellement nommé " "``self``). Voir :term:`function` et :term:`nested scope`." -#: ../Doc/glossary.rst:701 +#: ../Doc/glossary.rst:710 msgid "method resolution order" msgstr "ordre de résolution des méthodes" -#: ../Doc/glossary.rst:703 +#: ../Doc/glossary.rst:712 msgid "" "Method Resolution Order is the order in which base classes are searched for " "a member during lookup. See `The Python 2.3 Method Resolution Order `_ pour plus de détails sur l'algorithme utilisé par " "l'interpréteur Python depuis la version 2.3." -#: ../Doc/glossary.rst:707 +#: ../Doc/glossary.rst:716 msgid "module" msgstr "module" -#: ../Doc/glossary.rst:709 +#: ../Doc/glossary.rst:718 msgid "" "An object that serves as an organizational unit of Python code. Modules " "have a namespace containing arbitrary Python objects. Modules are loaded " @@ -1715,15 +1726,15 @@ msgstr "" "modules ont un espace de nommage et peuvent contenir n'importe quels objets " "Python. Charger des modules est appelé :term:`importer `." -#: ../Doc/glossary.rst:713 +#: ../Doc/glossary.rst:722 msgid "See also :term:`package`." msgstr "Voir aussi :term:`paquet`." -#: ../Doc/glossary.rst:714 +#: ../Doc/glossary.rst:723 msgid "module spec" msgstr "spécificateur de module" -#: ../Doc/glossary.rst:716 +#: ../Doc/glossary.rst:725 msgid "" "A namespace containing the import-related information used to load a module. " "An instance of :class:`importlib.machinery.ModuleSpec`." @@ -1732,19 +1743,19 @@ msgstr "" "utilisées pour charger un module. C'est une instance de la classe :class:" "`importlib.machinery.ModuleSpec`." -#: ../Doc/glossary.rst:718 +#: ../Doc/glossary.rst:727 msgid "MRO" msgstr "MRO" -#: ../Doc/glossary.rst:720 +#: ../Doc/glossary.rst:729 msgid "See :term:`method resolution order`." msgstr "Voir :term:`ordre de résolution des méthodes`." -#: ../Doc/glossary.rst:721 +#: ../Doc/glossary.rst:730 msgid "mutable" msgstr "muable" -#: ../Doc/glossary.rst:723 +#: ../Doc/glossary.rst:732 msgid "" "Mutable objects can change their value but keep their :func:`id`. See also :" "term:`immutable`." @@ -1752,11 +1763,11 @@ msgstr "" "Un objet muable peut changer de valeur tout en gardant le même :func:`id`. " "Voir aussi :term:`immuable`." -#: ../Doc/glossary.rst:725 +#: ../Doc/glossary.rst:734 msgid "named tuple" msgstr "n-uplet nommé" -#: ../Doc/glossary.rst:727 +#: ../Doc/glossary.rst:736 msgid "" "Any tuple-like class whose indexable elements are also accessible using " "named attributes (for example, :func:`time.localtime` returns a tuple-like " @@ -1769,7 +1780,7 @@ msgstr "" "donne un objet ressemblant à un *n-uplet*, dont *year* est accessible par " "son indice : ``t[0]`` ou par son nom : ``t.tm_year``)." -#: ../Doc/glossary.rst:732 +#: ../Doc/glossary.rst:741 msgid "" "A named tuple can be a built-in type such as :class:`time.struct_time`, or " "it can be created with a regular class definition. A full featured named " @@ -1785,11 +1796,11 @@ msgstr "" "supplémentaires, tel qu'une représentation lisible comme " "``Employee(name='jones', title='programmer')``." -#: ../Doc/glossary.rst:738 +#: ../Doc/glossary.rst:747 msgid "namespace" msgstr "espace de nommage" -#: ../Doc/glossary.rst:740 +#: ../Doc/glossary.rst:749 msgid "" "The place where a variable is stored. Namespaces are implemented as " "dictionaries. There are the local, global and built-in namespaces as well " @@ -1813,11 +1824,11 @@ msgstr "" "implémentées respectivement dans les modules :mod:`random` et :mod:" "`itertools`." -#: ../Doc/glossary.rst:750 +#: ../Doc/glossary.rst:759 msgid "namespace package" msgstr "paquet-espace de nommage" -#: ../Doc/glossary.rst:752 +#: ../Doc/glossary.rst:761 msgid "" "A :pep:`420` :term:`package` which serves only as a container for " "subpackages. Namespace packages may have no physical representation, and " @@ -1829,15 +1840,15 @@ msgstr "" "aucune représentation physique et, plus spécifiquement, ne sont pas comme " "un :term:`paquet classique` puisqu'ils n'ont pas de fichier ``__init__.py``." -#: ../Doc/glossary.rst:757 +#: ../Doc/glossary.rst:766 msgid "See also :term:`module`." msgstr "Voir aussi :term:`module`." -#: ../Doc/glossary.rst:758 +#: ../Doc/glossary.rst:767 msgid "nested scope" msgstr "portée imbriquée" -#: ../Doc/glossary.rst:760 +#: ../Doc/glossary.rst:769 msgid "" "The ability to refer to a variable in an enclosing definition. For " "instance, a function defined inside another function can refer to variables " @@ -1855,11 +1866,11 @@ msgstr "" "dans l'espace de nommage global, le mot clef :keyword:`nonlocal` permet " "d'écrire dans l'espace de nommage dans lequel est déclarée la variable." -#: ../Doc/glossary.rst:767 +#: ../Doc/glossary.rst:776 msgid "new-style class" msgstr "nouvelle classe" -#: ../Doc/glossary.rst:769 +#: ../Doc/glossary.rst:778 msgid "" "Old name for the flavor of classes now used for all class objects. In " "earlier Python versions, only new-style classes could use Python's newer, " @@ -1872,11 +1883,11 @@ msgstr "" "__slots__`, les descripteurs, les propriétés, :meth:`__getattribute__`, les " "méthodes de classe et les méthodes statiques." -#: ../Doc/glossary.rst:773 +#: ../Doc/glossary.rst:782 msgid "object" msgstr "objet" -#: ../Doc/glossary.rst:775 +#: ../Doc/glossary.rst:784 msgid "" "Any data with state (attributes or value) and defined behavior (methods). " "Also the ultimate base class of any :term:`new-style class`." @@ -1886,11 +1897,11 @@ msgstr "" "l'ancêtre commun à absolument toutes les :term:`nouvelles classes `." -#: ../Doc/glossary.rst:778 +#: ../Doc/glossary.rst:787 msgid "package" msgstr "paquet" -#: ../Doc/glossary.rst:780 +#: ../Doc/glossary.rst:789 msgid "" "A Python :term:`module` which can contain submodules or recursively, " "subpackages. Technically, a package is a Python module with an ``__path__`` " @@ -1900,15 +1911,15 @@ msgstr "" "paquets. Techniquement, un paquet est un module qui possède un attribut " "``__path__``." -#: ../Doc/glossary.rst:784 +#: ../Doc/glossary.rst:793 msgid "See also :term:`regular package` and :term:`namespace package`." msgstr "Voir aussi :term:`paquet classique` et :term:`namespace package`." -#: ../Doc/glossary.rst:785 +#: ../Doc/glossary.rst:794 msgid "parameter" msgstr "paramètre" -#: ../Doc/glossary.rst:787 +#: ../Doc/glossary.rst:796 msgid "" "A named entity in a :term:`function` (or method) definition that specifies " "an :term:`argument` (or in some cases, arguments) that the function can " @@ -1918,7 +1929,7 @@ msgstr "" "décrivant un :term:`argument` (ou dans certains cas des arguments) que la " "fonction accepte. Il existe cinq sortes de paramètres :" -#: ../Doc/glossary.rst:791 +#: ../Doc/glossary.rst:800 msgid "" ":dfn:`positional-or-keyword`: specifies an argument that can be passed " "either :term:`positionally ` or as a :term:`keyword argument " @@ -1930,7 +1941,7 @@ msgstr "" "C'est le type de paramètre par défaut. Par exemple, *foo* et *bar* dans " "l'exemple suivant : ::" -#: ../Doc/glossary.rst:800 +#: ../Doc/glossary.rst:809 msgid "" ":dfn:`positional-only`: specifies an argument that can be supplied only by " "position. Python has no syntax for defining positional-only parameters. " @@ -1941,7 +1952,7 @@ msgstr "" "Python n'a pas de syntaxe pour déclarer de tels paramètres, cependant des " "fonctions natives, comme :func:`abs`, en utilisent." -#: ../Doc/glossary.rst:807 +#: ../Doc/glossary.rst:816 msgid "" ":dfn:`keyword-only`: specifies an argument that can be supplied only by " "keyword. Keyword-only parameters can be defined by including a single var-" @@ -1955,7 +1966,7 @@ msgstr "" "liste des paramètres avant eux. Par exemple, *kw_only1* et *kw_only2* dans " "le code suivant : ::" -#: ../Doc/glossary.rst:815 +#: ../Doc/glossary.rst:824 msgid "" ":dfn:`var-positional`: specifies that an arbitrary sequence of positional " "arguments can be provided (in addition to any positional arguments already " @@ -1968,7 +1979,7 @@ msgstr "" "d'autres paramètres). Un tel paramètre peut être défini en préfixant son nom " "par une ``*``. Par exemple *args* ci-après : ::" -#: ../Doc/glossary.rst:823 +#: ../Doc/glossary.rst:832 msgid "" ":dfn:`var-keyword`: specifies that arbitrarily many keyword arguments can be " "provided (in addition to any keyword arguments already accepted by other " @@ -1980,7 +1991,7 @@ msgstr "" "d'autres paramètres). Un tel paramètre est défini en préfixant le nom du " "paramètre par ``**``. Par exemple, *kwargs* ci-dessus." -#: ../Doc/glossary.rst:829 +#: ../Doc/glossary.rst:838 msgid "" "Parameters can specify both optional and required arguments, as well as " "default values for some optional arguments." @@ -1988,7 +1999,7 @@ msgstr "" "Les paramètres peuvent spécifier des arguments obligatoires ou optionnels, " "ainsi que des valeurs par défaut pour les arguments optionnels." -#: ../Doc/glossary.rst:832 +#: ../Doc/glossary.rst:841 msgid "" "See also the :term:`argument` glossary entry, the FAQ question on :ref:`the " "difference between arguments and parameters `, " @@ -2000,11 +2011,11 @@ msgstr "" "parameter>` dans la FAQ, la classe :class:`inspect.Parameter`, la section :" "ref:`function` et la :pep:`362`." -#: ../Doc/glossary.rst:836 +#: ../Doc/glossary.rst:845 msgid "path entry" msgstr "entrée de chemin" -#: ../Doc/glossary.rst:838 +#: ../Doc/glossary.rst:847 msgid "" "A single location on the :term:`import path` which the :term:`path based " "finder` consults to find modules for importing." @@ -2013,11 +2024,11 @@ msgstr "" "en anglais, d'où le *path*) que le :term:`chercheur basé sur les chemins " "` consulte pour trouver des modules à importer." -#: ../Doc/glossary.rst:840 +#: ../Doc/glossary.rst:849 msgid "path entry finder" msgstr "chercheur de chemins" -#: ../Doc/glossary.rst:842 +#: ../Doc/glossary.rst:851 msgid "" "A :term:`finder` returned by a callable on :data:`sys.path_hooks` (i.e. a :" "term:`path entry hook`) which knows how to locate modules given a :term:" @@ -2028,7 +2039,7 @@ msgstr "" "path `) qui sait où trouver des modules lorsqu'on lui donne " "une :term:`entrée de path `." -#: ../Doc/glossary.rst:846 +#: ../Doc/glossary.rst:855 msgid "" "See :class:`importlib.abc.PathEntryFinder` for the methods that path entry " "finders implement." @@ -2036,11 +2047,11 @@ msgstr "" "Voir :class:`importlib.abc.PathEntryFinder` pour les méthodes qu'un " "chercheur d'entrée dans *path* doit implémenter." -#: ../Doc/glossary.rst:848 +#: ../Doc/glossary.rst:857 msgid "path entry hook" msgstr "point d'entrée pour la recherche dans *path*" -#: ../Doc/glossary.rst:850 +#: ../Doc/glossary.rst:859 msgid "" "A callable on the :data:`sys.path_hook` list which returns a :term:`path " "entry finder` if it knows how to find modules on a specific :term:`path " @@ -2050,11 +2061,11 @@ msgstr "" "d'entrée dans path ` s'il sait où trouver des modules " "pour une :term:`entrée dans path ` donnée." -#: ../Doc/glossary.rst:853 +#: ../Doc/glossary.rst:862 msgid "path based finder" msgstr "chercheur basé sur les chemins" -#: ../Doc/glossary.rst:855 +#: ../Doc/glossary.rst:864 msgid "" "One of the default :term:`meta path finders ` which " "searches an :term:`import path` for modules." @@ -2063,11 +2074,11 @@ msgstr "" "défaut qui cherche des modules dans un :term:`chemin des imports `." -#: ../Doc/glossary.rst:857 +#: ../Doc/glossary.rst:866 msgid "path-like object" msgstr "objet simili-chemin" -#: ../Doc/glossary.rst:859 +#: ../Doc/glossary.rst:868 msgid "" "An object representing a file system path. A path-like object is either a :" "class:`str` or :class:`bytes` object representing a path, or an object " @@ -2087,11 +2098,11 @@ msgstr "" "peuvent être utilisées, respectivement, pour garantir un résultat de type :" "class:`str` ou :class:`bytes` à la place. A été Introduit par la :pep:`519`." -#: ../Doc/glossary.rst:867 +#: ../Doc/glossary.rst:876 msgid "PEP" msgstr "PEP" -#: ../Doc/glossary.rst:869 +#: ../Doc/glossary.rst:878 msgid "" "Python Enhancement Proposal. A PEP is a design document providing " "information to the Python community, or describing a new feature for Python " @@ -2104,7 +2115,7 @@ msgstr "" "ou son environnement. Les PEP doivent fournir une spécification technique " "concise et une justification des fonctionnalités proposées." -#: ../Doc/glossary.rst:875 +#: ../Doc/glossary.rst:884 msgid "" "PEPs are intended to be the primary mechanisms for proposing major new " "features, for collecting community input on an issue, and for documenting " @@ -2119,15 +2130,15 @@ msgstr "" "l’établissement d’un consensus au sein de la communauté et de documenter les " "opinions contradictoires." -#: ../Doc/glossary.rst:881 +#: ../Doc/glossary.rst:890 msgid "See :pep:`1`." msgstr "Voir :pep:`1`." -#: ../Doc/glossary.rst:882 +#: ../Doc/glossary.rst:891 msgid "portion" msgstr "portion" -#: ../Doc/glossary.rst:884 +#: ../Doc/glossary.rst:893 msgid "" "A set of files in a single directory (possibly stored in a zip file) that " "contribute to a namespace package, as defined in :pep:`420`." @@ -2136,15 +2147,15 @@ msgstr "" "fichier zip) qui contribue à l'espace de nommage d'un paquet, tel que défini " "dans la :pep:`420`." -#: ../Doc/glossary.rst:886 +#: ../Doc/glossary.rst:895 msgid "positional argument" msgstr "argument positionnel" -#: ../Doc/glossary.rst:889 +#: ../Doc/glossary.rst:898 msgid "provisional API" msgstr "API provisoire" -#: ../Doc/glossary.rst:891 +#: ../Doc/glossary.rst:900 msgid "" "A provisional API is one which has been deliberately excluded from the " "standard library's backwards compatibility guarantees. While major changes " @@ -2163,7 +2174,7 @@ msgstr "" "surviendront que si de sérieux problèmes sont découverts et qu'ils n'avaient " "pas été identifiés avant l'ajout de l'API." -#: ../Doc/glossary.rst:900 +#: ../Doc/glossary.rst:909 msgid "" "Even for provisional APIs, backwards incompatible changes are seen as a " "\"solution of last resort\" - every attempt will still be made to find a " @@ -2174,7 +2185,7 @@ msgstr "" "possible sera fait pour tenter de résoudre les problème en conservant la " "rétrocompatibilité." -#: ../Doc/glossary.rst:904 +#: ../Doc/glossary.rst:913 msgid "" "This process allows the standard library to continue to evolve over time, " "without locking in problematic design errors for extended periods of time. " @@ -2184,19 +2195,19 @@ msgstr "" "le temps, sans se bloquer longtemps sur des erreurs d'architecture. Voir la :" "pep:`411` pour plus de détails." -#: ../Doc/glossary.rst:907 +#: ../Doc/glossary.rst:916 msgid "provisional package" msgstr "paquet provisoire" -#: ../Doc/glossary.rst:909 +#: ../Doc/glossary.rst:918 msgid "See :term:`provisional API`." msgstr "Voir :term:`provisional API`." -#: ../Doc/glossary.rst:910 +#: ../Doc/glossary.rst:919 msgid "Python 3000" msgstr "Python 3000" -#: ../Doc/glossary.rst:912 +#: ../Doc/glossary.rst:921 msgid "" "Nickname for the Python 3.x release line (coined long ago when the release " "of version 3 was something in the distant future.) This is also abbreviated " @@ -2205,11 +2216,11 @@ msgstr "" "Surnom donné à la série des Python 3.x (très vieux surnom donné à l'époque " "où Python 3 représentait un futur lointain). Aussi abrégé *Py3k*." -#: ../Doc/glossary.rst:915 +#: ../Doc/glossary.rst:924 msgid "Pythonic" msgstr "*Pythonique*" -#: ../Doc/glossary.rst:917 +#: ../Doc/glossary.rst:926 msgid "" "An idea or piece of code which closely follows the most common idioms of the " "Python language, rather than implementing code using concepts common to " @@ -2225,17 +2236,17 @@ msgstr "" "les gens qui ne sont pas habitués à Python utilisent parfois un compteur " "numérique à la place : ::" -#: ../Doc/glossary.rst:927 +#: ../Doc/glossary.rst:936 msgid "As opposed to the cleaner, Pythonic method::" msgstr "" "Plutôt qu'utiliser la méthode, plus propre et élégante, donc " "*Pythonique* : ::" -#: ../Doc/glossary.rst:931 +#: ../Doc/glossary.rst:940 msgid "qualified name" msgstr "nom qualifié" -#: ../Doc/glossary.rst:933 +#: ../Doc/glossary.rst:942 msgid "" "A dotted name showing the \"path\" from a module's global scope to a class, " "function or method defined in that module, as defined in :pep:`3155`. For " @@ -2247,7 +2258,7 @@ msgstr "" "module, tel que défini dans la :pep:`3155`. Pour les fonctions et classes de " "premier niveau, le nom qualifié est le même que le nom de l'objet : ::" -#: ../Doc/glossary.rst:950 +#: ../Doc/glossary.rst:959 msgid "" "When used to refer to modules, the *fully qualified name* means the entire " "dotted path to the module, including any parent packages, e.g. ``email.mime." @@ -2258,11 +2269,11 @@ msgstr "" "par des points) vers le module, incluant tous les paquets parents. Par " "exemple : ``email.mime.text`` ::" -#: ../Doc/glossary.rst:957 +#: ../Doc/glossary.rst:966 msgid "reference count" msgstr "nombre de références" -#: ../Doc/glossary.rst:959 +#: ../Doc/glossary.rst:968 msgid "" "The number of references to an object. When the reference count of an " "object drops to zero, it is deallocated. Reference counting is generally " @@ -2278,11 +2289,11 @@ msgstr "" "func:`~sys.getrefcount` que les développeurs peuvent utiliser pour obtenir " "le nombre de références à un objet donné." -#: ../Doc/glossary.rst:965 +#: ../Doc/glossary.rst:974 msgid "regular package" msgstr "paquet classique" -#: ../Doc/glossary.rst:967 +#: ../Doc/glossary.rst:976 msgid "" "A traditional :term:`package`, such as a directory containing an ``__init__." "py`` file." @@ -2290,15 +2301,15 @@ msgstr "" ":term:`paquet` traditionnel, tel qu'un dossier contenant un fichier " "``__init__.py``." -#: ../Doc/glossary.rst:970 +#: ../Doc/glossary.rst:979 msgid "See also :term:`namespace package`." msgstr "Voir aussi :term:`paquet-espace de nommage `." -#: ../Doc/glossary.rst:971 +#: ../Doc/glossary.rst:980 msgid "__slots__" msgstr "``__slots__``" -#: ../Doc/glossary.rst:973 +#: ../Doc/glossary.rst:982 msgid "" "A declaration inside a class that saves memory by pre-declaring space for " "instance attributes and eliminating instance dictionaries. Though popular, " @@ -2313,11 +2324,11 @@ msgstr "" "nombre d'instances dans une application devient un sujet critique pour la " "mémoire." -#: ../Doc/glossary.rst:978 +#: ../Doc/glossary.rst:987 msgid "sequence" msgstr "séquence" -#: ../Doc/glossary.rst:980 +#: ../Doc/glossary.rst:989 msgid "" "An :term:`iterable` which supports efficient element access using integer " "indices via the :meth:`__getitem__` special method and defines a :meth:" @@ -2336,7 +2347,7 @@ msgstr "" "*mapping* plutôt qu'une séquence, car ses accès se font par une clé " "arbitraire :term:`immuable` plutôt qu'un nombre entier." -#: ../Doc/glossary.rst:989 +#: ../Doc/glossary.rst:998 msgid "" "The :class:`collections.abc.Sequence` abstract base class defines a much " "richer interface that goes beyond just :meth:`__getitem__` and :meth:" @@ -2350,11 +2361,11 @@ msgstr "" "et :meth:`__reversed__`. Les types qui implémentent cette interface étendue " "peuvent s'enregistrer explicitement en utilisant :func:`~abc.register`." -#: ../Doc/glossary.rst:996 +#: ../Doc/glossary.rst:1005 msgid "single dispatch" msgstr "distribution simple" -#: ../Doc/glossary.rst:998 +#: ../Doc/glossary.rst:1007 msgid "" "A form of :term:`generic function` dispatch where the implementation is " "chosen based on the type of a single argument." @@ -2363,11 +2374,11 @@ msgstr "" "générique>`, où l'implémentation est choisie en fonction du type d'un seul " "argument." -#: ../Doc/glossary.rst:1000 +#: ../Doc/glossary.rst:1009 msgid "slice" msgstr "tranche" -#: ../Doc/glossary.rst:1002 +#: ../Doc/glossary.rst:1011 msgid "" "An object usually containing a portion of a :term:`sequence`. A slice is " "created using the subscript notation, ``[]`` with colons between numbers " @@ -2380,11 +2391,11 @@ msgstr "" "``variable_name[1:3:5]``. Cette notation utilise des objets :class:`slice` " "en interne." -#: ../Doc/glossary.rst:1006 +#: ../Doc/glossary.rst:1015 msgid "special method" msgstr "méthode spéciale" -#: ../Doc/glossary.rst:1010 +#: ../Doc/glossary.rst:1019 msgid "" "A method that is called implicitly by Python to execute a certain operation " "on a type, such as addition. Such methods have names starting and ending " @@ -2396,11 +2407,11 @@ msgstr "" "ont des noms commençant et terminant par des doubles tirets bas. Les " "méthodes spéciales sont documentées dans :ref:`specialnames`." -#: ../Doc/glossary.rst:1014 +#: ../Doc/glossary.rst:1023 msgid "statement" msgstr "instruction" -#: ../Doc/glossary.rst:1016 +#: ../Doc/glossary.rst:1025 msgid "" "A statement is part of a suite (a \"block\" of code). A statement is either " "an :term:`expression` or one of several constructs with a keyword, such as :" @@ -2411,11 +2422,11 @@ msgstr "" "constructions basées sur un mot-clé, comme :keyword:`if`, :keyword:`while` " "ou :keyword:`for`." -#: ../Doc/glossary.rst:1019 +#: ../Doc/glossary.rst:1028 msgid "struct sequence" msgstr "*struct sequence*" -#: ../Doc/glossary.rst:1021 +#: ../Doc/glossary.rst:1030 msgid "" "A tuple with named elements. Struct sequences expose an interface similar " "to :term:`named tuple` in that elements can be accessed either by index or " @@ -2432,21 +2443,21 @@ msgstr "" "_asdict`. Par exemple :data:`sys.float_info` ou les valeurs données par :" "func:`os.stat` sont des *struct sequence*." -#: ../Doc/glossary.rst:1027 +#: ../Doc/glossary.rst:1036 msgid "text encoding" msgstr "encodage de texte" -#: ../Doc/glossary.rst:1029 +#: ../Doc/glossary.rst:1038 msgid "A codec which encodes Unicode strings to bytes." msgstr "" "Codec (codeur-décodeur) qui convertit des chaînes de caractères Unicode en " "octets (classe *bytes*)." -#: ../Doc/glossary.rst:1030 +#: ../Doc/glossary.rst:1039 msgid "text file" msgstr "fichier texte" -#: ../Doc/glossary.rst:1032 +#: ../Doc/glossary.rst:1041 msgid "" "A :term:`file object` able to read and write :class:`str` objects. Often, a " "text file actually accesses a byte-oriented datastream and handles the :term:" @@ -2461,7 +2472,7 @@ msgstr "" "ou ``'w'``), :data:`sys.stdin`, :data:`sys.stdout` et les instances de :" "class:`io.StringIO`." -#: ../Doc/glossary.rst:1039 +#: ../Doc/glossary.rst:1048 msgid "" "See also :term:`binary file` for a file object able to read and write :term:" "`bytes-like objects `." @@ -2469,11 +2480,11 @@ msgstr "" "Voir aussi :term:`binary file` pour un objet fichier capable de lire et " "d'écrire :term:`bytes-like objects `." -#: ../Doc/glossary.rst:1041 +#: ../Doc/glossary.rst:1050 msgid "triple-quoted string" msgstr "chaîne entre triple guillemets" -#: ../Doc/glossary.rst:1043 +#: ../Doc/glossary.rst:1052 msgid "" "A string which is bound by three instances of either a quotation mark (\") " "or an apostrophe ('). While they don't provide any functionality not " @@ -2492,11 +2503,11 @@ msgstr "" "\\``. Elle est ainsi particulièrement utile pour les chaînes de " "documentation (*docstrings*)." -#: ../Doc/glossary.rst:1050 +#: ../Doc/glossary.rst:1059 msgid "type" msgstr "type" -#: ../Doc/glossary.rst:1052 +#: ../Doc/glossary.rst:1061 msgid "" "The type of a Python object determines what kind of object it is; every " "object has a type. An object's type is accessible as its :attr:`~instance." @@ -2506,15 +2517,15 @@ msgstr "" "objets ont un type. Le type d'un objet peut être obtenu via son attribut :" "attr:`~instance.__class__` ou via ``type(obj)``." -#: ../Doc/glossary.rst:1056 +#: ../Doc/glossary.rst:1065 msgid "type alias" msgstr "alias de type" -#: ../Doc/glossary.rst:1058 +#: ../Doc/glossary.rst:1067 msgid "A synonym for a type, created by assigning the type to an identifier." msgstr "Synonyme d'un type, créé en affectant le type à un identifiant." -#: ../Doc/glossary.rst:1060 +#: ../Doc/glossary.rst:1069 msgid "" "Type aliases are useful for simplifying :term:`type hints `. For " "example::" @@ -2522,19 +2533,19 @@ msgstr "" "Les alias de types sont utiles pour simplifier les :term:`indications de " "types `. Par exemple ::" -#: ../Doc/glossary.rst:1069 +#: ../Doc/glossary.rst:1078 msgid "could be made more readable like this::" msgstr "pourrait être rendu plus lisible comme ceci ::" -#: ../Doc/glossary.rst:1078 ../Doc/glossary.rst:1092 +#: ../Doc/glossary.rst:1087 ../Doc/glossary.rst:1101 msgid "See :mod:`typing` and :pep:`484`, which describe this functionality." msgstr "Voir :mod:`typing` et :pep:`484`, qui décrivent cette fonctionnalité." -#: ../Doc/glossary.rst:1079 +#: ../Doc/glossary.rst:1088 msgid "type hint" msgstr "indication de type" -#: ../Doc/glossary.rst:1081 +#: ../Doc/glossary.rst:1090 msgid "" "An :term:`annotation` that specifies the expected type for a variable, a " "class attribute, or a function parameter or return value." @@ -2542,7 +2553,7 @@ msgstr "" "Le :term:`annotation` qui spécifie le type attendu pour une variable, un " "attribut de classe, un paramètre de fonction ou une valeur de retour." -#: ../Doc/glossary.rst:1084 +#: ../Doc/glossary.rst:1093 msgid "" "Type hints are optional and are not enforced by Python but they are useful " "to static type analysis tools, and aid IDEs with code completion and " @@ -2553,7 +2564,7 @@ msgstr "" "statique et aident les IDE à compléter et à réusiner (*code refactoring* en " "anglais) le code." -#: ../Doc/glossary.rst:1088 +#: ../Doc/glossary.rst:1097 msgid "" "Type hints of global variables, class attributes, and functions, but not " "local variables, can be accessed using :func:`typing.get_type_hints`." @@ -2562,11 +2573,11 @@ msgstr "" "fonctions, mais pas de variables locales, peuvent être consultés en " "utilisant :func:`typing.get_type_hints`." -#: ../Doc/glossary.rst:1093 +#: ../Doc/glossary.rst:1102 msgid "universal newlines" msgstr "retours à la ligne universels" -#: ../Doc/glossary.rst:1095 +#: ../Doc/glossary.rst:1104 msgid "" "A manner of interpreting text streams in which all of the following are " "recognized as ending a line: the Unix end-of-line convention ``'\\n'``, the " @@ -2580,22 +2591,22 @@ msgstr "" "``'\\r'``. Voir la :pep:`278` et la :pep:`3116`, ainsi que la fonction :func:" "`bytes.splitlines` pour d'autres usages." -#: ../Doc/glossary.rst:1100 +#: ../Doc/glossary.rst:1109 msgid "variable annotation" msgstr "annotation de variable" -#: ../Doc/glossary.rst:1102 +#: ../Doc/glossary.rst:1111 msgid "An :term:`annotation` of a variable or a class attribute." msgstr ":term:`annotation` d'une variable ou d'un attribut de classe." -#: ../Doc/glossary.rst:1104 +#: ../Doc/glossary.rst:1113 msgid "" "When annotating a variable or a class attribute, assignment is optional::" msgstr "" "Lorsque vous annotez une variable ou un attribut de classe, l'affectation " "est facultative ::" -#: ../Doc/glossary.rst:1109 +#: ../Doc/glossary.rst:1118 msgid "" "Variable annotations are usually used for :term:`type hints `: " "for example this variable is expected to take :class:`int` values::" @@ -2604,13 +2615,13 @@ msgstr "" "`indications de types ` : par exemple, cette variable devrait " "prendre des valeurs de type :class:`int` ::" -#: ../Doc/glossary.rst:1115 +#: ../Doc/glossary.rst:1124 msgid "Variable annotation syntax is explained in section :ref:`annassign`." msgstr "" "La syntaxe d'annotation de la variable est expliquée dans la section :ref:" "`annassign`." -#: ../Doc/glossary.rst:1117 +#: ../Doc/glossary.rst:1126 msgid "" "See :term:`function annotation`, :pep:`484` and :pep:`526`, which describe " "this functionality." @@ -2618,11 +2629,11 @@ msgstr "" "Reportez-vous à :term:`function annotation`, à la :pep:` 484` et à la :pep:" "`526` qui décrivent cette fonctionnalité." -#: ../Doc/glossary.rst:1119 +#: ../Doc/glossary.rst:1128 msgid "virtual environment" msgstr "environnement virtuel" -#: ../Doc/glossary.rst:1121 +#: ../Doc/glossary.rst:1130 msgid "" "A cooperatively isolated runtime environment that allows Python users and " "applications to install and upgrade Python distribution packages without " @@ -2634,15 +2645,15 @@ msgstr "" "des paquets sans interférer avec d'autres applications Python fonctionnant " "sur le même système." -#: ../Doc/glossary.rst:1126 +#: ../Doc/glossary.rst:1135 msgid "See also :mod:`venv`." msgstr "Voir aussi :mod:`venv`." -#: ../Doc/glossary.rst:1127 +#: ../Doc/glossary.rst:1136 msgid "virtual machine" msgstr "machine virtuelle" -#: ../Doc/glossary.rst:1129 +#: ../Doc/glossary.rst:1138 msgid "" "A computer defined entirely in software. Python's virtual machine executes " "the :term:`bytecode` emitted by the bytecode compiler." @@ -2651,11 +2662,11 @@ msgstr "" "(*virtual machine*) de Python exécute le :term:`bytecode` produit par le " "compilateur de *bytecode*." -#: ../Doc/glossary.rst:1131 +#: ../Doc/glossary.rst:1140 msgid "Zen of Python" msgstr "Le zen de Python" -#: ../Doc/glossary.rst:1133 +#: ../Doc/glossary.rst:1142 msgid "" "Listing of Python design principles and philosophies that are helpful in " "understanding and using the language. The listing can be found by typing " diff --git a/howto/logging.po b/howto/logging.po index b8b14fe0..43ac7a58 100644 --- a/howto/logging.po +++ b/howto/logging.po @@ -4,14 +4,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-21 13:08+0200\n" +"Last-Translator: Jules Lasne \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: Jules Lasne \n" "X-Generator: Poedit 2.2.1\n" #: ../Doc/howto/logging.rst:3 diff --git a/howto/unicode.po b/howto/unicode.po index eca35c63..c94727f0 100644 --- a/howto/unicode.po +++ b/howto/unicode.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-05-11 12:37+0200\n" "Last-Translator: Mathieu Dupuy \n" "Language-Team: FRENCH \n" @@ -274,11 +274,13 @@ msgid "It can handle any Unicode code point." msgstr "Il peut gérer n'importe quel point de code Unicode." #: ../Doc/howto/unicode.rst:138 +#, fuzzy msgid "" -"A Unicode string is turned into a sequence of bytes containing no embedded " -"zero bytes. This avoids byte-ordering issues, and means UTF-8 strings can " -"be processed by C functions such as ``strcpy()`` and sent through protocols " -"that can't handle zero bytes." +"A Unicode string is turned into a sequence of bytes that contains embedded " +"zero bytes only where they represent the null character (U+0000). This means " +"that UTF-8 strings can be processed by C functions such as ``strcpy()`` and " +"sent through protocols that can't handle zero bytes for anything other than " +"end-of-string markers." msgstr "" "Une chaîne Unicode est transformée en une séquence d'octets ne contenant " "aucun octet *zéro*. Cela évite les problèmes d'*endianness* et signifie que " @@ -286,11 +288,11 @@ msgstr "" "``strcpy()`` et envoyées via des protocoles qui ne peuvent pas gérer les " "octets *zéro*." -#: ../Doc/howto/unicode.rst:142 +#: ../Doc/howto/unicode.rst:143 msgid "A string of ASCII text is also valid UTF-8 text." msgstr "Une chaîne de texte ASCII est également un texte UTF-8 valide." -#: ../Doc/howto/unicode.rst:143 +#: ../Doc/howto/unicode.rst:144 msgid "" "UTF-8 is fairly compact; the majority of commonly used characters can be " "represented with one or two bytes." @@ -298,7 +300,7 @@ msgstr "" "UTF-8 est assez compact. La majorité des caractères couramment utilisés " "peuvent être représentés avec un ou deux octets." -#: ../Doc/howto/unicode.rst:145 +#: ../Doc/howto/unicode.rst:146 msgid "" "If bytes are corrupted or lost, it's possible to determine the start of the " "next UTF-8-encoded code point and resynchronize. It's also unlikely that " @@ -309,12 +311,21 @@ msgstr "" "est également improbable que des données 8-bits aléatoires ressemblent à du " "UTF-8 valide." -#: ../Doc/howto/unicode.rst:152 ../Doc/howto/unicode.rst:508 -#: ../Doc/howto/unicode.rst:729 +#: ../Doc/howto/unicode.rst:149 +msgid "" +"UTF-8 is a byte oriented encoding. The encoding specifies that each " +"character is represented by a specific sequence of one or more bytes. This " +"avoids the byte-ordering issues that can occur with integer and word " +"oriented encodings, like UTF-16 and UTF-32, where the sequence of bytes " +"varies depending on the hardware on which the string was encoded." +msgstr "" + +#: ../Doc/howto/unicode.rst:157 ../Doc/howto/unicode.rst:513 +#: ../Doc/howto/unicode.rst:734 msgid "References" msgstr "Références" -#: ../Doc/howto/unicode.rst:154 +#: ../Doc/howto/unicode.rst:159 msgid "" "The `Unicode Consortium site `_ has character " "charts, a glossary, and PDF versions of the Unicode specification. Be " @@ -328,7 +339,7 @@ msgstr "" "`chronologie `_ de l’origine et du " "développement de l’Unicode est également disponible sur le site." -#: ../Doc/howto/unicode.rst:159 +#: ../Doc/howto/unicode.rst:164 msgid "" "On the Computerphile Youtube channel, Tom Scott briefly `discusses the " "history of Unicode and UTF-8 ` " @@ -339,7 +350,7 @@ msgstr "" "Unicode Miracle ` (9 minutes et " "36 secondes)." -#: ../Doc/howto/unicode.rst:163 +#: ../Doc/howto/unicode.rst:168 msgid "" "To help understand the standard, Jukka Korpela has written `an introductory " "guide `_ to reading the Unicode " @@ -349,7 +360,7 @@ msgstr "" "d’introduction `_ à la lecture des " "tables de caractères Unicode (ressource en anglais)." -#: ../Doc/howto/unicode.rst:167 +#: ../Doc/howto/unicode.rst:172 msgid "" "Another `good introductory article `_\" and `UTF-8 " @@ -374,21 +385,21 @@ msgstr "" "caractères `_\" et " "`UTF-8 `_, par exemple." -#: ../Doc/howto/unicode.rst:178 +#: ../Doc/howto/unicode.rst:183 msgid "Python's Unicode Support" msgstr "" -#: ../Doc/howto/unicode.rst:180 +#: ../Doc/howto/unicode.rst:185 msgid "" "Now that you've learned the rudiments of Unicode, we can look at Python's " "Unicode features." msgstr "" -#: ../Doc/howto/unicode.rst:184 +#: ../Doc/howto/unicode.rst:189 msgid "The String Type" msgstr "" -#: ../Doc/howto/unicode.rst:186 +#: ../Doc/howto/unicode.rst:191 msgid "" "Since Python 3.0, the language's :class:`str` type contains Unicode " "characters, meaning any string created using ``\"unicode rocks!\"``, " @@ -396,18 +407,18 @@ msgid "" "Unicode." msgstr "" -#: ../Doc/howto/unicode.rst:190 +#: ../Doc/howto/unicode.rst:195 msgid "" "The default encoding for Python source code is UTF-8, so you can simply " "include a Unicode character in a string literal::" msgstr "" -#: ../Doc/howto/unicode.rst:200 +#: ../Doc/howto/unicode.rst:205 msgid "" "Side note: Python 3 also supports using Unicode characters in identifiers::" msgstr "" -#: ../Doc/howto/unicode.rst:206 +#: ../Doc/howto/unicode.rst:211 msgid "" "If you can't enter a particular character in your editor or want to keep the " "source code ASCII-only for some reason, you can also use escape sequences in " @@ -415,14 +426,14 @@ msgid "" "delta glyph instead of a \\u escape.) ::" msgstr "" -#: ../Doc/howto/unicode.rst:218 +#: ../Doc/howto/unicode.rst:223 msgid "" "In addition, one can create a string using the :func:`~bytes.decode` method " "of :class:`bytes`. This method takes an *encoding* argument, such as " "``UTF-8``, and optionally an *errors* argument." msgstr "" -#: ../Doc/howto/unicode.rst:222 +#: ../Doc/howto/unicode.rst:227 msgid "" "The *errors* argument specifies the response when the input string can't be " "converted according to the encoding's rules. Legal values for this argument " @@ -433,7 +444,7 @@ msgid "" "examples show the differences::" msgstr "" -#: ../Doc/howto/unicode.rst:242 +#: ../Doc/howto/unicode.rst:247 msgid "" "Encodings are specified as strings containing the encoding's name. Python " "comes with roughly 100 different encodings; see the Python Library Reference " @@ -442,7 +453,7 @@ msgid "" "synonyms for the same encoding." msgstr "" -#: ../Doc/howto/unicode.rst:248 +#: ../Doc/howto/unicode.rst:253 msgid "" "One-character Unicode strings can also be created with the :func:`chr` built-" "in function, which takes integers and returns a Unicode string of length 1 " @@ -451,18 +462,18 @@ msgid "" "returns the code point value::" msgstr "" -#: ../Doc/howto/unicode.rst:260 +#: ../Doc/howto/unicode.rst:265 msgid "Converting to Bytes" msgstr "" -#: ../Doc/howto/unicode.rst:262 +#: ../Doc/howto/unicode.rst:267 msgid "" "The opposite method of :meth:`bytes.decode` is :meth:`str.encode`, which " "returns a :class:`bytes` representation of the Unicode string, encoded in " "the requested *encoding*." msgstr "" -#: ../Doc/howto/unicode.rst:266 +#: ../Doc/howto/unicode.rst:271 msgid "" "The *errors* parameter is the same as the parameter of the :meth:`~bytes." "decode` method but supports a few more possible handlers. As well as " @@ -473,11 +484,11 @@ msgid "" "``namereplace`` (inserts a ``\\N{...}`` escape sequence)." msgstr "" -#: ../Doc/howto/unicode.rst:274 +#: ../Doc/howto/unicode.rst:279 msgid "The following example shows the different results::" msgstr "" -#: ../Doc/howto/unicode.rst:295 +#: ../Doc/howto/unicode.rst:300 msgid "" "The low-level routines for registering and accessing the available encodings " "are found in the :mod:`codecs` module. Implementing new encodings also " @@ -487,11 +498,11 @@ msgid "" "module won't be covered in this HOWTO." msgstr "" -#: ../Doc/howto/unicode.rst:304 +#: ../Doc/howto/unicode.rst:309 msgid "Unicode Literals in Python Source Code" msgstr "" -#: ../Doc/howto/unicode.rst:306 +#: ../Doc/howto/unicode.rst:311 msgid "" "In Python source code, specific Unicode code points can be written using the " "``\\u`` escape sequence, which is followed by four hex digits giving the " @@ -499,7 +510,7 @@ msgid "" "digits, not four::" msgstr "" -#: ../Doc/howto/unicode.rst:318 +#: ../Doc/howto/unicode.rst:323 msgid "" "Using escape sequences for code points greater than 127 is fine in small " "doses, but becomes an annoyance if you're using many accented characters, as " @@ -508,7 +519,7 @@ msgid "" "function, but this is even more tedious." msgstr "" -#: ../Doc/howto/unicode.rst:324 +#: ../Doc/howto/unicode.rst:329 msgid "" "Ideally, you'd want to be able to write literals in your language's natural " "encoding. You could then edit Python source code with your favorite editor " @@ -516,7 +527,7 @@ msgid "" "characters used at runtime." msgstr "" -#: ../Doc/howto/unicode.rst:329 +#: ../Doc/howto/unicode.rst:334 msgid "" "Python supports writing source code in UTF-8 by default, but you can use " "almost any encoding if you declare the encoding being used. This is done by " @@ -524,7 +535,7 @@ msgid "" "file::" msgstr "" -#: ../Doc/howto/unicode.rst:339 +#: ../Doc/howto/unicode.rst:344 msgid "" "The syntax is inspired by Emacs's notation for specifying variables local to " "a file. Emacs supports many different variables, but Python only supports " @@ -533,17 +544,17 @@ msgid "" "looks for ``coding: name`` or ``coding=name`` in the comment." msgstr "" -#: ../Doc/howto/unicode.rst:345 +#: ../Doc/howto/unicode.rst:350 msgid "" "If you don't include such a comment, the default encoding used will be UTF-8 " "as already mentioned. See also :pep:`263` for more information." msgstr "" -#: ../Doc/howto/unicode.rst:350 +#: ../Doc/howto/unicode.rst:355 msgid "Unicode Properties" msgstr "" -#: ../Doc/howto/unicode.rst:352 +#: ../Doc/howto/unicode.rst:357 msgid "" "The Unicode specification includes a database of information about code " "points. For each defined code point, the information includes the " @@ -553,17 +564,17 @@ msgid "" "related properties, such as how to use the code point in bidirectional text." msgstr "" -#: ../Doc/howto/unicode.rst:360 +#: ../Doc/howto/unicode.rst:365 msgid "" "The following program displays some information about several characters, " "and prints the numeric value of one particular character::" msgstr "" -#: ../Doc/howto/unicode.rst:374 +#: ../Doc/howto/unicode.rst:379 msgid "When run, this prints:" msgstr "" -#: ../Doc/howto/unicode.rst:385 +#: ../Doc/howto/unicode.rst:390 msgid "" "The category codes are abbreviations describing the nature of the character. " "These are grouped into categories such as \"Letter\", \"Number\", " @@ -576,11 +587,11 @@ msgid "" "codes." msgstr "" -#: ../Doc/howto/unicode.rst:396 +#: ../Doc/howto/unicode.rst:401 msgid "Comparing Strings" msgstr "" -#: ../Doc/howto/unicode.rst:398 +#: ../Doc/howto/unicode.rst:403 msgid "" "Unicode adds some complication to comparing strings, because the same set of " "characters can be represented by different sequences of code points. For " @@ -590,7 +601,7 @@ msgid "" "when printed, but one is a string of length 1 and the other is of length 2." msgstr "" -#: ../Doc/howto/unicode.rst:406 +#: ../Doc/howto/unicode.rst:411 msgid "" "One tool for a case-insensitive comparison is the :meth:`~str.casefold` " "string method that converts a string to a case-insensitive form following an " @@ -599,7 +610,7 @@ msgid "" "which becomes the pair of lowercase letters 'ss'." msgstr "" -#: ../Doc/howto/unicode.rst:419 +#: ../Doc/howto/unicode.rst:424 msgid "" "A second tool is the :mod:`unicodedata` module's :func:`~unicodedata." "normalize` function that converts strings to one of several normal forms, " @@ -609,22 +620,22 @@ msgid "" "differently:" msgstr "" -#: ../Doc/howto/unicode.rst:442 +#: ../Doc/howto/unicode.rst:447 msgid "When run, this outputs:" msgstr "" -#: ../Doc/howto/unicode.rst:451 +#: ../Doc/howto/unicode.rst:456 msgid "" "The first argument to the :func:`~unicodedata.normalize` function is a " "string giving the desired normalization form, which can be one of 'NFC', " "'NFKC', 'NFD', and 'NFKD'." msgstr "" -#: ../Doc/howto/unicode.rst:455 +#: ../Doc/howto/unicode.rst:460 msgid "The Unicode Standard also specifies how to do caseless comparisons::" msgstr "" -#: ../Doc/howto/unicode.rst:471 +#: ../Doc/howto/unicode.rst:476 msgid "" "This will print ``True``. (Why is :func:`NFD` invoked twice? Because there " "are a few characters that make :meth:`casefold` return a non-normalized " @@ -632,11 +643,11 @@ msgid "" "Unicode Standard for a discussion and an example.)" msgstr "" -#: ../Doc/howto/unicode.rst:478 +#: ../Doc/howto/unicode.rst:483 msgid "Unicode Regular Expressions" msgstr "" -#: ../Doc/howto/unicode.rst:480 +#: ../Doc/howto/unicode.rst:485 msgid "" "The regular expressions supported by the :mod:`re` module can be provided " "either as bytes or strings. Some of the special character sequences such as " @@ -646,57 +657,57 @@ msgid "" "in the ``'Nd'`` category." msgstr "" -#: ../Doc/howto/unicode.rst:487 +#: ../Doc/howto/unicode.rst:492 msgid "" "The string in this example has the number 57 written in both Thai and Arabic " "numerals::" msgstr "" -#: ../Doc/howto/unicode.rst:497 +#: ../Doc/howto/unicode.rst:502 msgid "" "When executed, ``\\d+`` will match the Thai numerals and print them out. If " "you supply the :const:`re.ASCII` flag to :func:`~re.compile`, ``\\d+`` will " "match the substring \"57\" instead." msgstr "" -#: ../Doc/howto/unicode.rst:501 +#: ../Doc/howto/unicode.rst:506 msgid "" "Similarly, ``\\w`` matches a wide variety of Unicode characters but only " "``[a-zA-Z0-9_]`` in bytes or if :const:`re.ASCII` is supplied, and ``\\s`` " "will match either Unicode whitespace characters or ``[ \\t\\n\\r\\f\\v]``." msgstr "" -#: ../Doc/howto/unicode.rst:512 +#: ../Doc/howto/unicode.rst:517 msgid "Some good alternative discussions of Python's Unicode support are:" msgstr "" -#: ../Doc/howto/unicode.rst:514 +#: ../Doc/howto/unicode.rst:519 msgid "" "`Processing Text Files in Python 3 `_, by Nick Coghlan." msgstr "" -#: ../Doc/howto/unicode.rst:515 +#: ../Doc/howto/unicode.rst:520 msgid "" "`Pragmatic Unicode `_, a PyCon " "2012 presentation by Ned Batchelder." msgstr "" -#: ../Doc/howto/unicode.rst:517 +#: ../Doc/howto/unicode.rst:522 msgid "" "The :class:`str` type is described in the Python library reference at :ref:" "`textseq`." msgstr "" -#: ../Doc/howto/unicode.rst:520 +#: ../Doc/howto/unicode.rst:525 msgid "The documentation for the :mod:`unicodedata` module." msgstr "" -#: ../Doc/howto/unicode.rst:522 +#: ../Doc/howto/unicode.rst:527 msgid "The documentation for the :mod:`codecs` module." msgstr "" -#: ../Doc/howto/unicode.rst:524 +#: ../Doc/howto/unicode.rst:529 msgid "" "Marc-André Lemburg gave `a presentation titled \"Python and Unicode\" (PDF " "slides) `_ at " @@ -705,18 +716,18 @@ msgid "" "``unicode`` and literals start with ``u``)." msgstr "" -#: ../Doc/howto/unicode.rst:532 +#: ../Doc/howto/unicode.rst:537 msgid "Reading and Writing Unicode Data" msgstr "" -#: ../Doc/howto/unicode.rst:534 +#: ../Doc/howto/unicode.rst:539 msgid "" "Once you've written some code that works with Unicode data, the next problem " "is input/output. How do you get Unicode strings into your program, and how " "do you convert Unicode into a form suitable for storage or transmission?" msgstr "" -#: ../Doc/howto/unicode.rst:538 +#: ../Doc/howto/unicode.rst:543 msgid "" "It's possible that you may not need to do anything depending on your input " "sources and output destinations; you should check whether the libraries used " @@ -725,7 +736,7 @@ msgid "" "valued columns and can return Unicode values from an SQL query." msgstr "" -#: ../Doc/howto/unicode.rst:544 +#: ../Doc/howto/unicode.rst:549 msgid "" "Unicode data is usually converted to a particular encoding before it gets " "written to disk or sent over a socket. It's possible to do all the work " @@ -734,7 +745,7 @@ msgid "" "recommended." msgstr "" -#: ../Doc/howto/unicode.rst:549 +#: ../Doc/howto/unicode.rst:554 msgid "" "One problem is the multi-byte nature of encodings; one Unicode character can " "be represented by several bytes. If you want to read the file in arbitrary-" @@ -748,7 +759,7 @@ msgid "" "version in memory.)" msgstr "" -#: ../Doc/howto/unicode.rst:559 +#: ../Doc/howto/unicode.rst:564 msgid "" "The solution would be to use the low-level decoding interface to catch the " "case of partial coding sequences. The work of implementing this has already " @@ -760,17 +771,17 @@ msgid "" "meth:`str.encode` and :meth:`bytes.decode`." msgstr "" -#: ../Doc/howto/unicode.rst:568 +#: ../Doc/howto/unicode.rst:573 msgid "Reading Unicode from a file is therefore simple::" msgstr "" -#: ../Doc/howto/unicode.rst:574 +#: ../Doc/howto/unicode.rst:579 msgid "" "It's also possible to open files in update mode, allowing both reading and " "writing::" msgstr "" -#: ../Doc/howto/unicode.rst:582 +#: ../Doc/howto/unicode.rst:587 msgid "" "The Unicode character ``U+FEFF`` is used as a byte-order mark (BOM), and is " "often written as the first character of a file in order to assist with " @@ -783,7 +794,7 @@ msgid "" "the BOM." msgstr "" -#: ../Doc/howto/unicode.rst:591 +#: ../Doc/howto/unicode.rst:596 msgid "" "In some areas, it is also convention to use a \"BOM\" at the start of UTF-8 " "encoded files; the name is misleading since UTF-8 is not byte-order " @@ -792,11 +803,11 @@ msgid "" "if present." msgstr "" -#: ../Doc/howto/unicode.rst:598 +#: ../Doc/howto/unicode.rst:603 msgid "Unicode filenames" msgstr "" -#: ../Doc/howto/unicode.rst:600 +#: ../Doc/howto/unicode.rst:605 msgid "" "Most of the operating systems in common use today support filenames that " "contain arbitrary Unicode characters. Usually this is implemented by " @@ -808,7 +819,7 @@ msgid "" "haven't, the default encoding is again UTF-8." msgstr "" -#: ../Doc/howto/unicode.rst:610 +#: ../Doc/howto/unicode.rst:615 msgid "" "The :func:`sys.getfilesystemencoding` function returns the encoding to use " "on your current system, in case you want to do the encoding manually, but " @@ -817,13 +828,13 @@ msgid "" "and it will be automatically converted to the right encoding for you::" msgstr "" -#: ../Doc/howto/unicode.rst:620 +#: ../Doc/howto/unicode.rst:625 msgid "" "Functions in the :mod:`os` module such as :func:`os.stat` will also accept " "Unicode filenames." msgstr "" -#: ../Doc/howto/unicode.rst:623 +#: ../Doc/howto/unicode.rst:628 msgid "" "The :func:`os.listdir` function returns filenames, which raises an issue: " "should it return the Unicode version of filenames, or should it return bytes " @@ -836,17 +847,17 @@ msgid "" "program::" msgstr "" -#: ../Doc/howto/unicode.rst:641 +#: ../Doc/howto/unicode.rst:646 msgid "will produce the following output:" msgstr "" -#: ../Doc/howto/unicode.rst:649 +#: ../Doc/howto/unicode.rst:654 msgid "" "The first list contains UTF-8-encoded filenames, and the second list " "contains the Unicode versions." msgstr "" -#: ../Doc/howto/unicode.rst:652 +#: ../Doc/howto/unicode.rst:657 msgid "" "Note that on most occasions, you should can just stick with using Unicode " "with these APIs. The bytes APIs should only be used on systems where " @@ -854,27 +865,27 @@ msgid "" "now." msgstr "" -#: ../Doc/howto/unicode.rst:659 +#: ../Doc/howto/unicode.rst:664 msgid "Tips for Writing Unicode-aware Programs" msgstr "" -#: ../Doc/howto/unicode.rst:661 +#: ../Doc/howto/unicode.rst:666 msgid "" "This section provides some suggestions on writing software that deals with " "Unicode." msgstr "" -#: ../Doc/howto/unicode.rst:664 +#: ../Doc/howto/unicode.rst:669 msgid "The most important tip is:" msgstr "" -#: ../Doc/howto/unicode.rst:666 +#: ../Doc/howto/unicode.rst:671 msgid "" "Software should only work with Unicode strings internally, decoding the " "input data as soon as possible and encoding the output only at the end." msgstr "" -#: ../Doc/howto/unicode.rst:669 +#: ../Doc/howto/unicode.rst:674 msgid "" "If you attempt to write processing functions that accept both Unicode and " "byte strings, you will find your program vulnerable to bugs wherever you " @@ -883,7 +894,7 @@ msgid "" "raised." msgstr "" -#: ../Doc/howto/unicode.rst:674 +#: ../Doc/howto/unicode.rst:679 msgid "" "When using data coming from a web browser or some other untrusted source, a " "common technique is to check for illegal characters in a string before using " @@ -895,28 +906,28 @@ msgid "" "then choose a clever way to hide malicious text in the encoded bytestream." msgstr "" -#: ../Doc/howto/unicode.rst:685 +#: ../Doc/howto/unicode.rst:690 msgid "Converting Between File Encodings" msgstr "" -#: ../Doc/howto/unicode.rst:687 +#: ../Doc/howto/unicode.rst:692 msgid "" "The :class:`~codecs.StreamRecoder` class can transparently convert between " "encodings, taking a stream that returns data in encoding #1 and behaving " "like a stream returning data in encoding #2." msgstr "" -#: ../Doc/howto/unicode.rst:691 +#: ../Doc/howto/unicode.rst:696 msgid "" "For example, if you have an input file *f* that's in Latin-1, you can wrap " "it with a :class:`~codecs.StreamRecoder` to return bytes encoded in UTF-8::" msgstr "" -#: ../Doc/howto/unicode.rst:705 +#: ../Doc/howto/unicode.rst:710 msgid "Files in an Unknown Encoding" msgstr "" -#: ../Doc/howto/unicode.rst:707 +#: ../Doc/howto/unicode.rst:712 msgid "" "What can you do if you need to make a change to a file, but don't know the " "file's encoding? If you know the encoding is ASCII-compatible and only want " @@ -924,7 +935,7 @@ msgid "" "``surrogateescape`` error handler::" msgstr "" -#: ../Doc/howto/unicode.rst:721 +#: ../Doc/howto/unicode.rst:726 msgid "" "The ``surrogateescape`` error handler will decode any non-ASCII bytes as " "code points in a special range running from U+DC80 to U+DCFF. These code " @@ -932,14 +943,14 @@ msgid "" "error handler is used to encode the data and write it back out." msgstr "" -#: ../Doc/howto/unicode.rst:731 +#: ../Doc/howto/unicode.rst:736 msgid "" "One section of `Mastering Python 3 Input/Output `_, a PyCon 2010 talk by David " "Beazley, discusses text processing and binary data handling." msgstr "" -#: ../Doc/howto/unicode.rst:735 +#: ../Doc/howto/unicode.rst:740 msgid "" "The `PDF slides for Marc-André Lemburg's presentation \"Writing Unicode-" "aware Applications in Python\" `_ is a PyCon 2013 talk by Benjamin Peterson that " "discusses the internal Unicode representation in Python 3.3." msgstr "" -#: ../Doc/howto/unicode.rst:748 +#: ../Doc/howto/unicode.rst:753 msgid "Acknowledgements" msgstr "Remerciements" -#: ../Doc/howto/unicode.rst:750 +#: ../Doc/howto/unicode.rst:755 msgid "" "The initial draft of this document was written by Andrew Kuchling. It has " "since been revised further by Alexander Belopolsky, Georg Brandl, Andrew " "Kuchling, and Ezio Melotti." msgstr "" -#: ../Doc/howto/unicode.rst:754 +#: ../Doc/howto/unicode.rst:759 msgid "" "Thanks to the following people who have noted errors or offered suggestions " "on this article: Éric Araujo, Nicholas Bastin, Nick Coghlan, Marius " diff --git a/library/asyncio-eventloop.po b/library/asyncio-eventloop.po index ee0315d4..1f049b02 100644 --- a/library/asyncio-eventloop.po +++ b/library/asyncio-eventloop.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-21 09:48+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-11-29 18:24+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -365,9 +365,10 @@ msgid "" "loop's internal monotonic clock." msgstr "" -#: ../Doc/library/asyncio-eventloop.rst:285 +#: ../Doc/library/asyncio-eventloop.rst:284 msgid "" -"Timeouts (relative *delay* or absolute *when*) should not exceed one day." +"In Python 3.7 and earlier timeouts (relative *delay* or absolute *when*) " +"should not exceed one day. This has been fixed in Python 3.8." msgstr "" #: ../Doc/library/asyncio-eventloop.rst:290 diff --git a/library/asyncio-sync.po b/library/asyncio-sync.po index 0ab72411..bc83c5de 100644 --- a/library/asyncio-sync.po +++ b/library/asyncio-sync.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-12 18:59+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-10-15 00:46+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -38,7 +38,7 @@ msgid "" msgstr "" #: ../Doc/library/asyncio-sync.rst:20 -msgid "asyncio has the following basic sychronization primitives:" +msgid "asyncio has the following basic synchronization primitives:" msgstr "" #: ../Doc/library/asyncio-sync.rst:22 diff --git a/library/asyncio-task.po b/library/asyncio-task.po index e7fba4d2..09b75fb5 100644 --- a/library/asyncio-task.po +++ b/library/asyncio-task.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-12 18:59+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-29 12:23+0100\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -47,7 +47,8 @@ msgid "" msgstr "Appeler une coroutine ne la planifie pas pour exécution ::" #: ../Doc/library/asyncio-task.rst:43 -msgid "To actually run a coroutine asyncio provides three main mechanisms:" +#, fuzzy +msgid "To actually run a coroutine, asyncio provides three main mechanisms:" msgstr "" "Pour réellement exécuter une coroutine, *asyncio* fournit trois mécanismes " "principaux :" diff --git a/library/bz2.po b/library/bz2.po index ca9080c8..dbb730ef 100644 --- a/library/bz2.po +++ b/library/bz2.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-02 22:11+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-07-29 01:07+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -140,7 +140,7 @@ msgstr "" #: ../Doc/library/bz2.rst:86 msgid "" -"If *mode* is ``'w'`` or ``'a'``, *compresslevel* can be a number between " +"If *mode* is ``'w'`` or ``'a'``, *compresslevel* can be an integer between " "``1`` and ``9`` specifying the level of compression: ``1`` produces the " "least compression, and ``9`` (default) produces the most compression." msgstr "" @@ -218,7 +218,7 @@ msgstr "" #: ../Doc/library/bz2.rst:147 ../Doc/library/bz2.rst:235 msgid "" -"*compresslevel*, if given, must be a number between ``1`` and ``9``. The " +"*compresslevel*, if given, must be an integer between ``1`` and ``9``. The " "default is ``9``." msgstr "" @@ -320,16 +320,16 @@ msgid "One-shot (de)compression" msgstr "(Dé)compression en une fois" #: ../Doc/library/bz2.rst:233 -msgid "Compress *data*." -msgstr "Compresse *data*." +msgid "Compress *data*, a :term:`bytes-like object `." +msgstr "" #: ../Doc/library/bz2.rst:238 msgid "For incremental compression, use a :class:`BZ2Compressor` instead." msgstr "" #: ../Doc/library/bz2.rst:243 -msgid "Decompress *data*." -msgstr "Décompresse *data*." +msgid "Decompress *data*, a :term:`bytes-like object `." +msgstr "" #: ../Doc/library/bz2.rst:245 msgid "" @@ -344,3 +344,39 @@ msgstr "" #: ../Doc/library/bz2.rst:250 msgid "Support for multi-stream inputs was added." msgstr "" + +#: ../Doc/library/bz2.rst:256 +msgid "Examples of usage" +msgstr "" + +#: ../Doc/library/bz2.rst:258 +msgid "Below are some examples of typical usage of the :mod:`bz2` module." +msgstr "" + +#: ../Doc/library/bz2.rst:260 +msgid "" +"Using :func:`compress` and :func:`decompress` to demonstrate round-trip " +"compression:" +msgstr "" + +#: ../Doc/library/bz2.rst:281 +msgid "Using :class:`BZ2Compressor` for incremental compression:" +msgstr "" + +#: ../Doc/library/bz2.rst:300 +msgid "" +"The example above uses a very \"nonrandom\" stream of data (a stream of `b\"z" +"\"` chunks). Random data tends to compress poorly, while ordered, " +"repetitive data usually yields a high compression ratio." +msgstr "" + +#: ../Doc/library/bz2.rst:304 +#, fuzzy +msgid "Writing and reading a bzip2-compressed file in binary mode:" +msgstr "Ouvre un fichier *bzip2* en mode binaire." + +#~ msgid "Compress *data*." +#~ msgstr "Compresse *data*." + +#~ msgid "Decompress *data*." +#~ msgstr "Décompresse *data*." diff --git a/library/cmath.po b/library/cmath.po index 861c31b4..a716bfcb 100644 --- a/library/cmath.po +++ b/library/cmath.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-28 15:29+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-09-27 15:22+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -20,14 +20,15 @@ msgid ":mod:`cmath` --- Mathematical functions for complex numbers" msgstr "Fonctions mathématiques pour nombres complexes — :mod:`cmath`" #: ../Doc/library/cmath.rst:9 +#, fuzzy msgid "" -"This module is always available. It provides access to mathematical " -"functions for complex numbers. The functions in this module accept " -"integers, floating-point numbers or complex numbers as arguments. They will " -"also accept any Python object that has either a :meth:`__complex__` or a :" -"meth:`__float__` method: these methods are used to convert the object to a " -"complex or floating-point number, respectively, and the function is then " -"applied to the result of the conversion." +"This module provides access to mathematical functions for complex numbers. " +"The functions in this module accept integers, floating-point numbers or " +"complex numbers as arguments. They will also accept any Python object that " +"has either a :meth:`__complex__` or a :meth:`__float__` method: these " +"methods are used to convert the object to a complex or floating-point " +"number, respectively, and the function is then applied to the result of the " +"conversion." msgstr "" "Ce module est toujours disponible. Il fournit l'accès aux fonctions " "mathématiques pour les nombres complexes.Les fonctions de ce module " @@ -38,7 +39,7 @@ msgstr "" "flottant, et la fonction est ensuite appliquée sur le résultat de la " "conversion." -#: ../Doc/library/cmath.rst:19 +#: ../Doc/library/cmath.rst:18 msgid "" "On platforms with hardware and system-level support for signed zeros, " "functions involving branch cuts are continuous on *both* sides of the branch " @@ -52,11 +53,11 @@ msgstr "" "coupure. Sur les plate-formes ne supportant pas les zéros signés, la " "continuité est spécifiée en-dessous." -#: ../Doc/library/cmath.rst:27 +#: ../Doc/library/cmath.rst:26 msgid "Conversions to and from polar coordinates" msgstr "Conversion vers et à partir de coordonnées polaires" -#: ../Doc/library/cmath.rst:29 +#: ../Doc/library/cmath.rst:28 msgid "" "A Python complex number ``z`` is stored internally using *rectangular* or " "*Cartesian* coordinates. It is completely determined by its *real part* ``z." @@ -66,7 +67,7 @@ msgstr "" "*cartésiennes*. Il est entièrement défini par sa *partie réelle* ``z.real`` " "et sa *partie complexe* ``z.imag``. En d'autres termes : ::" -#: ../Doc/library/cmath.rst:36 +#: ../Doc/library/cmath.rst:35 msgid "" "*Polar coordinates* give an alternative way to represent a complex number. " "In polar coordinates, a complex number *z* is defined by the modulus *r* and " @@ -83,7 +84,7 @@ msgstr "" "trigonométrique), mesuré en radians, à partir de l'axe X positif, et vers le " "segment de droite joignant *z* à l'origine." -#: ../Doc/library/cmath.rst:43 +#: ../Doc/library/cmath.rst:42 msgid "" "The following functions can be used to convert from the native rectangular " "coordinates to polar coordinates and back." @@ -92,7 +93,7 @@ msgstr "" "coordonnées rectangulaires natives vers les coordonnées polaires, et vice-" "versa." -#: ../Doc/library/cmath.rst:48 +#: ../Doc/library/cmath.rst:47 msgid "" "Return the phase of *x* (also known as the *argument* of *x*), as a float. " "``phase(x)`` is equivalent to ``math.atan2(x.imag, x.real)``. The result " @@ -110,7 +111,7 @@ msgstr "" "utilisés actuellement), cela signifie que le signe du résultat est le même " "que ``x.imag`` même quand ``x.imag`` vaut zéro : ::" -#: ../Doc/library/cmath.rst:65 +#: ../Doc/library/cmath.rst:64 msgid "" "The modulus (absolute value) of a complex number *x* can be computed using " "the built-in :func:`abs` function. There is no separate :mod:`cmath` module " @@ -120,7 +121,7 @@ msgstr "" "utilisant la primitive :func:`abs`. Il n'y a pas de fonction spéciale du " "module :mod:`cmath` pour cette opération." -#: ../Doc/library/cmath.rst:72 +#: ../Doc/library/cmath.rst:71 msgid "" "Return the representation of *x* in polar coordinates. Returns a pair ``(r, " "phi)`` where *r* is the modulus of *x* and phi is the phase of *x*. " @@ -130,7 +131,7 @@ msgstr "" "``(r, phi)`` où *r* est le module de *x* et phi est l'argument de *x*. " "``polar(x)`` est équivalent à ``(abs(x), phase(x))``." -#: ../Doc/library/cmath.rst:80 +#: ../Doc/library/cmath.rst:79 msgid "" "Return the complex number *x* with polar coordinates *r* and *phi*. " "Equivalent to ``r * (math.cos(phi) + math.sin(phi)*1j)``." @@ -138,11 +139,11 @@ msgstr "" "Renvoie le nombre complexe *x* dont les coordonnées polaires sont *r* et " "*phi*. Équivalent à ``r * (math.cos(phi) + math.sin(phi)*1j)``." -#: ../Doc/library/cmath.rst:85 +#: ../Doc/library/cmath.rst:84 msgid "Power and logarithmic functions" msgstr "Fonctions logarithme et exponentielle" -#: ../Doc/library/cmath.rst:89 +#: ../Doc/library/cmath.rst:88 msgid "" "Return *e* raised to the power *x*, where *e* is the base of natural " "logarithms." @@ -150,7 +151,7 @@ msgstr "" "Renvoie *e* élevé à la puissance *x*, où *e* est la base des logarithmes " "naturels." -#: ../Doc/library/cmath.rst:95 +#: ../Doc/library/cmath.rst:94 msgid "" "Returns the logarithm of *x* to the given *base*. If the *base* is not " "specified, returns the natural logarithm of *x*. There is one branch cut, " @@ -161,7 +162,7 @@ msgstr "" "coupure, partant de 0 sur l'axe réel négatif et vers ``-∞``, continue par au-" "dessus." -#: ../Doc/library/cmath.rst:102 +#: ../Doc/library/cmath.rst:101 msgid "" "Return the base-10 logarithm of *x*. This has the same branch cut as :func:" "`log`." @@ -169,17 +170,17 @@ msgstr "" "Renvoie le logarithme en base 10 de *x*. Elle a la même coupure que :func:" "`log`." -#: ../Doc/library/cmath.rst:108 +#: ../Doc/library/cmath.rst:107 msgid "" "Return the square root of *x*. This has the same branch cut as :func:`log`." msgstr "" "Renvoie la racine carrée de *x*. Elle a la même coupure que :func:`log`." -#: ../Doc/library/cmath.rst:112 +#: ../Doc/library/cmath.rst:111 msgid "Trigonometric functions" msgstr "Fonctions trigonométriques" -#: ../Doc/library/cmath.rst:116 +#: ../Doc/library/cmath.rst:115 msgid "" "Return the arc cosine of *x*. There are two branch cuts: One extends right " "from 1 along the real axis to ∞, continuous from below. The other extends " @@ -189,13 +190,13 @@ msgstr "" "l'axe réel vers ∞, continue par en-dessous ; l'autre allant de ``-1`` sur " "l'axe réel vers ``-∞``, continue par au-dessus." -#: ../Doc/library/cmath.rst:123 +#: ../Doc/library/cmath.rst:122 msgid "" "Return the arc sine of *x*. This has the same branch cuts as :func:`acos`." msgstr "" "Renvoie l'arc sinus de *x*. Elle a les mêmes coupures que :func:`acos`." -#: ../Doc/library/cmath.rst:128 +#: ../Doc/library/cmath.rst:127 msgid "" "Return the arc tangent of *x*. There are two branch cuts: One extends from " "``1j`` along the imaginary axis to ``∞j``, continuous from the right. The " @@ -206,23 +207,23 @@ msgstr "" "l'axe imaginaire vers ``∞j``, continue par la droite ; l'autre allant de " "``-1j`` sur l'axe imaginaire vers ``-∞j``, continue par la gauche." -#: ../Doc/library/cmath.rst:136 +#: ../Doc/library/cmath.rst:135 msgid "Return the cosine of *x*." msgstr "Renvoie le cosinus de *x*." -#: ../Doc/library/cmath.rst:141 +#: ../Doc/library/cmath.rst:140 msgid "Return the sine of *x*." msgstr "Renvoie le sinus de *x*." -#: ../Doc/library/cmath.rst:146 +#: ../Doc/library/cmath.rst:145 msgid "Return the tangent of *x*." msgstr "Renvoie la tangente de *x*." -#: ../Doc/library/cmath.rst:150 +#: ../Doc/library/cmath.rst:149 msgid "Hyperbolic functions" msgstr "Fonctions hyperboliques" -#: ../Doc/library/cmath.rst:154 +#: ../Doc/library/cmath.rst:153 msgid "" "Return the inverse hyperbolic cosine of *x*. There is one branch cut, " "extending left from 1 along the real axis to -∞, continuous from above." @@ -230,7 +231,7 @@ msgstr "" "Renvoie l'arc cosinus hyperbolique de *x*. Il y a une coupure, allant de 1 " "sur l'axe réel vers ``-∞``, continue par au-dessus." -#: ../Doc/library/cmath.rst:160 +#: ../Doc/library/cmath.rst:159 msgid "" "Return the inverse hyperbolic sine of *x*. There are two branch cuts: One " "extends from ``1j`` along the imaginary axis to ``∞j``, continuous from the " @@ -241,7 +242,7 @@ msgstr "" "de ``1j`` sur l'axe imaginaire vers ``∞j``, continue par la droite ; l'autre " "allant de ``-1j`` sur l'axe imaginaire vers ``∞j``, continue par la gauche." -#: ../Doc/library/cmath.rst:168 +#: ../Doc/library/cmath.rst:167 msgid "" "Return the inverse hyperbolic tangent of *x*. There are two branch cuts: One " "extends from ``1`` along the real axis to ``∞``, continuous from below. The " @@ -252,23 +253,23 @@ msgstr "" "allant de ``1`` sur l'axe réel allant vers ``∞``, continue par en-dessous ; " "l'autre allant de ``-1`` sur l'axe réel vers ``-∞``, continue par au-dessus." -#: ../Doc/library/cmath.rst:176 +#: ../Doc/library/cmath.rst:175 msgid "Return the hyperbolic cosine of *x*." msgstr "Renvoie le cosinus hyperbolique de *x*." -#: ../Doc/library/cmath.rst:181 +#: ../Doc/library/cmath.rst:180 msgid "Return the hyperbolic sine of *x*." msgstr "Renvoie le sinus hyperbolique de *x*." -#: ../Doc/library/cmath.rst:186 +#: ../Doc/library/cmath.rst:185 msgid "Return the hyperbolic tangent of *x*." msgstr "Renvoie la tangente hyperbolique de *x*." -#: ../Doc/library/cmath.rst:190 +#: ../Doc/library/cmath.rst:189 msgid "Classification functions" msgstr "Fonctions de classifications" -#: ../Doc/library/cmath.rst:194 +#: ../Doc/library/cmath.rst:193 msgid "" "Return ``True`` if both the real and imaginary parts of *x* are finite, and " "``False`` otherwise." @@ -276,7 +277,7 @@ msgstr "" "Renvoie ``True`` si la partie réelle *et* la partie imaginaire de *x* sont " "finies, et ``False`` sinon." -#: ../Doc/library/cmath.rst:202 +#: ../Doc/library/cmath.rst:201 msgid "" "Return ``True`` if either the real or the imaginary part of *x* is an " "infinity, and ``False`` otherwise." @@ -284,7 +285,7 @@ msgstr "" "Renvoie ``True`` si soit la partie réelle *ou* la partie imaginaire de *x* " "est infinie, et ``False`` sinon." -#: ../Doc/library/cmath.rst:208 +#: ../Doc/library/cmath.rst:207 msgid "" "Return ``True`` if either the real or the imaginary part of *x* is a NaN, " "and ``False`` otherwise." @@ -292,7 +293,7 @@ msgstr "" "Renvoie ``True`` si soit la partie réelle *ou* la partie imaginaire de *x* " "est NaN, et ``False`` sinon." -#: ../Doc/library/cmath.rst:214 +#: ../Doc/library/cmath.rst:213 msgid "" "Return ``True`` if the values *a* and *b* are close to each other and " "``False`` otherwise." @@ -300,7 +301,7 @@ msgstr "" "Renvoie ``True`` si les valeurs *a* et *b* sont proches l'une de l'autre, et " "``False`` sinon." -#: ../Doc/library/cmath.rst:217 +#: ../Doc/library/cmath.rst:216 msgid "" "Whether or not two values are considered close is determined according to " "given absolute and relative tolerances." @@ -308,7 +309,7 @@ msgstr "" "Déterminer si deux valeurs sont proches se fait à l'aide des tolérances " "absolues et relatives données en paramètres." -#: ../Doc/library/cmath.rst:220 +#: ../Doc/library/cmath.rst:219 msgid "" "*rel_tol* is the relative tolerance -- it is the maximum allowed difference " "between *a* and *b*, relative to the larger absolute value of *a* or *b*. " @@ -323,7 +324,7 @@ msgstr "" "mêmes à partir de la 9\\ :sup:`e` décimale. *rel_tol* doit être supérieur à " "zéro." -#: ../Doc/library/cmath.rst:226 +#: ../Doc/library/cmath.rst:225 msgid "" "*abs_tol* is the minimum absolute tolerance -- useful for comparisons near " "zero. *abs_tol* must be at least zero." @@ -331,7 +332,7 @@ msgstr "" "*abs_tol* est la tolérance absolue minimale -- utile pour les comparaisons " "proches de zéro. *abs_tol* doit valoir au moins zéro." -#: ../Doc/library/cmath.rst:229 +#: ../Doc/library/cmath.rst:228 msgid "" "If no errors occur, the result will be: ``abs(a-b) <= max(rel_tol * " "max(abs(a), abs(b)), abs_tol)``." @@ -339,7 +340,7 @@ msgstr "" "Si aucune erreur n'est rencontrée, le résultat sera : ``abs(a-b) <= " "max(rel_tol * max(abs(a), abs(b)), abs_tol)``." -#: ../Doc/library/cmath.rst:232 +#: ../Doc/library/cmath.rst:231 msgid "" "The IEEE 754 special values of ``NaN``, ``inf``, and ``-inf`` will be " "handled according to IEEE rules. Specifically, ``NaN`` is not considered " @@ -352,32 +353,32 @@ msgstr "" "``NaN`` inclus. ``inf`` et ``-inf`` ne sont considérés proches que d'eux-" "mêmes." -#: ../Doc/library/cmath.rst:241 +#: ../Doc/library/cmath.rst:240 msgid ":pep:`485` -- A function for testing approximate equality" msgstr ":pep:`485` -- Une fonction pour tester des égalités approximées" -#: ../Doc/library/cmath.rst:245 +#: ../Doc/library/cmath.rst:244 msgid "Constants" msgstr "Constantes" -#: ../Doc/library/cmath.rst:249 +#: ../Doc/library/cmath.rst:248 msgid "The mathematical constant *π*, as a float." msgstr "La constante mathématique *π*, en tant que flottant." -#: ../Doc/library/cmath.rst:254 +#: ../Doc/library/cmath.rst:253 msgid "The mathematical constant *e*, as a float." msgstr "La constante mathématique *e*, en tant que flottant." -#: ../Doc/library/cmath.rst:259 +#: ../Doc/library/cmath.rst:258 msgid "The mathematical constant *τ*, as a float." msgstr "La constante mathématique *τ*, sous forme de flottant." -#: ../Doc/library/cmath.rst:266 +#: ../Doc/library/cmath.rst:265 msgid "Floating-point positive infinity. Equivalent to ``float('inf')``." msgstr "" "Nombre à virgule flottante positif infini. Équivaut à ``float('inf')``." -#: ../Doc/library/cmath.rst:273 +#: ../Doc/library/cmath.rst:272 msgid "" "Complex number with zero real part and positive infinity imaginary part. " "Equivalent to ``complex(0.0, float('inf'))``." @@ -385,7 +386,7 @@ msgstr "" "Nombre complexe dont la partie réelle vaut zéro et la partie imaginaire un " "infini positif. Équivalent à ``complex(0.0, float('inf'))``." -#: ../Doc/library/cmath.rst:281 +#: ../Doc/library/cmath.rst:280 msgid "" "A floating-point \"not a number\" (NaN) value. Equivalent to " "``float('nan')``." @@ -393,7 +394,7 @@ msgstr "" "Un nombre à virgule flottante *NaN* (*Not a number*). Équivalent à " "``float('nan')``." -#: ../Doc/library/cmath.rst:289 +#: ../Doc/library/cmath.rst:288 msgid "" "Complex number with zero real part and NaN imaginary part. Equivalent to " "``complex(0.0, float('nan'))``." @@ -401,7 +402,7 @@ msgstr "" "Nombre complexe dont la partie réelle vaut zéro et la partie imaginaire vaut " "un *NaN*. Équivalent à ``complex(0.0, float('nan'))``." -#: ../Doc/library/cmath.rst:297 +#: ../Doc/library/cmath.rst:296 msgid "" "Note that the selection of functions is similar, but not identical, to that " "in module :mod:`math`. The reason for having two modules is that some users " @@ -421,7 +422,7 @@ msgstr "" "toujours un nombre complexe, même si le résultat peut être exprimé à l'aide " "d'un nombre réel (en quel cas la partie imaginaire du complexe vaut zéro)." -#: ../Doc/library/cmath.rst:305 +#: ../Doc/library/cmath.rst:304 msgid "" "A note on branch cuts: They are curves along which the given function fails " "to be continuous. They are a necessary feature of many complex functions. " @@ -439,7 +440,7 @@ msgstr "" "plus d'informations. Pour des informations sur les choix des coupures à des " "fins numériques, voici une bonne référence :" -#: ../Doc/library/cmath.rst:315 +#: ../Doc/library/cmath.rst:314 msgid "" "Kahan, W: Branch cuts for complex elementary functions; or, Much ado about " "nothing's sign bit. In Iserles, A., and Powell, M. (eds.), The state of the " diff --git a/library/codecs.po b/library/codecs.po index 7edf25bd..0fe48ed3 100644 --- a/library/codecs.po +++ b/library/codecs.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-11-29 21:18+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -796,7 +796,7 @@ msgstr "" #: ../Doc/library/codecs.rst:641 msgid "" -"Set the state of the encoder to *state*. *state* must be a decoder state " +"Set the state of the decoder to *state*. *state* must be a decoder state " "returned by :meth:`getstate`." msgstr "" diff --git a/library/ctypes.po b/library/ctypes.po index 80a7c01a..928afc07 100644 --- a/library/ctypes.po +++ b/library/ctypes.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-03 17:52+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-07-29 19:07+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -2374,8 +2374,8 @@ msgstr "" #: ../Doc/library/ctypes.rst:2368 msgid "" -"It is possible to defined sub-subclasses of structure types, they inherit " -"the fields of the base class plus the :attr:`_fields_` defined in the sub-" +"It is possible to define sub-subclasses of structure types, they inherit the " +"fields of the base class plus the :attr:`_fields_` defined in the sub-" "subclass, if any." msgstr "" @@ -2417,7 +2417,7 @@ msgstr "" #: ../Doc/library/ctypes.rst:2416 msgid "" -"It is possible to defined sub-subclasses of structures, they inherit the " +"It is possible to define sub-subclasses of structures, they inherit the " "fields of the base class. If the subclass definition has a separate :attr:" "`_fields_` variable, the fields specified in this are appended to the fields " "of the base class." diff --git a/library/datetime.po b/library/datetime.po index 268cd0b2..a9596b07 100644 --- a/library/datetime.po +++ b/library/datetime.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 19:54+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -594,7 +594,7 @@ msgstr "" "construit avec des valeurs d'attributs canoniques." #: ../Doc/library/datetime.rst:298 ../Doc/library/datetime.rst:514 -#: ../Doc/library/datetime.rst:2178 +#: ../Doc/library/datetime.rst:2181 msgid "Notes:" msgstr "Notes :" @@ -1507,10 +1507,10 @@ msgstr "" msgid "``datetime2 = datetime1 + timedelta``" msgstr "``datetime2 = datetime1 + timedelta``" -#: ../Doc/library/datetime.rst:946 ../Doc/library/datetime.rst:2053 -#: ../Doc/library/datetime.rst:2058 ../Doc/library/datetime.rst:2070 -#: ../Doc/library/datetime.rst:2075 ../Doc/library/datetime.rst:2135 -#: ../Doc/library/datetime.rst:2140 ../Doc/library/datetime.rst:2144 +#: ../Doc/library/datetime.rst:946 ../Doc/library/datetime.rst:2056 +#: ../Doc/library/datetime.rst:2061 ../Doc/library/datetime.rst:2073 +#: ../Doc/library/datetime.rst:2078 ../Doc/library/datetime.rst:2138 +#: ../Doc/library/datetime.rst:2143 ../Doc/library/datetime.rst:2147 msgid "\\(1)" msgstr "\\(1)" @@ -1518,7 +1518,7 @@ msgstr "\\(1)" msgid "``datetime2 = datetime1 - timedelta``" msgstr "``datetime2 = datetime1 - timedelta``" -#: ../Doc/library/datetime.rst:948 ../Doc/library/datetime.rst:2086 +#: ../Doc/library/datetime.rst:948 ../Doc/library/datetime.rst:2089 msgid "\\(2)" msgstr "\\(2)" @@ -1811,7 +1811,7 @@ msgstr "" #: ../Doc/library/datetime.rst:1108 ../Doc/library/datetime.rst:1620 #: ../Doc/library/datetime.rst:1719 ../Doc/library/datetime.rst:1960 -#: ../Doc/library/datetime.rst:1971 ../Doc/library/datetime.rst:2234 +#: ../Doc/library/datetime.rst:1971 ../Doc/library/datetime.rst:2237 msgid "The UTC offset is not restricted to a whole number of minutes." msgstr "Le décalage UTC peut aussi être autre chose qu'un ensemble de minutes." @@ -2980,6 +2980,13 @@ msgstr "" #: ../Doc/library/datetime.rst:2034 msgid "" +"For the :meth:`datetime.strptime` class method, the default value is " +"``1900-01-01T00:00:00.000``: any components not specified in the format " +"string will be pulled from the default value. [#]_" +msgstr "" + +#: ../Doc/library/datetime.rst:2037 +msgid "" "The full set of format codes supported varies across platforms, because " "Python calls the platform C library's :func:`strftime` function, and " "platform variations are common. To see the full set of format codes " @@ -2991,7 +2998,7 @@ msgstr "" "voir un ensemble complet des codes de formatage implémentés par votre " "plateforme, consultez la documentation de :manpage:`strftime(3)`." -#: ../Doc/library/datetime.rst:2039 +#: ../Doc/library/datetime.rst:2042 msgid "" "For the same reason, handling of format strings containing Unicode code " "points that can't be represented in the charset of the current locale is " @@ -3006,7 +3013,7 @@ msgstr "" "plateformes ``strftime`` lève une :exc:`UnicodeError` ou renvoie une chaîne " "vide." -#: ../Doc/library/datetime.rst:2045 +#: ../Doc/library/datetime.rst:2048 msgid "" "The following is a list of all the format codes that the C standard (1989 " "version) requires, and these work on all platforms with a standard C " @@ -3018,27 +3025,27 @@ msgstr "" "possédant une implémentation de C standard. Notez que la version 1999 du " "standard C a ajouté des codes de formatage additionnels." -#: ../Doc/library/datetime.rst:2051 ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2054 ../Doc/library/datetime.rst:2161 msgid "Directive" msgstr "Directive" -#: ../Doc/library/datetime.rst:2051 ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2054 ../Doc/library/datetime.rst:2161 msgid "Meaning" msgstr "Signification" -#: ../Doc/library/datetime.rst:2051 ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2054 ../Doc/library/datetime.rst:2161 msgid "Example" msgstr "Exemple" -#: ../Doc/library/datetime.rst:2051 ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2054 ../Doc/library/datetime.rst:2161 msgid "Notes" msgstr "Notes" -#: ../Doc/library/datetime.rst:2053 +#: ../Doc/library/datetime.rst:2056 msgid "``%a``" msgstr "``%a``" -#: ../Doc/library/datetime.rst:2053 +#: ../Doc/library/datetime.rst:2056 msgid "Weekday as locale's abbreviated name." msgstr "Jour de la semaine abrégé dans la langue locale." @@ -3050,11 +3057,11 @@ msgstr "Sun, Mon, ..., Sat (en_US);" msgid "So, Mo, ..., Sa (de_DE)" msgstr "Lu, Ma, ..., Di (*fr_FR*)" -#: ../Doc/library/datetime.rst:2058 +#: ../Doc/library/datetime.rst:2061 msgid "``%A``" msgstr "``%A``" -#: ../Doc/library/datetime.rst:2058 +#: ../Doc/library/datetime.rst:2061 msgid "Weekday as locale's full name." msgstr "Jour de la semaine complet dans la langue locale." @@ -3066,36 +3073,36 @@ msgstr "*Sunday*, *Monday*, ..., *Saturday* (*en_US*);" msgid "Sonntag, Montag, ..., Samstag (de_DE)" msgstr "Lundi, Mardi, ..., Dimanche (*fr_FR*)" -#: ../Doc/library/datetime.rst:2063 +#: ../Doc/library/datetime.rst:2066 msgid "``%w``" msgstr "``%w``" -#: ../Doc/library/datetime.rst:2063 +#: ../Doc/library/datetime.rst:2066 msgid "Weekday as a decimal number, where 0 is Sunday and 6 is Saturday." msgstr "" "Jour de la semaine en chiffre, avec 0 pour le dimanche et 6 pour le samedi." -#: ../Doc/library/datetime.rst:2063 +#: ../Doc/library/datetime.rst:2066 msgid "0, 1, ..., 6" msgstr "0, 1, ..., 6" -#: ../Doc/library/datetime.rst:2067 +#: ../Doc/library/datetime.rst:2070 msgid "``%d``" msgstr "``%d``" -#: ../Doc/library/datetime.rst:2067 +#: ../Doc/library/datetime.rst:2070 msgid "Day of the month as a zero-padded decimal number." msgstr "Jour du mois sur deux chiffres." -#: ../Doc/library/datetime.rst:2067 +#: ../Doc/library/datetime.rst:2070 msgid "01, 02, ..., 31" msgstr "01, 02, ..., 31" -#: ../Doc/library/datetime.rst:2070 +#: ../Doc/library/datetime.rst:2073 msgid "``%b``" msgstr "``%b``" -#: ../Doc/library/datetime.rst:2070 +#: ../Doc/library/datetime.rst:2073 msgid "Month as locale's abbreviated name." msgstr "Nom du mois abrégé dans la langue locale." @@ -3107,11 +3114,11 @@ msgstr "Jan, Feb, ..., Dec (*en_US*);" msgid "Jan, Feb, ..., Dez (de_DE)" msgstr "janv., févr., ..., déc. (*fr_FR*)" -#: ../Doc/library/datetime.rst:2075 +#: ../Doc/library/datetime.rst:2078 msgid "``%B``" msgstr "``%B``" -#: ../Doc/library/datetime.rst:2075 +#: ../Doc/library/datetime.rst:2078 msgid "Month as locale's full name." msgstr "Nom complet du mois dans la langue locale." @@ -3123,67 +3130,67 @@ msgstr "*January*, *February*, ..., *December* (*en_US*);" msgid "Januar, Februar, ..., Dezember (de_DE)" msgstr "janvier, février, ..., décembre (*fr_FR*)" -#: ../Doc/library/datetime.rst:2080 +#: ../Doc/library/datetime.rst:2083 msgid "``%m``" msgstr "``%m``" -#: ../Doc/library/datetime.rst:2080 +#: ../Doc/library/datetime.rst:2083 msgid "Month as a zero-padded decimal number." msgstr "Numéro du mois sur deux chiffres." -#: ../Doc/library/datetime.rst:2080 ../Doc/library/datetime.rst:2092 +#: ../Doc/library/datetime.rst:2083 ../Doc/library/datetime.rst:2095 msgid "01, 02, ..., 12" msgstr "01, 02, ..., 12" -#: ../Doc/library/datetime.rst:2083 +#: ../Doc/library/datetime.rst:2086 msgid "``%y``" msgstr "``%y``" -#: ../Doc/library/datetime.rst:2083 +#: ../Doc/library/datetime.rst:2086 msgid "Year without century as a zero-padded decimal number." msgstr "Année sur deux chiffres (sans le siècle)." -#: ../Doc/library/datetime.rst:2083 +#: ../Doc/library/datetime.rst:2086 msgid "00, 01, ..., 99" msgstr "00, 01, ..., 99" -#: ../Doc/library/datetime.rst:2086 +#: ../Doc/library/datetime.rst:2089 msgid "``%Y``" msgstr "``%Y``" -#: ../Doc/library/datetime.rst:2086 +#: ../Doc/library/datetime.rst:2089 msgid "Year with century as a decimal number." msgstr "Année complète sur quatre chiffres." -#: ../Doc/library/datetime.rst:2086 ../Doc/library/datetime.rst:2160 +#: ../Doc/library/datetime.rst:2089 ../Doc/library/datetime.rst:2163 msgid "0001, 0002, ..., 2013, 2014, ..., 9998, 9999" msgstr "0001, 0002, ..., 2013, 2014, ..., 9998, 9999" -#: ../Doc/library/datetime.rst:2089 +#: ../Doc/library/datetime.rst:2092 msgid "``%H``" msgstr "``%H``" -#: ../Doc/library/datetime.rst:2089 +#: ../Doc/library/datetime.rst:2092 msgid "Hour (24-hour clock) as a zero-padded decimal number." msgstr "Heure à deux chiffres de 00 à 23." -#: ../Doc/library/datetime.rst:2089 +#: ../Doc/library/datetime.rst:2092 msgid "00, 01, ..., 23" msgstr "00, 01, ..., 23" -#: ../Doc/library/datetime.rst:2092 +#: ../Doc/library/datetime.rst:2095 msgid "``%I``" msgstr "``%I``" -#: ../Doc/library/datetime.rst:2092 +#: ../Doc/library/datetime.rst:2095 msgid "Hour (12-hour clock) as a zero-padded decimal number." msgstr "Heure à deux chiffres pour les horloges 12h (01 à 12)." -#: ../Doc/library/datetime.rst:2095 +#: ../Doc/library/datetime.rst:2098 msgid "``%p``" msgstr "``%p``" -#: ../Doc/library/datetime.rst:2095 +#: ../Doc/library/datetime.rst:2098 msgid "Locale's equivalent of either AM or PM." msgstr "Équivalent local à AM/PM." @@ -3195,55 +3202,55 @@ msgstr "AM, PM (en_US);" msgid "am, pm (de_DE)" msgstr "am, pm (de_DE)" -#: ../Doc/library/datetime.rst:2095 +#: ../Doc/library/datetime.rst:2098 msgid "\\(1), \\(3)" msgstr "\\(1), \\(3)" -#: ../Doc/library/datetime.rst:2098 +#: ../Doc/library/datetime.rst:2101 msgid "``%M``" msgstr "``%M``" -#: ../Doc/library/datetime.rst:2098 +#: ../Doc/library/datetime.rst:2101 msgid "Minute as a zero-padded decimal number." msgstr "Minutes sur deux chiffres." -#: ../Doc/library/datetime.rst:2098 ../Doc/library/datetime.rst:2101 +#: ../Doc/library/datetime.rst:2101 ../Doc/library/datetime.rst:2104 msgid "00, 01, ..., 59" msgstr "00, 01, ..., 59" -#: ../Doc/library/datetime.rst:2101 +#: ../Doc/library/datetime.rst:2104 msgid "``%S``" msgstr "``%S``" -#: ../Doc/library/datetime.rst:2101 +#: ../Doc/library/datetime.rst:2104 msgid "Second as a zero-padded decimal number." msgstr "Secondes sur deux chiffres." -#: ../Doc/library/datetime.rst:2101 +#: ../Doc/library/datetime.rst:2104 msgid "\\(4)" msgstr "\\(4)" -#: ../Doc/library/datetime.rst:2104 +#: ../Doc/library/datetime.rst:2107 msgid "``%f``" msgstr "``%f``" -#: ../Doc/library/datetime.rst:2104 +#: ../Doc/library/datetime.rst:2107 msgid "Microsecond as a decimal number, zero-padded on the left." msgstr "Microsecondes sur 6 chiffres." -#: ../Doc/library/datetime.rst:2104 +#: ../Doc/library/datetime.rst:2107 msgid "000000, 000001, ..., 999999" msgstr "000000, 000001, ..., 999999" -#: ../Doc/library/datetime.rst:2104 +#: ../Doc/library/datetime.rst:2107 msgid "\\(5)" msgstr "\\(5)" -#: ../Doc/library/datetime.rst:2108 ../Doc/library/datetime.rst:2232 +#: ../Doc/library/datetime.rst:2111 ../Doc/library/datetime.rst:2235 msgid "``%z``" msgstr "``%z``" -#: ../Doc/library/datetime.rst:2108 +#: ../Doc/library/datetime.rst:2111 msgid "" "UTC offset in the form ±HHMM[SS[.ffffff]] (empty string if the object is " "naive)." @@ -3251,43 +3258,43 @@ msgstr "" "Décalage UTC sous la forme ``±HHMM[SS[.ffffff]]`` (chaîne vide si l'instance " "est naïve)." -#: ../Doc/library/datetime.rst:2108 +#: ../Doc/library/datetime.rst:2111 msgid "(empty), +0000, -0400, +1030, +063415, -030712.345216" msgstr "(vide), +0000, -0400, +1030, +063415, -030712.345216" -#: ../Doc/library/datetime.rst:2108 +#: ../Doc/library/datetime.rst:2111 msgid "\\(6)" msgstr "\\(6)" -#: ../Doc/library/datetime.rst:2113 ../Doc/library/datetime.rst:2247 +#: ../Doc/library/datetime.rst:2116 ../Doc/library/datetime.rst:2250 msgid "``%Z``" msgstr "``%Z``" -#: ../Doc/library/datetime.rst:2113 +#: ../Doc/library/datetime.rst:2116 msgid "Time zone name (empty string if the object is naive)." msgstr "Nom du fuseau horaire (chaîne vide si l'instance est naïve)." -#: ../Doc/library/datetime.rst:2113 +#: ../Doc/library/datetime.rst:2116 msgid "(empty), UTC, EST, CST" msgstr "(vide), UTC, EST, CST" -#: ../Doc/library/datetime.rst:2116 +#: ../Doc/library/datetime.rst:2119 msgid "``%j``" msgstr "``%j``" -#: ../Doc/library/datetime.rst:2116 +#: ../Doc/library/datetime.rst:2119 msgid "Day of the year as a zero-padded decimal number." msgstr "Numéro du jour dans l'année sur trois chiffres." -#: ../Doc/library/datetime.rst:2116 +#: ../Doc/library/datetime.rst:2119 msgid "001, 002, ..., 366" msgstr "001, 002, ..., 366" -#: ../Doc/library/datetime.rst:2119 +#: ../Doc/library/datetime.rst:2122 msgid "``%U``" msgstr "``%U``" -#: ../Doc/library/datetime.rst:2119 +#: ../Doc/library/datetime.rst:2122 msgid "" "Week number of the year (Sunday as the first day of the week) as a zero " "padded decimal number. All days in a new year preceding the first Sunday are " @@ -3297,19 +3304,19 @@ msgstr "" "premier jour de la semaine). Tous les jours de l'année précédent le premier " "dimanche sont considérés comme appartenant à la semaine 0." -#: ../Doc/library/datetime.rst:2119 ../Doc/library/datetime.rst:2127 +#: ../Doc/library/datetime.rst:2122 ../Doc/library/datetime.rst:2130 msgid "00, 01, ..., 53" msgstr "00, 01, ..., 53" -#: ../Doc/library/datetime.rst:2119 ../Doc/library/datetime.rst:2127 +#: ../Doc/library/datetime.rst:2122 ../Doc/library/datetime.rst:2130 msgid "\\(7)" msgstr "\\(7)" -#: ../Doc/library/datetime.rst:2127 +#: ../Doc/library/datetime.rst:2130 msgid "``%W``" msgstr "``%W``" -#: ../Doc/library/datetime.rst:2127 +#: ../Doc/library/datetime.rst:2130 msgid "" "Week number of the year (Monday as the first day of the week) as a decimal " "number. All days in a new year preceding the first Monday are considered to " @@ -3319,11 +3326,11 @@ msgstr "" "premier jour de la semaine). Tous les jours de l'année précédent le premier " "lundi sont considérés comme appartenant à la semaine 0." -#: ../Doc/library/datetime.rst:2135 +#: ../Doc/library/datetime.rst:2138 msgid "``%c``" msgstr "``%c``" -#: ../Doc/library/datetime.rst:2135 +#: ../Doc/library/datetime.rst:2138 msgid "Locale's appropriate date and time representation." msgstr "Représentation locale de la date et de l'heure." @@ -3335,11 +3342,11 @@ msgstr "Tue Aug 16 21:30:00 1988 (*en_US*);" msgid "Di 16 Aug 21:30:00 1988 (de_DE)" msgstr "mar. 16 août 1988 21:30:00 (*fr_FR*)" -#: ../Doc/library/datetime.rst:2140 +#: ../Doc/library/datetime.rst:2143 msgid "``%x``" msgstr "``%x``" -#: ../Doc/library/datetime.rst:2140 +#: ../Doc/library/datetime.rst:2143 msgid "Locale's appropriate date representation." msgstr "Représentation locale de la date." @@ -3355,11 +3362,11 @@ msgstr "08/16/1988 (*en_US*);" msgid "16.08.1988 (de_DE)" msgstr "16/08/1988 (*fr_FR*)" -#: ../Doc/library/datetime.rst:2144 +#: ../Doc/library/datetime.rst:2147 msgid "``%X``" msgstr "``%X``" -#: ../Doc/library/datetime.rst:2144 +#: ../Doc/library/datetime.rst:2147 msgid "Locale's appropriate time representation." msgstr "Représentation locale de l'heure." @@ -3371,19 +3378,19 @@ msgstr "21:30:00 (*en_US*) ;" msgid "21:30:00 (de_DE)" msgstr "21:30:00 (*fr_FR*)" -#: ../Doc/library/datetime.rst:2147 +#: ../Doc/library/datetime.rst:2150 msgid "``%%``" msgstr "``%%``" -#: ../Doc/library/datetime.rst:2147 +#: ../Doc/library/datetime.rst:2150 msgid "A literal ``'%'`` character." msgstr "Un caractère ``'%'`` littéral." -#: ../Doc/library/datetime.rst:2147 +#: ../Doc/library/datetime.rst:2150 msgid "%" msgstr "%" -#: ../Doc/library/datetime.rst:2150 +#: ../Doc/library/datetime.rst:2153 msgid "" "Several additional directives not required by the C89 standard are included " "for convenience. These parameters all correspond to ISO 8601 date values. " @@ -3401,11 +3408,11 @@ msgstr "" "directives d'année et de semaine précédentes. Appeler :meth:`strptime` avec " "des directives ISO 8601 incomplètes ou ambiguës lèvera une :exc:`ValueError`." -#: ../Doc/library/datetime.rst:2160 +#: ../Doc/library/datetime.rst:2163 msgid "``%G``" msgstr "``%G``" -#: ../Doc/library/datetime.rst:2160 +#: ../Doc/library/datetime.rst:2163 msgid "" "ISO 8601 year with century representing the year that contains the greater " "part of the ISO week (``%V``)." @@ -3413,27 +3420,27 @@ msgstr "" "Année complète ISO 8601 représentant l'année contenant la plus grande partie " "de la semaine ISO (``%V``)." -#: ../Doc/library/datetime.rst:2160 ../Doc/library/datetime.rst:2168 +#: ../Doc/library/datetime.rst:2163 ../Doc/library/datetime.rst:2171 msgid "\\(8)" msgstr "\\(8)" -#: ../Doc/library/datetime.rst:2165 +#: ../Doc/library/datetime.rst:2168 msgid "``%u``" msgstr "``%u``" -#: ../Doc/library/datetime.rst:2165 +#: ../Doc/library/datetime.rst:2168 msgid "ISO 8601 weekday as a decimal number where 1 is Monday." msgstr "Jour de la semaine ISO 8601 où 1 correspond au lundi." -#: ../Doc/library/datetime.rst:2165 +#: ../Doc/library/datetime.rst:2168 msgid "1, 2, ..., 7" msgstr "1, 2, ..., 7" -#: ../Doc/library/datetime.rst:2168 +#: ../Doc/library/datetime.rst:2171 msgid "``%V``" msgstr "``%V``" -#: ../Doc/library/datetime.rst:2168 +#: ../Doc/library/datetime.rst:2171 msgid "" "ISO 8601 week as a decimal number with Monday as the first day of the week. " "Week 01 is the week containing Jan 4." @@ -3441,15 +3448,15 @@ msgstr "" "Numéro de la semaine ISO 8601, avec lundi étant le premier jour de la " "semaine. La semaine 01 est la semaine contenant le 4 janvier." -#: ../Doc/library/datetime.rst:2168 +#: ../Doc/library/datetime.rst:2171 msgid "01, 02, ..., 53" msgstr "01, 02, ..., 53" -#: ../Doc/library/datetime.rst:2175 +#: ../Doc/library/datetime.rst:2178 msgid "``%G``, ``%u`` and ``%V`` were added." msgstr "``%G``, ``%u`` et ``%V`` ont été ajoutés." -#: ../Doc/library/datetime.rst:2181 +#: ../Doc/library/datetime.rst:2184 msgid "" "Because the format depends on the current locale, care should be taken when " "making assumptions about the output value. Field orderings will vary (for " @@ -3468,7 +3475,7 @@ msgstr "" "utilisez :meth:`locale.getlocale` pour déterminer l'encodage de la locale " "courante)." -#: ../Doc/library/datetime.rst:2190 +#: ../Doc/library/datetime.rst:2193 msgid "" "The :meth:`strptime` method can parse years in the full [1, 9999] range, but " "years < 1000 must be zero-filled to 4-digit width." @@ -3477,7 +3484,7 @@ msgstr "" "[1, 9999], mais toutes les années < 1000 doivent être représentées sur " "quatre chiffres." -#: ../Doc/library/datetime.rst:2193 +#: ../Doc/library/datetime.rst:2196 msgid "" "In previous versions, :meth:`strftime` method was restricted to years >= " "1900." @@ -3485,13 +3492,13 @@ msgstr "" "Dans les versions précédentes, la méthode :meth:`strftime` était limitée aux " "années >= 1900." -#: ../Doc/library/datetime.rst:2197 +#: ../Doc/library/datetime.rst:2200 msgid "" "In version 3.2, :meth:`strftime` method was restricted to years >= 1000." msgstr "" "En version 3.2, la méthode :meth:`strftime` était limitée aux années >= 1000." -#: ../Doc/library/datetime.rst:2202 +#: ../Doc/library/datetime.rst:2205 msgid "" "When used with the :meth:`strptime` method, the ``%p`` directive only " "affects the output hour field if the ``%I`` directive is used to parse the " @@ -3501,7 +3508,7 @@ msgstr "" "n'affecte l'heure extraite que si la directive ``%I`` est utilisée pour " "analyser l'heure." -#: ../Doc/library/datetime.rst:2206 +#: ../Doc/library/datetime.rst:2209 msgid "" "Unlike the :mod:`time` module, the :mod:`datetime` module does not support " "leap seconds." @@ -3509,7 +3516,7 @@ msgstr "" "À l'inverse du module :mod:`time`, le module :mod:`datetime` ne gère pas les " "secondes intercalaires." -#: ../Doc/library/datetime.rst:2210 +#: ../Doc/library/datetime.rst:2213 msgid "" "When used with the :meth:`strptime` method, the ``%f`` directive accepts " "from one to six digits and zero pads on the right. ``%f`` is an extension " @@ -3522,7 +3529,7 @@ msgstr "" "caractères de formatage du standard C (mais implémentée séparément dans les " "objets *datetime*, la rendant ainsi toujours disponible)." -#: ../Doc/library/datetime.rst:2217 +#: ../Doc/library/datetime.rst:2220 msgid "" "For a naive object, the ``%z`` and ``%Z`` format codes are replaced by empty " "strings." @@ -3530,11 +3537,11 @@ msgstr "" "Pour les objets naïfs, les codes de formatage ``%z`` et ``%Z`` sont " "remplacés par des chaînes vides." -#: ../Doc/library/datetime.rst:2220 +#: ../Doc/library/datetime.rst:2223 msgid "For an aware object:" msgstr "Pour un objet avisé :" -#: ../Doc/library/datetime.rst:2223 +#: ../Doc/library/datetime.rst:2226 msgid "" ":meth:`utcoffset` is transformed into a string of the form ±HHMM[SS[." "ffffff]], where HH is a 2-digit string giving the number of UTC offset " @@ -3556,7 +3563,7 @@ msgstr "" "``timedelta(hours=-3, minutes=-30)``, ``%z`` est remplacé par la chaîne " "`'-0330'``." -#: ../Doc/library/datetime.rst:2237 +#: ../Doc/library/datetime.rst:2240 msgid "" "When the ``%z`` directive is provided to the :meth:`strptime` method, the " "UTC offsets can have a colon as a separator between hours, minutes and " @@ -3568,7 +3575,7 @@ msgstr "" "minutes et secondes. Par exemple, ``'+01:00:00'``, est analysé comme un " "décalage d'une heure. Par ailleurs, ``'Z'`` est identique à ``'+00:00'``." -#: ../Doc/library/datetime.rst:2245 +#: ../Doc/library/datetime.rst:2248 msgid "" "If :meth:`tzname` returns ``None``, ``%Z`` is replaced by an empty string. " "Otherwise ``%Z`` is replaced by the returned value, which must be a string." @@ -3577,7 +3584,7 @@ msgstr "" "vide. Autrement ``%Z`` est remplacé par la valeur renvoyée, qui doit être " "une chaîne." -#: ../Doc/library/datetime.rst:2249 +#: ../Doc/library/datetime.rst:2252 msgid "" "When the ``%z`` directive is provided to the :meth:`strptime` method, an " "aware :class:`.datetime` object will be produced. The ``tzinfo`` of the " @@ -3587,7 +3594,7 @@ msgstr "" "objet :class:`.datetime` avisé est construit. L'attribut ``tzinfo`` du " "résultat aura pour valeur une instance de :class:`timezone`." -#: ../Doc/library/datetime.rst:2255 +#: ../Doc/library/datetime.rst:2258 msgid "" "When used with the :meth:`strptime` method, ``%U`` and ``%W`` are only used " "in calculations when the day of the week and the calendar year (``%Y``) are " @@ -3597,7 +3604,7 @@ msgstr "" "utilisés dans les calculs que si le jour de la semaine et l'année calendaire " "(``%Y``) sont spécifiés." -#: ../Doc/library/datetime.rst:2260 +#: ../Doc/library/datetime.rst:2263 msgid "" "Similar to ``%U`` and ``%W``, ``%V`` is only used in calculations when the " "day of the week and the ISO year (``%G``) are specified in a :meth:" @@ -3609,10 +3616,16 @@ msgstr "" "dans la chaîne de formatage :meth:`strptime`. Notez aussi que ``%G`` et ``" "%Y`` ne sont pas interchangeables." -#: ../Doc/library/datetime.rst:2266 +#: ../Doc/library/datetime.rst:2269 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/datetime.rst:2267 +#: ../Doc/library/datetime.rst:2270 msgid "If, that is, we ignore the effects of Relativity" msgstr "Si on ignore les effets de la Relativité" + +#: ../Doc/library/datetime.rst:2271 +msgid "" +"Passing ``datetime.strptime('Feb 29', '%b %d')`` will fail since ``1900`` is " +"not a leap year." +msgstr "" diff --git a/library/doctest.po b/library/doctest.po index aa70e44d..28769bdf 100644 --- a/library/doctest.po +++ b/library/doctest.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -733,57 +733,63 @@ msgid "" ":mod:`doctest` is serious about requiring exact matches in expected output. " "If even a single character doesn't match, the test fails. This will " "probably surprise you a few times, as you learn exactly what Python does and " -"doesn't guarantee about output. For example, when printing a dict, Python " -"doesn't guarantee that the key-value pairs will be printed in any particular " -"order, so a test like ::" +"doesn't guarantee about output. For example, when printing a set, Python " +"doesn't guarantee that the element is printed in any particular order, so a " +"test like ::" msgstr "" -#: ../Doc/library/doctest.rst:781 +#: ../Doc/library/doctest.rst:780 msgid "is vulnerable! One workaround is to do ::" msgstr "" -#: ../Doc/library/doctest.rst:786 +#: ../Doc/library/doctest.rst:785 msgid "instead. Another is to do ::" msgstr "" -#: ../Doc/library/doctest.rst:792 +#: ../Doc/library/doctest.rst:793 +msgid "" +"Before Python 3.6, when printing a dict, Python did not guarantee that the " +"key-value pairs was printed in any particular order." +msgstr "" + +#: ../Doc/library/doctest.rst:796 msgid "There are others, but you get the idea." msgstr "" -#: ../Doc/library/doctest.rst:794 +#: ../Doc/library/doctest.rst:798 msgid "" "Another bad idea is to print things that embed an object address, like ::" msgstr "" -#: ../Doc/library/doctest.rst:802 +#: ../Doc/library/doctest.rst:806 msgid "" "The :const:`ELLIPSIS` directive gives a nice approach for the last example::" msgstr "" -#: ../Doc/library/doctest.rst:807 +#: ../Doc/library/doctest.rst:811 msgid "" "Floating-point numbers are also subject to small output variations across " "platforms, because Python defers to the platform C library for float " "formatting, and C libraries vary widely in quality here. ::" msgstr "" -#: ../Doc/library/doctest.rst:818 +#: ../Doc/library/doctest.rst:822 msgid "" "Numbers of the form ``I/2.**J`` are safe across all platforms, and I often " "contrive doctest examples to produce numbers of that form::" msgstr "" -#: ../Doc/library/doctest.rst:824 +#: ../Doc/library/doctest.rst:828 msgid "" "Simple fractions are also easier for people to understand, and that makes " "for better documentation." msgstr "" -#: ../Doc/library/doctest.rst:831 +#: ../Doc/library/doctest.rst:835 msgid "Basic API" msgstr "" -#: ../Doc/library/doctest.rst:833 +#: ../Doc/library/doctest.rst:837 msgid "" "The functions :func:`testmod` and :func:`testfile` provide a simple " "interface to doctest that should be sufficient for most basic uses. For a " @@ -791,25 +797,25 @@ msgid "" "simple-testmod` and :ref:`doctest-simple-testfile`." msgstr "" -#: ../Doc/library/doctest.rst:841 +#: ../Doc/library/doctest.rst:845 msgid "" "All arguments except *filename* are optional, and should be specified in " "keyword form." msgstr "" -#: ../Doc/library/doctest.rst:844 +#: ../Doc/library/doctest.rst:848 msgid "" "Test examples in the file named *filename*. Return ``(failure_count, " "test_count)``." msgstr "" -#: ../Doc/library/doctest.rst:847 +#: ../Doc/library/doctest.rst:851 msgid "" "Optional argument *module_relative* specifies how the filename should be " "interpreted:" msgstr "" -#: ../Doc/library/doctest.rst:850 +#: ../Doc/library/doctest.rst:854 msgid "" "If *module_relative* is ``True`` (the default), then *filename* specifies an " "OS-independent module-relative path. By default, this path is relative to " @@ -819,20 +825,20 @@ msgid "" "absolute path (i.e., it may not begin with ``/``)." msgstr "" -#: ../Doc/library/doctest.rst:857 +#: ../Doc/library/doctest.rst:861 msgid "" "If *module_relative* is ``False``, then *filename* specifies an OS-specific " "path. The path may be absolute or relative; relative paths are resolved " "with respect to the current working directory." msgstr "" -#: ../Doc/library/doctest.rst:861 +#: ../Doc/library/doctest.rst:865 msgid "" "Optional argument *name* gives the name of the test; by default, or if " "``None``, ``os.path.basename(filename)`` is used." msgstr "" -#: ../Doc/library/doctest.rst:864 +#: ../Doc/library/doctest.rst:868 msgid "" "Optional argument *package* is a Python package or the name of a Python " "package whose directory should be used as the base directory for a module-" @@ -841,7 +847,7 @@ msgid "" "is an error to specify *package* if *module_relative* is ``False``." msgstr "" -#: ../Doc/library/doctest.rst:870 +#: ../Doc/library/doctest.rst:874 msgid "" "Optional argument *globs* gives a dict to be used as the globals when " "executing examples. A new shallow copy of this dict is created for the " @@ -849,7 +855,7 @@ msgid "" "``None``, a new empty dict is used." msgstr "" -#: ../Doc/library/doctest.rst:875 +#: ../Doc/library/doctest.rst:879 msgid "" "Optional argument *extraglobs* gives a dict merged into the globals used to " "execute examples. This works like :meth:`dict.update`: if *globs* and " @@ -862,27 +868,27 @@ msgid "" "tested." msgstr "" -#: ../Doc/library/doctest.rst:884 +#: ../Doc/library/doctest.rst:888 msgid "" "Optional argument *verbose* prints lots of stuff if true, and prints only " "failures if false; by default, or if ``None``, it's true if and only if ``'-" "v'`` is in ``sys.argv``." msgstr "" -#: ../Doc/library/doctest.rst:888 +#: ../Doc/library/doctest.rst:892 msgid "" "Optional argument *report* prints a summary at the end when true, else " "prints nothing at the end. In verbose mode, the summary is detailed, else " "the summary is very brief (in fact, empty if all tests passed)." msgstr "" -#: ../Doc/library/doctest.rst:892 +#: ../Doc/library/doctest.rst:896 msgid "" "Optional argument *optionflags* (default value 0) takes the :ref:`bitwise OR " "` of option flags. See section :ref:`doctest-options`." msgstr "" -#: ../Doc/library/doctest.rst:896 +#: ../Doc/library/doctest.rst:900 msgid "" "Optional argument *raise_on_error* defaults to false. If true, an exception " "is raised upon the first failure or unexpected exception in an example. " @@ -890,33 +896,33 @@ msgid "" "continue running examples." msgstr "" -#: ../Doc/library/doctest.rst:901 ../Doc/library/doctest.rst:1041 +#: ../Doc/library/doctest.rst:905 ../Doc/library/doctest.rst:1045 msgid "" "Optional argument *parser* specifies a :class:`DocTestParser` (or subclass) " "that should be used to extract tests from the files. It defaults to a " "normal parser (i.e., ``DocTestParser()``)." msgstr "" -#: ../Doc/library/doctest.rst:905 ../Doc/library/doctest.rst:1045 +#: ../Doc/library/doctest.rst:909 ../Doc/library/doctest.rst:1049 msgid "" "Optional argument *encoding* specifies an encoding that should be used to " "convert the file to unicode." msgstr "" -#: ../Doc/library/doctest.rst:911 +#: ../Doc/library/doctest.rst:915 msgid "" "All arguments are optional, and all except for *m* should be specified in " "keyword form." msgstr "" -#: ../Doc/library/doctest.rst:914 +#: ../Doc/library/doctest.rst:918 msgid "" "Test examples in docstrings in functions and classes reachable from module " "*m* (or module :mod:`__main__` if *m* is not supplied or is ``None``), " "starting with ``m.__doc__``." msgstr "" -#: ../Doc/library/doctest.rst:918 +#: ../Doc/library/doctest.rst:922 msgid "" "Also test examples reachable from dict ``m.__test__``, if it exists and is " "not ``None``. ``m.__test__`` maps names (strings) to functions, classes and " @@ -924,22 +930,22 @@ msgid "" "are searched directly, as if they were docstrings." msgstr "" -#: ../Doc/library/doctest.rst:923 +#: ../Doc/library/doctest.rst:927 msgid "" "Only docstrings attached to objects belonging to module *m* are searched." msgstr "" -#: ../Doc/library/doctest.rst:925 +#: ../Doc/library/doctest.rst:929 msgid "Return ``(failure_count, test_count)``." msgstr "" -#: ../Doc/library/doctest.rst:927 +#: ../Doc/library/doctest.rst:931 msgid "" "Optional argument *name* gives the name of the module; by default, or if " "``None``, ``m.__name__`` is used." msgstr "" -#: ../Doc/library/doctest.rst:930 +#: ../Doc/library/doctest.rst:934 msgid "" "Optional argument *exclude_empty* defaults to false. If true, objects for " "which no doctests are found are excluded from consideration. The default is " @@ -949,39 +955,39 @@ msgid "" "class:`DocTestFinder` constructor defaults to true." msgstr "" -#: ../Doc/library/doctest.rst:937 +#: ../Doc/library/doctest.rst:941 msgid "" "Optional arguments *extraglobs*, *verbose*, *report*, *optionflags*, " "*raise_on_error*, and *globs* are the same as for function :func:`testfile` " "above, except that *globs* defaults to ``m.__dict__``." msgstr "" -#: ../Doc/library/doctest.rst:944 +#: ../Doc/library/doctest.rst:948 msgid "" "Test examples associated with object *f*; for example, *f* may be a string, " "a module, a function, or a class object." msgstr "" -#: ../Doc/library/doctest.rst:947 +#: ../Doc/library/doctest.rst:951 msgid "" "A shallow copy of dictionary argument *globs* is used for the execution " "context." msgstr "" -#: ../Doc/library/doctest.rst:949 +#: ../Doc/library/doctest.rst:953 msgid "" "Optional argument *name* is used in failure messages, and defaults to ``" "\"NoName\"``." msgstr "" -#: ../Doc/library/doctest.rst:952 +#: ../Doc/library/doctest.rst:956 msgid "" "If optional argument *verbose* is true, output is generated even if there " "are no failures. By default, output is generated only in case of an example " "failure." msgstr "" -#: ../Doc/library/doctest.rst:955 +#: ../Doc/library/doctest.rst:959 msgid "" "Optional argument *compileflags* gives the set of flags that should be used " "by the Python compiler when running the examples. By default, or if " @@ -989,16 +995,16 @@ msgid "" "found in *globs*." msgstr "" -#: ../Doc/library/doctest.rst:959 +#: ../Doc/library/doctest.rst:963 msgid "" "Optional argument *optionflags* works as for function :func:`testfile` above." msgstr "" -#: ../Doc/library/doctest.rst:965 +#: ../Doc/library/doctest.rst:969 msgid "Unittest API" msgstr "" -#: ../Doc/library/doctest.rst:967 +#: ../Doc/library/doctest.rst:971 msgid "" "As your collection of doctest'ed modules grows, you'll want a way to run all " "their doctests systematically. :mod:`doctest` provides two functions that " @@ -1007,19 +1013,19 @@ msgid "" "discovery, include a :func:`load_tests` function in your test module::" msgstr "" -#: ../Doc/library/doctest.rst:981 +#: ../Doc/library/doctest.rst:985 msgid "" "There are two main functions for creating :class:`unittest.TestSuite` " "instances from text files and modules with doctests:" msgstr "" -#: ../Doc/library/doctest.rst:987 +#: ../Doc/library/doctest.rst:991 msgid "" "Convert doctest tests from one or more text files to a :class:`unittest." "TestSuite`." msgstr "" -#: ../Doc/library/doctest.rst:990 +#: ../Doc/library/doctest.rst:994 msgid "" "The returned :class:`unittest.TestSuite` is to be run by the unittest " "framework and runs the interactive examples in each file. If an example in " @@ -1028,21 +1034,21 @@ msgid "" "containing the test and a (sometimes approximate) line number." msgstr "" -#: ../Doc/library/doctest.rst:996 +#: ../Doc/library/doctest.rst:1000 msgid "Pass one or more paths (as strings) to text files to be examined." msgstr "" -#: ../Doc/library/doctest.rst:998 +#: ../Doc/library/doctest.rst:1002 msgid "Options may be provided as keyword arguments:" msgstr "" -#: ../Doc/library/doctest.rst:1000 +#: ../Doc/library/doctest.rst:1004 msgid "" "Optional argument *module_relative* specifies how the filenames in *paths* " "should be interpreted:" msgstr "" -#: ../Doc/library/doctest.rst:1003 +#: ../Doc/library/doctest.rst:1007 msgid "" "If *module_relative* is ``True`` (the default), then each filename in " "*paths* specifies an OS-independent module-relative path. By default, this " @@ -1053,14 +1059,14 @@ msgid "" "``)." msgstr "" -#: ../Doc/library/doctest.rst:1011 +#: ../Doc/library/doctest.rst:1015 msgid "" "If *module_relative* is ``False``, then each filename in *paths* specifies " "an OS-specific path. The path may be absolute or relative; relative paths " "are resolved with respect to the current working directory." msgstr "" -#: ../Doc/library/doctest.rst:1015 +#: ../Doc/library/doctest.rst:1019 msgid "" "Optional argument *package* is a Python package or the name of a Python " "package whose directory should be used as the base directory for module-" @@ -1070,7 +1076,7 @@ msgid "" "``False``." msgstr "" -#: ../Doc/library/doctest.rst:1022 +#: ../Doc/library/doctest.rst:1026 msgid "" "Optional argument *setUp* specifies a set-up function for the test suite. " "This is called before running the tests in each file. The *setUp* function " @@ -1078,7 +1084,7 @@ msgid "" "test globals as the *globs* attribute of the test passed." msgstr "" -#: ../Doc/library/doctest.rst:1027 +#: ../Doc/library/doctest.rst:1031 msgid "" "Optional argument *tearDown* specifies a tear-down function for the test " "suite. This is called after running the tests in each file. The *tearDown* " @@ -1086,14 +1092,14 @@ msgid "" "access the test globals as the *globs* attribute of the test passed." msgstr "" -#: ../Doc/library/doctest.rst:1032 ../Doc/library/doctest.rst:1066 +#: ../Doc/library/doctest.rst:1036 ../Doc/library/doctest.rst:1070 msgid "" "Optional argument *globs* is a dictionary containing the initial global " "variables for the tests. A new copy of this dictionary is created for each " "test. By default, *globs* is a new empty dictionary." msgstr "" -#: ../Doc/library/doctest.rst:1036 +#: ../Doc/library/doctest.rst:1040 msgid "" "Optional argument *optionflags* specifies the default doctest options for " "the tests, created by or-ing together individual option flags. See section :" @@ -1101,17 +1107,17 @@ msgid "" "for a better way to set reporting options." msgstr "" -#: ../Doc/library/doctest.rst:1048 +#: ../Doc/library/doctest.rst:1052 msgid "" "The global ``__file__`` is added to the globals provided to doctests loaded " "from a text file using :func:`DocFileSuite`." msgstr "" -#: ../Doc/library/doctest.rst:1054 +#: ../Doc/library/doctest.rst:1058 msgid "Convert doctest tests for a module to a :class:`unittest.TestSuite`." msgstr "" -#: ../Doc/library/doctest.rst:1056 +#: ../Doc/library/doctest.rst:1060 msgid "" "The returned :class:`unittest.TestSuite` is to be run by the unittest " "framework and runs each doctest in the module. If any of the doctests fail, " @@ -1120,42 +1126,42 @@ msgid "" "(sometimes approximate) line number." msgstr "" -#: ../Doc/library/doctest.rst:1062 +#: ../Doc/library/doctest.rst:1066 msgid "" "Optional argument *module* provides the module to be tested. It can be a " "module object or a (possibly dotted) module name. If not specified, the " "module calling this function is used." msgstr "" -#: ../Doc/library/doctest.rst:1070 +#: ../Doc/library/doctest.rst:1074 msgid "" "Optional argument *extraglobs* specifies an extra set of global variables, " "which is merged into *globs*. By default, no extra globals are used." msgstr "" -#: ../Doc/library/doctest.rst:1073 +#: ../Doc/library/doctest.rst:1077 msgid "" "Optional argument *test_finder* is the :class:`DocTestFinder` object (or a " "drop-in replacement) that is used to extract doctests from the module." msgstr "" -#: ../Doc/library/doctest.rst:1076 +#: ../Doc/library/doctest.rst:1080 msgid "" "Optional arguments *setUp*, *tearDown*, and *optionflags* are the same as " "for function :func:`DocFileSuite` above." msgstr "" -#: ../Doc/library/doctest.rst:1079 +#: ../Doc/library/doctest.rst:1083 msgid "This function uses the same search technique as :func:`testmod`." msgstr "" -#: ../Doc/library/doctest.rst:1081 +#: ../Doc/library/doctest.rst:1085 msgid "" ":func:`DocTestSuite` returns an empty :class:`unittest.TestSuite` if " "*module* contains no docstrings instead of raising :exc:`ValueError`." msgstr "" -#: ../Doc/library/doctest.rst:1086 +#: ../Doc/library/doctest.rst:1090 msgid "" "Under the covers, :func:`DocTestSuite` creates a :class:`unittest.TestSuite` " "out of :class:`doctest.DocTestCase` instances, and :class:`DocTestCase` is a " @@ -1164,14 +1170,14 @@ msgid "" "questions about the exact details of :mod:`unittest` integration." msgstr "" -#: ../Doc/library/doctest.rst:1092 +#: ../Doc/library/doctest.rst:1096 msgid "" "Similarly, :func:`DocFileSuite` creates a :class:`unittest.TestSuite` out " "of :class:`doctest.DocFileCase` instances, and :class:`DocFileCase` is a " "subclass of :class:`DocTestCase`." msgstr "" -#: ../Doc/library/doctest.rst:1096 +#: ../Doc/library/doctest.rst:1100 msgid "" "So both ways of creating a :class:`unittest.TestSuite` run instances of :" "class:`DocTestCase`. This is important for a subtle reason: when you run :" @@ -1184,23 +1190,23 @@ msgid "" "through :mod:`unittest` to :mod:`doctest` test runners." msgstr "" -#: ../Doc/library/doctest.rst:1106 +#: ../Doc/library/doctest.rst:1110 msgid "" "For this reason, :mod:`doctest` also supports a notion of :mod:`doctest` " "reporting flags specific to :mod:`unittest` support, via this function:" msgstr "" -#: ../Doc/library/doctest.rst:1112 +#: ../Doc/library/doctest.rst:1116 msgid "Set the :mod:`doctest` reporting flags to use." msgstr "" -#: ../Doc/library/doctest.rst:1114 +#: ../Doc/library/doctest.rst:1118 msgid "" "Argument *flags* takes the :ref:`bitwise OR ` of option flags. See " "section :ref:`doctest-options`. Only \"reporting flags\" can be used." msgstr "" -#: ../Doc/library/doctest.rst:1117 +#: ../Doc/library/doctest.rst:1121 msgid "" "This is a module-global setting, and affects all future doctests run by " "module :mod:`unittest`: the :meth:`runTest` method of :class:`DocTestCase` " @@ -1214,17 +1220,17 @@ msgid "" "`doctest`'s :mod:`unittest` reporting flags are ignored." msgstr "" -#: ../Doc/library/doctest.rst:1128 +#: ../Doc/library/doctest.rst:1132 msgid "" "The value of the :mod:`unittest` reporting flags in effect before the " "function was called is returned by the function." msgstr "" -#: ../Doc/library/doctest.rst:1135 +#: ../Doc/library/doctest.rst:1139 msgid "Advanced API" msgstr "" -#: ../Doc/library/doctest.rst:1137 +#: ../Doc/library/doctest.rst:1141 msgid "" "The basic API is a simple wrapper that's intended to make doctest easy to " "use. It is fairly flexible, and should meet most users' needs; however, if " @@ -1232,85 +1238,85 @@ msgid "" "doctest's capabilities, then you should use the advanced API." msgstr "" -#: ../Doc/library/doctest.rst:1142 +#: ../Doc/library/doctest.rst:1146 msgid "" "The advanced API revolves around two container classes, which are used to " "store the interactive examples extracted from doctest cases:" msgstr "" -#: ../Doc/library/doctest.rst:1145 +#: ../Doc/library/doctest.rst:1149 msgid "" ":class:`Example`: A single Python :term:`statement`, paired with its " "expected output." msgstr "" -#: ../Doc/library/doctest.rst:1148 +#: ../Doc/library/doctest.rst:1152 msgid "" ":class:`DocTest`: A collection of :class:`Example`\\ s, typically extracted " "from a single docstring or text file." msgstr "" -#: ../Doc/library/doctest.rst:1151 +#: ../Doc/library/doctest.rst:1155 msgid "" "Additional processing classes are defined to find, parse, and run, and check " "doctest examples:" msgstr "" -#: ../Doc/library/doctest.rst:1154 +#: ../Doc/library/doctest.rst:1158 msgid "" ":class:`DocTestFinder`: Finds all docstrings in a given module, and uses a :" "class:`DocTestParser` to create a :class:`DocTest` from every docstring that " "contains interactive examples." msgstr "" -#: ../Doc/library/doctest.rst:1158 +#: ../Doc/library/doctest.rst:1162 msgid "" ":class:`DocTestParser`: Creates a :class:`DocTest` object from a string " "(such as an object's docstring)." msgstr "" -#: ../Doc/library/doctest.rst:1161 +#: ../Doc/library/doctest.rst:1165 msgid "" ":class:`DocTestRunner`: Executes the examples in a :class:`DocTest`, and " "uses an :class:`OutputChecker` to verify their output." msgstr "" -#: ../Doc/library/doctest.rst:1164 +#: ../Doc/library/doctest.rst:1168 msgid "" ":class:`OutputChecker`: Compares the actual output from a doctest example " "with the expected output, and decides whether they match." msgstr "" -#: ../Doc/library/doctest.rst:1167 +#: ../Doc/library/doctest.rst:1171 msgid "" "The relationships among these processing classes are summarized in the " "following diagram::" msgstr "" -#: ../Doc/library/doctest.rst:1183 +#: ../Doc/library/doctest.rst:1187 msgid "DocTest Objects" msgstr "" -#: ../Doc/library/doctest.rst:1188 +#: ../Doc/library/doctest.rst:1192 msgid "" "A collection of doctest examples that should be run in a single namespace. " "The constructor arguments are used to initialize the attributes of the same " "names." msgstr "" -#: ../Doc/library/doctest.rst:1192 +#: ../Doc/library/doctest.rst:1196 msgid "" ":class:`DocTest` defines the following attributes. They are initialized by " "the constructor, and should not be modified directly." msgstr "" -#: ../Doc/library/doctest.rst:1198 +#: ../Doc/library/doctest.rst:1202 msgid "" "A list of :class:`Example` objects encoding the individual interactive " "Python examples that should be run by this test." msgstr "" -#: ../Doc/library/doctest.rst:1204 +#: ../Doc/library/doctest.rst:1208 msgid "" "The namespace (aka globals) that the examples should be run in. This is a " "dictionary mapping names to values. Any changes to the namespace made by " @@ -1318,57 +1324,57 @@ msgid "" "`globs` after the test is run." msgstr "" -#: ../Doc/library/doctest.rst:1212 +#: ../Doc/library/doctest.rst:1216 msgid "" "A string name identifying the :class:`DocTest`. Typically, this is the name " "of the object or file that the test was extracted from." msgstr "" -#: ../Doc/library/doctest.rst:1218 +#: ../Doc/library/doctest.rst:1222 msgid "" "The name of the file that this :class:`DocTest` was extracted from; or " "``None`` if the filename is unknown, or if the :class:`DocTest` was not " "extracted from a file." msgstr "" -#: ../Doc/library/doctest.rst:1225 +#: ../Doc/library/doctest.rst:1229 msgid "" "The line number within :attr:`filename` where this :class:`DocTest` begins, " "or ``None`` if the line number is unavailable. This line number is zero-" "based with respect to the beginning of the file." msgstr "" -#: ../Doc/library/doctest.rst:1232 +#: ../Doc/library/doctest.rst:1236 msgid "" "The string that the test was extracted from, or ``None`` if the string is " "unavailable, or if the test was not extracted from a string." msgstr "" -#: ../Doc/library/doctest.rst:1239 +#: ../Doc/library/doctest.rst:1243 msgid "Example Objects" msgstr "" -#: ../Doc/library/doctest.rst:1244 +#: ../Doc/library/doctest.rst:1248 msgid "" "A single interactive example, consisting of a Python statement and its " "expected output. The constructor arguments are used to initialize the " "attributes of the same names." msgstr "" -#: ../Doc/library/doctest.rst:1249 +#: ../Doc/library/doctest.rst:1253 msgid "" ":class:`Example` defines the following attributes. They are initialized by " "the constructor, and should not be modified directly." msgstr "" -#: ../Doc/library/doctest.rst:1255 +#: ../Doc/library/doctest.rst:1259 msgid "" "A string containing the example's source code. This source code consists of " "a single Python statement, and always ends with a newline; the constructor " "adds a newline when necessary." msgstr "" -#: ../Doc/library/doctest.rst:1262 +#: ../Doc/library/doctest.rst:1266 msgid "" "The expected output from running the example's source code (either from " "stdout, or a traceback in case of exception). :attr:`want` ends with a " @@ -1376,7 +1382,7 @@ msgid "" "The constructor adds a newline when necessary." msgstr "" -#: ../Doc/library/doctest.rst:1270 +#: ../Doc/library/doctest.rst:1274 msgid "" "The exception message generated by the example, if the example is expected " "to generate an exception; or ``None`` if it is not expected to generate an " @@ -1385,20 +1391,20 @@ msgid "" "unless it's ``None``. The constructor adds a newline if needed." msgstr "" -#: ../Doc/library/doctest.rst:1279 +#: ../Doc/library/doctest.rst:1283 msgid "" "The line number within the string containing this example where the example " "begins. This line number is zero-based with respect to the beginning of the " "containing string." msgstr "" -#: ../Doc/library/doctest.rst:1286 +#: ../Doc/library/doctest.rst:1290 msgid "" "The example's indentation in the containing string, i.e., the number of " "space characters that precede the example's first prompt." msgstr "" -#: ../Doc/library/doctest.rst:1292 +#: ../Doc/library/doctest.rst:1296 msgid "" "A dictionary mapping from option flags to ``True`` or ``False``, which is " "used to override default options for this example. Any option flags not " @@ -1407,11 +1413,11 @@ msgid "" "are set." msgstr "" -#: ../Doc/library/doctest.rst:1301 +#: ../Doc/library/doctest.rst:1305 msgid "DocTestFinder objects" msgstr "" -#: ../Doc/library/doctest.rst:1306 +#: ../Doc/library/doctest.rst:1310 msgid "" "A processing class used to extract the :class:`DocTest`\\ s that are " "relevant to a given object, from its docstring and the docstrings of its " @@ -1419,48 +1425,48 @@ msgid "" "classes, functions, methods, staticmethods, classmethods, and properties." msgstr "" -#: ../Doc/library/doctest.rst:1311 +#: ../Doc/library/doctest.rst:1315 msgid "" "The optional argument *verbose* can be used to display the objects searched " "by the finder. It defaults to ``False`` (no output)." msgstr "" -#: ../Doc/library/doctest.rst:1314 +#: ../Doc/library/doctest.rst:1318 msgid "" "The optional argument *parser* specifies the :class:`DocTestParser` object " "(or a drop-in replacement) that is used to extract doctests from docstrings." msgstr "" -#: ../Doc/library/doctest.rst:1317 +#: ../Doc/library/doctest.rst:1321 msgid "" "If the optional argument *recurse* is false, then :meth:`DocTestFinder.find` " "will only examine the given object, and not any contained objects." msgstr "" -#: ../Doc/library/doctest.rst:1320 +#: ../Doc/library/doctest.rst:1324 msgid "" "If the optional argument *exclude_empty* is false, then :meth:`DocTestFinder." "find` will include tests for objects with empty docstrings." msgstr "" -#: ../Doc/library/doctest.rst:1324 +#: ../Doc/library/doctest.rst:1328 msgid ":class:`DocTestFinder` defines the following method:" msgstr "" -#: ../Doc/library/doctest.rst:1329 +#: ../Doc/library/doctest.rst:1333 msgid "" "Return a list of the :class:`DocTest`\\ s that are defined by *obj*'s " "docstring, or by any of its contained objects' docstrings." msgstr "" -#: ../Doc/library/doctest.rst:1332 +#: ../Doc/library/doctest.rst:1336 msgid "" "The optional argument *name* specifies the object's name; this name will be " "used to construct names for the returned :class:`DocTest`\\ s. If *name* is " "not specified, then ``obj.__name__`` is used." msgstr "" -#: ../Doc/library/doctest.rst:1336 +#: ../Doc/library/doctest.rst:1340 msgid "" "The optional parameter *module* is the module that contains the given " "object. If the module is not specified or is ``None``, then the test finder " @@ -1468,26 +1474,26 @@ msgid "" "module is used:" msgstr "" -#: ../Doc/library/doctest.rst:1340 +#: ../Doc/library/doctest.rst:1344 msgid "As a default namespace, if *globs* is not specified." msgstr "" -#: ../Doc/library/doctest.rst:1342 +#: ../Doc/library/doctest.rst:1346 msgid "" "To prevent the DocTestFinder from extracting DocTests from objects that are " "imported from other modules. (Contained objects with modules other than " "*module* are ignored.)" msgstr "" -#: ../Doc/library/doctest.rst:1346 +#: ../Doc/library/doctest.rst:1350 msgid "To find the name of the file containing the object." msgstr "" -#: ../Doc/library/doctest.rst:1348 +#: ../Doc/library/doctest.rst:1352 msgid "To help find the line number of the object within its file." msgstr "" -#: ../Doc/library/doctest.rst:1350 +#: ../Doc/library/doctest.rst:1354 msgid "" "If *module* is ``False``, no attempt to find the module will be made. This " "is obscure, of use mostly in testing doctest itself: if *module* is " @@ -1496,7 +1502,7 @@ msgid "" "contained objects will (recursively) be searched for doctests." msgstr "" -#: ../Doc/library/doctest.rst:1356 +#: ../Doc/library/doctest.rst:1360 msgid "" "The globals for each :class:`DocTest` is formed by combining *globs* and " "*extraglobs* (bindings in *extraglobs* override bindings in *globs*). A new " @@ -1506,34 +1512,34 @@ msgid "" "defaults to ``{}``." msgstr "" -#: ../Doc/library/doctest.rst:1367 +#: ../Doc/library/doctest.rst:1371 msgid "DocTestParser objects" msgstr "" -#: ../Doc/library/doctest.rst:1372 +#: ../Doc/library/doctest.rst:1376 msgid "" "A processing class used to extract interactive examples from a string, and " "use them to create a :class:`DocTest` object." msgstr "" -#: ../Doc/library/doctest.rst:1376 ../Doc/library/doctest.rst:1444 +#: ../Doc/library/doctest.rst:1380 ../Doc/library/doctest.rst:1448 msgid ":class:`DocTestParser` defines the following methods:" msgstr "" -#: ../Doc/library/doctest.rst:1381 +#: ../Doc/library/doctest.rst:1385 msgid "" "Extract all doctest examples from the given string, and collect them into a :" "class:`DocTest` object." msgstr "" -#: ../Doc/library/doctest.rst:1384 +#: ../Doc/library/doctest.rst:1388 msgid "" "*globs*, *name*, *filename*, and *lineno* are attributes for the new :class:" "`DocTest` object. See the documentation for :class:`DocTest` for more " "information." msgstr "" -#: ../Doc/library/doctest.rst:1391 +#: ../Doc/library/doctest.rst:1395 msgid "" "Extract all doctest examples from the given string, and return them as a " "list of :class:`Example` objects. Line numbers are 0-based. The optional " @@ -1541,7 +1547,7 @@ msgid "" "error messages." msgstr "" -#: ../Doc/library/doctest.rst:1398 +#: ../Doc/library/doctest.rst:1402 msgid "" "Divide the given string into examples and intervening text, and return them " "as a list of alternating :class:`Example`\\ s and strings. Line numbers for " @@ -1549,17 +1555,17 @@ msgid "" "name identifying this string, and is only used for error messages." msgstr "" -#: ../Doc/library/doctest.rst:1407 +#: ../Doc/library/doctest.rst:1411 msgid "DocTestRunner objects" msgstr "" -#: ../Doc/library/doctest.rst:1412 +#: ../Doc/library/doctest.rst:1416 msgid "" "A processing class used to execute and verify the interactive examples in a :" "class:`DocTest`." msgstr "" -#: ../Doc/library/doctest.rst:1415 +#: ../Doc/library/doctest.rst:1419 msgid "" "The comparison between expected outputs and actual outputs is done by an :" "class:`OutputChecker`. This comparison may be customized with a number of " @@ -1569,7 +1575,7 @@ msgid "" "constructor." msgstr "" -#: ../Doc/library/doctest.rst:1421 +#: ../Doc/library/doctest.rst:1425 msgid "" "The test runner's display output can be controlled in two ways. First, an " "output function can be passed to :meth:`TestRunner.run`; this function will " @@ -1580,14 +1586,14 @@ msgid "" "`report_unexpected_exception`, and :meth:`report_failure`." msgstr "" -#: ../Doc/library/doctest.rst:1429 +#: ../Doc/library/doctest.rst:1433 msgid "" "The optional keyword argument *checker* specifies the :class:`OutputChecker` " "object (or drop-in replacement) that should be used to compare the expected " "outputs to the actual outputs of doctest examples." msgstr "" -#: ../Doc/library/doctest.rst:1433 +#: ../Doc/library/doctest.rst:1437 msgid "" "The optional keyword argument *verbose* controls the :class:" "`DocTestRunner`'s verbosity. If *verbose* is ``True``, then information is " @@ -1596,56 +1602,56 @@ msgid "" "verbose output is used iff the command-line switch ``-v`` is used." msgstr "" -#: ../Doc/library/doctest.rst:1439 +#: ../Doc/library/doctest.rst:1443 msgid "" "The optional keyword argument *optionflags* can be used to control how the " "test runner compares expected output to actual output, and how it displays " "failures. For more information, see section :ref:`doctest-options`." msgstr "" -#: ../Doc/library/doctest.rst:1449 +#: ../Doc/library/doctest.rst:1453 msgid "" "Report that the test runner is about to process the given example. This " "method is provided to allow subclasses of :class:`DocTestRunner` to " "customize their output; it should not be called directly." msgstr "" -#: ../Doc/library/doctest.rst:1453 +#: ../Doc/library/doctest.rst:1457 msgid "" "*example* is the example about to be processed. *test* is the test " "*containing example*. *out* is the output function that was passed to :meth:" "`DocTestRunner.run`." msgstr "" -#: ../Doc/library/doctest.rst:1460 +#: ../Doc/library/doctest.rst:1464 msgid "" "Report that the given example ran successfully. This method is provided to " "allow subclasses of :class:`DocTestRunner` to customize their output; it " "should not be called directly." msgstr "" -#: ../Doc/library/doctest.rst:1464 ../Doc/library/doctest.rst:1475 +#: ../Doc/library/doctest.rst:1468 ../Doc/library/doctest.rst:1479 msgid "" "*example* is the example about to be processed. *got* is the actual output " "from the example. *test* is the test containing *example*. *out* is the " "output function that was passed to :meth:`DocTestRunner.run`." msgstr "" -#: ../Doc/library/doctest.rst:1471 +#: ../Doc/library/doctest.rst:1475 msgid "" "Report that the given example failed. This method is provided to allow " "subclasses of :class:`DocTestRunner` to customize their output; it should " "not be called directly." msgstr "" -#: ../Doc/library/doctest.rst:1482 +#: ../Doc/library/doctest.rst:1486 msgid "" "Report that the given example raised an unexpected exception. This method is " "provided to allow subclasses of :class:`DocTestRunner` to customize their " "output; it should not be called directly." msgstr "" -#: ../Doc/library/doctest.rst:1486 +#: ../Doc/library/doctest.rst:1490 msgid "" "*example* is the example about to be processed. *exc_info* is a tuple " "containing information about the unexpected exception (as returned by :func:" @@ -1653,13 +1659,13 @@ msgid "" "output function that was passed to :meth:`DocTestRunner.run`." msgstr "" -#: ../Doc/library/doctest.rst:1494 +#: ../Doc/library/doctest.rst:1498 msgid "" "Run the examples in *test* (a :class:`DocTest` object), and display the " "results using the writer function *out*." msgstr "" -#: ../Doc/library/doctest.rst:1497 +#: ../Doc/library/doctest.rst:1501 msgid "" "The examples are run in the namespace ``test.globs``. If *clear_globs* is " "true (the default), then this namespace will be cleared after the test runs, " @@ -1667,39 +1673,39 @@ msgid "" "after the test completes, then use *clear_globs=False*." msgstr "" -#: ../Doc/library/doctest.rst:1502 +#: ../Doc/library/doctest.rst:1506 msgid "" "*compileflags* gives the set of flags that should be used by the Python " "compiler when running the examples. If not specified, then it will default " "to the set of future-import flags that apply to *globs*." msgstr "" -#: ../Doc/library/doctest.rst:1506 +#: ../Doc/library/doctest.rst:1510 msgid "" "The output of each example is checked using the :class:`DocTestRunner`'s " "output checker, and the results are formatted by the :meth:`DocTestRunner." "report_\\*` methods." msgstr "" -#: ../Doc/library/doctest.rst:1513 +#: ../Doc/library/doctest.rst:1517 msgid "" "Print a summary of all the test cases that have been run by this " "DocTestRunner, and return a :term:`named tuple` ``TestResults(failed, " "attempted)``." msgstr "" -#: ../Doc/library/doctest.rst:1516 +#: ../Doc/library/doctest.rst:1520 msgid "" "The optional *verbose* argument controls how detailed the summary is. If " "the verbosity is not specified, then the :class:`DocTestRunner`'s verbosity " "is used." msgstr "" -#: ../Doc/library/doctest.rst:1523 +#: ../Doc/library/doctest.rst:1527 msgid "OutputChecker objects" msgstr "" -#: ../Doc/library/doctest.rst:1528 +#: ../Doc/library/doctest.rst:1532 msgid "" "A class used to check the whether the actual output from a doctest example " "matches the expected output. :class:`OutputChecker` defines two methods: :" @@ -1708,11 +1714,11 @@ msgid "" "describing the differences between two outputs." msgstr "" -#: ../Doc/library/doctest.rst:1535 +#: ../Doc/library/doctest.rst:1539 msgid ":class:`OutputChecker` defines the following methods:" msgstr "" -#: ../Doc/library/doctest.rst:1539 +#: ../Doc/library/doctest.rst:1543 msgid "" "Return ``True`` iff the actual output from an example (*got*) matches the " "expected output (*want*). These strings are always considered to match if " @@ -1721,28 +1727,28 @@ msgid "" "`doctest-options` for more information about option flags." msgstr "" -#: ../Doc/library/doctest.rst:1548 +#: ../Doc/library/doctest.rst:1552 msgid "" "Return a string describing the differences between the expected output for a " "given example (*example*) and the actual output (*got*). *optionflags* is " "the set of option flags used to compare *want* and *got*." msgstr "" -#: ../Doc/library/doctest.rst:1556 +#: ../Doc/library/doctest.rst:1560 msgid "Debugging" msgstr "" -#: ../Doc/library/doctest.rst:1558 +#: ../Doc/library/doctest.rst:1562 msgid "Doctest provides several mechanisms for debugging doctest examples:" msgstr "" -#: ../Doc/library/doctest.rst:1560 +#: ../Doc/library/doctest.rst:1564 msgid "" "Several functions convert doctests to executable Python programs, which can " "be run under the Python debugger, :mod:`pdb`." msgstr "" -#: ../Doc/library/doctest.rst:1563 +#: ../Doc/library/doctest.rst:1567 msgid "" "The :class:`DebugRunner` class is a subclass of :class:`DocTestRunner` that " "raises an exception for the first failing example, containing information " @@ -1750,13 +1756,13 @@ msgid "" "debugging on the example." msgstr "" -#: ../Doc/library/doctest.rst:1568 +#: ../Doc/library/doctest.rst:1572 msgid "" "The :mod:`unittest` cases generated by :func:`DocTestSuite` support the :" "meth:`debug` method defined by :class:`unittest.TestCase`." msgstr "" -#: ../Doc/library/doctest.rst:1571 +#: ../Doc/library/doctest.rst:1575 msgid "" "You can add a call to :func:`pdb.set_trace` in a doctest example, and you'll " "drop into the Python debugger when that line is executed. Then you can " @@ -1764,21 +1770,21 @@ msgid "" "`a.py` contains just this module docstring::" msgstr "" -#: ../Doc/library/doctest.rst:1586 +#: ../Doc/library/doctest.rst:1590 msgid "Then an interactive Python session may look like this::" msgstr "" -#: ../Doc/library/doctest.rst:1619 +#: ../Doc/library/doctest.rst:1623 msgid "" "Functions that convert doctests to Python code, and possibly run the " "synthesized code under the debugger:" msgstr "" -#: ../Doc/library/doctest.rst:1625 +#: ../Doc/library/doctest.rst:1629 msgid "Convert text with examples to a script." msgstr "" -#: ../Doc/library/doctest.rst:1627 +#: ../Doc/library/doctest.rst:1631 msgid "" "Argument *s* is a string containing doctest examples. The string is " "converted to a Python script, where doctest examples in *s* are converted to " @@ -1786,22 +1792,22 @@ msgid "" "generated script is returned as a string. For example, ::" msgstr "" -#: ../Doc/library/doctest.rst:1642 +#: ../Doc/library/doctest.rst:1646 msgid "displays::" msgstr "" -#: ../Doc/library/doctest.rst:1652 +#: ../Doc/library/doctest.rst:1656 msgid "" "This function is used internally by other functions (see below), but can " "also be useful when you want to transform an interactive Python session into " "a Python script." msgstr "" -#: ../Doc/library/doctest.rst:1659 +#: ../Doc/library/doctest.rst:1663 msgid "Convert the doctest for an object to a script." msgstr "" -#: ../Doc/library/doctest.rst:1661 +#: ../Doc/library/doctest.rst:1665 msgid "" "Argument *module* is a module object, or dotted name of a module, containing " "the object whose doctests are of interest. Argument *name* is the name " @@ -1811,17 +1817,17 @@ msgid "" "module :file:`a.py` contains a top-level function :func:`f`, then ::" msgstr "" -#: ../Doc/library/doctest.rst:1671 +#: ../Doc/library/doctest.rst:1675 msgid "" "prints a script version of function :func:`f`'s docstring, with doctests " "converted to code, and the rest placed in comments." msgstr "" -#: ../Doc/library/doctest.rst:1677 +#: ../Doc/library/doctest.rst:1681 msgid "Debug the doctests for an object." msgstr "" -#: ../Doc/library/doctest.rst:1679 +#: ../Doc/library/doctest.rst:1683 msgid "" "The *module* and *name* arguments are the same as for function :func:" "`testsource` above. The synthesized Python script for the named object's " @@ -1829,13 +1835,13 @@ msgid "" "the control of the Python debugger, :mod:`pdb`." msgstr "" -#: ../Doc/library/doctest.rst:1684 +#: ../Doc/library/doctest.rst:1688 msgid "" "A shallow copy of ``module.__dict__`` is used for both local and global " "execution context." msgstr "" -#: ../Doc/library/doctest.rst:1687 +#: ../Doc/library/doctest.rst:1691 msgid "" "Optional argument *pm* controls whether post-mortem debugging is used. If " "*pm* has a true value, the script file is run directly, and the debugger " @@ -1847,30 +1853,30 @@ msgid "" "to :func:`pdb.run`." msgstr "" -#: ../Doc/library/doctest.rst:1698 +#: ../Doc/library/doctest.rst:1702 msgid "Debug the doctests in a string." msgstr "" -#: ../Doc/library/doctest.rst:1700 +#: ../Doc/library/doctest.rst:1704 msgid "" "This is like function :func:`debug` above, except that a string containing " "doctest examples is specified directly, via the *src* argument." msgstr "" -#: ../Doc/library/doctest.rst:1703 +#: ../Doc/library/doctest.rst:1707 msgid "" "Optional argument *pm* has the same meaning as in function :func:`debug` " "above." msgstr "" -#: ../Doc/library/doctest.rst:1705 +#: ../Doc/library/doctest.rst:1709 msgid "" "Optional argument *globs* gives a dictionary to use as both local and global " "execution context. If not specified, or ``None``, an empty dictionary is " "used. If specified, a shallow copy of the dictionary is used." msgstr "" -#: ../Doc/library/doctest.rst:1710 +#: ../Doc/library/doctest.rst:1714 msgid "" "The :class:`DebugRunner` class, and the special exceptions it may raise, are " "of most interest to testing framework authors, and will only be sketched " @@ -1878,7 +1884,7 @@ msgid "" "(which is a doctest!) for more details:" msgstr "" -#: ../Doc/library/doctest.rst:1718 +#: ../Doc/library/doctest.rst:1722 msgid "" "A subclass of :class:`DocTestRunner` that raises an exception as soon as a " "failure is encountered. If an unexpected exception occurs, an :exc:" @@ -1888,89 +1894,89 @@ msgid "" "the actual output." msgstr "" -#: ../Doc/library/doctest.rst:1725 +#: ../Doc/library/doctest.rst:1729 msgid "" "For information about the constructor parameters and methods, see the " "documentation for :class:`DocTestRunner` in section :ref:`doctest-advanced-" "api`." msgstr "" -#: ../Doc/library/doctest.rst:1728 +#: ../Doc/library/doctest.rst:1732 msgid "" "There are two exceptions that may be raised by :class:`DebugRunner` " "instances:" msgstr "" -#: ../Doc/library/doctest.rst:1733 +#: ../Doc/library/doctest.rst:1737 msgid "" "An exception raised by :class:`DocTestRunner` to signal that a doctest " "example's actual output did not match its expected output. The constructor " "arguments are used to initialize the attributes of the same names." msgstr "" -#: ../Doc/library/doctest.rst:1737 +#: ../Doc/library/doctest.rst:1741 msgid ":exc:`DocTestFailure` defines the following attributes:" msgstr "" -#: ../Doc/library/doctest.rst:1742 ../Doc/library/doctest.rst:1766 +#: ../Doc/library/doctest.rst:1746 ../Doc/library/doctest.rst:1770 msgid "The :class:`DocTest` object that was being run when the example failed." msgstr "" -#: ../Doc/library/doctest.rst:1747 ../Doc/library/doctest.rst:1771 +#: ../Doc/library/doctest.rst:1751 ../Doc/library/doctest.rst:1775 msgid "The :class:`Example` that failed." msgstr "" -#: ../Doc/library/doctest.rst:1752 +#: ../Doc/library/doctest.rst:1756 msgid "The example's actual output." msgstr "" -#: ../Doc/library/doctest.rst:1757 +#: ../Doc/library/doctest.rst:1761 msgid "" "An exception raised by :class:`DocTestRunner` to signal that a doctest " "example raised an unexpected exception. The constructor arguments are used " "to initialize the attributes of the same names." msgstr "" -#: ../Doc/library/doctest.rst:1761 +#: ../Doc/library/doctest.rst:1765 msgid ":exc:`UnexpectedException` defines the following attributes:" msgstr "" -#: ../Doc/library/doctest.rst:1776 +#: ../Doc/library/doctest.rst:1780 msgid "" "A tuple containing information about the unexpected exception, as returned " "by :func:`sys.exc_info`." msgstr "" -#: ../Doc/library/doctest.rst:1783 +#: ../Doc/library/doctest.rst:1787 msgid "Soapbox" msgstr "" -#: ../Doc/library/doctest.rst:1785 +#: ../Doc/library/doctest.rst:1789 msgid "" "As mentioned in the introduction, :mod:`doctest` has grown to have three " "primary uses:" msgstr "" -#: ../Doc/library/doctest.rst:1788 +#: ../Doc/library/doctest.rst:1792 msgid "Checking examples in docstrings." msgstr "" -#: ../Doc/library/doctest.rst:1790 +#: ../Doc/library/doctest.rst:1794 msgid "Regression testing." msgstr "" -#: ../Doc/library/doctest.rst:1792 +#: ../Doc/library/doctest.rst:1796 msgid "Executable documentation / literate testing." msgstr "" -#: ../Doc/library/doctest.rst:1794 +#: ../Doc/library/doctest.rst:1798 msgid "" "These uses have different requirements, and it is important to distinguish " "them. In particular, filling your docstrings with obscure test cases makes " "for bad documentation." msgstr "" -#: ../Doc/library/doctest.rst:1798 +#: ../Doc/library/doctest.rst:1802 msgid "" "When writing a docstring, choose docstring examples with care. There's an " "art to this that needs to be learned---it may not be natural at first. " @@ -1982,7 +1988,7 @@ msgid "" "\"harmless\" change." msgstr "" -#: ../Doc/library/doctest.rst:1806 +#: ../Doc/library/doctest.rst:1810 msgid "" "Doctest also makes an excellent tool for regression testing, especially if " "you don't skimp on explanatory text. By interleaving prose and examples, it " @@ -2003,13 +2009,13 @@ msgid "" "different results, blurring the distinction between testing and explaining." msgstr "" -#: ../Doc/library/doctest.rst:1824 +#: ../Doc/library/doctest.rst:1828 msgid "" "Regression testing is best confined to dedicated objects or files. There " "are several options for organizing tests:" msgstr "" -#: ../Doc/library/doctest.rst:1827 +#: ../Doc/library/doctest.rst:1831 msgid "" "Write text files containing test cases as interactive examples, and test the " "files using :func:`testfile` or :func:`DocFileSuite`. This is recommended, " @@ -2017,7 +2023,7 @@ msgid "" "doctest." msgstr "" -#: ../Doc/library/doctest.rst:1832 +#: ../Doc/library/doctest.rst:1836 msgid "" "Define functions named ``_regrtest_topic`` that consist of single " "docstrings, containing test cases for the named topics. These functions can " @@ -2025,13 +2031,13 @@ msgid "" "test file." msgstr "" -#: ../Doc/library/doctest.rst:1836 +#: ../Doc/library/doctest.rst:1840 msgid "" "Define a ``__test__`` dictionary mapping from regression test topics to " "docstrings containing test cases." msgstr "" -#: ../Doc/library/doctest.rst:1839 +#: ../Doc/library/doctest.rst:1843 msgid "" "When you have placed your tests in a module, the module can itself be the " "test runner. When a test fails, you can arrange for your test runner to re-" @@ -2039,11 +2045,11 @@ msgid "" "example of such a test runner::" msgstr "" -#: ../Doc/library/doctest.rst:1861 +#: ../Doc/library/doctest.rst:1865 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/doctest.rst:1862 +#: ../Doc/library/doctest.rst:1866 msgid "" "Examples containing both expected output and an exception are not supported. " "Trying to guess where one ends and the other begins is too error-prone, and " diff --git a/library/email.generator.po b/library/email.generator.po index c0730015..f406f37e 100644 --- a/library/email.generator.po +++ b/library/email.generator.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-28 15:29+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -203,7 +203,7 @@ msgid "" "is required because strings cannot represent non-ASCII bytes.) Convert any " "bytes with the high bit set as needed using an ASCII-compatible :mailheader:" "`Content-Transfer-Encoding`. That is, transform parts with non-ASCII :" -"mailheader:`Cotnent-Transfer-Encoding` (:mailheader:`Content-Transfer-" +"mailheader:`Content-Transfer-Encoding` (:mailheader:`Content-Transfer-" "Encoding: 8bit`) to an ASCII compatible :mailheader:`Content-Transfer-" "Encoding`, and encode RFC-invalid non-ASCII bytes in headers using the MIME " "``unknown-8bit`` character set, thus rendering them RFC-compliant." diff --git a/library/email.parser.po b/library/email.parser.po index b1eda06d..906cd2b0 100644 --- a/library/email.parser.po +++ b/library/email.parser.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-17 21:38+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-05-08 16:44+0200\n" +"Last-Translator: Mathieu Dupuy \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: Mathieu Dupuy \n" "X-Generator: Poedit 2.2.1\n" #: ../Doc/library/email.parser.rst:2 diff --git a/library/exceptions.po b/library/exceptions.po index 2bfb211b..b40b297c 100644 --- a/library/exceptions.po +++ b/library/exceptions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 20:09+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -1124,38 +1124,32 @@ msgstr "" "lorsque ces avertissements sont destinés aux autres développeurs Python." #: ../Doc/library/exceptions.rst:694 +#, fuzzy msgid "" -"Base class for warnings about features which will be deprecated in the " -"future." +"Base class for warnings about features which are obsolete and expected to be " +"deprecated in the future, but are not deprecated at the moment." msgstr "" "Classe de base pour les avertissements sur les fonctionnalités qui seront " "obsolètes dans le futur." #: ../Doc/library/exceptions.rst:698 msgid "" -"PendingDeprecationWarning was introduced as an \"ignored by default\" " -"version of DeprecationWarning. But :exc:`DeprecationWarning` is also " -"ignored by default since Python 2.7 and 3.2. There is not much difference " -"between PendingDeprecationWarning and DeprecationWarning nowadays. " -"DeprecationWarning is recommended in general." +"This class is rarely used as emitting a warning about a possible upcoming " +"deprecation is unusual, and :exc:`DeprecationWarning` is preferred for " +"already active deprecations." msgstr "" -"*PendingDeprecationWarning* a été introduit en tant qu’une version de " -"*DeprecationWarning* ignorée par défaut. Mais :exc:`DeprecationWarning` est " -"aussi ignorée par défaut depuis Python 2.7 et 3.2. Il n’y a pas beaucoup de " -"différence entre *PendingDeprecationWarning* et *DeprecationWarning* de nos " -"jours. *DeprecationWarning* est recommandé en général." -#: ../Doc/library/exceptions.rst:708 +#: ../Doc/library/exceptions.rst:705 msgid "Base class for warnings about dubious syntax." msgstr "Classe de base pour les avertissements sur de la syntaxe douteuse." -#: ../Doc/library/exceptions.rst:713 +#: ../Doc/library/exceptions.rst:710 msgid "Base class for warnings about dubious runtime behavior." msgstr "" "Classe de base pour les avertissements sur les comportements d'exécution " "douteux." -#: ../Doc/library/exceptions.rst:718 +#: ../Doc/library/exceptions.rst:715 msgid "" "Base class for warnings about deprecated features when those warnings are " "intended for end users of applications that are written in Python." @@ -1164,24 +1158,24 @@ msgstr "" "seront obsolètes dans le futur quand ces avertissements destinés aux " "utilisateurs finaux des applications écrites en Python." -#: ../Doc/library/exceptions.rst:724 +#: ../Doc/library/exceptions.rst:721 msgid "Base class for warnings about probable mistakes in module imports." msgstr "" "Classe de base pour les avertissements sur des erreurs probables dans les " "imports de modules." -#: ../Doc/library/exceptions.rst:729 +#: ../Doc/library/exceptions.rst:726 msgid "Base class for warnings related to Unicode." msgstr "Classe de base pour les avertissements liés à l'Unicode." -#: ../Doc/library/exceptions.rst:734 +#: ../Doc/library/exceptions.rst:731 msgid "" "Base class for warnings related to :class:`bytes` and :class:`bytearray`." msgstr "" "Classe de base pour les avertissements liés à :class:`bytes` et :class:" "`bytearray`." -#: ../Doc/library/exceptions.rst:739 +#: ../Doc/library/exceptions.rst:736 msgid "" "Base class for warnings related to resource usage. Ignored by the default " "warning filters." @@ -1189,14 +1183,28 @@ msgstr "" "Classe de base pour les avertissements liés à l'utilisation de ressources. " "Ignorée par les filtres d’avertissements par défaut." -#: ../Doc/library/exceptions.rst:747 +#: ../Doc/library/exceptions.rst:744 msgid "Exception hierarchy" msgstr "Hiérarchie des exceptions" -#: ../Doc/library/exceptions.rst:749 +#: ../Doc/library/exceptions.rst:746 msgid "The class hierarchy for built-in exceptions is:" msgstr "La hiérarchie de classes pour les exceptions natives est la suivante :" +#~ msgid "" +#~ "PendingDeprecationWarning was introduced as an \"ignored by default\" " +#~ "version of DeprecationWarning. But :exc:`DeprecationWarning` is also " +#~ "ignored by default since Python 2.7 and 3.2. There is not much difference " +#~ "between PendingDeprecationWarning and DeprecationWarning nowadays. " +#~ "DeprecationWarning is recommended in general." +#~ msgstr "" +#~ "*PendingDeprecationWarning* a été introduit en tant qu’une version de " +#~ "*DeprecationWarning* ignorée par défaut. Mais :exc:`DeprecationWarning` " +#~ "est aussi ignorée par défaut depuis Python 2.7 et 3.2. Il n’y a pas " +#~ "beaucoup de différence entre *PendingDeprecationWarning* et " +#~ "*DeprecationWarning* de nos jours. *DeprecationWarning* est recommandé en " +#~ "général." + #~ msgid "" #~ "Raised when a floating point operation fails. This exception is always " #~ "defined, but can only be raised when Python is configured with the ``--" diff --git a/library/gettext.po b/library/gettext.po index 831aa40c..f67ce3ba 100644 --- a/library/gettext.po +++ b/library/gettext.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-27 16:17+0100\n" "Last-Translator: François Magimel \n" "Language-Team: FRENCH \n" @@ -24,11 +24,12 @@ msgid "**Source code:** :source:`Lib/gettext.py`" msgstr "**Code source :** :source:`Lib/gettext.py`" #: ../Doc/library/gettext.rst:14 +#, fuzzy msgid "" "The :mod:`gettext` module provides internationalization (I18N) and " "localization (L10N) services for your Python modules and applications. It " -"supports both the GNU ``gettext`` message catalog API and a higher level, " -"class-based API that may be more appropriate for Python files. The " +"supports both the GNU :program:`gettext` message catalog API and a higher " +"level, class-based API that may be more appropriate for Python files. The " "interface described below allows you to write your module and application " "messages in one natural language, and provide a catalog of translated " "messages for running under different natural languages." @@ -72,11 +73,12 @@ msgstr "" "volée, il est plus judicieux d'utiliser l'API basée sur des classes." #: ../Doc/library/gettext.rst:39 +#, fuzzy msgid "" "Bind the *domain* to the locale directory *localedir*. More concretely, :" "mod:`gettext` will look for binary :file:`.mo` files for the given domain " -"using the path (on Unix): :file:`localedir/language/LC_MESSAGES/domain.mo`, " -"where *languages* is searched for in the environment variables :envvar:" +"using the path (on Unix): :file:`{localedir}/{language}/LC_MESSAGES/{domain}." +"mo`, where *languages* is searched for in the environment variables :envvar:" "`LANGUAGE`, :envvar:`LC_ALL`, :envvar:`LC_MESSAGES`, and :envvar:`LANG` " "respectively." msgstr "" @@ -222,14 +224,15 @@ msgid "Class-based API" msgstr "API basée sur les classes" #: ../Doc/library/gettext.rst:136 +#, fuzzy msgid "" "The class-based API of the :mod:`gettext` module gives you more flexibility " "and greater convenience than the GNU :program:`gettext` API. It is the " "recommended way of localizing your Python applications and modules. :mod:`!" -"gettext` defines a \"translations\" class which implements the parsing of " -"GNU :file:`.mo` format files, and has methods for returning strings. " -"Instances of this \"translations\" class can also install themselves in the " -"built-in namespace as the function :func:`_`." +"gettext` defines a :class:`GNUTranslations` class which implements the " +"parsing of GNU :file:`.mo` format files, and has methods for returning " +"strings. Instances of this class can also install themselves in the built-in " +"namespace as the function :func:`_`." msgstr "" "L'API du module :mod:`gettext` basée sur les classes vous donne plus de " "flexibilité et est plus pratique que l'API de GNU :program:`gettext`. Son " @@ -240,11 +243,12 @@ msgstr "" "classe \"translations\" peuvent également s'installer dans l'espace de " "nommage natif en tant que fonction :func:`_`." -#: ../Doc/library/gettext.rst:147 +#: ../Doc/library/gettext.rst:146 +#, fuzzy msgid "" "This function implements the standard :file:`.mo` file search algorithm. It " "takes a *domain*, identical to what :func:`textdomain` takes. Optional " -"*localedir* is as in :func:`bindtextdomain` Optional *languages* is a list " +"*localedir* is as in :func:`bindtextdomain`. Optional *languages* is a list " "of strings, where each string is a language code." msgstr "" "Cette fonction implémente l'algorithme standard de recherche de fichier :" @@ -253,7 +257,7 @@ msgstr "" "func:`bindtextdomain`. Le paramètre optionnel *langages* est une liste de " "chaînes de caractères correspondants au code d'une langue." -#: ../Doc/library/gettext.rst:152 +#: ../Doc/library/gettext.rst:151 msgid "" "If *localedir* is not given, then the default system locale directory is " "used. [#]_ If *languages* is not given, then the following environment " @@ -272,7 +276,7 @@ msgstr "" "langues, séparées par des deux-points, qui sera utilisée pour générer la " "liste des codes de langues attendue." -#: ../Doc/library/gettext.rst:160 +#: ../Doc/library/gettext.rst:159 msgid "" ":func:`find` then expands and normalizes the languages, and then iterates " "through them, searching for an existing file built of these components:" @@ -281,11 +285,11 @@ msgstr "" "sur la liste obtenue afin de trouver un fichier de traduction existant et " "correspondant :" -#: ../Doc/library/gettext.rst:163 +#: ../Doc/library/gettext.rst:162 msgid ":file:`{localedir}/{language}/LC_MESSAGES/{domain}.mo`" msgstr ":file:`{localedir}/{language}/LC_MESSAGES/{domain}.mo`" -#: ../Doc/library/gettext.rst:165 +#: ../Doc/library/gettext.rst:164 msgid "" "The first such file name that exists is returned by :func:`find`. If no such " "file is found, then ``None`` is returned. If *all* is given, it returns a " @@ -297,12 +301,13 @@ msgstr "" "renvoyée la liste de tous les noms de fichiers, dans l'ordre dans lequel ils " "apparaissent dans *languages* ou dans les variables d'environnement." -#: ../Doc/library/gettext.rst:173 +#: ../Doc/library/gettext.rst:172 +#, fuzzy msgid "" -"Return a :class:`Translations` instance based on the *domain*, *localedir*, " +"Return a :class:`*Translations` instance based on the *domain*, *localedir*, " "and *languages*, which are first passed to :func:`find` to get a list of the " "associated :file:`.mo` file paths. Instances with identical :file:`.mo` " -"file names are cached. The actual class instantiated is either *class_* if " +"file names are cached. The actual class instantiated is *class_* if " "provided, otherwise :class:`GNUTranslations`. The class's constructor must " "take a single :term:`file object` argument. If provided, *codeset* will " "change the charset used to encode translated strings in the :meth:" @@ -319,7 +324,7 @@ msgstr "" "chaînes de caractères traduites, dans les méthodes :meth:`~NullTranslations." "lgettext` et :meth:`~NullTranslations.lngettext`." -#: ../Doc/library/gettext.rst:183 +#: ../Doc/library/gettext.rst:182 msgid "" "If multiple files are found, later files are used as fallbacks for earlier " "ones. To allow setting the fallback, :func:`copy.copy` is used to clone each " @@ -331,7 +336,7 @@ msgstr "" "`copy.copy` est utilisé pour copier chaque objet traduit depuis le cache ; " "les vraies données de l'instance étant toujours recopiées dans le cache." -#: ../Doc/library/gettext.rst:188 +#: ../Doc/library/gettext.rst:187 msgid "" "If no :file:`.mo` file is found, this function raises :exc:`OSError` if " "*fallback* is false (which is the default), and returns a :class:" @@ -342,13 +347,13 @@ msgstr "" "*fallback* vaut *True* et une instance :class:`NullTranslations` est " "renvoyée." -#: ../Doc/library/gettext.rst:192 +#: ../Doc/library/gettext.rst:191 msgid ":exc:`IOError` used to be raised instead of :exc:`OSError`." msgstr "" "Avant, c'était l'exception :exc:`IOError` qui était levée, au lieu de :exc:" "`OSError`." -#: ../Doc/library/gettext.rst:198 +#: ../Doc/library/gettext.rst:197 msgid "" "This installs the function :func:`_` in Python's builtins namespace, based " "on *domain*, *localedir*, and *codeset* which are passed to the function :" @@ -358,7 +363,7 @@ msgstr "" "en se basant sur *domain*, *localedir* et *codeset*, qui sont passés en " "argument de la fonction :func:`translation`." -#: ../Doc/library/gettext.rst:202 +#: ../Doc/library/gettext.rst:201 msgid "" "For the *names* parameter, please see the description of the translation " "object's :meth:`~NullTranslations.install` method." @@ -366,7 +371,7 @@ msgstr "" "Concernant le paramètre *names*, se référer à la description de la méthode :" "meth:`~NullTranslations.install`." -#: ../Doc/library/gettext.rst:205 +#: ../Doc/library/gettext.rst:204 msgid "" "As seen below, you usually mark the strings in your application that are " "candidates for translation, by wrapping them in a call to the :func:`_` " @@ -375,7 +380,7 @@ msgstr "" "Habituellement, la fonction :func:`_` est appliquée aux chaînes de " "caractères qui doivent être traduites comme suit : ::" -#: ../Doc/library/gettext.rst:211 +#: ../Doc/library/gettext.rst:210 msgid "" "For convenience, you want the :func:`_` function to be installed in Python's " "builtins namespace, so it is easily accessible in all modules of your " @@ -385,11 +390,11 @@ msgstr "" "l'espace de nommage natif de Python pour la rendre plus accessible dans tous " "les modules de votre application." -#: ../Doc/library/gettext.rst:217 +#: ../Doc/library/gettext.rst:216 msgid "The :class:`NullTranslations` class" msgstr "La classe :class:`NullTranslations`" -#: ../Doc/library/gettext.rst:219 +#: ../Doc/library/gettext.rst:218 msgid "" "Translation classes are what actually implement the translation of original " "source file message strings to translated message strings. The base class " @@ -404,7 +409,7 @@ msgstr "" "spécifiques à la traduction. Voici les méthodes de :class:`!" "NullTranslations` :" -#: ../Doc/library/gettext.rst:228 +#: ../Doc/library/gettext.rst:227 msgid "" "Takes an optional :term:`file object` *fp*, which is ignored by the base " "class. Initializes \"protected\" instance variables *_info* and *_charset* " @@ -418,9 +423,10 @@ msgstr "" "*_fallback* qui est définie au travers de :meth:`add_fallback`. Puis " "appelle ``self._parse(fp)`` si *fp* ne vaut pas ``None``." -#: ../Doc/library/gettext.rst:236 +#: ../Doc/library/gettext.rst:235 +#, fuzzy msgid "" -"No-op'd in the base class, this method takes file object *fp*, and reads the " +"No-op in the base class, this method takes file object *fp*, and reads the " "data from the file, initializing its message catalog. If you have an " "unsupported message catalog file format, you should override this method to " "parse your format." @@ -430,7 +436,7 @@ msgstr "" "catalogue de messages dont le format n'est pas pris en charge, vous devriez " "surcharger cette méthode pour analyser votre format." -#: ../Doc/library/gettext.rst:244 +#: ../Doc/library/gettext.rst:243 msgid "" "Add *fallback* as the fallback object for the current translation object. A " "translation object should consult the fallback if it cannot provide a " @@ -440,7 +446,7 @@ msgstr "" "courant. Un objet de traduction devrait interroger cet objet de " "substitution s'il ne peut fournir une traduction pour un message donné." -#: ../Doc/library/gettext.rst:251 +#: ../Doc/library/gettext.rst:250 msgid "" "If a fallback has been set, forward :meth:`!gettext` to the fallback. " "Otherwise, return *message*. Overridden in derived classes." @@ -448,7 +454,7 @@ msgstr "" "Si un objet de substitution a été défini, transmet :meth:`!gettext` à celui-" "ci. Sinon, renvoie *message*. Surchargé dans les classes dérivées." -#: ../Doc/library/gettext.rst:257 +#: ../Doc/library/gettext.rst:256 msgid "" "If a fallback has been set, forward :meth:`!ngettext` to the fallback. " "Otherwise, return *singular* if *n* is 1; return *plural* otherwise. " @@ -458,7 +464,7 @@ msgstr "" "ci. Sinon, renvoie *singular* si *n* vaut 1, *plural* sinon. Surchargé " "dans les classes dérivées." -#: ../Doc/library/gettext.rst:265 +#: ../Doc/library/gettext.rst:264 msgid "" "Equivalent to :meth:`.gettext` and :meth:`.ngettext`, but the translation is " "returned as a byte string encoded in the preferred system encoding if no " @@ -470,7 +476,7 @@ msgstr "" "système si aucun autre n'a été défini avec :meth:`set_output_charset`. " "Surchargé dans les classes dérivées." -#: ../Doc/library/gettext.rst:272 ../Doc/library/gettext.rst:393 +#: ../Doc/library/gettext.rst:271 ../Doc/library/gettext.rst:393 msgid "" "These methods should be avoided in Python 3. See the warning for the :func:" "`lgettext` function." @@ -478,9 +484,11 @@ msgstr "" "L'utilisation de ces méthodes doivent être évitée en Python 3. Voir " "l'avertissement de la fonction :func:`lgettext`." -#: ../Doc/library/gettext.rst:278 -msgid "Return the \"protected\" :attr:`_info` variable." -msgstr "Renvoie la variable \"protégée\" :attr:`_info`." +#: ../Doc/library/gettext.rst:277 +msgid "" +"Return the \"protected\" :attr:`_info` variable, a dictionary containing the " +"metadata found in the message catalog file." +msgstr "" #: ../Doc/library/gettext.rst:283 msgid "Return the encoding of the message catalog file." @@ -558,16 +566,17 @@ msgstr "" "`gettext` :file:`.mo` au format petit et gros-boutiste." #: ../Doc/library/gettext.rst:329 +#, fuzzy msgid "" -":class:`GNUTranslations` parses optional meta-data out of the translation " -"catalog. It is convention with GNU :program:`gettext` to include meta-data " -"as the translation for the empty string. This meta-data is in :rfc:`822`\\ -" +":class:`GNUTranslations` parses optional metadata out of the translation " +"catalog. It is convention with GNU :program:`gettext` to include metadata as " +"the translation for the empty string. This metadata is in :rfc:`822`\\ -" "style ``key: value`` pairs, and should contain the ``Project-Id-Version`` " "key. If the key ``Content-Type`` is found, then the ``charset`` property is " "used to initialize the \"protected\" :attr:`_charset` instance variable, " "defaulting to ``None`` if not found. If the charset encoding is specified, " "then all message ids and message strings read from the catalog are converted " -"to Unicode using this encoding, else ASCII encoding is assumed." +"to Unicode using this encoding, else ASCII is assumed." msgstr "" ":class:`GNUTranslations` analyse les métadonnées optionnelles du catalogue " "de traduction. Il est d'usage avec GNU :program:`gettext` d'utiliser une " @@ -748,7 +757,8 @@ msgstr "" "pour générer des catalogues de messages brut" #: ../Doc/library/gettext.rst:439 -msgid "create language specific translations of the message catalogs" +#, fuzzy +msgid "create language-specific translations of the message catalogs" msgstr "" "créer les traductions spécifiques à une langue des catalogues de messages" @@ -771,7 +781,7 @@ msgstr "" "caractères à traduire doit être appliqué le marqueur ``_('...')`` --- c'est-" "à-dire en appelant la fonction :func:`_`. Par exemple : ::" -#: ../Doc/library/gettext.rst:453 +#: ../Doc/library/gettext.rst:452 msgid "" "In this example, the string ``'writing a log message'`` is marked as a " "candidate for translation, while the strings ``'mylog.txt'`` and ``'w'`` are " @@ -780,7 +790,7 @@ msgstr "" "Dans cet exemple, la chaîne ``'writing a log message'`` est maquée comme " "traduite, contrairement aux chaînes ``'mylog.txt'`` et ``'w'``." -#: ../Doc/library/gettext.rst:456 +#: ../Doc/library/gettext.rst:455 msgid "" "There are a few tools to extract the strings meant for translation. The " "original GNU :program:`gettext` only supported C or C++ source code but its " @@ -803,7 +813,7 @@ msgstr "" "François Pinard, nommé :program:`xpot`, fait de même et est disponible dans " "son `paquet po-utils `__." -#: ../Doc/library/gettext.rst:466 +#: ../Doc/library/gettext.rst:465 msgid "" "(Python also includes pure-Python versions of these programs, called :" "program:`pygettext.py` and :program:`msgfmt.py`; some Python distributions " @@ -827,7 +837,7 @@ msgstr "" "besoin du paquet GNU :program:`gettext` pour internationaliser vos " "applications en Python.)" -#: ../Doc/library/gettext.rst:478 +#: ../Doc/library/gettext.rst:477 msgid "" ":program:`xgettext`, :program:`pygettext`, and similar tools generate :file:" "`.po` files that are message catalogs. They are structured human-readable " @@ -840,7 +850,7 @@ msgstr "" "contiennent toutes les chaînes du code source marquées comme traduisible, " "ainsi que leur traduction à utiliser." -#: ../Doc/library/gettext.rst:484 +#: ../Doc/library/gettext.rst:483 msgid "" "Copies of these :file:`.po` files are then handed over to the individual " "human translators who write translations for every supported natural " @@ -859,7 +869,7 @@ msgstr "" "fichiers :file:`.mo` sont utilisés par le module :mod:`gettext` pour la " "traduction lors de l'exécution." -#: ../Doc/library/gettext.rst:493 +#: ../Doc/library/gettext.rst:492 msgid "" "How you use the :mod:`gettext` module in your code depends on whether you " "are internationalizing a single module or your entire application. The next " @@ -869,21 +879,22 @@ msgstr "" "de si vous internationalisez un seul module ou l'ensemble de votre " "application. Les deux sections suivantes traitent chacune des cas." -#: ../Doc/library/gettext.rst:499 +#: ../Doc/library/gettext.rst:498 msgid "Localizing your module" msgstr "Localiser votre module" -#: ../Doc/library/gettext.rst:501 +#: ../Doc/library/gettext.rst:500 +#, fuzzy msgid "" "If you are localizing your module, you must take care not to make global " -"changes, e.g. to the built-in namespace. You should not use the GNU " -"``gettext`` API but instead the class-based API." +"changes, e.g. to the built-in namespace. You should not use the GNU :program:" +"`gettext` API but instead the class-based API." msgstr "" "Si vous localisez votre module, veillez à ne pas faire de changements " "globaux, e.g. dans l'espace de nommage natif. Vous ne devriez pas utiliser " "l'API GNU ``gettext`` mais plutôt celle basée sur les classes." -#: ../Doc/library/gettext.rst:505 +#: ../Doc/library/gettext.rst:504 msgid "" "Let's say your module is called \"spam\" and the module's various natural " "language translation :file:`.mo` files reside in :file:`/usr/share/locale` " @@ -895,11 +906,11 @@ msgstr "" "usr/share/locale` au format GNU :program:`gettext`. Voici ce que vous " "pouvez alors mettre en haut de votre module : ::" -#: ../Doc/library/gettext.rst:516 +#: ../Doc/library/gettext.rst:515 msgid "Localizing your application" msgstr "Localiser votre application" -#: ../Doc/library/gettext.rst:518 +#: ../Doc/library/gettext.rst:517 msgid "" "If you are localizing your application, you can install the :func:`_` " "function globally into the built-in namespace, usually in the main driver " @@ -912,7 +923,7 @@ msgstr "" "fichiers de votre application de n'utiliser que ``_('...')`` sans devoir le " "redéfinir explicitement dans chaque fichier." -#: ../Doc/library/gettext.rst:523 +#: ../Doc/library/gettext.rst:522 msgid "" "In the simple case then, you need only add the following bit of code to the " "main driver file of your application::" @@ -920,7 +931,7 @@ msgstr "" "Dans ce cas, vous n'aurez à ajouter que le bout de code suivant au fichier " "principal de votre application : ::" -#: ../Doc/library/gettext.rst:529 +#: ../Doc/library/gettext.rst:528 msgid "" "If you need to set the locale directory, you can pass it into the :func:" "`install` function::" @@ -928,11 +939,11 @@ msgstr "" "Si vous avez besoin de définir le dossier des localisations, vous pouvez le " "mettre en argument de la fonction :func:`install` : ::" -#: ../Doc/library/gettext.rst:537 +#: ../Doc/library/gettext.rst:536 msgid "Changing languages on the fly" msgstr "Changer de langue à la volée" -#: ../Doc/library/gettext.rst:539 +#: ../Doc/library/gettext.rst:538 msgid "" "If your program needs to support many languages at the same time, you may " "want to create multiple translation instances and then switch between them " @@ -942,11 +953,11 @@ msgstr "" "temps, vous pouvez créer plusieurs instances de traduction, puis basculer " "entre elles de façon explicite, comme ceci : ::" -#: ../Doc/library/gettext.rst:560 +#: ../Doc/library/gettext.rst:559 msgid "Deferred translations" msgstr "Traductions différées" -#: ../Doc/library/gettext.rst:562 +#: ../Doc/library/gettext.rst:561 msgid "" "In most coding situations, strings are translated where they are coded. " "Occasionally however, you need to mark strings for translation, but defer " @@ -957,7 +968,7 @@ msgstr "" "ayez besoin de traduire une chaîne de caractères un peu plus loin. Un " "exemple classique est : ::" -#: ../Doc/library/gettext.rst:575 +#: ../Doc/library/gettext.rst:574 msgid "" "Here, you want to mark the strings in the ``animals`` list as being " "translatable, but you don't actually want to translate them until they are " @@ -966,11 +977,11 @@ msgstr "" "Ici, vous voulez marquer les chaînes de caractères de la liste ``animals`` " "comme étant traduisibles, mais ne les traduire qu'au moment de les afficher." -#: ../Doc/library/gettext.rst:579 +#: ../Doc/library/gettext.rst:578 msgid "Here is one way you can handle this situation::" msgstr "Voici un moyen de gérer ce cas : ::" -#: ../Doc/library/gettext.rst:595 +#: ../Doc/library/gettext.rst:594 msgid "" "This works because the dummy definition of :func:`_` simply returns the " "string unchanged. And this dummy definition will temporarily override any " @@ -985,7 +996,7 @@ msgstr "" "Attention toutefois si vous avez déjà une autre définition de :func:`_` dans " "l'espace de nommage local." -#: ../Doc/library/gettext.rst:601 +#: ../Doc/library/gettext.rst:600 msgid "" "Note that the second use of :func:`_` will not identify \"a\" as being " "translatable to the :program:`gettext` program, because the parameter is not " @@ -995,11 +1006,11 @@ msgstr "" "comme traduisible par le programme :program:`gettext` car ce n'est pas un " "chaîne au sens propre." -#: ../Doc/library/gettext.rst:605 +#: ../Doc/library/gettext.rst:604 msgid "Another way to handle this is with the following example::" msgstr "Voici une autre solution : ::" -#: ../Doc/library/gettext.rst:619 +#: ../Doc/library/gettext.rst:618 msgid "" "In this case, you are marking translatable strings with the function :func:" "`N_`, which won't conflict with any definition of :func:`_`. However, you " @@ -1019,11 +1030,11 @@ msgstr "" "commande :option:`!-k`. Le choix du nom :func:`N_` ici est totalement " "arbitraire et aurait très bien pu être :func:`MarqueurDeTraduction`." -#: ../Doc/library/gettext.rst:630 +#: ../Doc/library/gettext.rst:629 msgid "Acknowledgements" msgstr "Remerciements" -#: ../Doc/library/gettext.rst:632 +#: ../Doc/library/gettext.rst:631 msgid "" "The following people contributed code, feedback, design suggestions, " "previous implementations, and valuable experience to the creation of this " @@ -1033,50 +1044,52 @@ msgstr "" "participé aux suggestions de conception et aux implémentations précédentes, " "et ont partagé leur expérience précieuse pour la création de ce module :" -#: ../Doc/library/gettext.rst:635 +#: ../Doc/library/gettext.rst:634 msgid "Peter Funk" msgstr "Peter Funk" -#: ../Doc/library/gettext.rst:637 +#: ../Doc/library/gettext.rst:636 msgid "James Henstridge" msgstr "James Henstridge" -#: ../Doc/library/gettext.rst:639 +#: ../Doc/library/gettext.rst:638 msgid "Juan David Ibáñez Palomar" msgstr "Juan David Ibáñez Palomar" -#: ../Doc/library/gettext.rst:641 +#: ../Doc/library/gettext.rst:640 msgid "Marc-André Lemburg" msgstr "Marc-André Lemburg" -#: ../Doc/library/gettext.rst:643 +#: ../Doc/library/gettext.rst:642 msgid "Martin von Löwis" msgstr "Martin von Löwis" -#: ../Doc/library/gettext.rst:645 +#: ../Doc/library/gettext.rst:644 msgid "François Pinard" msgstr "François Pinard" -#: ../Doc/library/gettext.rst:647 +#: ../Doc/library/gettext.rst:646 msgid "Barry Warsaw" msgstr "Barry Warsaw" -#: ../Doc/library/gettext.rst:649 +#: ../Doc/library/gettext.rst:648 msgid "Gustavo Niemeyer" msgstr "Gustavo Niemeyer" -#: ../Doc/library/gettext.rst:652 +#: ../Doc/library/gettext.rst:651 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/gettext.rst:653 +#: ../Doc/library/gettext.rst:652 +#, fuzzy msgid "" "The default locale directory is system dependent; for example, on RedHat " "Linux it is :file:`/usr/share/locale`, but on Solaris it is :file:`/usr/lib/" "locale`. The :mod:`gettext` module does not try to support these system " -"dependent defaults; instead its default is :file:`sys.prefix/share/locale`. " -"For this reason, it is always best to call :func:`bindtextdomain` with an " -"explicit absolute path at the start of your application." +"dependent defaults; instead its default is :file:`{sys.prefix}/share/locale` " +"(see :data:`sys.prefix`). For this reason, it is always best to call :func:" +"`bindtextdomain` with an explicit absolute path at the start of your " +"application." msgstr "" "Le dossier par défaut pour les localisations dépend du système : par " "exemple, sur RedHat c'est :file:`/usr/share/locale`, mais sur Solaris c'est :" @@ -1089,3 +1102,6 @@ msgstr "" #: ../Doc/library/gettext.rst:660 msgid "See the footnote for :func:`bindtextdomain` above." msgstr "Voir la note de :func:`bindtextdomain` ci-dessus." + +#~ msgid "Return the \"protected\" :attr:`_info` variable." +#~ msgstr "Renvoie la variable \"protégée\" :attr:`_info`." diff --git a/library/http.cookies.po b/library/http.cookies.po index c8ffa7db..ed7e20f7 100644 --- a/library/http.cookies.po +++ b/library/http.cookies.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-11-12 23:15+0100\n" "Last-Translator: Tenma \n" "Language-Team: FRENCH \n" @@ -102,20 +102,23 @@ msgstr "" "Si l'argument *input* est donné, il est passé à la méthode :meth:`load`." #: ../Doc/library/http.cookies.rst:57 +#, fuzzy msgid "" "This class derives from :class:`BaseCookie` and overrides :meth:" -"`value_decode` and :meth:`value_encode` to be the identity and :func:`str` " -"respectively." +"`value_decode` and :meth:`value_encode`. SimpleCookie supports strings as " +"cookie values. When setting the value, SimpleCookie calls the builtin :func:" +"`str()` to convert the value to a string. Values received from HTTP are kept " +"as strings." msgstr "" "Cette classe dérive de :class:`BaseCookie`. Elle surcharge les méthodes :" "meth:`value_decode` et :meth:`value_encode` de manière à correspondre " "respectivement à l'identité et à :func:`str`." -#: ../Doc/library/http.cookies.rst:65 +#: ../Doc/library/http.cookies.rst:66 msgid "Module :mod:`http.cookiejar`" msgstr "Module :mod:`http.cookiejar`" -#: ../Doc/library/http.cookies.rst:64 +#: ../Doc/library/http.cookies.rst:65 msgid "" "HTTP cookie handling for web *clients*. The :mod:`http.cookiejar` and :mod:" "`http.cookies` modules do not depend on each other." @@ -123,39 +126,41 @@ msgstr "" "Gestion de témoins HTTP pour *clients* web. Les modules :mod:`http." "cookiejar` et :mod:`http.cookies` ne dépendent pas l'un de l'autre." -#: ../Doc/library/http.cookies.rst:67 +#: ../Doc/library/http.cookies.rst:68 msgid ":rfc:`2109` - HTTP State Management Mechanism" msgstr ":rfc:`2109` - HTTP State Management Mechanism" -#: ../Doc/library/http.cookies.rst:68 +#: ../Doc/library/http.cookies.rst:69 msgid "This is the state management specification implemented by this module." msgstr "Spécification de gestion d'états implantée par ce module." -#: ../Doc/library/http.cookies.rst:74 +#: ../Doc/library/http.cookies.rst:75 msgid "Cookie Objects" msgstr "Objets *Cookie*" -#: ../Doc/library/http.cookies.rst:79 +#: ../Doc/library/http.cookies.rst:80 +#, fuzzy msgid "" -"Return a decoded value from a string representation. Return value can be any " -"type. This method does nothing in :class:`BaseCookie` --- it exists so it " -"can be overridden." +"Return a tuple ``(real_value, coded_value)`` from a string representation. " +"``real_value`` can be any type. This method does no decoding in :class:" +"`BaseCookie` --- it exists so it can be overridden." msgstr "" "Renvoie la valeur décodée à partir de la représentation textuelle. La valeur " "de retour est d'un type quelconque. Cette méthode n'a aucun effet pour :" "class:`BaseCookie` ; elle n'existe que dans le but d'être surchargée." -#: ../Doc/library/http.cookies.rst:86 +#: ../Doc/library/http.cookies.rst:87 +#, fuzzy msgid "" -"Return an encoded value. *val* can be any type, but return value must be a " -"string. This method does nothing in :class:`BaseCookie` --- it exists so it " -"can be overridden." +"Return a tuple ``(real_value, coded_value)``. *val* can be any type, but " +"``coded_value`` will always be converted to a string. This method does no " +"encoding in :class:`BaseCookie` --- it exists so it can be overridden." msgstr "" "Renvoie une valeur codée. *val* est de type quelconque, mais la valeur de " "retour doit être une chaine de caractères. Cette méthode n'a aucun effet " "pour :class:`BaseCookie` ; elle n'existe que dans le but d'être surchargée." -#: ../Doc/library/http.cookies.rst:90 +#: ../Doc/library/http.cookies.rst:92 msgid "" "In general, it should be the case that :meth:`value_encode` and :meth:" "`value_decode` are inverses on the range of *value_decode*." @@ -165,7 +170,7 @@ msgstr "" "sortie de l'un dans l'entrée de l'autre la valeur finale doit être égale à " "la valeur initiale." -#: ../Doc/library/http.cookies.rst:96 +#: ../Doc/library/http.cookies.rst:98 msgid "" "Return a string representation suitable to be sent as HTTP headers. *attrs* " "and *header* are sent to each :class:`Morsel`'s :meth:`output` method. *sep* " @@ -177,7 +182,7 @@ msgstr "" "classe :class:`Morsel`. *sep* est le séparateur à utiliser pour joindre les " "valeurs d'en-têtes. Sa valeur par défaut est ``'\\r\\n'`` (CRLF)." -#: ../Doc/library/http.cookies.rst:104 +#: ../Doc/library/http.cookies.rst:106 msgid "" "Return an embeddable JavaScript snippet, which, if run on a browser which " "supports JavaScript, will act the same as if the HTTP headers was sent." @@ -186,12 +191,12 @@ msgstr "" "qui supporte le JavaScript, va fonctionner de la même manière que si les en-" "têtes HTTP avaient été envoyés." -#: ../Doc/library/http.cookies.rst:107 ../Doc/library/http.cookies.rst:195 -#: ../Doc/library/http.cookies.rst:203 +#: ../Doc/library/http.cookies.rst:109 ../Doc/library/http.cookies.rst:197 +#: ../Doc/library/http.cookies.rst:205 msgid "The meaning for *attrs* is the same as in :meth:`output`." msgstr "*attrs* a la même signification que dans la méthode :meth:`output`." -#: ../Doc/library/http.cookies.rst:112 +#: ../Doc/library/http.cookies.rst:114 msgid "" "If *rawdata* is a string, parse it as an ``HTTP_COOKIE`` and add the values " "found there as :class:`Morsel`\\ s. If it is a dictionary, it is equivalent " @@ -201,17 +206,17 @@ msgstr "" "``HTTP_COOKIE`` et ajouter les valeurs trouvées en tant que :class:`Morsel`" "\\ s. S'il s'agit d'un dictionnaire, cela est équivalent à ::" -#: ../Doc/library/http.cookies.rst:122 +#: ../Doc/library/http.cookies.rst:124 msgid "Morsel Objects" msgstr "Objets *Morsel*" -#: ../Doc/library/http.cookies.rst:127 +#: ../Doc/library/http.cookies.rst:129 msgid "Abstract a key/value pair, which has some :rfc:`2109` attributes." msgstr "" "Abstraction de paire clé / valeur, accompagnée d'attributs provenant de la " "spécification :rfc:`2109`." -#: ../Doc/library/http.cookies.rst:129 +#: ../Doc/library/http.cookies.rst:131 msgid "" "Morsels are dictionary-like objects, whose set of keys is constant --- the " "valid :rfc:`2109` attributes, which are" @@ -220,39 +225,39 @@ msgstr "" "l'ensemble des clés est fixe et égal aux attributs :rfc:`2109` valides, qui " "sont" -#: ../Doc/library/http.cookies.rst:132 +#: ../Doc/library/http.cookies.rst:134 msgid "``expires``" msgstr "``expires``" -#: ../Doc/library/http.cookies.rst:133 +#: ../Doc/library/http.cookies.rst:135 msgid "``path``" msgstr "``path``" -#: ../Doc/library/http.cookies.rst:134 +#: ../Doc/library/http.cookies.rst:136 msgid "``comment``" msgstr "``comment``" -#: ../Doc/library/http.cookies.rst:135 +#: ../Doc/library/http.cookies.rst:137 msgid "``domain``" msgstr "``domain``" -#: ../Doc/library/http.cookies.rst:136 +#: ../Doc/library/http.cookies.rst:138 msgid "``max-age``" msgstr "``max-age``" -#: ../Doc/library/http.cookies.rst:137 +#: ../Doc/library/http.cookies.rst:139 msgid "``secure``" msgstr "``secure``" -#: ../Doc/library/http.cookies.rst:138 +#: ../Doc/library/http.cookies.rst:140 msgid "``version``" msgstr "``version``" -#: ../Doc/library/http.cookies.rst:139 +#: ../Doc/library/http.cookies.rst:141 msgid "``httponly``" msgstr "``httponly``" -#: ../Doc/library/http.cookies.rst:141 +#: ../Doc/library/http.cookies.rst:143 msgid "" "The attribute :attr:`httponly` specifies that the cookie is only transferred " "in HTTP requests, and is not accessible through JavaScript. This is intended " @@ -262,12 +267,12 @@ msgstr "" "requêtes HTTP n'est pas accessible par le biais de JavaScript. Il s'agit " "d'une contremesure à certaines attaques de scripts inter-sites (*XSS*)." -#: ../Doc/library/http.cookies.rst:145 +#: ../Doc/library/http.cookies.rst:147 msgid "The keys are case-insensitive and their default value is ``''``." msgstr "" "Les clés ne sont pas sensibles à la casse, leur valeur par défaut est ``''``." -#: ../Doc/library/http.cookies.rst:147 +#: ../Doc/library/http.cookies.rst:149 msgid "" ":meth:`~Morsel.__eq__` now takes :attr:`~Morsel.key` and :attr:`~Morsel." "value` into account." @@ -275,7 +280,7 @@ msgstr "" "Dorénavant, :meth:`~Morsel.__eq__` prend en compte :attr:`~Morsel.key` et :" "attr:`~Morsel.value`." -#: ../Doc/library/http.cookies.rst:151 +#: ../Doc/library/http.cookies.rst:153 msgid "" "Attributes :attr:`~Morsel.key`, :attr:`~Morsel.value` and :attr:`~Morsel." "coded_value` are read-only. Use :meth:`~Morsel.set` for setting them." @@ -284,27 +289,27 @@ msgstr "" "coded_value` sont en lecture seule. Utilisez :meth:`~Morsel.set` pour les " "assigner." -#: ../Doc/library/http.cookies.rst:159 +#: ../Doc/library/http.cookies.rst:161 msgid "The value of the cookie." msgstr "La valeur du témoin." -#: ../Doc/library/http.cookies.rst:164 +#: ../Doc/library/http.cookies.rst:166 msgid "The encoded value of the cookie --- this is what should be sent." msgstr "La valeur codée du témoin. C'est celle qui doit être transférée." -#: ../Doc/library/http.cookies.rst:169 +#: ../Doc/library/http.cookies.rst:171 msgid "The name of the cookie." msgstr "Le nom du témoin." -#: ../Doc/library/http.cookies.rst:174 +#: ../Doc/library/http.cookies.rst:176 msgid "Set the *key*, *value* and *coded_value* attributes." msgstr "Assigne les attributs *key*, *value* et *coded_value*." -#: ../Doc/library/http.cookies.rst:179 +#: ../Doc/library/http.cookies.rst:181 msgid "Whether *K* is a member of the set of keys of a :class:`Morsel`." msgstr "Renvoie si *K* est membre des clés d'un :class:`Morsel`." -#: ../Doc/library/http.cookies.rst:184 +#: ../Doc/library/http.cookies.rst:186 msgid "" "Return a string representation of the Morsel, suitable to be sent as an HTTP " "header. By default, all the attributes are included, unless *attrs* is " @@ -316,7 +321,7 @@ msgstr "" "ne soit renseigné. Dans ce cas la valeur doit être une liste d'attributs à " "utiliser. Par défaut, *header* a la valeur ``\"Set-Cookie:\"``." -#: ../Doc/library/http.cookies.rst:192 +#: ../Doc/library/http.cookies.rst:194 msgid "" "Return an embeddable JavaScript snippet, which, if run on a browser which " "supports JavaScript, will act the same as if the HTTP header was sent." @@ -325,7 +330,7 @@ msgstr "" "qui supporte le JavaScript, va fonctionner de la même manière que si les en-" "têtes HTTP avaient été envoyés." -#: ../Doc/library/http.cookies.rst:200 +#: ../Doc/library/http.cookies.rst:202 msgid "" "Return a string representing the Morsel, without any surrounding HTTP or " "JavaScript." @@ -333,7 +338,7 @@ msgstr "" "Renvoie une chaine de caractères représentant le *Morsel*, nettoyé de son " "contexte HTTP ou JavaScript." -#: ../Doc/library/http.cookies.rst:208 +#: ../Doc/library/http.cookies.rst:210 msgid "" "Update the values in the Morsel dictionary with the values in the dictionary " "*values*. Raise an error if any of the keys in the *values* dict is not a " @@ -343,19 +348,19 @@ msgstr "" "provenant du dictionnaire *values*. Lève une erreur si une des clés n'est " "pas un attribut :rfc:`2109` valide." -#: ../Doc/library/http.cookies.rst:212 +#: ../Doc/library/http.cookies.rst:214 msgid "an error is raised for invalid keys." msgstr "une erreur est levée pour les clés invalides." -#: ../Doc/library/http.cookies.rst:218 +#: ../Doc/library/http.cookies.rst:220 msgid "Return a shallow copy of the Morsel object." msgstr "Renvoie une copie superficielle de l'objet *Morsel*." -#: ../Doc/library/http.cookies.rst:220 +#: ../Doc/library/http.cookies.rst:222 msgid "return a Morsel object instead of a dict." msgstr "renvoie un objet *Morsel* au lieu d'un ``dict``." -#: ../Doc/library/http.cookies.rst:226 +#: ../Doc/library/http.cookies.rst:228 msgid "" "Raise an error if key is not a valid :rfc:`2109` attribute, otherwise behave " "the same as :meth:`dict.setdefault`." @@ -363,11 +368,11 @@ msgstr "" "Lève une erreur si la clé n'est pas un attribut :rfc:`2109` valide, sinon " "fonctionne de la même manière que :meth:`dict.setdefault`." -#: ../Doc/library/http.cookies.rst:233 +#: ../Doc/library/http.cookies.rst:235 msgid "Example" msgstr "Exemple" -#: ../Doc/library/http.cookies.rst:235 +#: ../Doc/library/http.cookies.rst:237 msgid "" "The following example demonstrates how to use the :mod:`http.cookies` module." msgstr "" diff --git a/library/idle.po b/library/idle.po index e98d3f46..88f4dcd8 100644 --- a/library/idle.po +++ b/library/idle.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -89,7 +89,7 @@ msgstr "" msgid "" "On macOS, there is one application menu. It dynamically changes according " "to the window currently selected. It has an IDLE menu, and some entries " -"described below are moved around to conform to Apple guidlines." +"described below are moved around to conform to Apple guidelines." msgstr "" #: ../Doc/library/idle.rst:56 @@ -1240,11 +1240,17 @@ msgid "" "will not work correctly." msgstr "" -#: ../Doc/library/idle.rst:704 +#: ../Doc/library/idle.rst:703 +msgid "" +"When user code raises SystemExit either directly or by calling sys.exit, " +"IDLE returns to a Shell prompt instead of exiting." +msgstr "" + +#: ../Doc/library/idle.rst:707 msgid "User output in Shell" msgstr "" -#: ../Doc/library/idle.rst:706 +#: ../Doc/library/idle.rst:709 msgid "" "When a program outputs text, the result is determined by the corresponding " "output device. When IDLE executes user code, ``sys.stdout`` and ``sys." @@ -1254,7 +1260,7 @@ msgid "" "rather than production runs." msgstr "" -#: ../Doc/library/idle.rst:713 +#: ../Doc/library/idle.rst:716 msgid "" "For instance, Shell never throws away output. A program that sends " "unlimited output to Shell will eventually fill memory, resulting in a memory " @@ -1263,7 +1269,7 @@ msgid "" "lines, with 300 the default." msgstr "" -#: ../Doc/library/idle.rst:719 +#: ../Doc/library/idle.rst:722 msgid "" "A Tk Text widget, and hence IDLE's Shell, displays characters (codepoints) " "in the BMP (Basic Multilingual Plane) subset of Unicode. Which characters " @@ -1274,10 +1280,10 @@ msgid "" "line. Other control characters are ignored or displayed as a space, box, or " "something else, depending on the operating system and font. (Moving the " "text cursor through such output with arrow keys may exhibit some surprising " -"spacing behavior.)" +"spacing behavior.) ::" msgstr "" -#: ../Doc/library/idle.rst:739 +#: ../Doc/library/idle.rst:740 msgid "" "The ``repr`` function is used for interactive echo of expression values. It " "returns an altered version of the input string in which control codes, some " @@ -1286,13 +1292,13 @@ msgid "" "regardless of how they are displayed." msgstr "" -#: ../Doc/library/idle.rst:745 +#: ../Doc/library/idle.rst:746 msgid "" "Normal and error output are generally kept separate (on separate lines) from " "code input and each other. They each get different highlight colors." msgstr "" -#: ../Doc/library/idle.rst:748 +#: ../Doc/library/idle.rst:749 msgid "" "For SyntaxError tracebacks, the normal '^' marking where the error was " "detected is replaced by coloring the text with an error highlight. When code " @@ -1301,7 +1307,7 @@ msgid "" "opened if necessary." msgstr "" -#: ../Doc/library/idle.rst:754 +#: ../Doc/library/idle.rst:755 msgid "" "Shell has a special facility for squeezing output lines down to a 'Squeezed " "text' label. This is done automatically for output over N lines (N = 50 by " @@ -1310,30 +1316,30 @@ msgid "" "on the output. This can be useful lines long enough to slow down scrolling." msgstr "" -#: ../Doc/library/idle.rst:762 +#: ../Doc/library/idle.rst:763 msgid "" "Squeezed output is expanded in place by double-clicking the label. It can " "also be sent to the clipboard or a separate view window by right-clicking " "the label." msgstr "" -#: ../Doc/library/idle.rst:767 +#: ../Doc/library/idle.rst:768 msgid "Developing tkinter applications" msgstr "" -#: ../Doc/library/idle.rst:769 +#: ../Doc/library/idle.rst:770 msgid "" "IDLE is intentionally different from standard Python in order to facilitate " "development of tkinter programs. Enter ``import tkinter as tk; root = tk." "Tk()`` in standard Python and nothing appears. Enter the same in IDLE and a " "tk window appears. In standard Python, one must also enter ``root." "update()`` to see the window. IDLE does the equivalent in the background, " -"about 20 times a second, which is about every 50 milleseconds. Next enter " +"about 20 times a second, which is about every 50 milliseconds. Next enter " "``b = tk.Button(root, text='button'); b.pack()``. Again, nothing visibly " "changes in standard Python until one enters ``root.update()``." msgstr "" -#: ../Doc/library/idle.rst:778 +#: ../Doc/library/idle.rst:779 msgid "" "Most tkinter programs run ``root.mainloop()``, which usually does not return " "until the tk app is destroyed. If the program is run with ``python -i`` or " @@ -1341,7 +1347,7 @@ msgid "" "``mainloop()`` returns, at which time there is nothing left to interact with." msgstr "" -#: ../Doc/library/idle.rst:784 +#: ../Doc/library/idle.rst:785 msgid "" "When running a tkinter program from an IDLE editor, one can comment out the " "mainloop call. One then gets a shell prompt immediately and can interact " @@ -1349,11 +1355,11 @@ msgid "" "mainloop call when running in standard Python." msgstr "" -#: ../Doc/library/idle.rst:790 +#: ../Doc/library/idle.rst:791 msgid "Running without a subprocess" msgstr "" -#: ../Doc/library/idle.rst:792 +#: ../Doc/library/idle.rst:793 msgid "" "By default, IDLE executes user code in a separate subprocess via a socket, " "which uses the internal loopback interface. This connection is not " @@ -1361,7 +1367,7 @@ msgid "" "firewall software complains anyway, you can ignore it." msgstr "" -#: ../Doc/library/idle.rst:797 +#: ../Doc/library/idle.rst:798 msgid "" "If the attempt to make the socket connection fails, Idle will notify you. " "Such failures are sometimes transient, but if persistent, the problem may be " @@ -1370,7 +1376,7 @@ msgid "" "command line switch." msgstr "" -#: ../Doc/library/idle.rst:803 +#: ../Doc/library/idle.rst:804 msgid "" "If IDLE is started with the -n command line switch it will run in a single " "process and will not create the subprocess which runs the RPC Python " @@ -1384,15 +1390,15 @@ msgid "" "at all possible." msgstr "" -#: ../Doc/library/idle.rst:818 +#: ../Doc/library/idle.rst:819 msgid "Help and preferences" msgstr "" -#: ../Doc/library/idle.rst:823 +#: ../Doc/library/idle.rst:824 msgid "Help sources" msgstr "" -#: ../Doc/library/idle.rst:825 +#: ../Doc/library/idle.rst:826 msgid "" "Help menu entry \"IDLE Help\" displays a formatted html version of the IDLE " "chapter of the Library Reference. The result, in a read-only tkinter text " @@ -1402,7 +1408,7 @@ msgid "" "the opened box." msgstr "" -#: ../Doc/library/idle.rst:833 +#: ../Doc/library/idle.rst:834 msgid "" "Help menu entry \"Python Docs\" opens the extensive sources of help, " "including tutorials, available at docs.python.org/x.y, where 'x.y' is the " @@ -1410,17 +1416,17 @@ msgid "" "the docs (this may be an installation option), that will be opened instead." msgstr "" -#: ../Doc/library/idle.rst:839 +#: ../Doc/library/idle.rst:840 msgid "" "Selected URLs can be added or removed from the help menu at any time using " "the General tab of the Configure IDLE dialog ." msgstr "" -#: ../Doc/library/idle.rst:845 +#: ../Doc/library/idle.rst:846 msgid "Setting preferences" msgstr "" -#: ../Doc/library/idle.rst:847 +#: ../Doc/library/idle.rst:848 msgid "" "The font preferences, highlighting, keys, and general preferences can be " "changed via Configure IDLE on the Option menu. Non-default user settings are " @@ -1429,7 +1435,7 @@ msgid "" "more of the files in .idlerc." msgstr "" -#: ../Doc/library/idle.rst:853 +#: ../Doc/library/idle.rst:854 msgid "" "On the Font tab, see the text sample for the effect of font face and size on " "multiple characters in multiple languages. Edit the sample to add other " @@ -1438,7 +1444,7 @@ msgid "" "them to the top of the sample and try changing first size and then font." msgstr "" -#: ../Doc/library/idle.rst:860 +#: ../Doc/library/idle.rst:861 msgid "" "On the Highlights and Keys tab, select a built-in or custom color theme and " "key set. To use a newer built-in color theme or key set with older IDLEs, " @@ -1446,22 +1452,22 @@ msgid "" "IDLEs." msgstr "" -#: ../Doc/library/idle.rst:866 +#: ../Doc/library/idle.rst:867 msgid "IDLE on macOS" msgstr "" -#: ../Doc/library/idle.rst:868 +#: ../Doc/library/idle.rst:869 msgid "" "Under System Preferences: Dock, one can set \"Prefer tabs when opening " "documents\" to \"Always\". This setting is not compatible with the tk/" "tkinter GUI framework used by IDLE, and it breaks a few IDLE features." msgstr "" -#: ../Doc/library/idle.rst:873 +#: ../Doc/library/idle.rst:874 msgid "Extensions" msgstr "" -#: ../Doc/library/idle.rst:875 +#: ../Doc/library/idle.rst:876 msgid "" "IDLE contains an extension facility. Preferences for extensions can be " "changed with the Extensions tab of the preferences dialog. See the beginning " diff --git a/library/math.po b/library/math.po index 3822f200..70a9cd96 100644 --- a/library/math.po +++ b/library/math.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-28 15:29+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-09-28 19:39+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -20,9 +20,10 @@ msgid ":mod:`math` --- Mathematical functions" msgstr "Fonctions mathématiques — :mod:`math`" #: ../Doc/library/math.rst:13 +#, fuzzy msgid "" -"This module is always available. It provides access to the mathematical " -"functions defined by the C standard." +"This module provides access to the mathematical functions defined by the C " +"standard." msgstr "" "Ce module est toujours disponible. Il fournit l'accès aux fonctions " "mathématiques définies par le standard C." diff --git a/library/os.path.po b/library/os.path.po index 9cfdb938..a71dd777 100644 --- a/library/os.path.po +++ b/library/os.path.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-11-29 18:28+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -117,9 +117,9 @@ msgstr "" #: ../Doc/library/os.path.rst:83 msgid "" "Return the longest common sub-path of each pathname in the sequence " -"*paths*. Raise ValueError if *paths* contains both absolute and relative " -"pathnames, or if *paths* is empty. Unlike :func:`commonprefix`, this " -"returns a valid path." +"*paths*. Raise :exc:`ValueError` if *paths* contains both absolute and " +"relative pathnames, or if *paths* is empty. Unlike :func:`commonprefix`, " +"this returns a valid path." msgstr "" #: ../Doc/library/os.path.rst:89 ../Doc/library/os.path.rst:359 @@ -317,12 +317,11 @@ msgstr "" #: ../Doc/library/os.path.rst:318 msgid "" -"Normalize the case of a pathname. On Unix and Mac OS X, this returns the " -"path unchanged; on case-insensitive filesystems, it converts the path to " -"lowercase. On Windows, it also converts forward slashes to backward " -"slashes. Raise a :exc:`TypeError` if the type of *path* is not ``str`` or " -"``bytes`` (directly or indirectly through the :class:`os.PathLike` " -"interface)." +"Normalize the case of a pathname. On Windows, convert all characters in the " +"pathname to lowercase, and also convert forward slashes to backward slashes. " +"On other operating systems, return the path unchanged. Raise a :exc:" +"`TypeError` if the type of *path* is not ``str`` or ``bytes`` (directly or " +"indirectly through the :class:`os.PathLike` interface)." msgstr "" #: ../Doc/library/os.path.rst:330 diff --git a/library/pathlib.po b/library/pathlib.po index e8cf55e5..356ce1ad 100644 --- a/library/pathlib.po +++ b/library/pathlib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 18:11+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -922,7 +922,8 @@ msgstr "" "résolution du chemin, :exc:`RuntimeError` est levée." #: ../Doc/library/pathlib.rst:968 -msgid "The *strict* argument." +#, fuzzy +msgid "The *strict* argument (pre-3.6 behavior is strict)." msgstr "L'argument *strict*." #: ../Doc/library/pathlib.rst:973 diff --git a/library/pty.po b/library/pty.po index 28ba99ee..89336291 100644 --- a/library/pty.po +++ b/library/pty.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-04-02 22:11+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-09-28 19:18+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -72,26 +72,54 @@ msgstr "" "slave)``, pour le maître et pour l'esclave respectivement." #: ../Doc/library/pty.rst:44 +#, fuzzy msgid "" "Spawn a process, and connect its controlling terminal with the current " "process's standard io. This is often used to baffle programs which insist on " -"reading from the controlling terminal." +"reading from the controlling terminal. It is expected that the process " +"spawned behind the pty will eventually terminate, and when it does *spawn* " +"will return." msgstr "" "Crée un nouveau processus et connecte son terminal aux entrées/sorties " "standard du processus courant. C'est typiquement utilisé pour duper les " "programmes insistant sur le fait de lire depuis leur terminal." -#: ../Doc/library/pty.rst:48 +#: ../Doc/library/pty.rst:50 msgid "" -"The functions *master_read* and *stdin_read* should be functions which read " -"from a file descriptor. The defaults try to read 1024 bytes each time they " -"are called." +"The functions *master_read* and *stdin_read* are passed a file descriptor " +"which they should read from, and they should always return a byte string. In " +"order to force spawn to return before the child process exits an :exc:" +"`OSError` should be thrown." msgstr "" -"Les fonctions *master_read* et *stdin_read* doivent être des fonctions " -"lisant sur un descripteur de fichier. Par défaut elles lisent 1024 octets à " -"chaque fois qu'elles sont appelées." -#: ../Doc/library/pty.rst:52 +#: ../Doc/library/pty.rst:55 +msgid "" +"The default implementation for both functions will read and return up to " +"1024 bytes each time the function is called. The *master_read* callback is " +"passed the pseudoterminal’s master file descriptor to read output from the " +"child process, and *stdin_read* is passed file descriptor 0, to read from " +"the parent process's standard input." +msgstr "" + +#: ../Doc/library/pty.rst:61 +msgid "" +"Returning an empty byte string from either callback is interpreted as an end-" +"of-file (EOF) condition, and that callback will not be called after that. If " +"*stdin_read* signals EOF the controlling terminal can no longer communicate " +"with the parent process OR the child process. Unless the child process will " +"quit without any input, *spawn* will then loop forever. If *master_read* " +"signals EOF the same behavior results (on linux at least)." +msgstr "" + +#: ../Doc/library/pty.rst:68 +msgid "" +"If both callbacks signal EOF then *spawn* will probably never return, unless " +"*select* throws an error on your platform when passed three empty lists. " +"This is a bug, documented in `issue 26228 `_." +msgstr "" + +#: ../Doc/library/pty.rst:73 msgid "" ":func:`spawn` now returns the status value from :func:`os.waitpid` on the " "child process." @@ -99,11 +127,11 @@ msgstr "" ":func:`spawn` renvoie maintenant la valeur renvoyée par :func:`os.waitpid` " "sur le processus fils." -#: ../Doc/library/pty.rst:57 +#: ../Doc/library/pty.rst:78 msgid "Example" msgstr "Exemple" -#: ../Doc/library/pty.rst:61 +#: ../Doc/library/pty.rst:82 msgid "" "The following program acts like the Unix command :manpage:`script(1)`, using " "a pseudo-terminal to record all input and output of a terminal session in a " @@ -112,3 +140,12 @@ msgstr "" "Le programme suivant se comporte comme la commande Unix :manpage:" "`script(1)`, utilisant un pseudo-terminal pour enregistrer toutes les " "entrées et sorties d'une session dans un fichier *typescript*. ::" + +#~ msgid "" +#~ "The functions *master_read* and *stdin_read* should be functions which " +#~ "read from a file descriptor. The defaults try to read 1024 bytes each " +#~ "time they are called." +#~ msgstr "" +#~ "Les fonctions *master_read* et *stdin_read* doivent être des fonctions " +#~ "lisant sur un descripteur de fichier. Par défaut elles lisent 1024 octets " +#~ "à chaque fois qu'elles sont appelées." diff --git a/library/pwd.po b/library/pwd.po index a318f3fc..88bd5abb 100644 --- a/library/pwd.po +++ b/library/pwd.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-10 00:49+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 18:10+0200\n" +"Last-Translator: Jules Lasne \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: Jules Lasne \n" "X-Generator: Poedit 2.2.1\n" #: ../Doc/library/pwd.rst:2 diff --git a/library/pyclbr.po b/library/pyclbr.po index 7537f343..cbe46012 100644 --- a/library/pyclbr.po +++ b/library/pyclbr.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-09-15 21:52+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -58,7 +58,7 @@ msgstr "" #: ../Doc/library/pyclbr.rst:45 msgid "" "Descriptors for nested definitions. They are accessed through the new " -"children attibute. Each has a new parent attribute." +"children attribute. Each has a new parent attribute." msgstr "" #: ../Doc/library/pyclbr.rst:49 diff --git a/library/random.po b/library/random.po index be851e79..00d8c6f8 100644 --- a/library/random.po +++ b/library/random.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-12-06 22:18+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -439,6 +439,15 @@ msgid "Alternative Generator" msgstr "" #: ../Doc/library/random.rst:315 +#, fuzzy +msgid "" +"Class that implements the default pseudo-random number generator used by " +"the :mod:`random` module." +msgstr "" +"Ce module implémente des générateurs de nombres pseudo-aléatoires pour " +"différentes distributions." + +#: ../Doc/library/random.rst:320 msgid "" "Class that uses the :func:`os.urandom` function for generating random " "numbers from sources provided by the operating system. Not available on all " @@ -448,11 +457,11 @@ msgid "" "`NotImplementedError` if called." msgstr "" -#: ../Doc/library/random.rst:324 +#: ../Doc/library/random.rst:329 msgid "Notes on Reproducibility" msgstr "" -#: ../Doc/library/random.rst:326 +#: ../Doc/library/random.rst:331 msgid "" "Sometimes it is useful to be able to reproduce the sequences given by a " "pseudo random number generator. By re-using a seed value, the same sequence " @@ -460,44 +469,44 @@ msgid "" "running." msgstr "" -#: ../Doc/library/random.rst:330 +#: ../Doc/library/random.rst:335 msgid "" "Most of the random module's algorithms and seeding functions are subject to " "change across Python versions, but two aspects are guaranteed not to change:" msgstr "" -#: ../Doc/library/random.rst:333 +#: ../Doc/library/random.rst:338 msgid "" "If a new seeding method is added, then a backward compatible seeder will be " "offered." msgstr "" -#: ../Doc/library/random.rst:336 +#: ../Doc/library/random.rst:341 msgid "" "The generator's :meth:`~Random.random` method will continue to produce the " "same sequence when the compatible seeder is given the same seed." msgstr "" -#: ../Doc/library/random.rst:342 +#: ../Doc/library/random.rst:347 msgid "Examples and Recipes" msgstr "" -#: ../Doc/library/random.rst:344 +#: ../Doc/library/random.rst:349 msgid "Basic examples::" msgstr "Utilisation basique : ::" -#: ../Doc/library/random.rst:372 +#: ../Doc/library/random.rst:377 msgid "Simulations::" msgstr "" -#: ../Doc/library/random.rst:401 +#: ../Doc/library/random.rst:406 msgid "" "Example of `statistical bootstrapping `_ using resampling with replacement to estimate " "a confidence interval for the mean of a sample of size five::" msgstr "" -#: ../Doc/library/random.rst:415 +#: ../Doc/library/random.rst:420 msgid "" "Example of a `resampling permutation test `_ to determine the statistical " @@ -505,12 +514,12 @@ msgid "" "observed difference between the effects of a drug versus a placebo::" msgstr "" -#: ../Doc/library/random.rst:442 +#: ../Doc/library/random.rst:447 msgid "" "Simulation of arrival times and service deliveries in a single server queue::" msgstr "" -#: ../Doc/library/random.rst:473 +#: ../Doc/library/random.rst:478 msgid "" "`Statistics for Hackers `_ a " "video tutorial by `Jake Vanderplas `_ a simulation of a marketplace by `Peter Norvig `_ a tutorial by `Peter " diff --git a/library/re.po b/library/re.po index 9a1c65fc..36bcb6c9 100644 --- a/library/re.po +++ b/library/re.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-27 15:23+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -209,7 +209,7 @@ msgstr "" msgid "The special characters are:" msgstr "Les caractères spéciaux sont :" -#: ../Doc/library/re.rst:101 ../Doc/library/re.rst:1403 +#: ../Doc/library/re.rst:101 ../Doc/library/re.rst:1404 msgid "``.``" msgstr "``.``" @@ -1512,7 +1512,7 @@ msgstr "" "précédente." #: ../Doc/library/re.rst:811 ../Doc/library/re.rst:891 -#: ../Doc/library/re.rst:914 +#: ../Doc/library/re.rst:915 msgid "Added the optional flags argument." msgstr "Ajout de l'argument optionnel *flags*." @@ -1638,8 +1638,8 @@ msgstr "" "par un caractère littéral ``'0'``. La référence arrière ``\\g<0>`` est " "remplacée par la sous-chaîne entière validée par l'expression rationnelle." -#: ../Doc/library/re.rst:894 ../Doc/library/re.rst:917 -#: ../Doc/library/re.rst:1146 +#: ../Doc/library/re.rst:894 ../Doc/library/re.rst:918 +#: ../Doc/library/re.rst:1147 msgid "Unmatched groups are replaced with an empty string." msgstr "Les groupes sans correspondance sont remplacés par une chaîne vide." @@ -1667,7 +1667,7 @@ msgstr "" "Les correspondances vides pour le motif sont remplacées lorsqu'elles sont " "adjacentes à une correspondance non vide précédente." -#: ../Doc/library/re.rst:911 +#: ../Doc/library/re.rst:912 msgid "" "Perform the same operation as :func:`sub`, but return a tuple ``(new_string, " "number_of_subs_made)``." @@ -1675,7 +1675,7 @@ msgstr "" "Réalise la même opération que :func:`sub`, mais renvoie un *tuple* " "``(nouvelle_chaîne, nombre_de_substitutions_réalisées)``." -#: ../Doc/library/re.rst:923 +#: ../Doc/library/re.rst:924 msgid "" "Escape special characters in *pattern*. This is useful if you want to match " "an arbitrary literal string that may have regular expression metacharacters " @@ -1685,7 +1685,7 @@ msgstr "" "voulez valider une quelconque chaîne littérale qui pourrait contenir des " "métacaractères d'expressions rationnelles. Par exemple : ::" -#: ../Doc/library/re.rst:938 +#: ../Doc/library/re.rst:939 msgid "" "This functions must not be used for the replacement string in :func:`sub` " "and :func:`subn`, only backslashes should be escaped. For example::" @@ -1694,11 +1694,11 @@ msgstr "" "dans :func:`sub` et :func:`subn`, seuls les antislash devraient être " "échappés. Par exemple ::" -#: ../Doc/library/re.rst:946 +#: ../Doc/library/re.rst:947 msgid "The ``'_'`` character is no longer escaped." msgstr "Le caractère ``'_'`` n'est plus échappé." -#: ../Doc/library/re.rst:949 +#: ../Doc/library/re.rst:950 msgid "" "Only characters that can have special meaning in a regular expression are " "escaped." @@ -1706,11 +1706,11 @@ msgstr "" "Seuls les caractères qui peuvent avoir une signification spécifique dans une " "expression régulière sont échappés." -#: ../Doc/library/re.rst:956 +#: ../Doc/library/re.rst:957 msgid "Clear the regular expression cache." msgstr "Vide le cache d'expressions rationnelles." -#: ../Doc/library/re.rst:961 +#: ../Doc/library/re.rst:962 msgid "" "Exception raised when a string passed to one of the functions here is not a " "valid regular expression (for example, it might contain unmatched " @@ -1725,36 +1725,36 @@ msgstr "" "contient aucune correspondance pour un motif. Les instances de l'erreur ont " "les attributs additionnels suivants :" -#: ../Doc/library/re.rst:969 +#: ../Doc/library/re.rst:970 msgid "The unformatted error message." msgstr "Le message d'erreur non formaté." -#: ../Doc/library/re.rst:973 +#: ../Doc/library/re.rst:974 msgid "The regular expression pattern." msgstr "Le motif d'expression rationnelle." -#: ../Doc/library/re.rst:977 +#: ../Doc/library/re.rst:978 msgid "The index in *pattern* where compilation failed (may be ``None``)." msgstr "" "L'index dans *pattern* où la compilation a échoué (peut valoir ``None``)." -#: ../Doc/library/re.rst:981 +#: ../Doc/library/re.rst:982 msgid "The line corresponding to *pos* (may be ``None``)." msgstr "La ligne correspondant à *pos* (peut valoir ``None``)." -#: ../Doc/library/re.rst:985 +#: ../Doc/library/re.rst:986 msgid "The column corresponding to *pos* (may be ``None``)." msgstr "La colonne correspondant à *pos* (peut valoir ``None``)." -#: ../Doc/library/re.rst:987 +#: ../Doc/library/re.rst:988 msgid "Added additional attributes." msgstr "Ajout des attributs additionnels." -#: ../Doc/library/re.rst:993 +#: ../Doc/library/re.rst:994 msgid "Regular Expression Objects" msgstr "Objets d'expressions rationnelles" -#: ../Doc/library/re.rst:995 +#: ../Doc/library/re.rst:996 msgid "" "Compiled regular expression objects support the following methods and " "attributes:" @@ -1762,7 +1762,7 @@ msgstr "" "Les expressions rationnelles compilées supportent les méthodes et attributs " "suivants :" -#: ../Doc/library/re.rst:1000 +#: ../Doc/library/re.rst:1001 msgid "" "Scan through *string* looking for the first location where this regular " "expression produces a match, and return a corresponding :ref:`match object " @@ -1776,7 +1776,7 @@ msgstr "" "dans la chaîne ne satisfait le motif ; notez que cela est différent que de " "trouver une correspondance vide dans la chaîne." -#: ../Doc/library/re.rst:1006 +#: ../Doc/library/re.rst:1007 msgid "" "The optional second parameter *pos* gives an index in the string where the " "search is to start; it defaults to ``0``. This is not completely equivalent " @@ -1790,7 +1790,7 @@ msgstr "" "``'^'`` correspond au début réel de la chaîne et aux positions juste après " "un saut de ligne, mais pas nécessairement à l'index où la recherche commence." -#: ../Doc/library/re.rst:1012 +#: ../Doc/library/re.rst:1013 msgid "" "The optional parameter *endpos* limits how far the string will be searched; " "it will be as if the string is *endpos* characters long, so only the " @@ -1807,7 +1807,7 @@ msgstr "" "expression rationnelle compilée, ``rx.search(string, 0, 50)`` est équivalent " "à ``rx.search(string[:50], 0)``. ::" -#: ../Doc/library/re.rst:1027 +#: ../Doc/library/re.rst:1028 msgid "" "If zero or more characters at the *beginning* of *string* match this regular " "expression, return a corresponding :ref:`match object `. " @@ -1819,7 +1819,7 @@ msgstr "" "objects>` trouvé. Renvoie ``None`` si la chaîne ne correspond pas au motif ; " "notez que cela est différent d'une correspondance vide." -#: ../Doc/library/re.rst:1032 ../Doc/library/re.rst:1050 +#: ../Doc/library/re.rst:1033 ../Doc/library/re.rst:1051 msgid "" "The optional *pos* and *endpos* parameters have the same meaning as for the :" "meth:`~Pattern.search` method. ::" @@ -1827,7 +1827,7 @@ msgstr "" "Les paramètres optionnels *pos* et *endpos* ont le même sens que pour la " "méthode :meth:`~Pattern.search`. ::" -#: ../Doc/library/re.rst:1040 +#: ../Doc/library/re.rst:1041 msgid "" "If you want to locate a match anywhere in *string*, use :meth:`~Pattern." "search` instead (see also :ref:`search-vs-match`)." @@ -1835,7 +1835,7 @@ msgstr "" "Si vous voulez une recherche n'importe où dans *string*, utilisez plutôt :" "meth:`~Pattern.search` (voir aussi :ref:`search-vs-match`)." -#: ../Doc/library/re.rst:1046 +#: ../Doc/library/re.rst:1047 msgid "" "If the whole *string* matches this regular expression, return a " "corresponding :ref:`match object `. Return ``None`` if the " @@ -1847,11 +1847,11 @@ msgstr "" "la chaîne ne correspond pas au motif ; notez que cela est différent d'une " "correspondance vide." -#: ../Doc/library/re.rst:1064 +#: ../Doc/library/re.rst:1065 msgid "Identical to the :func:`split` function, using the compiled pattern." msgstr "Identique à la fonction :func:`split`, en utilisant le motif compilé." -#: ../Doc/library/re.rst:1069 +#: ../Doc/library/re.rst:1070 msgid "" "Similar to the :func:`findall` function, using the compiled pattern, but " "also accepts optional *pos* and *endpos* parameters that limit the search " @@ -1861,7 +1861,7 @@ msgstr "" "accepte aussi des paramètres *pos* et *endpos* optionnels qui limitent la " "région de recherche comme pour :meth:`search`." -#: ../Doc/library/re.rst:1076 +#: ../Doc/library/re.rst:1077 msgid "" "Similar to the :func:`finditer` function, using the compiled pattern, but " "also accepts optional *pos* and *endpos* parameters that limit the search " @@ -1871,15 +1871,15 @@ msgstr "" "mais accepte aussi des paramètres *pos* et *endpos* optionnels qui limitent " "la région de recherche comme pour :meth:`search`." -#: ../Doc/library/re.rst:1083 +#: ../Doc/library/re.rst:1084 msgid "Identical to the :func:`sub` function, using the compiled pattern." msgstr "Identique à la fonction :func:`sub`, en utilisant le motif compilé." -#: ../Doc/library/re.rst:1088 +#: ../Doc/library/re.rst:1089 msgid "Identical to the :func:`subn` function, using the compiled pattern." msgstr "Identique à la fonction :func:`subn`, en utilisant le motif compilé." -#: ../Doc/library/re.rst:1093 +#: ../Doc/library/re.rst:1094 msgid "" "The regex matching flags. This is a combination of the flags given to :func:" "`.compile`, any ``(?...)`` inline flags in the pattern, and implicit flags " @@ -1890,11 +1890,11 @@ msgstr "" "``(?...)`` dans le motif, et des options implicites comme :data:`UNICODE` si " "le motif est une chaîne Unicode." -#: ../Doc/library/re.rst:1100 +#: ../Doc/library/re.rst:1101 msgid "The number of capturing groups in the pattern." msgstr "Le nombre de groupes de capture dans le motif." -#: ../Doc/library/re.rst:1105 +#: ../Doc/library/re.rst:1106 msgid "" "A dictionary mapping any symbolic group names defined by ``(?P)`` to " "group numbers. The dictionary is empty if no symbolic groups were used in " @@ -1904,11 +1904,11 @@ msgstr "" "P)`` aux groupes numérotés. Le dictionnaire est vide si aucun groupe " "symbolique n'est utilisé dans le motif." -#: ../Doc/library/re.rst:1112 +#: ../Doc/library/re.rst:1113 msgid "The pattern string from which the pattern object was compiled." msgstr "La chaîne de motif depuis laquelle l'objet motif a été compilé." -#: ../Doc/library/re.rst:1115 +#: ../Doc/library/re.rst:1116 msgid "" "Added support of :func:`copy.copy` and :func:`copy.deepcopy`. Compiled " "regular expression objects are considered atomic." @@ -1916,11 +1916,11 @@ msgstr "" "Ajout du support des fonctions :func:`copy.copy` et :func:`copy.deepcopy`. " "Les expressions régulières compilées sont considérées atomiques." -#: ../Doc/library/re.rst:1123 +#: ../Doc/library/re.rst:1124 msgid "Match Objects" msgstr "Objets de correspondance" -#: ../Doc/library/re.rst:1125 +#: ../Doc/library/re.rst:1126 msgid "" "Match objects always have a boolean value of ``True``. Since :meth:`~Pattern." "match` and :meth:`~Pattern.search` return ``None`` when there is no match, " @@ -1931,12 +1931,12 @@ msgstr "" "quand il n'y a pas de correspondance, vous pouvez tester s'il y a eu " "correspondance avec une simple instruction ``if`` : ::" -#: ../Doc/library/re.rst:1134 +#: ../Doc/library/re.rst:1135 msgid "Match objects support the following methods and attributes:" msgstr "" "Les objets de correspondance supportent les méthodes et attributs suivants :" -#: ../Doc/library/re.rst:1139 +#: ../Doc/library/re.rst:1140 msgid "" "Return the string obtained by doing backslash substitution on the template " "string *template*, as done by the :meth:`~Pattern.sub` method. Escapes such " @@ -1951,7 +1951,7 @@ msgstr "" "\\g<1>``, ``\\g``) sont remplacées par les contenus des groupes " "correspondant." -#: ../Doc/library/re.rst:1151 +#: ../Doc/library/re.rst:1152 msgid "" "Returns one or more subgroups of the match. If there is a single argument, " "the result is a single string; if there are multiple arguments, the result " @@ -1978,7 +1978,7 @@ msgstr "" "sera ``None``. Si un groupe est contenu dans une partie du motif qui a " "plusieurs correspondances, seule la dernière correspondance est renvoyée. ::" -#: ../Doc/library/re.rst:1173 +#: ../Doc/library/re.rst:1174 msgid "" "If the regular expression uses the ``(?P...)`` syntax, the *groupN* " "arguments may also be strings identifying groups by their group name. If a " @@ -1990,20 +1990,20 @@ msgstr "" "groupes par leurs noms. Si une chaîne donnée en argument n'est pas utilisée " "comme nom de groupe dans le motif, une exception :exc:`IndexError` est levée." -#: ../Doc/library/re.rst:1178 +#: ../Doc/library/re.rst:1179 msgid "A moderately complicated example::" msgstr "Un exemple modérément compliqué ::" -#: ../Doc/library/re.rst:1186 +#: ../Doc/library/re.rst:1187 msgid "Named groups can also be referred to by their index::" msgstr "Les groupes nommés peuvent aussi être référencés par leur index ::" -#: ../Doc/library/re.rst:1193 +#: ../Doc/library/re.rst:1194 msgid "If a group matches multiple times, only the last match is accessible::" msgstr "" "Si un groupe a plusieurs correspondances, seule la dernière est accessible ::" -#: ../Doc/library/re.rst:1202 +#: ../Doc/library/re.rst:1203 msgid "" "This is identical to ``m.group(g)``. This allows easier access to an " "individual group from a match::" @@ -2011,7 +2011,7 @@ msgstr "" "Cela est identique à ``m.group(g)``. Cela permet un accès plus facile à un " "groupe individuel depuis une correspondance ::" -#: ../Doc/library/re.rst:1218 +#: ../Doc/library/re.rst:1219 msgid "" "Return a tuple containing all the subgroups of the match, from 1 up to " "however many groups are in the pattern. The *default* argument is used for " @@ -2021,11 +2021,11 @@ msgstr "" "1 jusqu'au nombre de groupes dans le motif. L'argument *default* est " "utilisé pour les groupes sans correspondance ; il vaut ``None`` par défaut." -#: ../Doc/library/re.rst:1222 ../Doc/library/re.rst:1447 +#: ../Doc/library/re.rst:1223 ../Doc/library/re.rst:1448 msgid "For example::" msgstr "Par exemple ::" -#: ../Doc/library/re.rst:1228 +#: ../Doc/library/re.rst:1229 msgid "" "If we make the decimal place and everything after it optional, not all " "groups might participate in the match. These groups will default to " @@ -2036,7 +2036,7 @@ msgstr "" "correspondance vaudront ``None`` sauf si une autre valeur est donnée à " "l'argument *default* ::" -#: ../Doc/library/re.rst:1241 +#: ../Doc/library/re.rst:1242 msgid "" "Return a dictionary containing all the *named* subgroups of the match, keyed " "by the subgroup name. The *default* argument is used for groups that did " @@ -2047,7 +2047,7 @@ msgstr "" "utilisé pour les groupes qui ne figurent pas dans la correspondance ; il " "vaut ``None`` par défaut. Par exemple ::" -#: ../Doc/library/re.rst:1253 +#: ../Doc/library/re.rst:1254 msgid "" "Return the indices of the start and end of the substring matched by *group*; " "*group* defaults to zero (meaning the whole matched substring). Return " @@ -2062,7 +2062,7 @@ msgstr "" "groupe *g* qui y figure, la sous-chaîne correspondant au groupe *g* " "(équivalente à ``m.group(g)``) est : ::" -#: ../Doc/library/re.rst:1261 +#: ../Doc/library/re.rst:1262 msgid "" "Note that ``m.start(group)`` will equal ``m.end(group)`` if *group* matched " "a null string. For example, after ``m = re.search('b(c?)', 'cba')``, ``m." @@ -2075,11 +2075,11 @@ msgstr "" "end(1)`` valent tous deux 2, et ``m.start(2)`` lève une exception :exc:" "`IndexError`." -#: ../Doc/library/re.rst:1266 +#: ../Doc/library/re.rst:1267 msgid "An example that will remove *remove_this* from email addresses::" msgstr "Un exemple qui supprimera *remove_this* d'une adresse mail ::" -#: ../Doc/library/re.rst:1276 +#: ../Doc/library/re.rst:1277 msgid "" "For a match *m*, return the 2-tuple ``(m.start(group), m.end(group))``. Note " "that if *group* did not contribute to the match, this is ``(-1, -1)``. " @@ -2090,7 +2090,7 @@ msgstr "" "``(-1, -1)`` est renvoyé. *group* vaut par défaut zéro, pour la " "correspondance entière." -#: ../Doc/library/re.rst:1283 +#: ../Doc/library/re.rst:1284 msgid "" "The value of *pos* which was passed to the :meth:`~Pattern.search` or :meth:" "`~Pattern.match` method of a :ref:`regex object `. This is the " @@ -2101,7 +2101,7 @@ msgstr "" "objects>`. C'est l'index dans la chaîne à partir duquel le moteur " "d'expressions rationnelles recherche une correspondance." -#: ../Doc/library/re.rst:1290 +#: ../Doc/library/re.rst:1291 msgid "" "The value of *endpos* which was passed to the :meth:`~Pattern.search` or :" "meth:`~Pattern.match` method of a :ref:`regex object `. This is " @@ -2112,7 +2112,7 @@ msgstr "" "objects>`. C'est l'index dans la chaîne que le moteur d'expressions " "rationnelles ne dépassera pas." -#: ../Doc/library/re.rst:1297 +#: ../Doc/library/re.rst:1298 msgid "" "The integer index of the last matched capturing group, or ``None`` if no " "group was matched at all. For example, the expressions ``(a)b``, ``((a)" @@ -2126,7 +2126,7 @@ msgstr "" "``'ab'``, alors que l'expression ``(a)(b)`` aura un ``lastindex == 2`` si " "appliquée à la même chaîne." -#: ../Doc/library/re.rst:1306 +#: ../Doc/library/re.rst:1307 msgid "" "The name of the last matched capturing group, or ``None`` if the group " "didn't have a name, or if no group was matched at all." @@ -2134,7 +2134,7 @@ msgstr "" "Le nom du dernier groupe capturant validé, ou ``None`` si le groupe n'a pas " "de nom, ou si aucun groupe ne correspondait." -#: ../Doc/library/re.rst:1312 +#: ../Doc/library/re.rst:1313 msgid "" "The :ref:`regular expression object ` whose :meth:`~Pattern." "match` or :meth:`~Pattern.search` method produced this match instance." @@ -2142,11 +2142,11 @@ msgstr "" ":ref:`L'expression rationnelle ` dont la méthode :meth:`~Pattern." "match` ou :meth:`~Pattern.search` a produit cet objet de correspondance." -#: ../Doc/library/re.rst:1318 +#: ../Doc/library/re.rst:1319 msgid "The string passed to :meth:`~Pattern.match` or :meth:`~Pattern.search`." msgstr "La chaîne passée à :meth:`~Pattern.match` ou :meth:`~Pattern.search`." -#: ../Doc/library/re.rst:1321 +#: ../Doc/library/re.rst:1322 msgid "" "Added support of :func:`copy.copy` and :func:`copy.deepcopy`. Match objects " "are considered atomic." @@ -2154,15 +2154,15 @@ msgstr "" "Ajout du support des fonctions :func:`copy.copy` et :func:`copy.deepcopy`. " "Les objets correspondants sont considérés atomiques." -#: ../Doc/library/re.rst:1329 +#: ../Doc/library/re.rst:1330 msgid "Regular Expression Examples" msgstr "Exemples d'expressions rationnelles" -#: ../Doc/library/re.rst:1333 +#: ../Doc/library/re.rst:1334 msgid "Checking for a Pair" msgstr "Rechercher une paire" -#: ../Doc/library/re.rst:1335 +#: ../Doc/library/re.rst:1336 msgid "" "In this example, we'll use the following helper function to display match " "objects a little more gracefully:" @@ -2170,7 +2170,7 @@ msgstr "" "Dans cet exemple, nous utiliserons cette fonction de facilité pour afficher " "les objets de correspondance sous une meilleure forme :" -#: ../Doc/library/re.rst:1345 +#: ../Doc/library/re.rst:1346 msgid "" "Suppose you are writing a poker program where a player's hand is represented " "as a 5-character string with each character representing a card, \"a\" for " @@ -2184,13 +2184,13 @@ msgstr "" "(*ten*), et les caractères de \"2\" à \"9\" représentant les cartes avec ces " "valeurs." -#: ../Doc/library/re.rst:1350 +#: ../Doc/library/re.rst:1351 msgid "To see if a given string is a valid hand, one could do the following::" msgstr "" "Pour vérifier qu'une chaîne donnée est une main valide, on pourrait faire " "comme suit ::" -#: ../Doc/library/re.rst:1360 +#: ../Doc/library/re.rst:1361 msgid "" "That last hand, ``\"727ak\"``, contained a pair, or two of the same valued " "cards. To match this with a regular expression, one could use backreferences " @@ -2200,7 +2200,7 @@ msgstr "" "valeur. Pour valider cela avec une expression rationnelle, on pourrait " "utiliser des références arrière comme ::" -#: ../Doc/library/re.rst:1370 +#: ../Doc/library/re.rst:1371 msgid "" "To find out what card the pair consists of, one could use the :meth:`~Match." "group` method of the match object in the following manner:" @@ -2209,11 +2209,11 @@ msgstr "" "méthode :meth:`~Match.group` de l'objet de correspondance de la manière " "suivante :" -#: ../Doc/library/re.rst:1390 +#: ../Doc/library/re.rst:1391 msgid "Simulating scanf()" msgstr "Simuler *scanf()*" -#: ../Doc/library/re.rst:1394 +#: ../Doc/library/re.rst:1395 msgid "" "Python does not currently have an equivalent to :c:func:`scanf`. Regular " "expressions are generally more powerful, though also more verbose, than :c:" @@ -2227,100 +2227,100 @@ msgstr "" "suivant présente des expressions rationnelles plus ou moins équivalentes aux " "éléments de formats de :c:func:`scanf`." -#: ../Doc/library/re.rst:1401 +#: ../Doc/library/re.rst:1402 msgid ":c:func:`scanf` Token" msgstr "Élément de :c:func:`scanf`" -#: ../Doc/library/re.rst:1401 +#: ../Doc/library/re.rst:1402 msgid "Regular Expression" msgstr "Expression rationnelle" -#: ../Doc/library/re.rst:1403 +#: ../Doc/library/re.rst:1404 msgid "``%c``" msgstr "``%c``" -#: ../Doc/library/re.rst:1405 +#: ../Doc/library/re.rst:1406 msgid "``%5c``" msgstr "``%5c``" -#: ../Doc/library/re.rst:1405 +#: ../Doc/library/re.rst:1406 msgid "``.{5}``" msgstr "``.{5}``" -#: ../Doc/library/re.rst:1407 +#: ../Doc/library/re.rst:1408 msgid "``%d``" msgstr "``%d``" -#: ../Doc/library/re.rst:1407 +#: ../Doc/library/re.rst:1408 msgid "``[-+]?\\d+``" msgstr "``[-+]?\\d+``" -#: ../Doc/library/re.rst:1409 +#: ../Doc/library/re.rst:1410 msgid "``%e``, ``%E``, ``%f``, ``%g``" msgstr "``%e``, ``%E``, ``%f``, ``%g``" -#: ../Doc/library/re.rst:1409 +#: ../Doc/library/re.rst:1410 msgid "``[-+]?(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?``" msgstr "``[-+]?(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?``" -#: ../Doc/library/re.rst:1411 +#: ../Doc/library/re.rst:1412 msgid "``%i``" msgstr "``%i``" -#: ../Doc/library/re.rst:1411 +#: ../Doc/library/re.rst:1412 msgid "``[-+]?(0[xX][\\dA-Fa-f]+|0[0-7]*|\\d+)``" msgstr "``[-+]?(0[xX][\\dA-Fa-f]+|0[0-7]*|\\d+)``" -#: ../Doc/library/re.rst:1413 +#: ../Doc/library/re.rst:1414 msgid "``%o``" msgstr "``%o``" -#: ../Doc/library/re.rst:1413 +#: ../Doc/library/re.rst:1414 msgid "``[-+]?[0-7]+``" msgstr "``[-+]?[0-7]+``" -#: ../Doc/library/re.rst:1415 +#: ../Doc/library/re.rst:1416 msgid "``%s``" msgstr "``%s``" -#: ../Doc/library/re.rst:1415 +#: ../Doc/library/re.rst:1416 msgid "``\\S+``" msgstr "``\\S+``" -#: ../Doc/library/re.rst:1417 +#: ../Doc/library/re.rst:1418 msgid "``%u``" msgstr "``%u``" -#: ../Doc/library/re.rst:1417 +#: ../Doc/library/re.rst:1418 msgid "``\\d+``" msgstr "``\\d+``" -#: ../Doc/library/re.rst:1419 +#: ../Doc/library/re.rst:1420 msgid "``%x``, ``%X``" msgstr "``%x``, ``%X``" -#: ../Doc/library/re.rst:1419 +#: ../Doc/library/re.rst:1420 msgid "``[-+]?(0[xX])?[\\dA-Fa-f]+``" msgstr "``[-+]?(0[xX])?[\\dA-Fa-f]+``" -#: ../Doc/library/re.rst:1422 +#: ../Doc/library/re.rst:1423 msgid "To extract the filename and numbers from a string like ::" msgstr "" "Pour extraire le nom de fichier et les nombres depuis une chaîne comme : ::" -#: ../Doc/library/re.rst:1426 +#: ../Doc/library/re.rst:1427 msgid "you would use a :c:func:`scanf` format like ::" msgstr "vous utiliseriez un format :c:func:`scanf` comme : ::" -#: ../Doc/library/re.rst:1430 +#: ../Doc/library/re.rst:1431 msgid "The equivalent regular expression would be ::" msgstr "L'expression rationnelle équivalente serait : ::" -#: ../Doc/library/re.rst:1438 +#: ../Doc/library/re.rst:1439 msgid "search() vs. match()" msgstr "search() vs. match()" -#: ../Doc/library/re.rst:1442 +#: ../Doc/library/re.rst:1443 msgid "" "Python offers two different primitive operations based on regular " "expressions: :func:`re.match` checks for a match only at the beginning of " @@ -2332,7 +2332,7 @@ msgstr "" "début de la chaîne, tandis que :func:`re.search` en recherche une n'importe " "où dans la chaîne (ce que fait Perl par défaut)." -#: ../Doc/library/re.rst:1453 +#: ../Doc/library/re.rst:1454 msgid "" "Regular expressions beginning with ``'^'`` can be used with :func:`search` " "to restrict the match at the beginning of the string::" @@ -2340,7 +2340,7 @@ msgstr "" "Les expressions rationnelles commençant par ``'^'`` peuvent être utilisées " "avec :func:`search` pour restreindre la recherche au début de la chaîne : ::" -#: ../Doc/library/re.rst:1461 +#: ../Doc/library/re.rst:1462 msgid "" "Note however that in :const:`MULTILINE` mode :func:`match` only matches at " "the beginning of the string, whereas using :func:`search` with a regular " @@ -2351,11 +2351,11 @@ msgstr "" "qu'au début de la chaîne, alors que :func:`search` avec une expression " "rationnelle commençant par ``'^'`` recherchera au début de chaque ligne. ::" -#: ../Doc/library/re.rst:1471 +#: ../Doc/library/re.rst:1472 msgid "Making a Phonebook" msgstr "Construire un répertoire téléphonique" -#: ../Doc/library/re.rst:1473 +#: ../Doc/library/re.rst:1474 msgid "" ":func:`split` splits a string into a list delimited by the passed pattern. " "The method is invaluable for converting textual data into data structures " @@ -2367,7 +2367,7 @@ msgstr "" "structures de données qui peuvent être lues et modifiées par Python comme " "démontré dans l'exemple suivant qui crée un répertoire téléphonique." -#: ../Doc/library/re.rst:1478 +#: ../Doc/library/re.rst:1479 msgid "" "First, here is the input. Normally it may come from a file, here we are " "using triple-quoted string syntax::" @@ -2375,7 +2375,7 @@ msgstr "" "Premièrement, voici l'entrée. Elle provient normalement d'un fichier, nous " "utilisons ici une chaîne à guillemets triples ::" -#: ../Doc/library/re.rst:1489 +#: ../Doc/library/re.rst:1490 msgid "" "The entries are separated by one or more newlines. Now we convert the string " "into a list with each nonempty line having its own entry:" @@ -2384,7 +2384,7 @@ msgstr "" "maintenant la chaîne en une liste où chaque ligne non vide aura sa propre " "entrée :" -#: ../Doc/library/re.rst:1502 +#: ../Doc/library/re.rst:1503 msgid "" "Finally, split each entry into a list with first name, last name, telephone " "number, and address. We use the ``maxsplit`` parameter of :func:`split` " @@ -2395,7 +2395,7 @@ msgstr "" "`split` parce que l'adresse contient des espaces, qui sont notre motif de " "séparation :" -#: ../Doc/library/re.rst:1515 +#: ../Doc/library/re.rst:1516 msgid "" "The ``:?`` pattern matches the colon after the last name, so that it does " "not occur in the result list. With a ``maxsplit`` of ``4``, we could " @@ -2405,11 +2405,11 @@ msgstr "" "qu'ils n'apparaissent pas dans la liste résultante. Avec un ``maxsplit`` de " "``4``, nous pourrions séparer le numéro du nom de la rue :" -#: ../Doc/library/re.rst:1530 +#: ../Doc/library/re.rst:1531 msgid "Text Munging" msgstr "Mélanger les lettres des mots" -#: ../Doc/library/re.rst:1532 +#: ../Doc/library/re.rst:1533 msgid "" ":func:`sub` replaces every occurrence of a pattern with a string or the " "result of a function. This example demonstrates using :func:`sub` with a " @@ -2421,11 +2421,11 @@ msgstr "" "avec une fonction qui mélange aléatoirement les caractères de chaque mot " "dans une phrase (à l'exception des premiers et derniers caractères) : ::" -#: ../Doc/library/re.rst:1549 +#: ../Doc/library/re.rst:1550 msgid "Finding all Adverbs" msgstr "Trouver tous les adverbes" -#: ../Doc/library/re.rst:1551 +#: ../Doc/library/re.rst:1552 msgid "" ":func:`findall` matches *all* occurrences of a pattern, not just the first " "one as :func:`search` does. For example, if a writer wanted to find all of " @@ -2437,11 +2437,11 @@ msgstr "" "voulait trouver tous les adverbes dans un texte, il/elle devrait utiliser :" "func:`findall` de la manière suivante ::" -#: ../Doc/library/re.rst:1562 +#: ../Doc/library/re.rst:1563 msgid "Finding all Adverbs and their Positions" msgstr "Trouver tous les adverbes et leurs positions" -#: ../Doc/library/re.rst:1564 +#: ../Doc/library/re.rst:1565 msgid "" "If one wants more information about all matches of a pattern than the " "matched text, :func:`finditer` is useful as it provides :ref:`match objects " @@ -2456,11 +2456,11 @@ msgstr "" "leurs positions* dans un texte, il/elle utiliserait :func:`finditer` de la " "manière suivante ::" -#: ../Doc/library/re.rst:1578 +#: ../Doc/library/re.rst:1579 msgid "Raw String Notation" msgstr "Notation brutes de chaînes" -#: ../Doc/library/re.rst:1580 +#: ../Doc/library/re.rst:1581 msgid "" "Raw string notation (``r\"text\"``) keeps regular expressions sane. Without " "it, every backslash (``'\\'``) in a regular expression would have to be " @@ -2473,7 +2473,7 @@ msgstr "" "Par exemple, les deux lignes de code suivantes sont fonctionnellement " "identiques ::" -#: ../Doc/library/re.rst:1590 +#: ../Doc/library/re.rst:1591 msgid "" "When one wants to match a literal backslash, it must be escaped in the " "regular expression. With raw string notation, this means ``r\"\\\\\"``. " @@ -2485,11 +2485,11 @@ msgstr "" "\"``. Sans elle, il faudrait utiliser ``\"\\\\\\\\\"``, faisant que les " "deux lignes de code suivantes sont fonctionnellement identiques ::" -#: ../Doc/library/re.rst:1602 +#: ../Doc/library/re.rst:1603 msgid "Writing a Tokenizer" msgstr "Écrire un analyseur lexical" -#: ../Doc/library/re.rst:1604 +#: ../Doc/library/re.rst:1605 msgid "" "A `tokenizer or scanner `_ " "analyzes a string to categorize groups of characters. This is a useful " @@ -2500,7 +2500,7 @@ msgstr "" "caractères. C'est une première étape utile dans l'écriture d'un compilateur " "ou d'un interpréteur." -#: ../Doc/library/re.rst:1608 +#: ../Doc/library/re.rst:1609 msgid "" "The text categories are specified with regular expressions. The technique " "is to combine those into a single master regular expression and to loop over " @@ -2510,11 +2510,11 @@ msgstr "" "La technique est de les combiner dans une unique expression rationnelle " "maîtresse, et de boucler sur les correspondances successives : ::" -#: ../Doc/library/re.rst:1660 +#: ../Doc/library/re.rst:1661 msgid "The tokenizer produces the following output::" msgstr "L'analyseur produit la sortie suivante : ::" -#: ../Doc/library/re.rst:1683 +#: ../Doc/library/re.rst:1684 msgid "" "Friedl, Jeffrey. Mastering Regular Expressions. 3rd ed., O'Reilly Media, " "2009. The third edition of the book no longer covers Python at all, but the " diff --git a/library/signal.po b/library/signal.po index 8a999dc4..c988d1a3 100644 --- a/library/signal.po +++ b/library/signal.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-11-29 18:27+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -32,10 +32,11 @@ msgid "" "executed when a signal is received. A small number of default handlers are " "installed: :const:`SIGPIPE` is ignored (so write errors on pipes and sockets " "can be reported as ordinary Python exceptions) and :const:`SIGINT` is " -"translated into a :exc:`KeyboardInterrupt` exception." +"translated into a :exc:`KeyboardInterrupt` exception if the parent process " +"has not changed it." msgstr "" -#: ../Doc/library/signal.rst:21 +#: ../Doc/library/signal.rst:22 msgid "" "A handler for a particular signal, once set, remains installed until it is " "explicitly reset (Python emulates the BSD style interface regardless of the " @@ -43,11 +44,11 @@ msgid "" "`SIGCHLD`, which follows the underlying implementation." msgstr "" -#: ../Doc/library/signal.rst:28 +#: ../Doc/library/signal.rst:29 msgid "Execution of Python signal handlers" msgstr "" -#: ../Doc/library/signal.rst:30 +#: ../Doc/library/signal.rst:31 msgid "" "A Python signal handler does not get executed inside the low-level (C) " "signal handler. Instead, the low-level signal handler sets a flag which " @@ -56,7 +57,7 @@ msgid "" "instruction). This has consequences:" msgstr "" -#: ../Doc/library/signal.rst:36 +#: ../Doc/library/signal.rst:37 msgid "" "It makes little sense to catch synchronous errors like :const:`SIGFPE` or :" "const:`SIGSEGV` that are caused by an invalid operation in C code. Python " @@ -66,7 +67,7 @@ msgid "" "errors." msgstr "" -#: ../Doc/library/signal.rst:43 +#: ../Doc/library/signal.rst:44 msgid "" "A long-running calculation implemented purely in C (such as regular " "expression matching on a large body of text) may run uninterrupted for an " @@ -74,11 +75,11 @@ msgid "" "signal handlers will be called when the calculation finishes." msgstr "" -#: ../Doc/library/signal.rst:53 +#: ../Doc/library/signal.rst:54 msgid "Signals and threads" msgstr "" -#: ../Doc/library/signal.rst:55 +#: ../Doc/library/signal.rst:56 msgid "" "Python signal handlers are always executed in the main Python thread, even " "if the signal was received in another thread. This means that signals can't " @@ -86,15 +87,15 @@ msgid "" "synchronization primitives from the :mod:`threading` module instead." msgstr "" -#: ../Doc/library/signal.rst:60 +#: ../Doc/library/signal.rst:61 msgid "Besides, only the main thread is allowed to set a new signal handler." msgstr "" -#: ../Doc/library/signal.rst:64 +#: ../Doc/library/signal.rst:65 msgid "Module contents" msgstr "" -#: ../Doc/library/signal.rst:66 +#: ../Doc/library/signal.rst:67 msgid "" "signal (SIG*), handler (:const:`SIG_DFL`, :const:`SIG_IGN`) and sigmask (:" "const:`SIG_BLOCK`, :const:`SIG_UNBLOCK`, :const:`SIG_SETMASK`) related " @@ -103,11 +104,11 @@ msgid "" "functions return human-readable :class:`enums `." msgstr "" -#: ../Doc/library/signal.rst:76 +#: ../Doc/library/signal.rst:77 msgid "The variables defined in the :mod:`signal` module are:" msgstr "" -#: ../Doc/library/signal.rst:81 +#: ../Doc/library/signal.rst:82 msgid "" "This is one of two standard signal handling options; it will simply perform " "the default function for the signal. For example, on most systems the " @@ -115,13 +116,13 @@ msgid "" "default action for :const:`SIGCHLD` is to simply ignore it." msgstr "" -#: ../Doc/library/signal.rst:89 +#: ../Doc/library/signal.rst:90 msgid "" "This is another standard signal handler, which will simply ignore the given " "signal." msgstr "" -#: ../Doc/library/signal.rst:95 +#: ../Doc/library/signal.rst:96 msgid "" "All the signal numbers are defined symbolically. For example, the hangup " "signal is defined as :const:`signal.SIGHUP`; the variable names are " @@ -132,39 +133,39 @@ msgid "" "only those names defined by the system are defined by this module." msgstr "" -#: ../Doc/library/signal.rst:106 +#: ../Doc/library/signal.rst:107 msgid "" "The signal corresponding to the :kbd:`Ctrl+C` keystroke event. This signal " "can only be used with :func:`os.kill`." msgstr "" -#: ../Doc/library/signal.rst:110 ../Doc/library/signal.rst:120 +#: ../Doc/library/signal.rst:111 ../Doc/library/signal.rst:121 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: ../Doc/library/signal.rst:116 +#: ../Doc/library/signal.rst:117 msgid "" "The signal corresponding to the :kbd:`Ctrl+Break` keystroke event. This " "signal can only be used with :func:`os.kill`." msgstr "" -#: ../Doc/library/signal.rst:126 +#: ../Doc/library/signal.rst:127 msgid "One more than the number of the highest signal number." msgstr "" -#: ../Doc/library/signal.rst:131 +#: ../Doc/library/signal.rst:132 msgid "" "Decrements interval timer in real time, and delivers :const:`SIGALRM` upon " "expiration." msgstr "" -#: ../Doc/library/signal.rst:137 +#: ../Doc/library/signal.rst:138 msgid "" "Decrements interval timer only when the process is executing, and delivers " "SIGVTALRM upon expiration." msgstr "" -#: ../Doc/library/signal.rst:143 +#: ../Doc/library/signal.rst:144 msgid "" "Decrements interval timer both when the process executes and when the system " "is executing on behalf of the process. Coupled with ITIMER_VIRTUAL, this " @@ -172,29 +173,29 @@ msgid "" "and kernel space. SIGPROF is delivered upon expiration." msgstr "" -#: ../Doc/library/signal.rst:151 +#: ../Doc/library/signal.rst:152 msgid "" "A possible value for the *how* parameter to :func:`pthread_sigmask` " "indicating that signals are to be blocked." msgstr "" -#: ../Doc/library/signal.rst:158 +#: ../Doc/library/signal.rst:159 msgid "" "A possible value for the *how* parameter to :func:`pthread_sigmask` " "indicating that signals are to be unblocked." msgstr "" -#: ../Doc/library/signal.rst:165 +#: ../Doc/library/signal.rst:166 msgid "" "A possible value for the *how* parameter to :func:`pthread_sigmask` " "indicating that the signal mask is to be replaced." msgstr "" -#: ../Doc/library/signal.rst:171 +#: ../Doc/library/signal.rst:172 msgid "The :mod:`signal` module defines one exception:" msgstr "" -#: ../Doc/library/signal.rst:175 +#: ../Doc/library/signal.rst:176 msgid "" "Raised to signal an error from the underlying :func:`setitimer` or :func:" "`getitimer` implementation. Expect this error if an invalid interval timer " @@ -202,17 +203,17 @@ msgid "" "of :exc:`OSError`." msgstr "" -#: ../Doc/library/signal.rst:180 +#: ../Doc/library/signal.rst:181 msgid "" "This error used to be a subtype of :exc:`IOError`, which is now an alias of :" "exc:`OSError`." msgstr "" -#: ../Doc/library/signal.rst:185 +#: ../Doc/library/signal.rst:186 msgid "The :mod:`signal` module defines the following functions:" msgstr "" -#: ../Doc/library/signal.rst:190 +#: ../Doc/library/signal.rst:191 msgid "" "If *time* is non-zero, this function requests that a :const:`SIGALRM` signal " "be sent to the process in *time* seconds. Any previously scheduled alarm is " @@ -223,12 +224,12 @@ msgid "" "scheduled. (See the Unix man page :manpage:`alarm(2)`.)" msgstr "" -#: ../Doc/library/signal.rst:198 ../Doc/library/signal.rst:298 -#: ../Doc/library/signal.rst:305 +#: ../Doc/library/signal.rst:199 ../Doc/library/signal.rst:299 +#: ../Doc/library/signal.rst:306 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: ../Doc/library/signal.rst:203 +#: ../Doc/library/signal.rst:204 msgid "" "Return the current signal handler for the signal *signalnum*. The returned " "value may be a callable Python object, or one of the special values :const:" @@ -239,20 +240,20 @@ msgid "" "not installed from Python." msgstr "" -#: ../Doc/library/signal.rst:214 +#: ../Doc/library/signal.rst:215 msgid "" "Cause the process to sleep until a signal is received; the appropriate " "handler will then be called. Returns nothing. Not on Windows. (See the " "Unix man page :manpage:`signal(2)`.)" msgstr "" -#: ../Doc/library/signal.rst:218 +#: ../Doc/library/signal.rst:219 msgid "" "See also :func:`sigwait`, :func:`sigwaitinfo`, :func:`sigtimedwait` and :" "func:`sigpending`." msgstr "" -#: ../Doc/library/signal.rst:224 +#: ../Doc/library/signal.rst:225 msgid "" "Send the signal *signalnum* to the thread *thread_id*, another thread in the " "same process as the caller. The target thread can be executing any code " @@ -263,84 +264,84 @@ msgid "" "to fail with :exc:`InterruptedError`." msgstr "" -#: ../Doc/library/signal.rst:232 +#: ../Doc/library/signal.rst:233 msgid "" "Use :func:`threading.get_ident()` or the :attr:`~threading.Thread.ident` " "attribute of :class:`threading.Thread` objects to get a suitable value for " "*thread_id*." msgstr "" -#: ../Doc/library/signal.rst:236 +#: ../Doc/library/signal.rst:237 msgid "" "If *signalnum* is 0, then no signal is sent, but error checking is still " "performed; this can be used to check if the target thread is still running." msgstr "" -#: ../Doc/library/signal.rst:241 +#: ../Doc/library/signal.rst:242 msgid "" ":ref:`Availability `: Unix (see the man page :manpage:" "`pthread_kill(3)` for further information)." msgstr "" -#: ../Doc/library/signal.rst:242 +#: ../Doc/library/signal.rst:243 msgid "See also :func:`os.kill`." msgstr "" -#: ../Doc/library/signal.rst:249 +#: ../Doc/library/signal.rst:250 msgid "" "Fetch and/or change the signal mask of the calling thread. The signal mask " "is the set of signals whose delivery is currently blocked for the caller. " "Return the old signal mask as a set of signals." msgstr "" -#: ../Doc/library/signal.rst:253 +#: ../Doc/library/signal.rst:254 msgid "" "The behavior of the call is dependent on the value of *how*, as follows." msgstr "" -#: ../Doc/library/signal.rst:255 +#: ../Doc/library/signal.rst:256 msgid "" ":data:`SIG_BLOCK`: The set of blocked signals is the union of the current " "set and the *mask* argument." msgstr "" -#: ../Doc/library/signal.rst:257 +#: ../Doc/library/signal.rst:258 msgid "" ":data:`SIG_UNBLOCK`: The signals in *mask* are removed from the current set " "of blocked signals. It is permissible to attempt to unblock a signal which " "is not blocked." msgstr "" -#: ../Doc/library/signal.rst:260 +#: ../Doc/library/signal.rst:261 msgid "" ":data:`SIG_SETMASK`: The set of blocked signals is set to the *mask* " "argument." msgstr "" -#: ../Doc/library/signal.rst:263 +#: ../Doc/library/signal.rst:264 msgid "" "*mask* is a set of signal numbers (e.g. {:const:`signal.SIGINT`, :const:" "`signal.SIGTERM`}). Use ``range(1, signal.NSIG)`` for a full mask including " "all signals." msgstr "" -#: ../Doc/library/signal.rst:267 +#: ../Doc/library/signal.rst:268 msgid "" "For example, ``signal.pthread_sigmask(signal.SIG_BLOCK, [])`` reads the " "signal mask of the calling thread." msgstr "" -#: ../Doc/library/signal.rst:272 +#: ../Doc/library/signal.rst:273 msgid "" ":ref:`Availability `: Unix. See the man page :manpage:" "`sigprocmask(3)` and :manpage:`pthread_sigmask(3)` for further information." msgstr "" -#: ../Doc/library/signal.rst:273 +#: ../Doc/library/signal.rst:274 msgid "See also :func:`pause`, :func:`sigpending` and :func:`sigwait`." msgstr "" -#: ../Doc/library/signal.rst:280 +#: ../Doc/library/signal.rst:281 msgid "" "Sets given interval timer (one of :const:`signal.ITIMER_REAL`, :const:" "`signal.ITIMER_VIRTUAL` or :const:`signal.ITIMER_PROF`) specified by *which* " @@ -350,7 +351,7 @@ msgid "" "zero." msgstr "" -#: ../Doc/library/signal.rst:287 +#: ../Doc/library/signal.rst:288 msgid "" "When an interval timer fires, a signal is sent to the process. The signal " "sent is dependent on the timer being used; :const:`signal.ITIMER_REAL` will " @@ -358,21 +359,21 @@ msgid "" "`SIGVTALRM`, and :const:`signal.ITIMER_PROF` will deliver :const:`SIGPROF`." msgstr "" -#: ../Doc/library/signal.rst:293 +#: ../Doc/library/signal.rst:294 msgid "The old values are returned as a tuple: (delay, interval)." msgstr "" -#: ../Doc/library/signal.rst:295 +#: ../Doc/library/signal.rst:296 msgid "" "Attempting to pass an invalid interval timer will cause an :exc:" "`ItimerError`." msgstr "" -#: ../Doc/library/signal.rst:303 +#: ../Doc/library/signal.rst:304 msgid "Returns current value of a given interval timer specified by *which*." msgstr "" -#: ../Doc/library/signal.rst:310 +#: ../Doc/library/signal.rst:311 msgid "" "Set the wakeup file descriptor to *fd*. When a signal is received, the " "signal number is written as a single byte into the fd. This can be used by " @@ -380,7 +381,7 @@ msgid "" "processed." msgstr "" -#: ../Doc/library/signal.rst:315 +#: ../Doc/library/signal.rst:316 msgid "" "The old wakeup fd is returned (or -1 if file descriptor wakeup was not " "enabled). If *fd* is -1, file descriptor wakeup is disabled. If not -1, " @@ -388,21 +389,21 @@ msgid "" "*fd* before calling poll or select again." msgstr "" -#: ../Doc/library/signal.rst:320 ../Doc/library/signal.rst:373 +#: ../Doc/library/signal.rst:321 ../Doc/library/signal.rst:374 msgid "" "When threads are enabled, this function can only be called from the main " "thread; attempting to call it from other threads will cause a :exc:" "`ValueError` exception to be raised." msgstr "" -#: ../Doc/library/signal.rst:324 +#: ../Doc/library/signal.rst:325 msgid "" "There are two common ways to use this function. In both approaches, you use " "the fd to wake up when a signal arrives, but then they differ in how they " "determine *which* signal or signals have arrived." msgstr "" -#: ../Doc/library/signal.rst:329 +#: ../Doc/library/signal.rst:330 msgid "" "In the first approach, we read the data out of the fd's buffer, and the byte " "values give you the signal numbers. This is simple, but in rare cases it can " @@ -413,7 +414,7 @@ msgid "" "warning to be printed to stderr when signals are lost." msgstr "" -#: ../Doc/library/signal.rst:338 +#: ../Doc/library/signal.rst:339 msgid "" "In the second approach, we use the wakeup fd *only* for wakeups, and ignore " "the actual byte values. In this case, all we care about is whether the fd's " @@ -423,35 +424,35 @@ msgid "" "spurious warning messages." msgstr "" -#: ../Doc/library/signal.rst:345 +#: ../Doc/library/signal.rst:346 msgid "On Windows, the function now also supports socket handles." msgstr "" -#: ../Doc/library/signal.rst:348 +#: ../Doc/library/signal.rst:349 msgid "Added ``warn_on_full_buffer`` parameter." msgstr "" -#: ../Doc/library/signal.rst:353 +#: ../Doc/library/signal.rst:354 msgid "" "Change system call restart behaviour: if *flag* is :const:`False`, system " "calls will be restarted when interrupted by signal *signalnum*, otherwise " "system calls will be interrupted. Returns nothing." msgstr "" -#: ../Doc/library/signal.rst:359 +#: ../Doc/library/signal.rst:360 msgid "" ":ref:`Availability `: Unix (see the man page :manpage:" "`siginterrupt(3)` for further information)." msgstr "" -#: ../Doc/library/signal.rst:360 +#: ../Doc/library/signal.rst:361 msgid "" "Note that installing a signal handler with :func:`signal` will reset the " "restart behaviour to interruptible by implicitly calling :c:func:" "`siginterrupt` with a true *flag* value for the given signal." msgstr "" -#: ../Doc/library/signal.rst:367 +#: ../Doc/library/signal.rst:368 msgid "" "Set the handler for signal *signalnum* to the function *handler*. *handler* " "can be a callable Python object taking two arguments (see below), or one of " @@ -460,7 +461,7 @@ msgid "" "`getsignal` above). (See the Unix man page :manpage:`signal(2)`.)" msgstr "" -#: ../Doc/library/signal.rst:377 +#: ../Doc/library/signal.rst:378 msgid "" "The *handler* is called with two arguments: the signal number and the " "current stack frame (``None`` or a frame object; for a description of frame " @@ -468,7 +469,7 @@ msgid "" "see the attribute descriptions in the :mod:`inspect` module)." msgstr "" -#: ../Doc/library/signal.rst:382 +#: ../Doc/library/signal.rst:383 msgid "" "On Windows, :func:`signal` can only be called with :const:`SIGABRT`, :const:" "`SIGFPE`, :const:`SIGILL`, :const:`SIGINT`, :const:`SIGSEGV`, :const:" @@ -478,24 +479,24 @@ msgid "" "``SIG*`` module level constant." msgstr "" -#: ../Doc/library/signal.rst:393 +#: ../Doc/library/signal.rst:394 msgid "" "Examine the set of signals that are pending for delivery to the calling " "thread (i.e., the signals which have been raised while blocked). Return the " "set of the pending signals." msgstr "" -#: ../Doc/library/signal.rst:399 +#: ../Doc/library/signal.rst:400 msgid "" ":ref:`Availability `: Unix (see the man page :manpage:" "`sigpending(2)` for further information)." msgstr "" -#: ../Doc/library/signal.rst:400 +#: ../Doc/library/signal.rst:401 msgid "See also :func:`pause`, :func:`pthread_sigmask` and :func:`sigwait`." msgstr "" -#: ../Doc/library/signal.rst:407 +#: ../Doc/library/signal.rst:408 msgid "" "Suspend execution of the calling thread until the delivery of one of the " "signals specified in the signal set *sigset*. The function accepts the " @@ -503,19 +504,19 @@ msgid "" "number." msgstr "" -#: ../Doc/library/signal.rst:413 +#: ../Doc/library/signal.rst:414 msgid "" ":ref:`Availability `: Unix (see the man page :manpage:" "`sigwait(3)` for further information)." msgstr "" -#: ../Doc/library/signal.rst:414 +#: ../Doc/library/signal.rst:415 msgid "" "See also :func:`pause`, :func:`pthread_sigmask`, :func:`sigpending`, :func:" "`sigwaitinfo` and :func:`sigtimedwait`." msgstr "" -#: ../Doc/library/signal.rst:422 +#: ../Doc/library/signal.rst:423 msgid "" "Suspend execution of the calling thread until the delivery of one of the " "signals specified in the signal set *sigset*. The function accepts the " @@ -526,7 +527,7 @@ msgid "" "`InterruptedError` if it is interrupted by a signal that is not in *sigset*." msgstr "" -#: ../Doc/library/signal.rst:431 +#: ../Doc/library/signal.rst:432 msgid "" "The return value is an object representing the data contained in the :c:type:" "`siginfo_t` structure, namely: :attr:`si_signo`, :attr:`si_code`, :attr:" @@ -534,52 +535,52 @@ msgid "" "`si_band`." msgstr "" -#: ../Doc/library/signal.rst:438 +#: ../Doc/library/signal.rst:439 msgid "" ":ref:`Availability `: Unix (see the man page :manpage:" "`sigwaitinfo(2)` for further information)." msgstr "" -#: ../Doc/library/signal.rst:439 +#: ../Doc/library/signal.rst:440 msgid "See also :func:`pause`, :func:`sigwait` and :func:`sigtimedwait`." msgstr "" -#: ../Doc/library/signal.rst:443 +#: ../Doc/library/signal.rst:444 msgid "" "The function is now retried if interrupted by a signal not in *sigset* and " "the signal handler does not raise an exception (see :pep:`475` for the " "rationale)." msgstr "" -#: ../Doc/library/signal.rst:451 +#: ../Doc/library/signal.rst:452 msgid "" "Like :func:`sigwaitinfo`, but takes an additional *timeout* argument " "specifying a timeout. If *timeout* is specified as :const:`0`, a poll is " "performed. Returns :const:`None` if a timeout occurs." msgstr "" -#: ../Doc/library/signal.rst:457 +#: ../Doc/library/signal.rst:458 msgid "" ":ref:`Availability `: Unix (see the man page :manpage:" "`sigtimedwait(2)` for further information)." msgstr "" -#: ../Doc/library/signal.rst:458 +#: ../Doc/library/signal.rst:459 msgid "See also :func:`pause`, :func:`sigwait` and :func:`sigwaitinfo`." msgstr "" -#: ../Doc/library/signal.rst:462 +#: ../Doc/library/signal.rst:463 msgid "" "The function is now retried with the recomputed *timeout* if interrupted by " "a signal not in *sigset* and the signal handler does not raise an exception " "(see :pep:`475` for the rationale)." msgstr "" -#: ../Doc/library/signal.rst:471 +#: ../Doc/library/signal.rst:472 msgid "Example" msgstr "Exemple" -#: ../Doc/library/signal.rst:473 +#: ../Doc/library/signal.rst:474 msgid "" "Here is a minimal example program. It uses the :func:`alarm` function to " "limit the time spent waiting to open a file; this is useful if the file is " @@ -589,11 +590,11 @@ msgid "" "signal will be sent, and the handler raises an exception. ::" msgstr "" -#: ../Doc/library/signal.rst:496 +#: ../Doc/library/signal.rst:497 msgid "Note on SIGPIPE" msgstr "" -#: ../Doc/library/signal.rst:498 +#: ../Doc/library/signal.rst:499 msgid "" "Piping output of your program to tools like :manpage:`head(1)` will cause a :" "const:`SIGPIPE` signal to be sent to your process when the receiver of its " @@ -602,7 +603,7 @@ msgid "" "entry point to catch this exception as follows::" msgstr "" -#: ../Doc/library/signal.rst:525 +#: ../Doc/library/signal.rst:526 msgid "" "Do not set :const:`SIGPIPE`'s disposition to :const:`SIG_DFL` in order to " "avoid :exc:`BrokenPipeError`. Doing that would cause your program to exit " diff --git a/library/sqlite3.po b/library/sqlite3.po index 40a07f9d..804886bb 100644 --- a/library/sqlite3.po +++ b/library/sqlite3.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-26 15:55+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -470,7 +470,7 @@ msgid "" msgstr "" #: ../Doc/library/sqlite3.rst:351 ../Doc/library/sqlite3.rst:368 -#: ../Doc/library/sqlite3.rst:482 ../Doc/library/sqlite3.rst:635 +#: ../Doc/library/sqlite3.rst:482 ../Doc/library/sqlite3.rst:639 msgid "Example:" msgstr "Exemple :" @@ -667,7 +667,7 @@ msgstr "" msgid "Example::" msgstr "Exemple ::" -#: ../Doc/library/sqlite3.rst:537 +#: ../Doc/library/sqlite3.rst:538 msgid "" "This method makes a backup of a SQLite database even while it's being " "accessed by other clients, or concurrently by the same connection. The copy " @@ -675,14 +675,14 @@ msgid "" "class:`Connection` instance." msgstr "" -#: ../Doc/library/sqlite3.rst:542 +#: ../Doc/library/sqlite3.rst:543 msgid "" "By default, or when *pages* is either ``0`` or a negative integer, the " "entire database is copied in a single step; otherwise the method performs a " "loop copying up to *pages* pages at a time." msgstr "" -#: ../Doc/library/sqlite3.rst:546 +#: ../Doc/library/sqlite3.rst:547 msgid "" "If *progress* is specified, it must either be ``None`` or a callable object " "that will be executed at each iteration with three integer arguments, " @@ -690,7 +690,7 @@ msgid "" "pages still to be copied and the *total* number of pages." msgstr "" -#: ../Doc/library/sqlite3.rst:551 +#: ../Doc/library/sqlite3.rst:552 msgid "" "The *name* argument specifies the database name that will be copied: it must " "be a string containing either ``\"main\"``, the default, to indicate the " @@ -699,34 +699,34 @@ msgid "" "an attached database." msgstr "" -#: ../Doc/library/sqlite3.rst:557 +#: ../Doc/library/sqlite3.rst:558 msgid "" "The *sleep* argument specifies the number of seconds to sleep by between " "successive attempts to backup remaining pages, can be specified either as an " "integer or a floating point value." msgstr "" -#: ../Doc/library/sqlite3.rst:561 +#: ../Doc/library/sqlite3.rst:562 msgid "Example 1, copy an existing database into another::" msgstr "" -#: ../Doc/library/sqlite3.rst:572 +#: ../Doc/library/sqlite3.rst:576 msgid "Example 2, copy an existing database into a transient copy::" msgstr "" -#: ../Doc/library/sqlite3.rst:580 +#: ../Doc/library/sqlite3.rst:584 msgid "Availability: SQLite 3.6.11 or higher" msgstr "" -#: ../Doc/library/sqlite3.rst:588 +#: ../Doc/library/sqlite3.rst:592 msgid "Cursor Objects" msgstr "" -#: ../Doc/library/sqlite3.rst:592 +#: ../Doc/library/sqlite3.rst:596 msgid "A :class:`Cursor` instance has the following attributes and methods." msgstr "" -#: ../Doc/library/sqlite3.rst:599 +#: ../Doc/library/sqlite3.rst:603 msgid "" "Executes an SQL statement. The SQL statement may be parameterized (i. e. " "placeholders instead of SQL literals). The :mod:`sqlite3` module supports " @@ -734,11 +734,11 @@ msgid "" "placeholders (named style)." msgstr "" -#: ../Doc/library/sqlite3.rst:604 +#: ../Doc/library/sqlite3.rst:608 msgid "Here's an example of both styles:" msgstr "" -#: ../Doc/library/sqlite3.rst:608 +#: ../Doc/library/sqlite3.rst:612 msgid "" ":meth:`execute` will only execute a single SQL statement. If you try to " "execute more than one statement with it, it will raise a :exc:`.Warning`. " @@ -746,41 +746,41 @@ msgid "" "with one call." msgstr "" -#: ../Doc/library/sqlite3.rst:616 +#: ../Doc/library/sqlite3.rst:620 msgid "" "Executes an SQL command against all parameter sequences or mappings found in " "the sequence *seq_of_parameters*. The :mod:`sqlite3` module also allows " "using an :term:`iterator` yielding parameters instead of a sequence." msgstr "" -#: ../Doc/library/sqlite3.rst:622 +#: ../Doc/library/sqlite3.rst:626 msgid "Here's a shorter example using a :term:`generator`:" msgstr "" -#: ../Doc/library/sqlite3.rst:629 +#: ../Doc/library/sqlite3.rst:633 msgid "" "This is a nonstandard convenience method for executing multiple SQL " "statements at once. It issues a ``COMMIT`` statement first, then executes " "the SQL script it gets as a parameter." msgstr "" -#: ../Doc/library/sqlite3.rst:633 +#: ../Doc/library/sqlite3.rst:637 msgid "*sql_script* can be an instance of :class:`str`." msgstr "" -#: ../Doc/library/sqlite3.rst:642 +#: ../Doc/library/sqlite3.rst:646 msgid "" "Fetches the next row of a query result set, returning a single sequence, or :" "const:`None` when no more data is available." msgstr "" -#: ../Doc/library/sqlite3.rst:648 +#: ../Doc/library/sqlite3.rst:652 msgid "" "Fetches the next set of rows of a query result, returning a list. An empty " "list is returned when no more rows are available." msgstr "" -#: ../Doc/library/sqlite3.rst:651 +#: ../Doc/library/sqlite3.rst:655 msgid "" "The number of rows to fetch per call is specified by the *size* parameter. " "If it is not given, the cursor's arraysize determines the number of rows to " @@ -789,7 +789,7 @@ msgid "" "not being available, fewer rows may be returned." msgstr "" -#: ../Doc/library/sqlite3.rst:657 +#: ../Doc/library/sqlite3.rst:661 msgid "" "Note there are performance considerations involved with the *size* " "parameter. For optimal performance, it is usually best to use the arraysize " @@ -797,38 +797,38 @@ msgid "" "the same value from one :meth:`fetchmany` call to the next." msgstr "" -#: ../Doc/library/sqlite3.rst:664 +#: ../Doc/library/sqlite3.rst:668 msgid "" "Fetches all (remaining) rows of a query result, returning a list. Note that " "the cursor's arraysize attribute can affect the performance of this " "operation. An empty list is returned when no rows are available." msgstr "" -#: ../Doc/library/sqlite3.rst:670 +#: ../Doc/library/sqlite3.rst:674 msgid "Close the cursor now (rather than whenever ``__del__`` is called)." msgstr "" -#: ../Doc/library/sqlite3.rst:672 +#: ../Doc/library/sqlite3.rst:676 msgid "" "The cursor will be unusable from this point forward; a :exc:" "`ProgrammingError` exception will be raised if any operation is attempted " "with the cursor." msgstr "" -#: ../Doc/library/sqlite3.rst:677 +#: ../Doc/library/sqlite3.rst:681 msgid "" "Although the :class:`Cursor` class of the :mod:`sqlite3` module implements " "this attribute, the database engine's own support for the determination of " "\"rows affected\"/\"rows selected\" is quirky." msgstr "" -#: ../Doc/library/sqlite3.rst:681 +#: ../Doc/library/sqlite3.rst:685 msgid "" "For :meth:`executemany` statements, the number of modifications are summed " "up into :attr:`rowcount`." msgstr "" -#: ../Doc/library/sqlite3.rst:684 +#: ../Doc/library/sqlite3.rst:688 msgid "" "As required by the Python DB API Spec, the :attr:`rowcount` attribute \"is " "-1 in case no ``executeXX()`` has been performed on the cursor or the " @@ -837,13 +837,13 @@ msgid "" "rows a query produced until all rows were fetched." msgstr "" -#: ../Doc/library/sqlite3.rst:690 +#: ../Doc/library/sqlite3.rst:694 msgid "" "With SQLite versions before 3.6.5, :attr:`rowcount` is set to 0 if you make " "a ``DELETE FROM table`` without any condition." msgstr "" -#: ../Doc/library/sqlite3.rst:695 +#: ../Doc/library/sqlite3.rst:699 msgid "" "This read-only attribute provides the rowid of the last modified row. It is " "only set if you issued an ``INSERT`` or a ``REPLACE`` statement using the :" @@ -852,35 +852,35 @@ msgid "" "`None`." msgstr "" -#: ../Doc/library/sqlite3.rst:701 +#: ../Doc/library/sqlite3.rst:705 msgid "" "If the ``INSERT`` or ``REPLACE`` statement failed to insert the previous " "successful rowid is returned." msgstr "" -#: ../Doc/library/sqlite3.rst:704 +#: ../Doc/library/sqlite3.rst:708 msgid "Added support for the ``REPLACE`` statement." msgstr "" -#: ../Doc/library/sqlite3.rst:709 +#: ../Doc/library/sqlite3.rst:713 msgid "" "Read/write attribute that controls the number of rows returned by :meth:" "`fetchmany`. The default value is 1 which means a single row would be " "fetched per call." msgstr "" -#: ../Doc/library/sqlite3.rst:714 +#: ../Doc/library/sqlite3.rst:718 msgid "" "This read-only attribute provides the column names of the last query. To " "remain compatible with the Python DB API, it returns a 7-tuple for each " "column where the last six items of each tuple are :const:`None`." msgstr "" -#: ../Doc/library/sqlite3.rst:718 +#: ../Doc/library/sqlite3.rst:722 msgid "It is set for ``SELECT`` statements without any matching rows as well." msgstr "" -#: ../Doc/library/sqlite3.rst:722 +#: ../Doc/library/sqlite3.rst:726 msgid "" "This read-only attribute provides the SQLite database :class:`Connection` " "used by the :class:`Cursor` object. A :class:`Cursor` object created by " @@ -888,79 +888,79 @@ msgid "" "`connection` attribute that refers to *con*::" msgstr "" -#: ../Doc/library/sqlite3.rst:735 +#: ../Doc/library/sqlite3.rst:739 msgid "Row Objects" msgstr "" -#: ../Doc/library/sqlite3.rst:739 +#: ../Doc/library/sqlite3.rst:743 msgid "" "A :class:`Row` instance serves as a highly optimized :attr:`~Connection." "row_factory` for :class:`Connection` objects. It tries to mimic a tuple in " "most of its features." msgstr "" -#: ../Doc/library/sqlite3.rst:743 +#: ../Doc/library/sqlite3.rst:747 msgid "" "It supports mapping access by column name and index, iteration, " "representation, equality testing and :func:`len`." msgstr "" -#: ../Doc/library/sqlite3.rst:746 +#: ../Doc/library/sqlite3.rst:750 msgid "" "If two :class:`Row` objects have exactly the same columns and their members " "are equal, they compare equal." msgstr "" -#: ../Doc/library/sqlite3.rst:751 +#: ../Doc/library/sqlite3.rst:755 msgid "" "This method returns a list of column names. Immediately after a query, it is " "the first member of each tuple in :attr:`Cursor.description`." msgstr "" -#: ../Doc/library/sqlite3.rst:754 +#: ../Doc/library/sqlite3.rst:758 msgid "Added support of slicing." msgstr "" -#: ../Doc/library/sqlite3.rst:757 +#: ../Doc/library/sqlite3.rst:761 msgid "Let's assume we initialize a table as in the example given above::" msgstr "" -#: ../Doc/library/sqlite3.rst:769 +#: ../Doc/library/sqlite3.rst:773 msgid "Now we plug :class:`Row` in::" msgstr "" -#: ../Doc/library/sqlite3.rst:801 +#: ../Doc/library/sqlite3.rst:805 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/library/sqlite3.rst:805 +#: ../Doc/library/sqlite3.rst:809 msgid "A subclass of :exc:`Exception`." msgstr "" -#: ../Doc/library/sqlite3.rst:809 +#: ../Doc/library/sqlite3.rst:813 msgid "" "The base class of the other exceptions in this module. It is a subclass of :" "exc:`Exception`." msgstr "" -#: ../Doc/library/sqlite3.rst:814 +#: ../Doc/library/sqlite3.rst:818 msgid "Exception raised for errors that are related to the database." msgstr "" -#: ../Doc/library/sqlite3.rst:818 +#: ../Doc/library/sqlite3.rst:822 msgid "" "Exception raised when the relational integrity of the database is affected, " "e.g. a foreign key check fails. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: ../Doc/library/sqlite3.rst:823 +#: ../Doc/library/sqlite3.rst:827 msgid "" "Exception raised for programming errors, e.g. table not found or already " "exists, syntax error in the SQL statement, wrong number of parameters " "specified, etc. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: ../Doc/library/sqlite3.rst:829 +#: ../Doc/library/sqlite3.rst:833 msgid "" "Exception raised for errors that are related to the database's operation and " "not necessarily under the control of the programmer, e.g. an unexpected " @@ -968,7 +968,7 @@ msgid "" "not be processed, etc. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: ../Doc/library/sqlite3.rst:836 +#: ../Doc/library/sqlite3.rst:840 msgid "" "Exception raised in case a method or database API was used which is not " "supported by the database, e.g. calling the :meth:`~Connection.rollback` " @@ -976,82 +976,82 @@ msgid "" "turned off. It is a subclass of :exc:`DatabaseError`." msgstr "" -#: ../Doc/library/sqlite3.rst:845 +#: ../Doc/library/sqlite3.rst:849 msgid "SQLite and Python types" msgstr "" -#: ../Doc/library/sqlite3.rst:849 +#: ../Doc/library/sqlite3.rst:853 msgid "Introduction" msgstr "Introduction" -#: ../Doc/library/sqlite3.rst:851 +#: ../Doc/library/sqlite3.rst:855 msgid "" "SQLite natively supports the following types: ``NULL``, ``INTEGER``, " "``REAL``, ``TEXT``, ``BLOB``." msgstr "" -#: ../Doc/library/sqlite3.rst:854 +#: ../Doc/library/sqlite3.rst:858 msgid "" "The following Python types can thus be sent to SQLite without any problem:" msgstr "" -#: ../Doc/library/sqlite3.rst:857 ../Doc/library/sqlite3.rst:874 +#: ../Doc/library/sqlite3.rst:861 ../Doc/library/sqlite3.rst:878 msgid "Python type" msgstr "Type Python" -#: ../Doc/library/sqlite3.rst:857 ../Doc/library/sqlite3.rst:874 +#: ../Doc/library/sqlite3.rst:861 ../Doc/library/sqlite3.rst:878 msgid "SQLite type" msgstr "SQLite type" -#: ../Doc/library/sqlite3.rst:859 ../Doc/library/sqlite3.rst:876 +#: ../Doc/library/sqlite3.rst:863 ../Doc/library/sqlite3.rst:880 msgid ":const:`None`" msgstr ":const:`None`" -#: ../Doc/library/sqlite3.rst:859 ../Doc/library/sqlite3.rst:876 +#: ../Doc/library/sqlite3.rst:863 ../Doc/library/sqlite3.rst:880 msgid "``NULL``" msgstr "``NULL``" -#: ../Doc/library/sqlite3.rst:861 ../Doc/library/sqlite3.rst:878 +#: ../Doc/library/sqlite3.rst:865 ../Doc/library/sqlite3.rst:882 msgid ":class:`int`" msgstr ":class:`int`" -#: ../Doc/library/sqlite3.rst:861 ../Doc/library/sqlite3.rst:878 +#: ../Doc/library/sqlite3.rst:865 ../Doc/library/sqlite3.rst:882 msgid "``INTEGER``" msgstr "``INTEGER``" -#: ../Doc/library/sqlite3.rst:863 ../Doc/library/sqlite3.rst:880 +#: ../Doc/library/sqlite3.rst:867 ../Doc/library/sqlite3.rst:884 msgid ":class:`float`" msgstr ":class:`float`" -#: ../Doc/library/sqlite3.rst:863 ../Doc/library/sqlite3.rst:880 +#: ../Doc/library/sqlite3.rst:867 ../Doc/library/sqlite3.rst:884 msgid "``REAL``" msgstr "``REAL``" -#: ../Doc/library/sqlite3.rst:865 +#: ../Doc/library/sqlite3.rst:869 msgid ":class:`str`" msgstr ":class:`str`" -#: ../Doc/library/sqlite3.rst:865 ../Doc/library/sqlite3.rst:882 +#: ../Doc/library/sqlite3.rst:869 ../Doc/library/sqlite3.rst:886 msgid "``TEXT``" msgstr "``TEXT``" -#: ../Doc/library/sqlite3.rst:867 ../Doc/library/sqlite3.rst:885 +#: ../Doc/library/sqlite3.rst:871 ../Doc/library/sqlite3.rst:889 msgid ":class:`bytes`" msgstr ":class:`bytes`" -#: ../Doc/library/sqlite3.rst:867 ../Doc/library/sqlite3.rst:885 +#: ../Doc/library/sqlite3.rst:871 ../Doc/library/sqlite3.rst:889 msgid "``BLOB``" msgstr "``BLOB``" -#: ../Doc/library/sqlite3.rst:871 +#: ../Doc/library/sqlite3.rst:875 msgid "This is how SQLite types are converted to Python types by default:" msgstr "" -#: ../Doc/library/sqlite3.rst:882 +#: ../Doc/library/sqlite3.rst:886 msgid "depends on :attr:`~Connection.text_factory`, :class:`str` by default" msgstr "" -#: ../Doc/library/sqlite3.rst:888 +#: ../Doc/library/sqlite3.rst:892 msgid "" "The type system of the :mod:`sqlite3` module is extensible in two ways: you " "can store additional Python types in a SQLite database via object " @@ -1059,11 +1059,11 @@ msgid "" "to different Python types via converters." msgstr "" -#: ../Doc/library/sqlite3.rst:895 +#: ../Doc/library/sqlite3.rst:899 msgid "Using adapters to store additional Python types in SQLite databases" msgstr "" -#: ../Doc/library/sqlite3.rst:897 +#: ../Doc/library/sqlite3.rst:901 msgid "" "As described before, SQLite supports only a limited set of types natively. " "To use other Python types with SQLite, you must **adapt** them to one of the " @@ -1071,23 +1071,23 @@ msgid "" "str, bytes." msgstr "" -#: ../Doc/library/sqlite3.rst:902 +#: ../Doc/library/sqlite3.rst:906 msgid "" "There are two ways to enable the :mod:`sqlite3` module to adapt a custom " "Python type to one of the supported ones." msgstr "" -#: ../Doc/library/sqlite3.rst:907 +#: ../Doc/library/sqlite3.rst:911 msgid "Letting your object adapt itself" msgstr "" -#: ../Doc/library/sqlite3.rst:909 +#: ../Doc/library/sqlite3.rst:913 msgid "" "This is a good approach if you write the class yourself. Let's suppose you " "have a class like this::" msgstr "" -#: ../Doc/library/sqlite3.rst:916 +#: ../Doc/library/sqlite3.rst:920 msgid "" "Now you want to store the point in a single SQLite column. First you'll " "have to choose one of the supported types first to be used for representing " @@ -1097,18 +1097,18 @@ msgid "" "will be :class:`PrepareProtocol`." msgstr "" -#: ../Doc/library/sqlite3.rst:926 +#: ../Doc/library/sqlite3.rst:930 msgid "Registering an adapter callable" msgstr "" -#: ../Doc/library/sqlite3.rst:928 +#: ../Doc/library/sqlite3.rst:932 msgid "" "The other possibility is to create a function that converts the type to the " "string representation and register the function with :meth:" "`register_adapter`." msgstr "" -#: ../Doc/library/sqlite3.rst:933 +#: ../Doc/library/sqlite3.rst:937 msgid "" "The :mod:`sqlite3` module has two default adapters for Python's built-in :" "class:`datetime.date` and :class:`datetime.datetime` types. Now let's " @@ -1116,110 +1116,110 @@ msgid "" "representation, but as a Unix timestamp." msgstr "" -#: ../Doc/library/sqlite3.rst:942 +#: ../Doc/library/sqlite3.rst:946 msgid "Converting SQLite values to custom Python types" msgstr "" -#: ../Doc/library/sqlite3.rst:944 +#: ../Doc/library/sqlite3.rst:948 msgid "" "Writing an adapter lets you send custom Python types to SQLite. But to make " "it really useful we need to make the Python to SQLite to Python roundtrip " "work." msgstr "" -#: ../Doc/library/sqlite3.rst:947 +#: ../Doc/library/sqlite3.rst:951 msgid "Enter converters." msgstr "" -#: ../Doc/library/sqlite3.rst:949 +#: ../Doc/library/sqlite3.rst:953 msgid "" "Let's go back to the :class:`Point` class. We stored the x and y coordinates " "separated via semicolons as strings in SQLite." msgstr "" -#: ../Doc/library/sqlite3.rst:952 +#: ../Doc/library/sqlite3.rst:956 msgid "" "First, we'll define a converter function that accepts the string as a " "parameter and constructs a :class:`Point` object from it." msgstr "" -#: ../Doc/library/sqlite3.rst:957 +#: ../Doc/library/sqlite3.rst:961 msgid "" "Converter functions **always** get called with a :class:`bytes` object, no " "matter under which data type you sent the value to SQLite." msgstr "" -#: ../Doc/library/sqlite3.rst:966 +#: ../Doc/library/sqlite3.rst:970 msgid "" "Now you need to make the :mod:`sqlite3` module know that what you select " "from the database is actually a point. There are two ways of doing this:" msgstr "" -#: ../Doc/library/sqlite3.rst:969 +#: ../Doc/library/sqlite3.rst:973 msgid "Implicitly via the declared type" msgstr "" -#: ../Doc/library/sqlite3.rst:971 +#: ../Doc/library/sqlite3.rst:975 msgid "Explicitly via the column name" msgstr "" -#: ../Doc/library/sqlite3.rst:973 +#: ../Doc/library/sqlite3.rst:977 msgid "" "Both ways are described in section :ref:`sqlite3-module-contents`, in the " "entries for the constants :const:`PARSE_DECLTYPES` and :const:" "`PARSE_COLNAMES`." msgstr "" -#: ../Doc/library/sqlite3.rst:976 +#: ../Doc/library/sqlite3.rst:980 msgid "The following example illustrates both approaches." msgstr "" -#: ../Doc/library/sqlite3.rst:982 +#: ../Doc/library/sqlite3.rst:986 msgid "Default adapters and converters" msgstr "" -#: ../Doc/library/sqlite3.rst:984 +#: ../Doc/library/sqlite3.rst:988 msgid "" "There are default adapters for the date and datetime types in the datetime " "module. They will be sent as ISO dates/ISO timestamps to SQLite." msgstr "" -#: ../Doc/library/sqlite3.rst:987 +#: ../Doc/library/sqlite3.rst:991 msgid "" "The default converters are registered under the name \"date\" for :class:" "`datetime.date` and under the name \"timestamp\" for :class:`datetime." "datetime`." msgstr "" -#: ../Doc/library/sqlite3.rst:991 +#: ../Doc/library/sqlite3.rst:995 msgid "" "This way, you can use date/timestamps from Python without any additional " "fiddling in most cases. The format of the adapters is also compatible with " "the experimental SQLite date/time functions." msgstr "" -#: ../Doc/library/sqlite3.rst:995 +#: ../Doc/library/sqlite3.rst:999 msgid "The following example demonstrates this." msgstr "" -#: ../Doc/library/sqlite3.rst:999 +#: ../Doc/library/sqlite3.rst:1003 msgid "" "If a timestamp stored in SQLite has a fractional part longer than 6 numbers, " "its value will be truncated to microsecond precision by the timestamp " "converter." msgstr "" -#: ../Doc/library/sqlite3.rst:1007 +#: ../Doc/library/sqlite3.rst:1011 msgid "Controlling Transactions" msgstr "" -#: ../Doc/library/sqlite3.rst:1009 +#: ../Doc/library/sqlite3.rst:1013 msgid "" "The underlying ``sqlite3`` library operates in ``autocommit`` mode by " "default, but the Python :mod:`sqlite3` module by default does not." msgstr "" -#: ../Doc/library/sqlite3.rst:1012 +#: ../Doc/library/sqlite3.rst:1016 msgid "" "``autocommit`` mode means that statements that modify the database take " "effect immediately. A ``BEGIN`` or ``SAVEPOINT`` statement disables " @@ -1227,14 +1227,14 @@ msgid "" "ends the outermost transaction, turns ``autocommit`` mode back on." msgstr "" -#: ../Doc/library/sqlite3.rst:1017 +#: ../Doc/library/sqlite3.rst:1021 msgid "" "The Python :mod:`sqlite3` module by default issues a ``BEGIN`` statement " "implicitly before a Data Modification Language (DML) statement (i.e. " "``INSERT``/``UPDATE``/``DELETE``/``REPLACE``)." msgstr "" -#: ../Doc/library/sqlite3.rst:1021 +#: ../Doc/library/sqlite3.rst:1025 msgid "" "You can control which kind of ``BEGIN`` statements :mod:`sqlite3` implicitly " "executes via the *isolation_level* parameter to the :func:`connect` call, or " @@ -1244,7 +1244,7 @@ msgid "" "``EXCLUSIVE``." msgstr "" -#: ../Doc/library/sqlite3.rst:1028 +#: ../Doc/library/sqlite3.rst:1032 msgid "" "You can disable the :mod:`sqlite3` module's implicit transaction management " "by setting :attr:`isolation_level` to ``None``. This will leave the " @@ -1254,21 +1254,21 @@ msgid "" "code." msgstr "" -#: ../Doc/library/sqlite3.rst:1034 +#: ../Doc/library/sqlite3.rst:1038 msgid "" ":mod:`sqlite3` used to implicitly commit an open transaction before DDL " "statements. This is no longer the case." msgstr "" -#: ../Doc/library/sqlite3.rst:1040 +#: ../Doc/library/sqlite3.rst:1044 msgid "Using :mod:`sqlite3` efficiently" msgstr "" -#: ../Doc/library/sqlite3.rst:1044 +#: ../Doc/library/sqlite3.rst:1048 msgid "Using shortcut methods" msgstr "" -#: ../Doc/library/sqlite3.rst:1046 +#: ../Doc/library/sqlite3.rst:1050 msgid "" "Using the nonstandard :meth:`execute`, :meth:`executemany` and :meth:" "`executescript` methods of the :class:`Connection` object, your code can be " @@ -1280,42 +1280,42 @@ msgid "" "object." msgstr "" -#: ../Doc/library/sqlite3.rst:1058 +#: ../Doc/library/sqlite3.rst:1062 msgid "Accessing columns by name instead of by index" msgstr "" -#: ../Doc/library/sqlite3.rst:1060 +#: ../Doc/library/sqlite3.rst:1064 msgid "" "One useful feature of the :mod:`sqlite3` module is the built-in :class:" "`sqlite3.Row` class designed to be used as a row factory." msgstr "" -#: ../Doc/library/sqlite3.rst:1063 +#: ../Doc/library/sqlite3.rst:1067 msgid "" "Rows wrapped with this class can be accessed both by index (like tuples) and " "case-insensitively by name:" msgstr "" -#: ../Doc/library/sqlite3.rst:1070 +#: ../Doc/library/sqlite3.rst:1074 msgid "Using the connection as a context manager" msgstr "" -#: ../Doc/library/sqlite3.rst:1072 +#: ../Doc/library/sqlite3.rst:1076 msgid "" "Connection objects can be used as context managers that automatically commit " "or rollback transactions. In the event of an exception, the transaction is " "rolled back; otherwise, the transaction is committed:" msgstr "" -#: ../Doc/library/sqlite3.rst:1081 +#: ../Doc/library/sqlite3.rst:1085 msgid "Common issues" msgstr "" -#: ../Doc/library/sqlite3.rst:1084 +#: ../Doc/library/sqlite3.rst:1088 msgid "Multithreading" msgstr "Fils d'exécution" -#: ../Doc/library/sqlite3.rst:1086 +#: ../Doc/library/sqlite3.rst:1090 msgid "" "Older SQLite versions had issues with sharing connections between threads. " "That's why the Python module disallows sharing connections and cursors " @@ -1323,17 +1323,17 @@ msgid "" "runtime." msgstr "" -#: ../Doc/library/sqlite3.rst:1090 +#: ../Doc/library/sqlite3.rst:1094 msgid "" "The only exception is calling the :meth:`~Connection.interrupt` method, " "which only makes sense to call from a different thread." msgstr "" -#: ../Doc/library/sqlite3.rst:1094 +#: ../Doc/library/sqlite3.rst:1098 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/sqlite3.rst:1095 +#: ../Doc/library/sqlite3.rst:1099 msgid "" "The sqlite3 module is not built with loadable extension support by default, " "because some platforms (notably Mac OS X) have SQLite libraries which are " diff --git a/library/stdtypes.po b/library/stdtypes.po index f4a9f09f..06211607 100644 --- a/library/stdtypes.po +++ b/library/stdtypes.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-19 23:31+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -4513,12 +4513,13 @@ msgstr "" "*sub* est introuvable." #: ../Doc/library/stdtypes.rst:2676 +#, fuzzy 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 " "bytearray copy, and the part after the separator. If the separator is not " -"found, return a 3-tuple containing a copy of the original sequence, followed " -"by two empty bytes or bytearray objects." +"found, return a 3-tuple containing two empty bytes or bytearray objects, " +"followed by a copy of the original sequence." msgstr "" "Coupe la séquence à la dernière occurrence de *sep*, et renvoie un tuple de " "trois éléments contenant la partie précédent le séparateur, le séparateur " diff --git a/library/subprocess.po b/library/subprocess.po index cf13a8d8..c47fbf80 100644 --- a/library/subprocess.po +++ b/library/subprocess.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 18:13+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -97,18 +97,21 @@ msgstr "" "travers cette interface." #: ../Doc/library/subprocess.rst:55 +#, fuzzy msgid "" "If *capture_output* is true, stdout and stderr will be captured. When used, " "the internal :class:`Popen` object is automatically created with " "``stdout=PIPE`` and ``stderr=PIPE``. The *stdout* and *stderr* arguments may " -"not be supplied at the same time as *capture_output*." +"not be supplied at the same time as *capture_output*. If you wish to " +"capture and combine both streams into one, use ``stdout=PIPE`` and " +"``stderr=STDOUT`` instead of *capture_output*." msgstr "" "Si *capture_output* est vrai, la sortie et l'erreur standard sont capturées. " "Dans ce cas, l'objet interne :class:`Popen` est automatiquement créé avec " "les arguments ``stdout=PIPE`` et ``stderr=PIPE``. Les arguments *stdout* et " "*stderr* ne doivent pas être passés en même temps que *capture_output*." -#: ../Doc/library/subprocess.rst:60 +#: ../Doc/library/subprocess.rst:62 msgid "" "The *timeout* argument is passed to :meth:`Popen.communicate`. If the " "timeout expires, the child process will be killed and waited for. The :exc:" @@ -119,7 +122,7 @@ msgstr "" "expire, le processus enfant sera tué et attendu. Une exception :exc:" "`TimeoutExpired` sera levée une fois que le processus enfant se sera terminé." -#: ../Doc/library/subprocess.rst:65 +#: ../Doc/library/subprocess.rst:67 msgid "" "The *input* argument is passed to :meth:`Popen.communicate` and thus to the " "subprocess's stdin. If used it must be a byte sequence, or a string if " @@ -134,7 +137,7 @@ msgstr "" "utilisé, l'objet interne :class:`Popen` est automatiquement créé avec " "``stdin=PIPE``, et l'argument *stdin* ne doit donc pas être utilisé." -#: ../Doc/library/subprocess.rst:71 +#: ../Doc/library/subprocess.rst:73 msgid "" "If *check* is true, and the process exits with a non-zero exit code, a :exc:" "`CalledProcessError` exception will be raised. Attributes of that exception " @@ -146,7 +149,7 @@ msgstr "" "cette exception contiennent les arguments, le code de statut, et les sorties " "standard et d'erreur si elles ont été capturées." -#: ../Doc/library/subprocess.rst:76 +#: ../Doc/library/subprocess.rst:78 msgid "" "If *encoding* or *errors* are specified, or *text* is true, file objects for " "stdin, stdout and stderr are opened in text mode using the specified " @@ -161,7 +164,7 @@ msgstr "" "*text* et est fourni pour la rétrocompatibilité. Par défaut, les fichiers " "sont ouverts en mode binaire." -#: ../Doc/library/subprocess.rst:82 +#: ../Doc/library/subprocess.rst:84 msgid "" "If *env* is not ``None``, it must be a mapping that defines the environment " "variables for the new process; these are used instead of the default " @@ -173,15 +176,15 @@ msgstr "" "à la place du comportement par défaut qui est d'hériter de l'environnement " "du processus courant. Il est passé directement à :class:`Popen`." -#: ../Doc/library/subprocess.rst:87 +#: ../Doc/library/subprocess.rst:89 msgid "Examples::" msgstr "Exemples : ::" -#: ../Doc/library/subprocess.rst:105 +#: ../Doc/library/subprocess.rst:107 msgid "Added *encoding* and *errors* parameters" msgstr "Ajout des paramètres *encoding* et *errors*" -#: ../Doc/library/subprocess.rst:109 +#: ../Doc/library/subprocess.rst:111 msgid "" "Added the *text* parameter, as a more understandable alias of " "*universal_newlines*. Added the *capture_output* parameter." @@ -189,21 +192,21 @@ msgstr "" "Ajout du paramètre *text*, qui agit comme un alias plus compréhensible de " "*universal_newlines*. Ajout du paramètre *capture_output*." -#: ../Doc/library/subprocess.rst:114 +#: ../Doc/library/subprocess.rst:116 msgid "" "The return value from :func:`run`, representing a process that has finished." msgstr "" "La valeur de retour de :func:`run`, représentant un processus qui s'est " "terminé." -#: ../Doc/library/subprocess.rst:118 +#: ../Doc/library/subprocess.rst:120 msgid "" "The arguments used to launch the process. This may be a list or a string." msgstr "" "Les arguments utilisés pour lancer le processus. Cela peut être une liste ou " "une chaîne de caractères." -#: ../Doc/library/subprocess.rst:122 +#: ../Doc/library/subprocess.rst:124 msgid "" "Exit status of the child process. Typically, an exit status of 0 indicates " "that it ran successfully." @@ -211,7 +214,7 @@ msgstr "" "Le code de statut du processus fils. Typiquement, un code de statut de 0 " "indique qu'il s'est exécuté avec succès." -#: ../Doc/library/subprocess.rst:125 ../Doc/library/subprocess.rst:776 +#: ../Doc/library/subprocess.rst:127 ../Doc/library/subprocess.rst:778 msgid "" "A negative value ``-N`` indicates that the child was terminated by signal " "``N`` (POSIX only)." @@ -219,7 +222,7 @@ msgstr "" "Une valeur négative ``-N`` indique que le processus enfant a été terminé par " "un signal ``N`` (seulement sur les systèmes *POSIX*)." -#: ../Doc/library/subprocess.rst:130 +#: ../Doc/library/subprocess.rst:132 msgid "" "Captured stdout from the child process. A bytes sequence, or a string if :" "func:`run` was called with an encoding, errors, or text=True. ``None`` if " @@ -230,7 +233,7 @@ msgstr "" "*errors* ou *text=True*. Vaut ``None`` si la sortie standard n'était pas " "capturée." -#: ../Doc/library/subprocess.rst:134 +#: ../Doc/library/subprocess.rst:136 msgid "" "If you ran the process with ``stderr=subprocess.STDOUT``, stdout and stderr " "will be combined in this attribute, and :attr:`stderr` will be ``None``." @@ -239,7 +242,7 @@ msgstr "" "sorties standard et d'erreur seront combinées dans cet attribut, et :attr:" "`stderr` sera mis à ``None``." -#: ../Doc/library/subprocess.rst:140 +#: ../Doc/library/subprocess.rst:142 msgid "" "Captured stderr from the child process. A bytes sequence, or a string if :" "func:`run` was called with an encoding, errors, or text=True. ``None`` if " @@ -250,12 +253,12 @@ msgstr "" "*errors* ou *text=True*. Vaut ``None`` si la sortie d'erreur n'était pas " "capturée." -#: ../Doc/library/subprocess.rst:146 +#: ../Doc/library/subprocess.rst:148 msgid "If :attr:`returncode` is non-zero, raise a :exc:`CalledProcessError`." msgstr "" "Si :attr:`returncode` n'est pas nul, lève une :exc:`CalledProcessError`." -#: ../Doc/library/subprocess.rst:152 +#: ../Doc/library/subprocess.rst:154 msgid "" "Special value that can be used as the *stdin*, *stdout* or *stderr* argument " "to :class:`Popen` and indicates that the special file :data:`os.devnull` " @@ -265,7 +268,7 @@ msgstr "" "ou *stderr* de :class:`Popen` et qui indique que le fichier spécial :data:" "`os.devnull` sera utilisé." -#: ../Doc/library/subprocess.rst:161 +#: ../Doc/library/subprocess.rst:163 msgid "" "Special value that can be used as the *stdin*, *stdout* or *stderr* argument " "to :class:`Popen` and indicates that a pipe to the standard stream should be " @@ -275,7 +278,7 @@ msgstr "" "ou *stderr* de :class:`Popen` et qui indique qu'un tube vers le flux " "standard doit être ouvert. Surtout utile avec :meth:`Popen.communicate`." -#: ../Doc/library/subprocess.rst:168 +#: ../Doc/library/subprocess.rst:170 msgid "" "Special value that can be used as the *stderr* argument to :class:`Popen` " "and indicates that standard error should go into the same handle as standard " @@ -285,11 +288,11 @@ msgstr "" "`Popen` et qui indique que la sortie d'erreur doit être redirigée vers le " "même descripteur que la sortie standard." -#: ../Doc/library/subprocess.rst:175 +#: ../Doc/library/subprocess.rst:177 msgid "Base class for all other exceptions from this module." msgstr "Classe de base à toutes les autres exceptions du module." -#: ../Doc/library/subprocess.rst:182 +#: ../Doc/library/subprocess.rst:184 msgid "" "Subclass of :exc:`SubprocessError`, raised when a timeout expires while " "waiting for a child process." @@ -297,15 +300,15 @@ msgstr "" "Sous-classe de :exc:`SubprocessError`, levée quand un *timeout* expire " "pendant l'attente d'un processus enfant." -#: ../Doc/library/subprocess.rst:187 ../Doc/library/subprocess.rst:224 +#: ../Doc/library/subprocess.rst:189 ../Doc/library/subprocess.rst:226 msgid "Command that was used to spawn the child process." msgstr "La commande utilisée pour instancier le processus fils." -#: ../Doc/library/subprocess.rst:191 +#: ../Doc/library/subprocess.rst:193 msgid "Timeout in seconds." msgstr "Le *timeout* en secondes." -#: ../Doc/library/subprocess.rst:195 ../Doc/library/subprocess.rst:228 +#: ../Doc/library/subprocess.rst:197 ../Doc/library/subprocess.rst:230 msgid "" "Output of the child process if it was captured by :func:`run` or :func:" "`check_output`. Otherwise, ``None``." @@ -313,11 +316,11 @@ msgstr "" "La sortie du processus fils, si capturée par :func:`run` ou :func:" "`check_output`. Autrement, ``None``." -#: ../Doc/library/subprocess.rst:200 ../Doc/library/subprocess.rst:233 +#: ../Doc/library/subprocess.rst:202 ../Doc/library/subprocess.rst:235 msgid "Alias for output, for symmetry with :attr:`stderr`." msgstr "Alias pour *output*, afin d'avoir une symétrie avec :attr:`stderr`." -#: ../Doc/library/subprocess.rst:204 ../Doc/library/subprocess.rst:237 +#: ../Doc/library/subprocess.rst:206 ../Doc/library/subprocess.rst:239 msgid "" "Stderr output of the child process if it was captured by :func:`run`. " "Otherwise, ``None``." @@ -325,11 +328,11 @@ msgstr "" "La sortie d'erreur du processus fils, si capturée par :func:`run`. " "Autrement, ``None``." -#: ../Doc/library/subprocess.rst:209 ../Doc/library/subprocess.rst:240 +#: ../Doc/library/subprocess.rst:211 ../Doc/library/subprocess.rst:242 msgid "*stdout* and *stderr* attributes added" msgstr "Ajout des attributs *stdout* et *stderr*" -#: ../Doc/library/subprocess.rst:214 +#: ../Doc/library/subprocess.rst:216 msgid "" "Subclass of :exc:`SubprocessError`, raised when a process run by :func:" "`check_call` or :func:`check_output` returns a non-zero exit status." @@ -337,7 +340,7 @@ msgstr "" "Sous-classe de :exc:`SubprocessError`, levée quand un processus lancé par :" "func:`check_call` ou :func:`check_output` renvoie un code de statut non nul." -#: ../Doc/library/subprocess.rst:219 +#: ../Doc/library/subprocess.rst:221 msgid "" "Exit status of the child process. If the process exited due to a signal, " "this will be the negative signal number." @@ -345,11 +348,11 @@ msgstr "" "Code de statut du processus fils. Si le processus a été arrêté par un " "signal, le code sera négatif et correspondra à l'opposé du numéro de signal." -#: ../Doc/library/subprocess.rst:247 +#: ../Doc/library/subprocess.rst:249 msgid "Frequently Used Arguments" msgstr "Arguments fréquemment utilisés" -#: ../Doc/library/subprocess.rst:249 +#: ../Doc/library/subprocess.rst:251 msgid "" "To support a wide variety of use cases, the :class:`Popen` constructor (and " "the convenience functions) accept a large number of optional arguments. For " @@ -362,7 +365,7 @@ msgstr "" "peuvent sans problème être laissés à leurs valeurs par défaut. Les arguments " "les plus communément nécessaires sont :" -#: ../Doc/library/subprocess.rst:254 +#: ../Doc/library/subprocess.rst:256 msgid "" "*args* is required for all calls and should be a string, or a sequence of " "program arguments. Providing a sequence of arguments is generally preferred, " @@ -380,7 +383,7 @@ msgstr "" "dessous) soit la chaîne doit simplement contenir le nom du programme à " "exécuter sans spécifier d'arguments supplémentaires." -#: ../Doc/library/subprocess.rst:262 +#: ../Doc/library/subprocess.rst:264 msgid "" "*stdin*, *stdout* and *stderr* specify the executed program's standard " "input, standard output and standard error file handles, respectively. Valid " @@ -406,7 +409,7 @@ msgstr "" "fils doivent être capturées dans le même descripteur de fichier que la " "sortie standard." -#: ../Doc/library/subprocess.rst:276 +#: ../Doc/library/subprocess.rst:278 msgid "" "If *encoding* or *errors* are specified, or *text* (also known as " "*universal_newlines*) is true, the file objects *stdin*, *stdout* and " @@ -418,7 +421,7 @@ msgstr "" "seront ouverts en mode texte en utilisant les *encoding* et *errors* " "spécifiés à l'appel, ou les valeurs par défaut de :class:`io.TextIOWrapper`." -#: ../Doc/library/subprocess.rst:282 +#: ../Doc/library/subprocess.rst:284 msgid "" "For *stdin*, line ending characters ``'\\n'`` in the input will be converted " "to the default line separator :data:`os.linesep`. For *stdout* and *stderr*, " @@ -433,7 +436,7 @@ msgstr "" "de la classe :class:`io.TextIOWrapper` quand l'argument *newline* du " "constructeur est ``None``." -#: ../Doc/library/subprocess.rst:288 +#: ../Doc/library/subprocess.rst:290 msgid "" "If text mode is not used, *stdin*, *stdout* and *stderr* will be opened as " "binary streams. No encoding or line ending conversion is performed." @@ -442,15 +445,15 @@ msgstr "" "ouverts comme des flux binaires. Aucune conversion d'encodage ou de fins de " "ligne ne sera réalisée." -#: ../Doc/library/subprocess.rst:291 +#: ../Doc/library/subprocess.rst:293 msgid "Added *encoding* and *errors* parameters." msgstr "Ajout des paramètres *encoding* et *errors*." -#: ../Doc/library/subprocess.rst:294 +#: ../Doc/library/subprocess.rst:296 msgid "Added the *text* parameter as an alias for *universal_newlines*." msgstr "Ajout du paramètre *text* comme alias de *universal_newlines*." -#: ../Doc/library/subprocess.rst:299 +#: ../Doc/library/subprocess.rst:301 msgid "" "The newlines attribute of the file objects :attr:`Popen.stdin`, :attr:`Popen." "stdout` and :attr:`Popen.stderr` are not updated by the :meth:`Popen." @@ -460,7 +463,7 @@ msgstr "" "et :attr:`Popen.stderr` ne sont pas mis à jour par la méthode :meth:`Popen." "communicate`." -#: ../Doc/library/subprocess.rst:303 +#: ../Doc/library/subprocess.rst:305 msgid "" "If *shell* is ``True``, the specified command will be executed through the " "shell. This can be useful if you are using Python primarily for the " @@ -483,7 +486,7 @@ msgstr "" "`fnmatch`, :func:`os.walk`, :func:`os.path.expandvars`, :func:`os.path." "expanduser` et :mod:`shutil`)." -#: ../Doc/library/subprocess.rst:313 +#: ../Doc/library/subprocess.rst:315 msgid "" "When *universal_newlines* is ``True``, the class uses the encoding :func:" "`locale.getpreferredencoding(False) ` instead " @@ -495,13 +498,13 @@ msgstr "" "que ``locale.getpreferredencoding()``. Voir la classe :class:`io." "TextIOWrapper` pour plus d'informations sur ce changement." -#: ../Doc/library/subprocess.rst:321 ../Doc/library/subprocess.rst:405 +#: ../Doc/library/subprocess.rst:323 ../Doc/library/subprocess.rst:407 msgid "" "Read the `Security Considerations`_ section before using ``shell=True``." msgstr "" "Lire la section `Security Considerations`_ avant d'utiliser ``shell=True``." -#: ../Doc/library/subprocess.rst:323 +#: ../Doc/library/subprocess.rst:325 msgid "" "These options, along with all of the other options, are described in more " "detail in the :class:`Popen` constructor documentation." @@ -509,11 +512,11 @@ msgstr "" "Ces options, ainsi que toutes les autres, sont décrites plus en détails dans " "la documentation du constructeur de :class:`Popen`." -#: ../Doc/library/subprocess.rst:328 +#: ../Doc/library/subprocess.rst:330 msgid "Popen Constructor" msgstr "Constructeur de *Popen*" -#: ../Doc/library/subprocess.rst:330 +#: ../Doc/library/subprocess.rst:332 msgid "" "The underlying process creation and management in this module is handled by " "the :class:`Popen` class. It offers a lot of flexibility so that developers " @@ -525,7 +528,7 @@ msgstr "" "les développeurs soient capables de gérer les cas d'utilisation les moins " "communs, non couverts par les fonctions de convenance." -#: ../Doc/library/subprocess.rst:343 +#: ../Doc/library/subprocess.rst:345 msgid "" "Execute a child program in a new process. On POSIX, the class uses :meth:" "`os.execvp`-like behavior to execute the child program. On Windows, the " @@ -538,7 +541,7 @@ msgstr "" "Windows ``CreateProcess()``. Les arguments de :class:`Popen` sont les " "suivants." -#: ../Doc/library/subprocess.rst:348 +#: ../Doc/library/subprocess.rst:350 msgid "" "*args* should be a sequence of program arguments or else a single string. By " "default, the program to execute is the first item in *args* if *args* is a " @@ -554,7 +557,7 @@ msgstr "" "*executable* pour d'autres différences avec le comportement par défaut. " "Sans autre indication, il est recommandé de passer *args* comme une séquence." -#: ../Doc/library/subprocess.rst:355 +#: ../Doc/library/subprocess.rst:357 msgid "" "On POSIX, if *args* is a string, the string is interpreted as the name or " "path of the program to execute. However, this can only be done if not " @@ -564,7 +567,7 @@ msgstr "" "comme le nom ou le chemin du programme à exécuter. Cependant, cela ne peut " "être fait que si le programme est passé sans arguments." -#: ../Doc/library/subprocess.rst:361 +#: ../Doc/library/subprocess.rst:363 msgid "" ":meth:`shlex.split` can be useful when determining the correct tokenization " "for *args*, especially in complex cases::" @@ -572,7 +575,7 @@ msgstr "" ":meth:`shlex.split` peut être utilisée pour déterminer le découpage correct " "de *args*, spécifiquement dans les cas complexes : ::" -#: ../Doc/library/subprocess.rst:372 +#: ../Doc/library/subprocess.rst:374 msgid "" "Note in particular that options (such as *-input*) and arguments (such as " "*eggs.txt*) that are separated by whitespace in the shell go in separate " @@ -587,7 +590,7 @@ msgstr "" "fichiers contenant des espaces ou la commande *echo* montrée plus haut) " "forment des éléments uniques." -#: ../Doc/library/subprocess.rst:378 +#: ../Doc/library/subprocess.rst:380 msgid "" "On Windows, if *args* is a sequence, it will be converted to a string in a " "manner described in :ref:`converting-argument-sequence`. This is because " @@ -598,7 +601,7 @@ msgstr "" "sequence`. Cela fonctionne ainsi parce que la fonction ``CreateProcess()`` " "opère sur des chaînes." -#: ../Doc/library/subprocess.rst:382 +#: ../Doc/library/subprocess.rst:384 msgid "" "The *shell* argument (which defaults to ``False``) specifies whether to use " "the shell as the program to execute. If *shell* is ``True``, it is " @@ -609,7 +612,7 @@ msgstr "" "il est recommandé de passer *args* comme une chaîne de caractères plutôt " "qu'une séquence." -#: ../Doc/library/subprocess.rst:386 +#: ../Doc/library/subprocess.rst:388 msgid "" "On POSIX with ``shell=True``, the shell defaults to :file:`/bin/sh`. If " "*args* is a string, the string specifies the command to execute through the " @@ -631,7 +634,7 @@ msgstr "" "passer au *shell* lui-même. Pour ainsi dire, :class:`Popen` réalise " "l'équivalent de : ::" -#: ../Doc/library/subprocess.rst:397 +#: ../Doc/library/subprocess.rst:399 msgid "" "On Windows with ``shell=True``, the :envvar:`COMSPEC` environment variable " "specifies the default shell. The only time you need to specify " @@ -646,7 +649,7 @@ msgstr "" "ou :command:`copy`). Vous n'avez pas besoin de ``shell=True`` pour lancer " "un fichier batch ou un exécutable console." -#: ../Doc/library/subprocess.rst:407 +#: ../Doc/library/subprocess.rst:409 msgid "" "*bufsize* will be supplied as the corresponding argument to the :func:`open` " "function when creating the stdin/stdout/stderr pipe file objects:" @@ -655,7 +658,7 @@ msgstr "" "`open`, lors de la création des objets de fichiers pour les tubes *stdin*/" "*stdout*/*stderr* :" -#: ../Doc/library/subprocess.rst:411 +#: ../Doc/library/subprocess.rst:413 msgid "" ":const:`0` means unbuffered (read and write are one system call and can " "return short)" @@ -663,7 +666,7 @@ msgstr "" ":const:`0` indique de ne pas utiliser de tampon (les lectures et écritures " "sont des appels systèmes et peuvent renvoyer des données incomplètes) ;" -#: ../Doc/library/subprocess.rst:413 +#: ../Doc/library/subprocess.rst:415 msgid "" ":const:`1` means line buffered (only usable if ``universal_newlines=True`` i." "e., in a text mode)" @@ -671,13 +674,13 @@ msgstr "" ":const:`1` indique une mise en cache par ligne (utilisable seulement si " "``universal_newlines=True``, c'est à dire en mode texte) ;" -#: ../Doc/library/subprocess.rst:415 +#: ../Doc/library/subprocess.rst:417 msgid "any other positive value means use a buffer of approximately that size" msgstr "" "toutes les autres valeurs positives indiquent d'utiliser un tampon " "d'approximativement cette taille ;" -#: ../Doc/library/subprocess.rst:417 +#: ../Doc/library/subprocess.rst:419 msgid "" "negative bufsize (the default) means the system default of io." "DEFAULT_BUFFER_SIZE will be used." @@ -685,7 +688,7 @@ msgstr "" "un *bufsize* négatif (par défaut) indique au système d'utiliser la valeur " "par défaut *io.DEFAULT_BUFFER_SIZE*." -#: ../Doc/library/subprocess.rst:420 +#: ../Doc/library/subprocess.rst:422 msgid "" "*bufsize* now defaults to -1 to enable buffering by default to match the " "behavior that most code expects. In versions prior to Python 3.2.4 and " @@ -701,7 +704,7 @@ msgstr "" "correspondait pas au comportement de Python 2 attendu par la plupart des " "codes." -#: ../Doc/library/subprocess.rst:427 +#: ../Doc/library/subprocess.rst:429 msgid "" "The *executable* argument specifies a replacement program to execute. It " "is very seldom needed. When ``shell=False``, *executable* replaces the " @@ -724,7 +727,7 @@ msgstr "" "``shell=True``, sur les systèmes POSIX, l'argument *executable* précise le " "*shell* à utiliser plutôt que :file:`/bin/sh` par défaut." -#: ../Doc/library/subprocess.rst:437 +#: ../Doc/library/subprocess.rst:439 msgid "" "*stdin*, *stdout* and *stderr* specify the executed program's standard " "input, standard output and standard error file handles, respectively. Valid " @@ -750,7 +753,7 @@ msgstr "" "fils doivent être capturées dans le même descripteur de fichier que la " "sortie standard." -#: ../Doc/library/subprocess.rst:448 +#: ../Doc/library/subprocess.rst:450 msgid "" "If *preexec_fn* is set to a callable object, this object will be called in " "the child process just before the child is executed. (POSIX only)" @@ -758,7 +761,7 @@ msgstr "" "Si un objet appelable est passé à *preexec_fn*, cet objet sera appelé dans " "le processus enfant juste avant d'exécuter le programme. (POSIX seulement)" -#: ../Doc/library/subprocess.rst:454 +#: ../Doc/library/subprocess.rst:456 msgid "" "The *preexec_fn* parameter is not safe to use in the presence of threads in " "your application. The child process could deadlock before exec is called. " @@ -771,7 +774,7 @@ msgstr "" "ce paramètre, gardez son utilisation triviale ! Minimisez le nombre de " "bibliothèques que vous y appelez." -#: ../Doc/library/subprocess.rst:462 +#: ../Doc/library/subprocess.rst:464 msgid "" "If you need to modify the environment for the child use the *env* parameter " "rather than doing it in a *preexec_fn*. The *start_new_session* parameter " @@ -783,7 +786,7 @@ msgstr "" "*start_new_session* peut prendre la place de *preexec_fn* qui était " "autrefois communément utilisé pour appeler *os.setsid()* dans le fils." -#: ../Doc/library/subprocess.rst:467 +#: ../Doc/library/subprocess.rst:469 msgid "" "If *close_fds* is true, all file descriptors except :const:`0`, :const:`1` " "and :const:`2` will be closed before the child process is executed. " @@ -796,7 +799,7 @@ msgstr "" "fichiers se comportent conformément à leur option d'héritage décrite dans :" "ref:`fd_inheritance`." -#: ../Doc/library/subprocess.rst:472 +#: ../Doc/library/subprocess.rst:474 msgid "" "On Windows, if *close_fds* is true then no handles will be inherited by the " "child process unless explicitly passed in the ``handle_list`` element of :" @@ -807,7 +810,7 @@ msgstr "" "``handle_list`` de :attr:`STARTUPINFO.lpAttributeList`, ou par redirection " "des descripteurs standards." -#: ../Doc/library/subprocess.rst:476 +#: ../Doc/library/subprocess.rst:478 msgid "" "The default for *close_fds* was changed from :const:`False` to what is " "described above." @@ -815,7 +818,7 @@ msgstr "" "La valeur par défaut de *close_fds* n'est plus :const:`False`, comme décrit " "ci-dessus." -#: ../Doc/library/subprocess.rst:480 +#: ../Doc/library/subprocess.rst:482 msgid "" "On Windows the default for *close_fds* was changed from :const:`False` to :" "const:`True` when redirecting the standard handles. It's now possible to set " @@ -826,7 +829,7 @@ msgstr "" "Il est maintenant possible de donner la valeur :const:`True` à *close_fds* " "lors d'une redirection de descripteurs standards." -#: ../Doc/library/subprocess.rst:485 +#: ../Doc/library/subprocess.rst:487 msgid "" "*pass_fds* is an optional sequence of file descriptors to keep open between " "the parent and child. Providing any *pass_fds* forces *close_fds* to be :" @@ -836,11 +839,11 @@ msgstr "" "ouverts entre le parent et l'enfant. Fournir *pass_fds* force *close_fds* à " "valoir :const:`True`. (POSIX seulement)" -#: ../Doc/library/subprocess.rst:489 +#: ../Doc/library/subprocess.rst:491 msgid "The *pass_fds* parameter was added." msgstr "Ajout du paramètre *pass_fds*." -#: ../Doc/library/subprocess.rst:492 +#: ../Doc/library/subprocess.rst:494 msgid "" "If *cwd* is not ``None``, the function changes the working directory to " "*cwd* before executing the child. *cwd* can be a :class:`str` and :term:" @@ -854,11 +857,11 @@ msgstr "" "fonction recherche *executable* (ou le premier élément d'*args*) " "relativement à *cwd* si le chemin d'exécution est relatif." -#: ../Doc/library/subprocess.rst:498 +#: ../Doc/library/subprocess.rst:500 msgid "*cwd* parameter accepts a :term:`path-like object`." msgstr "le paramètre *cwd* accepte un :term:`path-like object`." -#: ../Doc/library/subprocess.rst:501 +#: ../Doc/library/subprocess.rst:503 msgid "" "If *restore_signals* is true (the default) all signals that Python has set " "to SIG_IGN are restored to SIG_DFL in the child process before the exec. " @@ -869,11 +872,11 @@ msgstr "" "l'appel à *exec*. Actuellement, cela inclut les signaux *SIGPIPE*, *SIGXFZ* " "et *SIGXFSZ*. (POSIX seulement)" -#: ../Doc/library/subprocess.rst:506 +#: ../Doc/library/subprocess.rst:508 msgid "*restore_signals* was added." msgstr "Ajout de *restore_signals*." -#: ../Doc/library/subprocess.rst:509 +#: ../Doc/library/subprocess.rst:511 msgid "" "If *start_new_session* is true the setsid() system call will be made in the " "child process prior to the execution of the subprocess. (POSIX only)" @@ -882,11 +885,11 @@ msgstr "" "dans le processus fils avant l'exécution du sous-processus. (POSIX " "seulement)" -#: ../Doc/library/subprocess.rst:512 +#: ../Doc/library/subprocess.rst:514 msgid "*start_new_session* was added." msgstr "Ajout de *start_new_session*." -#: ../Doc/library/subprocess.rst:515 +#: ../Doc/library/subprocess.rst:517 msgid "" "If *env* is not ``None``, it must be a mapping that defines the environment " "variables for the new process; these are used instead of the default " @@ -897,7 +900,7 @@ msgstr "" "à la place du comportement par défaut qui est d'hériter de l'environnement " "du processus courant." -#: ../Doc/library/subprocess.rst:521 +#: ../Doc/library/subprocess.rst:523 msgid "" "If specified, *env* must provide any variables required for the program to " "execute. On Windows, in order to run a `side-by-side assembly`_ the " @@ -908,7 +911,7 @@ msgstr "" "l'environnement *env* spécifié **doit** contenir une variable :envvar:" "`SystemRoot` valide." -#: ../Doc/library/subprocess.rst:527 +#: ../Doc/library/subprocess.rst:529 msgid "" "If *encoding* or *errors* are specified, or *text* is true, the file objects " "*stdin*, *stdout* and *stderr* are opened in text mode with the specified " @@ -924,16 +927,16 @@ msgstr "" "à *text*, est fourni pour la rétrocompatibilité . Autrement, ils sont " "ouverts comme des flux binaires." -#: ../Doc/library/subprocess.rst:533 +#: ../Doc/library/subprocess.rst:535 msgid "*encoding* and *errors* were added." msgstr "Ajout d'*encoding* et *errors*." -#: ../Doc/library/subprocess.rst:536 ../Doc/library/subprocess.rst:1104 +#: ../Doc/library/subprocess.rst:538 ../Doc/library/subprocess.rst:1106 msgid "*text* was added as a more readable alias for *universal_newlines*." msgstr "" "*text* a été ajouté comme un alias plus lisible de *universal_newlines*." -#: ../Doc/library/subprocess.rst:539 +#: ../Doc/library/subprocess.rst:541 msgid "" "If given, *startupinfo* will be a :class:`STARTUPINFO` object, which is " "passed to the underlying ``CreateProcess`` function. *creationflags*, if " @@ -943,55 +946,55 @@ msgstr "" "à la fonction ``CreateProcess`` inhérente. *creationflags*, si fourni, peut " "avoir l'une des valeurs suivantes :" -#: ../Doc/library/subprocess.rst:543 +#: ../Doc/library/subprocess.rst:545 msgid ":data:`CREATE_NEW_CONSOLE`" msgstr ":data:`CREATE_NEW_CONSOLE`" -#: ../Doc/library/subprocess.rst:544 +#: ../Doc/library/subprocess.rst:546 msgid ":data:`CREATE_NEW_PROCESS_GROUP`" msgstr ":data:`CREATE_NEW_PROCESS_GROUP`" -#: ../Doc/library/subprocess.rst:545 +#: ../Doc/library/subprocess.rst:547 msgid ":data:`ABOVE_NORMAL_PRIORITY_CLASS`" msgstr ":data:`ABOVE_NORMAL_PRIORITY_CLASS`" -#: ../Doc/library/subprocess.rst:546 +#: ../Doc/library/subprocess.rst:548 msgid ":data:`BELOW_NORMAL_PRIORITY_CLASS`" msgstr ":data:`BELOW_NORMAL_PRIORITY_CLASS`" -#: ../Doc/library/subprocess.rst:547 +#: ../Doc/library/subprocess.rst:549 msgid ":data:`HIGH_PRIORITY_CLASS`" msgstr ":data:`HIGH_PRIORITY_CLASS`" -#: ../Doc/library/subprocess.rst:548 +#: ../Doc/library/subprocess.rst:550 msgid ":data:`IDLE_PRIORITY_CLASS`" msgstr ":data:`IDLE_PRIORITY_CLASS`" -#: ../Doc/library/subprocess.rst:549 +#: ../Doc/library/subprocess.rst:551 msgid ":data:`NORMAL_PRIORITY_CLASS`" msgstr ":data:`NORMAL_PRIORITY_CLASS`" -#: ../Doc/library/subprocess.rst:550 +#: ../Doc/library/subprocess.rst:552 msgid ":data:`REALTIME_PRIORITY_CLASS`" msgstr ":data:`REALTIME_PRIORITY_CLASS`" -#: ../Doc/library/subprocess.rst:551 +#: ../Doc/library/subprocess.rst:553 msgid ":data:`CREATE_NO_WINDOW`" msgstr ":data:`CREATE_NO_WINDOW`" -#: ../Doc/library/subprocess.rst:552 +#: ../Doc/library/subprocess.rst:554 msgid ":data:`DETACHED_PROCESS`" msgstr ":data:`DETACHED_PROCESS`" -#: ../Doc/library/subprocess.rst:553 +#: ../Doc/library/subprocess.rst:555 msgid ":data:`CREATE_DEFAULT_ERROR_MODE`" msgstr ":data:`CREATE_DEFAULT_ERROR_MODE`" -#: ../Doc/library/subprocess.rst:554 +#: ../Doc/library/subprocess.rst:556 msgid ":data:`CREATE_BREAKAWAY_FROM_JOB`" msgstr ":data:`CREATE_BREAKAWAY_FROM_JOB`" -#: ../Doc/library/subprocess.rst:556 +#: ../Doc/library/subprocess.rst:558 msgid "" "Popen objects are supported as context managers via the :keyword:`with` " "statement: on exit, standard file descriptors are closed, and the process is " @@ -1001,11 +1004,11 @@ msgstr "" "l'instruction :keyword:`with` : à la sortie, les descripteurs de fichiers " "standards sont fermés, et le processus est attendu : ::" -#: ../Doc/library/subprocess.rst:563 +#: ../Doc/library/subprocess.rst:565 msgid "Added context manager support." msgstr "Ajout de la gestion des gestionnaires de contexte." -#: ../Doc/library/subprocess.rst:566 +#: ../Doc/library/subprocess.rst:568 msgid "" "Popen destructor now emits a :exc:`ResourceWarning` warning if the child " "process is still running." @@ -1013,11 +1016,11 @@ msgstr "" "Le destructeur de *Popen* émet maintenant un avertissement :exc:" "`ResourceWarning` si le processus fils est toujours en cours d'exécution." -#: ../Doc/library/subprocess.rst:572 +#: ../Doc/library/subprocess.rst:574 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/library/subprocess.rst:574 +#: ../Doc/library/subprocess.rst:576 msgid "" "Exceptions raised in the child process, before the new program has started " "to execute, will be re-raised in the parent." @@ -1025,7 +1028,7 @@ msgstr "" "Les exceptions levées dans le processus fils, avant que le nouveau programme " "ait commencé à s'exécuter, seront ré-levées dans le parent." -#: ../Doc/library/subprocess.rst:577 +#: ../Doc/library/subprocess.rst:579 msgid "" "The most common exception raised is :exc:`OSError`. This occurs, for " "example, when trying to execute a non-existent file. Applications should " @@ -1035,7 +1038,7 @@ msgstr "" "par exemple, si vous essayez d'exécuter un fichier inexistant. Les " "applications doivent se préparer à traiter des exceptions :exc:`OSError`." -#: ../Doc/library/subprocess.rst:581 +#: ../Doc/library/subprocess.rst:583 msgid "" "A :exc:`ValueError` will be raised if :class:`Popen` is called with invalid " "arguments." @@ -1043,7 +1046,7 @@ msgstr "" "Une :exc:`ValueError` sera levée si :class:`Popen` est appelé avec des " "arguments invalides." -#: ../Doc/library/subprocess.rst:584 +#: ../Doc/library/subprocess.rst:586 msgid "" ":func:`check_call` and :func:`check_output` will raise :exc:" "`CalledProcessError` if the called process returns a non-zero return code." @@ -1052,7 +1055,7 @@ msgstr "" "`CalledProcessError` si le processus appelé renvoie un code de retour non " "nul." -#: ../Doc/library/subprocess.rst:588 +#: ../Doc/library/subprocess.rst:590 msgid "" "All of the functions and methods that accept a *timeout* parameter, such as :" "func:`call` and :meth:`Popen.communicate` will raise :exc:`TimeoutExpired` " @@ -1062,22 +1065,22 @@ msgstr "" "telles que :func:`call` et :meth:`Popen.communicate` lèveront une :exc:" "`TImeoutExpired` si le *timeout* expire avant la fin du processus." -#: ../Doc/library/subprocess.rst:592 +#: ../Doc/library/subprocess.rst:594 msgid "" "Exceptions defined in this module all inherit from :exc:`SubprocessError`." msgstr "" "Toutes les exceptions définies dans ce module héritent de :exc:" "`SubprocessError`." -#: ../Doc/library/subprocess.rst:594 +#: ../Doc/library/subprocess.rst:596 msgid "The :exc:`SubprocessError` base class was added." msgstr "Ajout de la classe de base :exc:`SubprocessError`." -#: ../Doc/library/subprocess.rst:599 +#: ../Doc/library/subprocess.rst:601 msgid "Security Considerations" msgstr "Considérations de sécurité" -#: ../Doc/library/subprocess.rst:601 +#: ../Doc/library/subprocess.rst:603 msgid "" "Unlike some other popen functions, this implementation will never implicitly " "call a system shell. This means that all characters, including shell " @@ -1096,7 +1099,7 @@ msgstr "" "correctement pour éviter les vulnérabilités de type `shell injection " "`_." -#: ../Doc/library/subprocess.rst:610 +#: ../Doc/library/subprocess.rst:612 msgid "" "When using ``shell=True``, the :func:`shlex.quote` function can be used to " "properly escape whitespace and shell metacharacters in strings that are " @@ -1106,16 +1109,16 @@ msgstr "" "échapper proprement les espaces et métacaractères dans les chaînes qui " "seront utilisées pour construire les commandes *shell*." -#: ../Doc/library/subprocess.rst:616 +#: ../Doc/library/subprocess.rst:618 msgid "Popen Objects" msgstr "Objets *Popen*" -#: ../Doc/library/subprocess.rst:618 +#: ../Doc/library/subprocess.rst:620 msgid "Instances of the :class:`Popen` class have the following methods:" msgstr "" "Les instances de la classe :class:`Popen` possèdent les méthodes suivantes :" -#: ../Doc/library/subprocess.rst:623 +#: ../Doc/library/subprocess.rst:625 msgid "" "Check if child process has terminated. Set and return :attr:`~Popen." "returncode` attribute. Otherwise, returns ``None``." @@ -1123,7 +1126,7 @@ msgstr "" "Vérifie que le processus enfant s'est terminé. Modifie et renvoie " "l'attribut :attr:`~Popen.returncode`, sinon, renvoie ``None``." -#: ../Doc/library/subprocess.rst:629 +#: ../Doc/library/subprocess.rst:631 msgid "" "Wait for child process to terminate. Set and return :attr:`~Popen." "returncode` attribute." @@ -1131,7 +1134,7 @@ msgstr "" "Attend qu'un processus enfant se termine. Modifie l'attribut :attr:`~Popen." "returncode` et le renvoie." -#: ../Doc/library/subprocess.rst:632 +#: ../Doc/library/subprocess.rst:634 msgid "" "If the process does not terminate after *timeout* seconds, raise a :exc:" "`TimeoutExpired` exception. It is safe to catch this exception and retry " @@ -1141,7 +1144,7 @@ msgstr "" "*timeout*, une exception :exc:`TimeoutExpired` est levée. Cela ne pose " "aucun problème d'attraper cette exception et de réessayer d'attendre." -#: ../Doc/library/subprocess.rst:638 +#: ../Doc/library/subprocess.rst:640 msgid "" "This will deadlock when using ``stdout=PIPE`` or ``stderr=PIPE`` and the " "child process generates enough output to a pipe such that it blocks waiting " @@ -1155,7 +1158,7 @@ msgstr "" "Utilisez :meth:`Popen.communicate` pour éviter ce problème lors de " "l'utilisation de tubes." -#: ../Doc/library/subprocess.rst:645 +#: ../Doc/library/subprocess.rst:647 msgid "" "The function is implemented using a busy loop (non-blocking call and short " "sleeps). Use the :mod:`asyncio` module for an asynchronous wait: see :class:" @@ -1165,13 +1168,13 @@ msgstr "" "et *sleep* courts). Utilisez le module :mod:`asyncio` pour une attente " "asynchrone : voir :class:`asyncio.create_subprocess_exec`." -#: ../Doc/library/subprocess.rst:649 ../Doc/library/subprocess.rst:689 -#: ../Doc/library/subprocess.rst:1023 ../Doc/library/subprocess.rst:1051 -#: ../Doc/library/subprocess.rst:1095 +#: ../Doc/library/subprocess.rst:651 ../Doc/library/subprocess.rst:691 +#: ../Doc/library/subprocess.rst:1025 ../Doc/library/subprocess.rst:1053 +#: ../Doc/library/subprocess.rst:1097 msgid "*timeout* was added." msgstr "Ajout de *timeout*." -#: ../Doc/library/subprocess.rst:654 +#: ../Doc/library/subprocess.rst:656 msgid "" "Interact with process: Send data to stdin. Read data from stdout and " "stderr, until end-of-file is reached. Wait for process to terminate. The " @@ -1186,7 +1189,7 @@ msgstr "" "transmettre. Si les flux sont ouverts en mode texte, *input* doit être une " "chaîne de caractère. Autrement, ce doit être un objet *bytes*." -#: ../Doc/library/subprocess.rst:660 +#: ../Doc/library/subprocess.rst:662 msgid "" ":meth:`communicate` returns a tuple ``(stdout_data, stderr_data)``. The data " "will be strings if streams were opened in text mode; otherwise, bytes." @@ -1195,7 +1198,7 @@ msgstr "" "données seront des chaînes de caractères si les flux sont ouverts en mode " "texte, et des objets *bytes* dans le cas contraire." -#: ../Doc/library/subprocess.rst:664 +#: ../Doc/library/subprocess.rst:666 msgid "" "Note that if you want to send data to the process's stdin, you need to " "create the Popen object with ``stdin=PIPE``. Similarly, to get anything " @@ -1207,7 +1210,7 @@ msgstr "" "Similairement, pour obtenir autre chose que ``None`` dans le *tuple* " "résultant, vous devez aussi préciser ``stdout=PIPE`` et/ou ``stderr=PIPE``." -#: ../Doc/library/subprocess.rst:669 +#: ../Doc/library/subprocess.rst:671 msgid "" "If the process does not terminate after *timeout* seconds, a :exc:" "`TimeoutExpired` exception will be raised. Catching this exception and " @@ -1217,7 +1220,7 @@ msgstr "" "exc:`TimeoutExpired` est levée. Attraper cette exception et retenter la " "communication ne fait perdre aucune donnée de sortie." -#: ../Doc/library/subprocess.rst:673 +#: ../Doc/library/subprocess.rst:675 msgid "" "The child process is not killed if the timeout expires, so in order to " "cleanup properly a well-behaved application should kill the child process " @@ -1227,7 +1230,7 @@ msgstr "" "nettoyer proprement le tout, une application polie devrait tuer le processus " "fils et terminer la communication : ::" -#: ../Doc/library/subprocess.rst:686 +#: ../Doc/library/subprocess.rst:688 msgid "" "The data read is buffered in memory, so do not use this method if the data " "size is large or unlimited." @@ -1235,11 +1238,11 @@ msgstr "" "Les données lues sont mises en cache en mémoire, donc n'utilisez pas cette " "méthode si la taille des données est importante voire illimitée." -#: ../Doc/library/subprocess.rst:695 +#: ../Doc/library/subprocess.rst:697 msgid "Sends the signal *signal* to the child." msgstr "Envoie le signal *signal* au fils." -#: ../Doc/library/subprocess.rst:699 +#: ../Doc/library/subprocess.rst:701 msgid "" "On Windows, SIGTERM is an alias for :meth:`terminate`. CTRL_C_EVENT and " "CTRL_BREAK_EVENT can be sent to processes started with a *creationflags* " @@ -1249,7 +1252,7 @@ msgstr "" "et *CTRL_BREAK_EVENT* peuvent être envoyés aux processus démarrés avec un " "paramètre *creationflags* incluant `CREATE_NEW_PROCESS_GROUP`." -#: ../Doc/library/subprocess.rst:706 +#: ../Doc/library/subprocess.rst:708 msgid "" "Stop the child. On Posix OSs the method sends SIGTERM to the child. On " "Windows the Win32 API function :c:func:`TerminateProcess` is called to stop " @@ -1259,7 +1262,7 @@ msgstr "" "signal *SIGTERM* au fils. Sous Windows, la fonction :c:func:" "`TerminateProcess` de l'API *Win32* est appelée pour arrêter le fils." -#: ../Doc/library/subprocess.rst:713 +#: ../Doc/library/subprocess.rst:715 msgid "" "Kills the child. On Posix OSs the function sends SIGKILL to the child. On " "Windows :meth:`kill` is an alias for :meth:`terminate`." @@ -1268,11 +1271,11 @@ msgstr "" "*SIGKILL* au fils. Sous Windows, :meth:`kill` est un alias pour :meth:" "`terminate`." -#: ../Doc/library/subprocess.rst:717 +#: ../Doc/library/subprocess.rst:719 msgid "The following attributes are also available:" msgstr "Les attributs suivants sont aussi disponibles :" -#: ../Doc/library/subprocess.rst:721 +#: ../Doc/library/subprocess.rst:723 msgid "" "The *args* argument as it was passed to :class:`Popen` -- a sequence of " "program arguments or else a single string." @@ -1280,7 +1283,7 @@ msgstr "" "L'argument *args* tel que passé à :class:`Popen` -- une séquence d'arguments " "du programme ou une simple chaîne de caractères." -#: ../Doc/library/subprocess.rst:728 +#: ../Doc/library/subprocess.rst:730 msgid "" "If the *stdin* argument was :data:`PIPE`, this attribute is a writeable " "stream object as returned by :func:`open`. If the *encoding* or *errors* " @@ -1294,7 +1297,7 @@ msgstr "" "``True``, le flux est textuel, il est autrement binaire. Si l'argument " "*stdin* ne valait pas :data:`PIPE`, cet attribut est ``None``." -#: ../Doc/library/subprocess.rst:737 +#: ../Doc/library/subprocess.rst:739 msgid "" "If the *stdout* argument was :data:`PIPE`, this attribute is a readable " "stream object as returned by :func:`open`. Reading from the stream provides " @@ -1310,7 +1313,7 @@ msgstr "" "textuel, il est autrement binaire. Si l'argument *stdout* ne valait pas :" "data:`PIPE`, cet attribut est ``None``." -#: ../Doc/library/subprocess.rst:747 +#: ../Doc/library/subprocess.rst:749 msgid "" "If the *stderr* argument was :data:`PIPE`, this attribute is a readable " "stream object as returned by :func:`open`. Reading from the stream provides " @@ -1326,7 +1329,7 @@ msgstr "" "flux est textuel, il est autrement binaire. Si l'argument *stderr* ne valait " "pas :data:`PIPE`, cet attribut est ``None``." -#: ../Doc/library/subprocess.rst:756 +#: ../Doc/library/subprocess.rst:758 msgid "" "Use :meth:`~Popen.communicate` rather than :attr:`.stdin.write `, :attr:`.stdout.read ` or :attr:`.stderr.read ` pour empêcher les *deadlocks* dus au remplissage des tampons des " "tubes de l'OS et bloquant le processus enfant." -#: ../Doc/library/subprocess.rst:764 +#: ../Doc/library/subprocess.rst:766 msgid "The process ID of the child process." msgstr "L'identifiant de processus du processus enfant." -#: ../Doc/library/subprocess.rst:766 +#: ../Doc/library/subprocess.rst:768 msgid "" "Note that if you set the *shell* argument to ``True``, this is the process " "ID of the spawned shell." @@ -1350,7 +1353,7 @@ msgstr "" "Notez que si vous passez l'argument *shell* à ``True``, il s'agit alors de " "l'identifiant du *shell* instancié." -#: ../Doc/library/subprocess.rst:772 +#: ../Doc/library/subprocess.rst:774 msgid "" "The child return code, set by :meth:`poll` and :meth:`wait` (and indirectly " "by :meth:`communicate`). A ``None`` value indicates that the process hasn't " @@ -1360,11 +1363,11 @@ msgstr "" "indirectement par :meth:`communicate`). Une valeur ``None`` indique que le " "processus ne s'est pas encore terminé." -#: ../Doc/library/subprocess.rst:781 +#: ../Doc/library/subprocess.rst:783 msgid "Windows Popen Helpers" msgstr "Utilitaires *Popen* pour Windows" -#: ../Doc/library/subprocess.rst:783 +#: ../Doc/library/subprocess.rst:785 msgid "" "The :class:`STARTUPINFO` class and following constants are only available on " "Windows." @@ -1372,7 +1375,7 @@ msgstr "" "La classe :class:`STARTUPINFO` et les constantes suivantes sont seulement " "disponibles sous Windows." -#: ../Doc/library/subprocess.rst:789 +#: ../Doc/library/subprocess.rst:791 msgid "" "Partial support of the Windows `STARTUPINFO `__ structure is used for :class:`Popen` " @@ -1384,11 +1387,11 @@ msgstr "" "création d'un objet :class:`Popen`. Les attributs ci-dessous peuvent être " "passés en tant que paramètres *keyword-only*." -#: ../Doc/library/subprocess.rst:794 +#: ../Doc/library/subprocess.rst:796 msgid "Keyword-only argument support was added." msgstr "Ajout de la gestion des paramètres *keyword-only*." -#: ../Doc/library/subprocess.rst:799 +#: ../Doc/library/subprocess.rst:801 msgid "" "A bit field that determines whether certain :class:`STARTUPINFO` attributes " "are used when the process creates a window. ::" @@ -1396,7 +1399,7 @@ msgstr "" "Un champ de bits déterminant si certains attributs :class:`STARTUPINFO` sont " "utilisés quand le processus crée une fenêtre : ::" -#: ../Doc/library/subprocess.rst:807 +#: ../Doc/library/subprocess.rst:809 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESTDHANDLES`, this attribute is " "the standard input handle for the process. If :data:`STARTF_USESTDHANDLES` " @@ -1407,7 +1410,7 @@ msgstr "" "`STARTF_USESTDHANDLES` n'est pas spécifié, l'entrée standard par défaut est " "le tampon du clavier." -#: ../Doc/library/subprocess.rst:814 +#: ../Doc/library/subprocess.rst:816 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESTDHANDLES`, this attribute is " "the standard output handle for the process. Otherwise, this attribute is " @@ -1417,7 +1420,7 @@ msgstr "" "le descripteur de sortie standard du processus. Autrement, l'attribut est " "ignoré et la sortie standard par défaut est le tampon de la console." -#: ../Doc/library/subprocess.rst:821 +#: ../Doc/library/subprocess.rst:823 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESTDHANDLES`, this attribute is " "the standard error handle for the process. Otherwise, this attribute is " @@ -1427,7 +1430,7 @@ msgstr "" "le descripteur de sortie d'erreur du processus. Autrement, l'attribut est " "ignoré et la sortie d'erreur par défaut est le tampon de la console." -#: ../Doc/library/subprocess.rst:827 +#: ../Doc/library/subprocess.rst:829 msgid "" "If :attr:`dwFlags` specifies :data:`STARTF_USESHOWWINDOW`, this attribute " "can be any of the values that can be specified in the ``nCmdShow`` parameter " @@ -1441,7 +1444,7 @@ msgstr "" "ms633548(v=vs.85).aspx>`__, à l'exception de ``SW_SHOWDEFAULT``. Autrement, " "cet attribut est ignoré." -#: ../Doc/library/subprocess.rst:834 +#: ../Doc/library/subprocess.rst:836 msgid "" ":data:`SW_HIDE` is provided for this attribute. It is used when :class:" "`Popen` is called with ``shell=True``." @@ -1449,7 +1452,7 @@ msgstr "" ":data:`SW_HIDE` est fourni pour cet attribut. Il est utilisé quand :class:" "`Popen` est appelée avec ``shell=True``." -#: ../Doc/library/subprocess.rst:839 +#: ../Doc/library/subprocess.rst:841 msgid "" "A dictionary of additional attributes for process creation as given in " "``STARTUPINFOEX``, see `UpdateProcThreadAttribute `__ (ressource en anglais)." -#: ../Doc/library/subprocess.rst:843 +#: ../Doc/library/subprocess.rst:845 msgid "Supported attributes:" msgstr "Attributs gérés :" -#: ../Doc/library/subprocess.rst:861 +#: ../Doc/library/subprocess.rst:863 msgid "**handle_list**" msgstr "**handle_list**" -#: ../Doc/library/subprocess.rst:846 +#: ../Doc/library/subprocess.rst:848 msgid "" "Sequence of handles that will be inherited. *close_fds* must be true if non-" "empty." @@ -1476,7 +1479,7 @@ msgstr "" "Séquence des descripteurs qui hérités du parent. *close_fds* doit être vrai " "si la séquence n'est pas vide." -#: ../Doc/library/subprocess.rst:849 +#: ../Doc/library/subprocess.rst:851 msgid "" "The handles must be temporarily made inheritable by :func:`os." "set_handle_inheritable` when passed to the :class:`Popen` constructor, else :" @@ -1488,7 +1491,7 @@ msgstr "" "`Popen`, sinon :class:`OSError` est levée avec l'erreur Windows " "``ERROR_INVALID_PARAMETER`` (87)." -#: ../Doc/library/subprocess.rst:856 +#: ../Doc/library/subprocess.rst:858 msgid "" "In a multithreaded process, use caution to avoid leaking handles that are " "marked inheritable when combining this feature with concurrent calls to " @@ -1502,15 +1505,15 @@ msgstr "" "d'autres processus qui héritent de tous les descripteurs (telle que :func:" "`os.system`)." -#: ../Doc/library/subprocess.rst:866 +#: ../Doc/library/subprocess.rst:868 msgid "Windows Constants" msgstr "Constantes Windows" -#: ../Doc/library/subprocess.rst:868 +#: ../Doc/library/subprocess.rst:870 msgid "The :mod:`subprocess` module exposes the following constants." msgstr "Le module :mod:`subprocess` expose les constantes suivantes." -#: ../Doc/library/subprocess.rst:872 +#: ../Doc/library/subprocess.rst:874 msgid "" "The standard input device. Initially, this is the console input buffer, " "``CONIN$``." @@ -1518,7 +1521,7 @@ msgstr "" "Le périphérique d'entrée standard. Initialement, il s'agit du tampon de la " "console d'entrée, ``CONIN$``." -#: ../Doc/library/subprocess.rst:877 +#: ../Doc/library/subprocess.rst:879 msgid "" "The standard output device. Initially, this is the active console screen " "buffer, ``CONOUT$``." @@ -1526,7 +1529,7 @@ msgstr "" "Le périphérique de sortie standard. Initialement, il s'agit du tampon de " "l'écran de console actif, ``CONOUT$``." -#: ../Doc/library/subprocess.rst:882 +#: ../Doc/library/subprocess.rst:884 msgid "" "The standard error device. Initially, this is the active console screen " "buffer, ``CONOUT$``." @@ -1534,11 +1537,11 @@ msgstr "" "Le périphérique de sortie d'erreur. Initialement, il s'agit du tampon de " "l'écran de console actif, ``CONOUT$``." -#: ../Doc/library/subprocess.rst:887 +#: ../Doc/library/subprocess.rst:889 msgid "Hides the window. Another window will be activated." msgstr "Cache la fenêtre. Une autre fenêtre sera activée." -#: ../Doc/library/subprocess.rst:891 +#: ../Doc/library/subprocess.rst:893 msgid "" "Specifies that the :attr:`STARTUPINFO.hStdInput`, :attr:`STARTUPINFO." "hStdOutput`, and :attr:`STARTUPINFO.hStdError` attributes contain additional " @@ -1548,7 +1551,7 @@ msgstr "" "hStdOutput` et :attr:`STARTUPINFO.hStdError` contiennent des informations " "additionnelles." -#: ../Doc/library/subprocess.rst:897 +#: ../Doc/library/subprocess.rst:899 msgid "" "Specifies that the :attr:`STARTUPINFO.wShowWindow` attribute contains " "additional information." @@ -1556,7 +1559,7 @@ msgstr "" "Spécifie que l'attribut :attr:`STARTUPINFO.wShowWindow` contient des " "informations additionnelles." -#: ../Doc/library/subprocess.rst:902 +#: ../Doc/library/subprocess.rst:904 msgid "" "The new process has a new console, instead of inheriting its parent's " "console (the default)." @@ -1564,7 +1567,7 @@ msgstr "" "Le nouveau processus instancie une nouvelle console, plutôt que d'hériter de " "celle de son père (par défaut)." -#: ../Doc/library/subprocess.rst:907 +#: ../Doc/library/subprocess.rst:909 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "group will be created. This flag is necessary for using :func:`os.kill` on " @@ -1574,11 +1577,11 @@ msgstr "" "groupe de processus doit être créé. Cette option est nécessaire pour " "utiliser :func:`os.kill` sur le sous-processus." -#: ../Doc/library/subprocess.rst:911 +#: ../Doc/library/subprocess.rst:913 msgid "This flag is ignored if :data:`CREATE_NEW_CONSOLE` is specified." msgstr "L'option est ignorée si :data:`CREATE_NEW_CONSOLE` est spécifié." -#: ../Doc/library/subprocess.rst:915 +#: ../Doc/library/subprocess.rst:917 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an above average priority." @@ -1586,7 +1589,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité au dessus de la moyenne." -#: ../Doc/library/subprocess.rst:922 +#: ../Doc/library/subprocess.rst:924 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have a below average priority." @@ -1594,7 +1597,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité au dessous de la moyenne." -#: ../Doc/library/subprocess.rst:929 +#: ../Doc/library/subprocess.rst:931 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have a high priority." @@ -1602,7 +1605,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité haute." -#: ../Doc/library/subprocess.rst:936 +#: ../Doc/library/subprocess.rst:938 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an idle (lowest) priority." @@ -1610,7 +1613,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura la priorité la plus basse (inactif ou *idle*)." -#: ../Doc/library/subprocess.rst:943 +#: ../Doc/library/subprocess.rst:945 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have an normal priority. (default)" @@ -1618,7 +1621,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "aura une priorité normale (le défaut)." -#: ../Doc/library/subprocess.rst:950 +#: ../Doc/library/subprocess.rst:952 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will have realtime priority. You should almost never use " @@ -1635,7 +1638,7 @@ msgstr "" "« parlent » directement au matériel ou qui effectuent de brèves tâches " "nécessitant des interruptions limitées." -#: ../Doc/library/subprocess.rst:961 +#: ../Doc/library/subprocess.rst:963 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will not create a window." @@ -1643,7 +1646,7 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "ne créera pas une nouvelle fenêtre." -#: ../Doc/library/subprocess.rst:968 +#: ../Doc/library/subprocess.rst:970 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "will not inherit its parent's console. This value cannot be used with " @@ -1653,7 +1656,7 @@ msgstr "" "processus n'héritera pas de la console du processus parent. Cette valeur ne " "peut pas être utilisée avec CREATE_NEW_CONSOLE." -#: ../Doc/library/subprocess.rst:976 +#: ../Doc/library/subprocess.rst:978 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "does not inherit the error mode of the calling process. Instead, the new " @@ -1667,7 +1670,7 @@ msgstr "" "de multiples fils d'exécution qui s'exécutent avec les erreurs irréversibles " "désactivées." -#: ../Doc/library/subprocess.rst:986 +#: ../Doc/library/subprocess.rst:988 msgid "" "A :class:`Popen` ``creationflags`` parameter to specify that a new process " "is not associated with the job." @@ -1675,11 +1678,11 @@ msgstr "" "Paramètre ``creationflags`` de :class:`Popen` pour spécifier qu'un processus " "n'est pas associé au *job*." -#: ../Doc/library/subprocess.rst:994 +#: ../Doc/library/subprocess.rst:996 msgid "Older high-level API" msgstr "Ancienne interface (*API*) haut-niveau" -#: ../Doc/library/subprocess.rst:996 +#: ../Doc/library/subprocess.rst:998 msgid "" "Prior to Python 3.5, these three functions comprised the high level API to " "subprocess. You can now use :func:`run` in many cases, but lots of existing " @@ -1689,7 +1692,7 @@ msgstr "" "*subprocess*. Vous pouvez maintenant utiliser :func:`run` dans de nombreux " "cas, mais beaucoup de codes existant font appel à ces trois fonctions." -#: ../Doc/library/subprocess.rst:1002 +#: ../Doc/library/subprocess.rst:1004 msgid "" "Run the command described by *args*. Wait for command to complete, then " "return the :attr:`~Popen.returncode` attribute." @@ -1697,22 +1700,22 @@ msgstr "" "Lance la commande décrite par *args*, attend qu'elle se termine, et renvoie " "son attribut :attr:`~Popen.returncode`." -#: ../Doc/library/subprocess.rst:1005 ../Doc/library/subprocess.rst:1033 +#: ../Doc/library/subprocess.rst:1007 ../Doc/library/subprocess.rst:1035 msgid "" "Code needing to capture stdout or stderr should use :func:`run` instead:" msgstr "" "Le code qui a besoin de capturer *stdout* ou *stderr* doit plutôt utiliser :" "func:`run` :" -#: ../Doc/library/subprocess.rst:1007 +#: ../Doc/library/subprocess.rst:1009 msgid "run(...).returncode" msgstr "``run(...).returncode``" -#: ../Doc/library/subprocess.rst:1009 ../Doc/library/subprocess.rst:1037 +#: ../Doc/library/subprocess.rst:1011 ../Doc/library/subprocess.rst:1039 msgid "To suppress stdout or stderr, supply a value of :data:`DEVNULL`." msgstr "Pour supprimer *stdout* ou *stderr*, passez la valeur :data:`DEVNULL`." -#: ../Doc/library/subprocess.rst:1011 ../Doc/library/subprocess.rst:1039 +#: ../Doc/library/subprocess.rst:1013 ../Doc/library/subprocess.rst:1041 msgid "" "The arguments shown above are merely some common ones. The full function " "signature is the same as that of the :class:`Popen` constructor - this " @@ -1724,7 +1727,7 @@ msgstr "" "class:`Popen` : cette fonction passe tous les arguments fournis autre que " "*timeout* directement à travers cette interface." -#: ../Doc/library/subprocess.rst:1018 ../Doc/library/subprocess.rst:1046 +#: ../Doc/library/subprocess.rst:1020 ../Doc/library/subprocess.rst:1048 msgid "" "Do not use ``stdout=PIPE`` or ``stderr=PIPE`` with this function. The child " "process will block if it generates enough output to a pipe to fill up the OS " @@ -1734,7 +1737,7 @@ msgstr "" "processus enfant bloquera s'il génère assez de données pour remplir le " "tampon du tube de l'OS, puisque les tubes ne seront jamais lus." -#: ../Doc/library/subprocess.rst:1028 +#: ../Doc/library/subprocess.rst:1030 msgid "" "Run command with arguments. Wait for command to complete. If the return " "code was zero then return, otherwise raise :exc:`CalledProcessError`. The :" @@ -1746,15 +1749,15 @@ msgstr "" "`CalledProcessError` autrement. L'objet :exc:`CalledProcessError` contiendra " "le code de retour dans son attribut :attr:`~CalledProcessError.returncode`." -#: ../Doc/library/subprocess.rst:1035 +#: ../Doc/library/subprocess.rst:1037 msgid "run(..., check=True)" msgstr "``run(..., check=True)``" -#: ../Doc/library/subprocess.rst:1059 +#: ../Doc/library/subprocess.rst:1061 msgid "Run command with arguments and return its output." msgstr "Lance la commande avec les arguments et renvoie sa sortie." -#: ../Doc/library/subprocess.rst:1061 +#: ../Doc/library/subprocess.rst:1063 msgid "" "If the return code was non-zero it raises a :exc:`CalledProcessError`. The :" "exc:`CalledProcessError` object will have the return code in the :attr:" @@ -1766,11 +1769,11 @@ msgstr "" "de retour dans son attribut :attr:`~CalledProcessError.returncode`, et la " "sortie du programme dans son attribut :attr:`~CalledProcessError.output`." -#: ../Doc/library/subprocess.rst:1066 +#: ../Doc/library/subprocess.rst:1068 msgid "This is equivalent to::" msgstr "C’est équivalent à ::" -#: ../Doc/library/subprocess.rst:1070 +#: ../Doc/library/subprocess.rst:1072 msgid "" "The arguments shown above are merely some common ones. The full function " "signature is largely the same as that of :func:`run` - most arguments are " @@ -1784,7 +1787,7 @@ msgstr "" "Cependant, passer explicitement ``input=None`` pour hériter du descripteur " "d'entrée standard du parent n'est pas géré." -#: ../Doc/library/subprocess.rst:1076 +#: ../Doc/library/subprocess.rst:1078 msgid "" "By default, this function will return the data as encoded bytes. The actual " "encoding of the output data may depend on the command being invoked, so the " @@ -1795,7 +1798,7 @@ msgstr "" "invoquée, donc le décodage du texte devra souvent être géré au niveau de " "l'application." -#: ../Doc/library/subprocess.rst:1080 +#: ../Doc/library/subprocess.rst:1082 msgid "" "This behaviour may be overridden by setting *text*, *encoding*, *errors*, or " "*universal_newlines* to ``True`` as described in :ref:`frequently-used-" @@ -1805,7 +1808,7 @@ msgstr "" "ou *universal_newlines* à ``True`` comme décrit dans :ref:`frequently-used-" "arguments` et :func:`run`." -#: ../Doc/library/subprocess.rst:1084 +#: ../Doc/library/subprocess.rst:1086 msgid "" "To also capture standard error in the result, use ``stderr=subprocess." "STDOUT``::" @@ -1813,21 +1816,21 @@ msgstr "" "Pour capturer aussi la sortie d'erreur dans le résultat, utilisez " "``stderr=subprocess.STDOUT`` : ::" -#: ../Doc/library/subprocess.rst:1098 +#: ../Doc/library/subprocess.rst:1100 msgid "Support for the *input* keyword argument was added." msgstr "Ajout de la gestion de l'argument nommé *input*." -#: ../Doc/library/subprocess.rst:1101 +#: ../Doc/library/subprocess.rst:1103 msgid "*encoding* and *errors* were added. See :func:`run` for details." msgstr "" "Ajout d'*encoding* et *errors*. Consultez :func:`run` pour plus " "d'informations." -#: ../Doc/library/subprocess.rst:1111 +#: ../Doc/library/subprocess.rst:1113 msgid "Replacing Older Functions with the :mod:`subprocess` Module" msgstr "Remplacer les fonctions plus anciennes par le module :mod:`subprocess`" -#: ../Doc/library/subprocess.rst:1113 +#: ../Doc/library/subprocess.rst:1115 msgid "" "In this section, \"a becomes b\" means that b can be used as a replacement " "for a." @@ -1835,7 +1838,7 @@ msgstr "" "Dans cette section, « a devient b » signifie que b peut être utilisée en " "remplacement de a." -#: ../Doc/library/subprocess.rst:1117 +#: ../Doc/library/subprocess.rst:1119 msgid "" "All \"a\" functions in this section fail (more or less) silently if the " "executed program cannot be found; the \"b\" replacements raise :exc:" @@ -1845,7 +1848,7 @@ msgstr "" "silencieusement si le programme à exécuter ne peut être trouvé ; les " "fonctions « b » de remplacement lèvent à la place une :exc:`OSError`." -#: ../Doc/library/subprocess.rst:1121 +#: ../Doc/library/subprocess.rst:1123 msgid "" "In addition, the replacements using :func:`check_output` will fail with a :" "exc:`CalledProcessError` if the requested operation produces a non-zero " @@ -1857,7 +1860,7 @@ msgstr "" "retour non-nul. La sortie est toujours disponible par l'attribut :attr:" "`~CalledProcessError.output` de l'exception levée." -#: ../Doc/library/subprocess.rst:1126 +#: ../Doc/library/subprocess.rst:1128 msgid "" "In the following examples, we assume that the relevant functions have " "already been imported from the :mod:`subprocess` module." @@ -1865,20 +1868,20 @@ msgstr "" "Dans les exemples suivants, nous supposons que les fonctions utilisées ont " "déjà été importées depuis le module :mod:`subprocess`." -#: ../Doc/library/subprocess.rst:1131 +#: ../Doc/library/subprocess.rst:1133 msgid "Replacing /bin/sh shell backquote" msgstr "Remplacement des *backquotes* des *shells /bin/sh*" -#: ../Doc/library/subprocess.rst:1137 ../Doc/library/subprocess.rst:1148 -#: ../Doc/library/subprocess.rst:1165 +#: ../Doc/library/subprocess.rst:1139 ../Doc/library/subprocess.rst:1150 +#: ../Doc/library/subprocess.rst:1167 msgid "becomes::" msgstr "devient : ::" -#: ../Doc/library/subprocess.rst:1142 +#: ../Doc/library/subprocess.rst:1144 msgid "Replacing shell pipeline" msgstr "Remplacer les *pipes* du *shell*" -#: ../Doc/library/subprocess.rst:1155 +#: ../Doc/library/subprocess.rst:1157 msgid "" "The p1.stdout.close() call after starting the p2 is important in order for " "p1 to receive a SIGPIPE if p2 exits before p1." @@ -1886,7 +1889,7 @@ msgstr "" "L'appel à *p1.stdout.close()* après le démarrage de *p2* est important pour " "que *p1* reçoive un *SIGPIPE* si *p2* se termine avant lui." -#: ../Doc/library/subprocess.rst:1158 +#: ../Doc/library/subprocess.rst:1160 msgid "" "Alternatively, for trusted input, the shell's own pipeline support may still " "be used directly:" @@ -1894,56 +1897,56 @@ msgstr "" "Alternativement, pour des entrées fiables, la gestion des tubes du *shell* " "peut directement être utilisé :" -#: ../Doc/library/subprocess.rst:1171 +#: ../Doc/library/subprocess.rst:1173 msgid "Replacing :func:`os.system`" msgstr "Remplacer :func:`os.system`" -#: ../Doc/library/subprocess.rst:1179 +#: ../Doc/library/subprocess.rst:1181 msgid "Notes:" msgstr "Notes :" -#: ../Doc/library/subprocess.rst:1181 +#: ../Doc/library/subprocess.rst:1183 msgid "Calling the program through the shell is usually not required." msgstr "" "Appeler le programme à travers un *shell* n'est habituellement pas requis." -#: ../Doc/library/subprocess.rst:1183 +#: ../Doc/library/subprocess.rst:1185 msgid "A more realistic example would look like this::" msgstr "Un exemple plus réaliste ressemblerait à cela : ::" -#: ../Doc/library/subprocess.rst:1196 +#: ../Doc/library/subprocess.rst:1198 msgid "Replacing the :func:`os.spawn ` family" msgstr "Remplacer les fonctions de la famille :func:`os.spawn `" -#: ../Doc/library/subprocess.rst:1198 +#: ../Doc/library/subprocess.rst:1200 msgid "P_NOWAIT example::" msgstr "Exemple avec *P_NOWAIT* : ::" -#: ../Doc/library/subprocess.rst:1204 +#: ../Doc/library/subprocess.rst:1206 msgid "P_WAIT example::" msgstr "Exemple avec *P_WAIT* : ::" -#: ../Doc/library/subprocess.rst:1210 +#: ../Doc/library/subprocess.rst:1212 msgid "Vector example::" msgstr "Exemple avec un tableau : ::" -#: ../Doc/library/subprocess.rst:1216 +#: ../Doc/library/subprocess.rst:1218 msgid "Environment example::" msgstr "Exemple en passant un environnement : ::" -#: ../Doc/library/subprocess.rst:1225 +#: ../Doc/library/subprocess.rst:1227 msgid "Replacing :func:`os.popen`, :func:`os.popen2`, :func:`os.popen3`" msgstr "Remplacer :func:`os.popen`, :func:`os.popen2`, :func:`os.popen3`" -#: ../Doc/library/subprocess.rst:1255 +#: ../Doc/library/subprocess.rst:1257 msgid "Return code handling translates as follows::" msgstr "La gestion du code de retour se traduit comme suit : ::" -#: ../Doc/library/subprocess.rst:1271 +#: ../Doc/library/subprocess.rst:1273 msgid "Replacing functions from the :mod:`popen2` module" msgstr "Remplacer les fonctions du module :mod:`popen2`" -#: ../Doc/library/subprocess.rst:1275 +#: ../Doc/library/subprocess.rst:1277 msgid "" "If the cmd argument to popen2 functions is a string, the command is executed " "through /bin/sh. If it is a list, the command is directly executed." @@ -1952,7 +1955,7 @@ msgstr "" "la commande est exécutée à travers */bin/sh*. Si c'est une liste, la " "commande est directement exécutée." -#: ../Doc/library/subprocess.rst:1294 +#: ../Doc/library/subprocess.rst:1296 msgid "" ":class:`popen2.Popen3` and :class:`popen2.Popen4` basically work as :class:" "`subprocess.Popen`, except that:" @@ -1960,19 +1963,19 @@ msgstr "" ":class:`popen2.Popen3` et :class:`popen2.Popen4` fonctionnent basiquement " "comme :class:`subprocess.Popen`, excepté que :" -#: ../Doc/library/subprocess.rst:1297 +#: ../Doc/library/subprocess.rst:1299 msgid ":class:`Popen` raises an exception if the execution fails." msgstr ":class:`Popen` lève une exception si l'exécution échoue." -#: ../Doc/library/subprocess.rst:1299 +#: ../Doc/library/subprocess.rst:1301 msgid "The *capturestderr* argument is replaced with the *stderr* argument." msgstr "L'argument *capturestderr* est remplacé par *stderr*." -#: ../Doc/library/subprocess.rst:1301 +#: ../Doc/library/subprocess.rst:1303 msgid "``stdin=PIPE`` and ``stdout=PIPE`` must be specified." msgstr "``stdin=PIPE`` et ``stdout=PIPE`` doivent être spécifiés." -#: ../Doc/library/subprocess.rst:1303 +#: ../Doc/library/subprocess.rst:1305 msgid "" "popen2 closes all file descriptors by default, but you have to specify " "``close_fds=True`` with :class:`Popen` to guarantee this behavior on all " @@ -1982,11 +1985,11 @@ msgstr "" "spécifier ``close_fds=True`` avec :class:`Popen` pour garantir ce " "comportement sur toutes les plateformes ou les anciennes versions de Python." -#: ../Doc/library/subprocess.rst:1309 +#: ../Doc/library/subprocess.rst:1311 msgid "Legacy Shell Invocation Functions" msgstr "Remplacement des fonctions originales d'invocation du *shell*" -#: ../Doc/library/subprocess.rst:1311 +#: ../Doc/library/subprocess.rst:1313 msgid "" "This module also provides the following legacy functions from the 2.x " "``commands`` module. These operations implicitly invoke the system shell and " @@ -1998,13 +2001,13 @@ msgstr "" "*shell* du système et n'apportent aucune des garanties décrites ci-dessus " "par rapport à la sécurité ou la cohérence de la gestion des exceptions." -#: ../Doc/library/subprocess.rst:1318 +#: ../Doc/library/subprocess.rst:1320 msgid "Return ``(exitcode, output)`` of executing *cmd* in a shell." msgstr "" "Renvoie les valeurs ``(exitcode, output)`` de l'exécution de *cmd* dans un " "*shell*." -#: ../Doc/library/subprocess.rst:1320 +#: ../Doc/library/subprocess.rst:1322 msgid "" "Execute the string *cmd* in a shell with :meth:`Popen.check_output` and " "return a 2-tuple ``(exitcode, output)``. The locale encoding is used; see " @@ -2015,7 +2018,7 @@ msgstr "" "est utilisé, voir les notes de la section :ref:`frequently-used-arguments` " "pour plus de détails." -#: ../Doc/library/subprocess.rst:1324 +#: ../Doc/library/subprocess.rst:1326 msgid "" "A trailing newline is stripped from the output. The exit code for the " "command can be interpreted as the return code of subprocess. Example::" @@ -2024,15 +2027,15 @@ msgstr "" "supprimé. Le code de statut de la commande peut être interprété comme le " "code de retour de *subprocess*. Par exemple : ::" -#: ../Doc/library/subprocess.rst:1338 ../Doc/library/subprocess.rst:1358 +#: ../Doc/library/subprocess.rst:1340 ../Doc/library/subprocess.rst:1360 msgid ":ref:`Availability `: POSIX & Windows." msgstr ":ref:`Disponibilité ` : POSIX et Windows." -#: ../Doc/library/subprocess.rst:1339 +#: ../Doc/library/subprocess.rst:1341 msgid "Windows support was added." msgstr "Ajout de la gestion de Windows." -#: ../Doc/library/subprocess.rst:1342 +#: ../Doc/library/subprocess.rst:1344 msgid "" "The function now returns (exitcode, output) instead of (status, output) as " "it did in Python 3.3.3 and earlier. exitcode has the same value as :attr:" @@ -2042,13 +2045,13 @@ msgstr "" "output)`` comme dans les versions de Python 3.3.3 ou antérieures. " "*exitcode* vaut la même valeur que :attr:`~Popen.returncode`." -#: ../Doc/library/subprocess.rst:1349 +#: ../Doc/library/subprocess.rst:1351 msgid "Return output (stdout and stderr) of executing *cmd* in a shell." msgstr "" "Renvoie la sortie (standard et d'erreur) de l'exécution de *cmd* dans un " "*shell*." -#: ../Doc/library/subprocess.rst:1351 +#: ../Doc/library/subprocess.rst:1353 msgid "" "Like :func:`getstatusoutput`, except the exit code is ignored and the return " "value is a string containing the command's output. Example::" @@ -2057,20 +2060,20 @@ msgstr "" "ignoré et que la valeur de retour est une chaîne contenant la sortie de la " "commande. Exemple : ::" -#: ../Doc/library/subprocess.rst:1359 +#: ../Doc/library/subprocess.rst:1361 msgid "Windows support added" msgstr "Ajout de la gestion de Windows" -#: ../Doc/library/subprocess.rst:1364 +#: ../Doc/library/subprocess.rst:1366 msgid "Notes" msgstr "Notes" -#: ../Doc/library/subprocess.rst:1369 +#: ../Doc/library/subprocess.rst:1371 msgid "Converting an argument sequence to a string on Windows" msgstr "" "Convertir une séquence d'arguments vers une chaîne de caractères sous Windows" -#: ../Doc/library/subprocess.rst:1371 +#: ../Doc/library/subprocess.rst:1373 msgid "" "On Windows, an *args* sequence is converted to a string that can be parsed " "using the following rules (which correspond to the rules used by the MS C " @@ -2080,14 +2083,14 @@ msgstr "" "être analysée avec les règles suivantes (qui correspondent aux règles " "utilisées par l'environnement *MS C*) :" -#: ../Doc/library/subprocess.rst:1375 +#: ../Doc/library/subprocess.rst:1377 msgid "" "Arguments are delimited by white space, which is either a space or a tab." msgstr "" "Les arguments sont délimités par des espacements, qui peuvent être des " "espaces ou des tabulations." -#: ../Doc/library/subprocess.rst:1378 +#: ../Doc/library/subprocess.rst:1380 msgid "" "A string surrounded by double quotation marks is interpreted as a single " "argument, regardless of white space contained within. A quoted string can " @@ -2097,7 +2100,7 @@ msgstr "" "seul, qu'elle contienne ou non des espacements. Une chaîne entre guillemets " "peut être intégrée dans un argument." -#: ../Doc/library/subprocess.rst:1383 +#: ../Doc/library/subprocess.rst:1385 msgid "" "A double quotation mark preceded by a backslash is interpreted as a literal " "double quotation mark." @@ -2105,7 +2108,7 @@ msgstr "" "Un guillemet double précédé d'un *backslash* est interprété comme un " "guillemet double littéral." -#: ../Doc/library/subprocess.rst:1386 +#: ../Doc/library/subprocess.rst:1388 msgid "" "Backslashes are interpreted literally, unless they immediately precede a " "double quotation mark." @@ -2113,7 +2116,7 @@ msgstr "" "Les *backslashs* sont interprétés littéralement, à moins qu'ils précèdent " "immédiatement un guillemet double." -#: ../Doc/library/subprocess.rst:1389 +#: ../Doc/library/subprocess.rst:1391 msgid "" "If backslashes immediately precede a double quotation mark, every pair of " "backslashes is interpreted as a literal backslash. If the number of " @@ -2125,11 +2128,11 @@ msgstr "" "de *backslashs* est impair, le dernier *backslash* échappe le prochain " "guillemet double comme décrit en règle 3." -#: ../Doc/library/subprocess.rst:1398 +#: ../Doc/library/subprocess.rst:1400 msgid ":mod:`shlex`" msgstr ":mod:`shlex`" -#: ../Doc/library/subprocess.rst:1399 +#: ../Doc/library/subprocess.rst:1401 msgid "Module which provides function to parse and escape command lines." msgstr "" "Module qui fournit des fonctions pour analyser et échapper les lignes de " diff --git a/library/sys.po b/library/sys.po index f9ec0581..9a9c645c 100644 --- a/library/sys.po +++ b/library/sys.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 21:41+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -2178,11 +2178,13 @@ msgstr "" "d'exploitation. L'interpréteur n'a pas son propre ordonnanceur." #: ../Doc/library/sys.rst:1172 +#, fuzzy msgid "" "Set the system's trace function, which allows you to implement a Python " "source code debugger in Python. The function is thread-specific; for a " -"debugger to support multiple threads, it must be registered using :func:" -"`settrace` for each thread being debugged." +"debugger to support multiple threads, it must register a trace function " +"using :func:`settrace` for each thread being debugged or use :func:" +"`threading.settrace`." msgstr "" "Définit la fonction de traçage du système, qui vous permet d'implémenter un " "débogueur de code source Python en Python. Cette fonction est locale au fil " diff --git a/library/textwrap.po b/library/textwrap.po index e107c2a6..7d43f90e 100644 --- a/library/textwrap.po +++ b/library/textwrap.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-17 21:38+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-12 15:04+0200\n" +"Last-Translator: \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: \n" "X-Generator: Poedit 2.0.6\n" #: ../Doc/library/textwrap.rst:2 @@ -354,7 +354,7 @@ msgstr "et \"Spot.\" dans ::" msgid ":attr:`fix_sentence_endings` is false by default." msgstr ":attr:`fix_sentence_endings` est *False* par défaut." -#: ../Doc/library/textwrap.rst:238 ````'' +#: ../Doc/library/textwrap.rst:238 msgid "" "Since the sentence detection algorithm relies on ``string.lowercase`` for " "the definition of \"lowercase letter,\" and a convention of using two spaces " diff --git a/library/threading.po b/library/threading.po index 9415fa55..dcb1908d 100644 --- a/library/threading.po +++ b/library/threading.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-21 09:48+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-12 00:15+0200\n" +"Last-Translator: Mathieu Dupuy \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: Mathieu Dupuy \n" "X-Generator: Poedit 2.2.1\n" #: ../Doc/library/threading.rst:2 @@ -468,10 +468,11 @@ msgid "Method representing the thread's activity." msgstr "Méthode représentant l'activité du fil d'exécution." #: ../Doc/library/threading.rst:251 +#, fuzzy msgid "" "You may override this method in a subclass. The standard :meth:`run` method " "invokes the callable object passed to the object's constructor as the " -"*target* argument, if any, with sequential and keyword arguments taken from " +"*target* argument, if any, with positional and keyword arguments taken from " "the *args* and *kwargs* arguments, respectively." msgstr "" "Vous pouvez remplacer cette méthode dans une sous-classe. La méthode " diff --git a/library/time.po b/library/time.po index df6d6927..ea48f346 100644 --- a/library/time.po +++ b/library/time.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-02-18 14:22+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-27 13:21+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -286,7 +286,7 @@ msgstr "" "`QueryPerformanceCounter`. La résolution est généralement meilleure qu'une " "microseconde." -#: ../Doc/library/time.rst:156 +#: ../Doc/library/time.rst:159 msgid "" "The behaviour of this function depends on the platform: use :func:" "`perf_counter` or :func:`process_time` instead, depending on your " diff --git a/library/timeit.po b/library/timeit.po index ad236b30..4b5ddf79 100644 --- a/library/timeit.po +++ b/library/timeit.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -45,22 +45,26 @@ msgstr "" msgid "This can be achieved from the :ref:`python-interface` with::" msgstr "" -#: ../Doc/library/timeit.rst:48 +#: ../Doc/library/timeit.rst:47 +msgid "A callable can also be passed from the :ref:`python-interface`::" +msgstr "" + +#: ../Doc/library/timeit.rst:52 msgid "" -"Note however that :mod:`timeit` will automatically determine the number of " +"Note however that :func:`.timeit` will automatically determine the number of " "repetitions only when the command-line interface is used. In the :ref:" "`timeit-examples` section you can find more advanced examples." msgstr "" -#: ../Doc/library/timeit.rst:56 +#: ../Doc/library/timeit.rst:60 msgid "Python Interface" msgstr "" -#: ../Doc/library/timeit.rst:58 +#: ../Doc/library/timeit.rst:62 msgid "The module defines three convenience functions and a public class:" msgstr "" -#: ../Doc/library/timeit.rst:63 +#: ../Doc/library/timeit.rst:67 msgid "" "Create a :class:`Timer` instance with the given statement, *setup* code and " "*timer* function and run its :meth:`.timeit` method with *number* " @@ -68,12 +72,12 @@ msgid "" "to execute the code." msgstr "" -#: ../Doc/library/timeit.rst:68 ../Doc/library/timeit.rst:79 -#: ../Doc/library/timeit.rst:116 +#: ../Doc/library/timeit.rst:72 ../Doc/library/timeit.rst:83 +#: ../Doc/library/timeit.rst:120 msgid "The optional *globals* parameter was added." msgstr "" -#: ../Doc/library/timeit.rst:74 +#: ../Doc/library/timeit.rst:78 msgid "" "Create a :class:`Timer` instance with the given statement, *setup* code and " "*timer* function and run its :meth:`.repeat` method with the given *repeat* " @@ -81,23 +85,23 @@ msgid "" "namespace in which to execute the code." msgstr "" -#: ../Doc/library/timeit.rst:82 ../Doc/library/timeit.rst:177 +#: ../Doc/library/timeit.rst:86 ../Doc/library/timeit.rst:181 msgid "Default value of *repeat* changed from 3 to 5." msgstr "" -#: ../Doc/library/timeit.rst:87 +#: ../Doc/library/timeit.rst:91 msgid "The default timer, which is always :func:`time.perf_counter`." msgstr "" -#: ../Doc/library/timeit.rst:89 +#: ../Doc/library/timeit.rst:93 msgid ":func:`time.perf_counter` is now the default timer." msgstr "" -#: ../Doc/library/timeit.rst:95 +#: ../Doc/library/timeit.rst:99 msgid "Class for timing execution speed of small code snippets." msgstr "" -#: ../Doc/library/timeit.rst:97 +#: ../Doc/library/timeit.rst:101 msgid "" "The constructor takes a statement to be timed, an additional statement used " "for setup, and a timer function. Both statements default to ``'pass'``; the " @@ -108,20 +112,20 @@ msgid "" "controlled by passing a namespace to *globals*." msgstr "" -#: ../Doc/library/timeit.rst:105 +#: ../Doc/library/timeit.rst:109 msgid "" "To measure the execution time of the first statement, use the :meth:`." "timeit` method. The :meth:`.repeat` and :meth:`.autorange` methods are " "convenience methods to call :meth:`.timeit` multiple times." msgstr "" -#: ../Doc/library/timeit.rst:109 +#: ../Doc/library/timeit.rst:113 msgid "" "The execution time of *setup* is excluded from the overall timed execution " "run." msgstr "" -#: ../Doc/library/timeit.rst:111 +#: ../Doc/library/timeit.rst:115 msgid "" "The *stmt* and *setup* parameters can also take objects that are callable " "without arguments. This will embed calls to them in a timer function that " @@ -129,7 +133,7 @@ msgid "" "a little larger in this case because of the extra function calls." msgstr "" -#: ../Doc/library/timeit.rst:121 +#: ../Doc/library/timeit.rst:125 msgid "" "Time *number* executions of the main statement. This executes the setup " "statement once, and then returns the time it takes to execute the main " @@ -139,7 +143,7 @@ msgid "" "to the constructor." msgstr "" -#: ../Doc/library/timeit.rst:130 +#: ../Doc/library/timeit.rst:134 msgid "" "By default, :meth:`.timeit` temporarily turns off :term:`garbage collection` " "during the timing. The advantage of this approach is that it makes " @@ -149,11 +153,11 @@ msgid "" "example::" msgstr "" -#: ../Doc/library/timeit.rst:142 +#: ../Doc/library/timeit.rst:146 msgid "Automatically determine how many times to call :meth:`.timeit`." msgstr "" -#: ../Doc/library/timeit.rst:144 +#: ../Doc/library/timeit.rst:148 msgid "" "This is a convenience function that calls :meth:`.timeit` repeatedly so that " "the total time >= 0.2 second, returning the eventual (number of loops, time " @@ -162,17 +166,17 @@ msgid "" "at least 0.2 second." msgstr "" -#: ../Doc/library/timeit.rst:150 +#: ../Doc/library/timeit.rst:154 msgid "" "If *callback* is given and is not ``None``, it will be called after each " "trial with two arguments: ``callback(number, time_taken)``." msgstr "" -#: ../Doc/library/timeit.rst:158 +#: ../Doc/library/timeit.rst:162 msgid "Call :meth:`.timeit` a few times." msgstr "" -#: ../Doc/library/timeit.rst:160 +#: ../Doc/library/timeit.rst:164 msgid "" "This is a convenience function that calls the :meth:`.timeit` repeatedly, " "returning a list of results. The first argument specifies how many times to " @@ -180,7 +184,7 @@ msgid "" "for :meth:`.timeit`." msgstr "" -#: ../Doc/library/timeit.rst:167 +#: ../Doc/library/timeit.rst:171 msgid "" "It's tempting to calculate mean and standard deviation from the result " "vector and report these. However, this is not very useful. In a typical " @@ -192,66 +196,66 @@ msgid "" "entire vector and apply common sense rather than statistics." msgstr "" -#: ../Doc/library/timeit.rst:183 +#: ../Doc/library/timeit.rst:187 msgid "Helper to print a traceback from the timed code." msgstr "" -#: ../Doc/library/timeit.rst:185 +#: ../Doc/library/timeit.rst:189 msgid "Typical use::" msgstr "" -#: ../Doc/library/timeit.rst:193 +#: ../Doc/library/timeit.rst:197 msgid "" "The advantage over the standard traceback is that source lines in the " "compiled template will be displayed. The optional *file* argument directs " "where the traceback is sent; it defaults to :data:`sys.stderr`." msgstr "" -#: ../Doc/library/timeit.rst:201 +#: ../Doc/library/timeit.rst:205 msgid "Command-Line Interface" msgstr "Interface en ligne de commande" -#: ../Doc/library/timeit.rst:203 +#: ../Doc/library/timeit.rst:207 msgid "" "When called as a program from the command line, the following form is used::" msgstr "" -#: ../Doc/library/timeit.rst:207 +#: ../Doc/library/timeit.rst:211 msgid "Where the following options are understood:" msgstr "" -#: ../Doc/library/timeit.rst:213 +#: ../Doc/library/timeit.rst:217 msgid "how many times to execute 'statement'" msgstr "" -#: ../Doc/library/timeit.rst:217 +#: ../Doc/library/timeit.rst:221 msgid "how many times to repeat the timer (default 5)" msgstr "" -#: ../Doc/library/timeit.rst:221 +#: ../Doc/library/timeit.rst:225 msgid "statement to be executed once initially (default ``pass``)" msgstr "" -#: ../Doc/library/timeit.rst:225 +#: ../Doc/library/timeit.rst:229 msgid "" "measure process time, not wallclock time, using :func:`time.process_time` " "instead of :func:`time.perf_counter`, which is the default" msgstr "" -#: ../Doc/library/timeit.rst:232 +#: ../Doc/library/timeit.rst:236 msgid "" "specify a time unit for timer output; can select nsec, usec, msec, or sec" msgstr "" -#: ../Doc/library/timeit.rst:238 +#: ../Doc/library/timeit.rst:242 msgid "print raw timing results; repeat for more digits precision" msgstr "" -#: ../Doc/library/timeit.rst:242 +#: ../Doc/library/timeit.rst:246 msgid "print a short usage message and exit" msgstr "" -#: ../Doc/library/timeit.rst:244 +#: ../Doc/library/timeit.rst:248 msgid "" "A multi-line statement may be given by specifying each line as a separate " "statement argument; indented lines are possible by enclosing an argument in " @@ -259,13 +263,13 @@ msgid "" "similarly." msgstr "" -#: ../Doc/library/timeit.rst:249 +#: ../Doc/library/timeit.rst:253 msgid "" "If :option:`-n` is not given, a suitable number of loops is calculated by " "trying successive powers of 10 until the total time is at least 0.2 seconds." msgstr "" -#: ../Doc/library/timeit.rst:252 +#: ../Doc/library/timeit.rst:256 msgid "" ":func:`default_timer` measurements can be affected by other programs running " "on the same machine, so the best thing to do when accurate timing is " @@ -275,7 +279,7 @@ msgid "" "measure CPU time." msgstr "" -#: ../Doc/library/timeit.rst:260 +#: ../Doc/library/timeit.rst:264 msgid "" "There is a certain baseline overhead associated with executing a pass " "statement. The code here doesn't try to hide it, but you should be aware of " @@ -283,34 +287,34 @@ msgid "" "arguments, and it might differ between Python versions." msgstr "" -#: ../Doc/library/timeit.rst:269 +#: ../Doc/library/timeit.rst:273 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/timeit.rst:271 +#: ../Doc/library/timeit.rst:275 msgid "" "It is possible to provide a setup statement that is executed only once at " "the beginning:" msgstr "" -#: ../Doc/library/timeit.rst:288 +#: ../Doc/library/timeit.rst:292 msgid "The same can be done using the :class:`Timer` class and its methods::" msgstr "" -#: ../Doc/library/timeit.rst:298 +#: ../Doc/library/timeit.rst:302 msgid "" "The following examples show how to time expressions that contain multiple " "lines. Here we compare the cost of using :func:`hasattr` vs. :keyword:`try`/:" "keyword:`except` to test for missing and present object attributes:" msgstr "" -#: ../Doc/library/timeit.rst:344 +#: ../Doc/library/timeit.rst:348 msgid "" "To give the :mod:`timeit` module access to functions you define, you can " "pass a *setup* parameter which contains an import statement::" msgstr "" -#: ../Doc/library/timeit.rst:355 +#: ../Doc/library/timeit.rst:359 msgid "" "Another option is to pass :func:`globals` to the *globals* parameter, which " "will cause the code to be executed within your current global namespace. " diff --git a/library/typing.po b/library/typing.po index 7627eaf1..d5454d85 100644 --- a/library/typing.po +++ b/library/typing.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -802,74 +802,91 @@ msgid "" msgstr "" #: ../Doc/library/typing.rst:946 -msgid "Special type indicating an unconstrained type." +msgid "Decorator to mark a class or function to be unavailable at runtime." msgstr "" #: ../Doc/library/typing.rst:948 +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 " +"returns an instance of a private class::" +msgstr "" + +#: ../Doc/library/typing.rst:959 +msgid "" +"Note that returning instances of private classes is not recommended. It is " +"usually preferable to make such classes public." +msgstr "" + +#: ../Doc/library/typing.rst:964 +msgid "Special type indicating an unconstrained type." +msgstr "" + +#: ../Doc/library/typing.rst:966 msgid "Every type is compatible with :data:`Any`." msgstr "" -#: ../Doc/library/typing.rst:949 +#: ../Doc/library/typing.rst:967 msgid ":data:`Any` is compatible with every type." msgstr "" -#: ../Doc/library/typing.rst:953 +#: ../Doc/library/typing.rst:971 msgid "Special type indicating that a function never returns. For example::" msgstr "" -#: ../Doc/library/typing.rst:965 +#: ../Doc/library/typing.rst:983 msgid "Union type; ``Union[X, Y]`` means either X or Y." msgstr "" -#: ../Doc/library/typing.rst:967 +#: ../Doc/library/typing.rst:985 msgid "To define a union, use e.g. ``Union[int, str]``. Details:" msgstr "" -#: ../Doc/library/typing.rst:969 +#: ../Doc/library/typing.rst:987 msgid "The arguments must be types and there must be at least one." msgstr "" -#: ../Doc/library/typing.rst:971 +#: ../Doc/library/typing.rst:989 msgid "Unions of unions are flattened, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:975 +#: ../Doc/library/typing.rst:993 msgid "Unions of a single argument vanish, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:979 +#: ../Doc/library/typing.rst:997 msgid "Redundant arguments are skipped, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:983 +#: ../Doc/library/typing.rst:1001 msgid "When comparing unions, the argument order is ignored, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:987 +#: ../Doc/library/typing.rst:1005 msgid "You cannot subclass or instantiate a union." msgstr "" -#: ../Doc/library/typing.rst:989 +#: ../Doc/library/typing.rst:1007 msgid "You cannot write ``Union[X][Y]``." msgstr "" -#: ../Doc/library/typing.rst:991 +#: ../Doc/library/typing.rst:1009 msgid "You can use ``Optional[X]`` as a shorthand for ``Union[X, None]``." msgstr "" -#: ../Doc/library/typing.rst:993 +#: ../Doc/library/typing.rst:1011 msgid "Don't remove explicit subclasses from unions at runtime." msgstr "" -#: ../Doc/library/typing.rst:998 +#: ../Doc/library/typing.rst:1016 msgid "Optional type." msgstr "" -#: ../Doc/library/typing.rst:1000 +#: ../Doc/library/typing.rst:1018 msgid "``Optional[X]`` is equivalent to ``Union[X, None]``." msgstr "" -#: ../Doc/library/typing.rst:1002 +#: ../Doc/library/typing.rst:1020 msgid "" "Note that this is not the same concept as an optional argument, which is one " "that has a default. An optional argument with a default does not require " @@ -877,45 +894,45 @@ msgid "" "optional. For example::" msgstr "" -#: ../Doc/library/typing.rst:1010 +#: ../Doc/library/typing.rst:1028 msgid "" "On the other hand, if an explicit value of ``None`` is allowed, the use of " "``Optional`` is appropriate, whether the argument is optional or not. For " "example::" msgstr "" -#: ../Doc/library/typing.rst:1019 +#: ../Doc/library/typing.rst:1037 msgid "" "Tuple type; ``Tuple[X, Y]`` is the type of a tuple of two items with the " "first item of type X and the second of type Y." msgstr "" -#: ../Doc/library/typing.rst:1022 +#: ../Doc/library/typing.rst:1040 msgid "" "Example: ``Tuple[T1, T2]`` is a tuple of two elements corresponding to type " "variables T1 and T2. ``Tuple[int, float, str]`` is a tuple of an int, a " "float and a string." msgstr "" -#: ../Doc/library/typing.rst:1026 +#: ../Doc/library/typing.rst:1044 msgid "" "To specify a variable-length tuple of homogeneous type, use literal " "ellipsis, e.g. ``Tuple[int, ...]``. A plain :data:`Tuple` is equivalent to " "``Tuple[Any, ...]``, and in turn to :class:`tuple`." msgstr "" -#: ../Doc/library/typing.rst:1032 +#: ../Doc/library/typing.rst:1050 msgid "Callable type; ``Callable[[int], str]`` is a function of (int) -> str." msgstr "" -#: ../Doc/library/typing.rst:1034 +#: ../Doc/library/typing.rst:1052 msgid "" "The subscription syntax must always be used with exactly two values: the " "argument list and the return type. The argument list must be a list of " "types or an ellipsis; the return type must be a single type." msgstr "" -#: ../Doc/library/typing.rst:1039 +#: ../Doc/library/typing.rst:1057 msgid "" "There is no syntax to indicate optional or keyword arguments; such function " "types are rarely used as callback types. ``Callable[..., ReturnType]`` " @@ -925,22 +942,22 @@ msgid "" "Callable`." msgstr "" -#: ../Doc/library/typing.rst:1049 +#: ../Doc/library/typing.rst:1067 msgid "Special type construct to mark class variables." msgstr "" -#: ../Doc/library/typing.rst:1051 +#: ../Doc/library/typing.rst:1069 msgid "" "As introduced in :pep:`526`, a variable annotation wrapped in ClassVar " "indicates that a given attribute is intended to be used as a class variable " "and should not be set on instances of that class. Usage::" msgstr "" -#: ../Doc/library/typing.rst:1059 +#: ../Doc/library/typing.rst:1077 msgid ":data:`ClassVar` accepts only types and cannot be further subscribed." msgstr "" -#: ../Doc/library/typing.rst:1061 +#: ../Doc/library/typing.rst:1079 msgid "" ":data:`ClassVar` is not a class itself, and should not be used with :func:" "`isinstance` or :func:`issubclass`. :data:`ClassVar` does not change Python " @@ -948,25 +965,25 @@ msgid "" "example, a type checker might flag the following code as an error::" msgstr "" -#: ../Doc/library/typing.rst:1075 +#: ../Doc/library/typing.rst:1093 msgid "" "``AnyStr`` is a type variable defined as ``AnyStr = TypeVar('AnyStr', str, " "bytes)``." msgstr "" -#: ../Doc/library/typing.rst:1078 +#: ../Doc/library/typing.rst:1096 msgid "" "It is meant to be used for functions that may accept any kind of string " "without allowing different kinds of strings to mix. For example::" msgstr "" -#: ../Doc/library/typing.rst:1090 +#: ../Doc/library/typing.rst:1108 msgid "" "A special constant that is assumed to be ``True`` by 3rd party static type " "checkers. It is ``False`` at runtime. Usage::" msgstr "" -#: ../Doc/library/typing.rst:1099 +#: ../Doc/library/typing.rst:1117 msgid "" "Note that the first type annotation must be enclosed in quotes, making it a " "\"forward reference\", to hide the ``expensive_mod`` reference from the " diff --git a/library/unittest.mock.po b/library/unittest.mock.po index 5ec3157b..9d8d43b0 100644 --- a/library/unittest.mock.po +++ b/library/unittest.mock.po @@ -5,15 +5,15 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-22 12:07+0200\n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"Last-Translator: Bousquié Pierre \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" "X-Generator: Poedit 2.2.1\n" -"Last-Translator: Bousquié Pierre \n" #: ../Doc/library/unittest.mock.rst:3 msgid ":mod:`unittest.mock` --- mock object library" diff --git a/library/urllib.request.po b/library/urllib.request.po index 8db2dab9..fa188971 100644 --- a/library/urllib.request.po +++ b/library/urllib.request.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -1554,11 +1554,15 @@ msgid "" "`urlopen`." msgstr "" -#: ../Doc/library/urllib.request.rst:1441 +#: ../Doc/library/urllib.request.rst:1438 +msgid "This method always quotes *fullurl* using :func:`~urllib.parse.quote`." +msgstr "" + +#: ../Doc/library/urllib.request.rst:1442 msgid "Overridable interface to open unknown URL types." msgstr "" -#: ../Doc/library/urllib.request.rst:1446 +#: ../Doc/library/urllib.request.rst:1447 msgid "" "Retrieves the contents of *url* and places it in *filename*. The return " "value is a tuple consisting of a local filename and either an :class:`email." @@ -1575,7 +1579,7 @@ msgid "" "*reporthook* is ignored for local URLs." msgstr "" -#: ../Doc/library/urllib.request.rst:1459 +#: ../Doc/library/urllib.request.rst:1460 msgid "" "If the *url* uses the :file:`http:` scheme identifier, the optional *data* " "argument may be given to specify a ``POST`` request (normally the request " @@ -1584,7 +1588,7 @@ msgid "" "urlencode` function." msgstr "" -#: ../Doc/library/urllib.request.rst:1468 +#: ../Doc/library/urllib.request.rst:1469 msgid "" "Variable that specifies the user agent of the opener object. To get :mod:" "`urllib` to tell servers that it is a particular user agent, set this in a " @@ -1592,7 +1596,7 @@ msgid "" "constructor." msgstr "" -#: ../Doc/library/urllib.request.rst:1478 +#: ../Doc/library/urllib.request.rst:1479 msgid "" ":class:`FancyURLopener` subclasses :class:`URLopener` providing default " "handling for the following HTTP response codes: 301, 302, 303, 307 and 401. " @@ -1603,14 +1607,14 @@ msgid "" "defaults to 10." msgstr "" -#: ../Doc/library/urllib.request.rst:1485 +#: ../Doc/library/urllib.request.rst:1486 msgid "" "For all other response codes, the method :meth:`http_error_default` is " "called which you can override in subclasses to handle the error " "appropriately." msgstr "" -#: ../Doc/library/urllib.request.rst:1490 +#: ../Doc/library/urllib.request.rst:1491 msgid "" "According to the letter of :rfc:`2616`, 301 and 302 responses to POST " "requests must not be automatically redirected without confirmation by the " @@ -1619,13 +1623,13 @@ msgid "" "behaviour." msgstr "" -#: ../Doc/library/urllib.request.rst:1495 +#: ../Doc/library/urllib.request.rst:1496 msgid "" "The parameters to the constructor are the same as those for :class:" "`URLopener`." msgstr "" -#: ../Doc/library/urllib.request.rst:1499 +#: ../Doc/library/urllib.request.rst:1500 msgid "" "When performing basic authentication, a :class:`FancyURLopener` instance " "calls its :meth:`prompt_user_passwd` method. The default implementation " @@ -1634,59 +1638,59 @@ msgid "" "needed." msgstr "" -#: ../Doc/library/urllib.request.rst:1504 +#: ../Doc/library/urllib.request.rst:1505 msgid "" "The :class:`FancyURLopener` class offers one additional method that should " "be overloaded to provide the appropriate behavior:" msgstr "" -#: ../Doc/library/urllib.request.rst:1509 +#: ../Doc/library/urllib.request.rst:1510 msgid "" "Return information needed to authenticate the user at the given host in the " "specified security realm. The return value should be a tuple, ``(user, " "password)``, which can be used for basic authentication." msgstr "" -#: ../Doc/library/urllib.request.rst:1513 +#: ../Doc/library/urllib.request.rst:1514 msgid "" "The implementation prompts for this information on the terminal; an " "application should override this method to use an appropriate interaction " "model in the local environment." msgstr "" -#: ../Doc/library/urllib.request.rst:1519 +#: ../Doc/library/urllib.request.rst:1520 msgid ":mod:`urllib.request` Restrictions" msgstr "" -#: ../Doc/library/urllib.request.rst:1525 +#: ../Doc/library/urllib.request.rst:1526 msgid "" "Currently, only the following protocols are supported: HTTP (versions 0.9 " "and 1.0), FTP, local files, and data URLs." msgstr "" -#: ../Doc/library/urllib.request.rst:1528 +#: ../Doc/library/urllib.request.rst:1529 msgid "Added support for data URLs." msgstr "" -#: ../Doc/library/urllib.request.rst:1530 +#: ../Doc/library/urllib.request.rst:1531 msgid "" "The caching feature of :func:`urlretrieve` has been disabled until someone " "finds the time to hack proper processing of Expiration time headers." msgstr "" -#: ../Doc/library/urllib.request.rst:1533 +#: ../Doc/library/urllib.request.rst:1534 msgid "" "There should be a function to query whether a particular URL is in the cache." msgstr "" -#: ../Doc/library/urllib.request.rst:1535 +#: ../Doc/library/urllib.request.rst:1536 msgid "" "For backward compatibility, if a URL appears to point to a local file but " "the file can't be opened, the URL is re-interpreted using the FTP protocol. " "This can sometimes cause confusing error messages." msgstr "" -#: ../Doc/library/urllib.request.rst:1539 +#: ../Doc/library/urllib.request.rst:1540 msgid "" "The :func:`urlopen` and :func:`urlretrieve` functions can cause arbitrarily " "long delays while waiting for a network connection to be set up. This means " @@ -1694,7 +1698,7 @@ msgid "" "functions without using threads." msgstr "" -#: ../Doc/library/urllib.request.rst:1548 +#: ../Doc/library/urllib.request.rst:1549 msgid "" "The data returned by :func:`urlopen` or :func:`urlretrieve` is the raw data " "returned by the server. This may be binary data (such as an image), plain " @@ -1704,7 +1708,7 @@ msgid "" "module :mod:`html.parser` to parse it." msgstr "" -#: ../Doc/library/urllib.request.rst:1557 +#: ../Doc/library/urllib.request.rst:1558 msgid "" "The code handling the FTP protocol cannot differentiate between a file and a " "directory. This can lead to unexpected behavior when attempting to read a " @@ -1722,11 +1726,11 @@ msgid "" "meet your needs." msgstr "" -#: ../Doc/library/urllib.request.rst:1574 +#: ../Doc/library/urllib.request.rst:1575 msgid ":mod:`urllib.response` --- Response classes used by urllib" msgstr "" -#: ../Doc/library/urllib.request.rst:1579 +#: ../Doc/library/urllib.request.rst:1580 msgid "" "The :mod:`urllib.response` module defines functions and classes which define " "a minimal file like interface, including ``read()`` and ``readline()``. The " diff --git a/library/venv.po b/library/venv.po index d40f1a58..2ae5aef1 100644 --- a/library/venv.po +++ b/library/venv.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-21 21:16+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -480,11 +480,11 @@ msgstr "" "activé (par défaut à ``None`` ce qui veux dire qu'il utilisera le nom du " "dossier de l'environnement)." -#: ../Doc/library/venv.rst:131 ../Doc/library/venv.rst:247 +#: ../Doc/library/venv.rst:131 ../Doc/library/venv.rst:249 msgid "Added the ``with_pip`` parameter" msgstr "Ajout du paramètre ``with_pip``" -#: ../Doc/library/venv.rst:134 +#: ../Doc/library/venv.rst:134 ../Doc/library/venv.rst:252 msgid "Added the ``prompt`` parameter" msgstr "Ajout du paramètre ``prompt``" @@ -687,11 +687,11 @@ msgstr "" "Crée une :class:`EnvBuilder` avec les arguments donnés, et appelle sa " "méthode :meth:`~EnvBuilder.create` avec l'argument *env_dir*." -#: ../Doc/library/venv.rst:251 +#: ../Doc/library/venv.rst:256 msgid "An example of extending ``EnvBuilder``" msgstr "Un exemple d'extension de ``EnvBuilder``" -#: ../Doc/library/venv.rst:253 +#: ../Doc/library/venv.rst:258 msgid "" "The following script shows how to extend :class:`EnvBuilder` by implementing " "a subclass which installs setuptools and pip into a created virtual " @@ -701,7 +701,7 @@ msgstr "" "implémentant une sous-classe qui installe **setuptools** et **pip** dans un " "environnement créé ::" -#: ../Doc/library/venv.rst:472 +#: ../Doc/library/venv.rst:477 msgid "" "This script is also available for download `online `_." diff --git a/library/weakref.po b/library/weakref.po index e89d0105..f56015e1 100644 --- a/library/weakref.po +++ b/library/weakref.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-10 00:49+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -484,36 +484,36 @@ msgid "" "instance" msgstr "" -#: ../Doc/library/weakref.rst:500 +#: ../Doc/library/weakref.rst:503 msgid "Comparing finalizers with :meth:`__del__` methods" msgstr "" -#: ../Doc/library/weakref.rst:502 +#: ../Doc/library/weakref.rst:505 msgid "" "Suppose we want to create a class whose instances represent temporary " "directories. The directories should be deleted with their contents when the " "first of the following events occurs:" msgstr "" -#: ../Doc/library/weakref.rst:506 +#: ../Doc/library/weakref.rst:509 msgid "the object is garbage collected," msgstr "" -#: ../Doc/library/weakref.rst:507 +#: ../Doc/library/weakref.rst:510 msgid "the object's :meth:`remove` method is called, or" msgstr "" -#: ../Doc/library/weakref.rst:508 +#: ../Doc/library/weakref.rst:511 msgid "the program exits." msgstr "" -#: ../Doc/library/weakref.rst:510 +#: ../Doc/library/weakref.rst:513 msgid "" "We might try to implement the class using a :meth:`__del__` method as " "follows::" msgstr "" -#: ../Doc/library/weakref.rst:529 +#: ../Doc/library/weakref.rst:532 msgid "" "Starting with Python 3.4, :meth:`__del__` methods no longer prevent " "reference cycles from being garbage collected, and module globals are no " @@ -521,35 +521,35 @@ msgid "" "code should work without any issues on CPython." msgstr "" -#: ../Doc/library/weakref.rst:534 +#: ../Doc/library/weakref.rst:537 msgid "" "However, handling of :meth:`__del__` methods is notoriously implementation " "specific, since it depends on internal details of the interpreter's garbage " "collector implementation." msgstr "" -#: ../Doc/library/weakref.rst:538 +#: ../Doc/library/weakref.rst:541 msgid "" "A more robust alternative can be to define a finalizer which only references " "the specific functions and objects that it needs, rather than having access " "to the full state of the object::" msgstr "" -#: ../Doc/library/weakref.rst:554 +#: ../Doc/library/weakref.rst:557 msgid "" "Defined like this, our finalizer only receives a reference to the details it " "needs to clean up the directory appropriately. If the object never gets " "garbage collected the finalizer will still be called at exit." msgstr "" -#: ../Doc/library/weakref.rst:558 +#: ../Doc/library/weakref.rst:561 msgid "" "The other advantage of weakref based finalizers is that they can be used to " "register finalizers for classes where the definition is controlled by a " "third party, such as running code when a module is unloaded::" msgstr "" -#: ../Doc/library/weakref.rst:570 +#: ../Doc/library/weakref.rst:573 msgid "" "If you create a finalizer object in a daemonic thread just as the program " "exits then there is the possibility that the finalizer does not get called " diff --git a/license.po b/license.po index ef47256c..141046a5 100644 --- a/license.po +++ b/license.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-28 15:29+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-07-27 10:02+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -371,9 +371,10 @@ msgid "SipHash24" msgstr "SipHash24" #: ../Doc/license.rst:563 +#, fuzzy msgid "" "The file :file:`Python/pyhash.c` contains Marek Majkowski' implementation of " -"Dan Bernstein's SipHash24 algorithm. The contains the following note::" +"Dan Bernstein's SipHash24 algorithm. It contains the following note::" msgstr "" "Le fichier :file:`Python/pyhash.c` contiens une implémentation par Marek " "Majkowski de l'algorithme *SipHash24* de Dan Bernstein. Il contient la note " diff --git a/reference/datamodel.po b/reference/datamodel.po index 2284d6e5..b8652107 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-04-10 09:35+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-04-11 21:33+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -2240,15 +2240,16 @@ msgstr "" "chaîne *bytes* d'un objet. Elle doit renvoyer un objet :class:`bytes`." #: ../Doc/reference/datamodel.rst:1315 +#, fuzzy msgid "" "Called by the :func:`format` built-in function, and by extension, evaluation " "of :ref:`formatted string literals ` and the :meth:`str.format` " "method, to produce a \"formatted\" string representation of an object. The " -"``format_spec`` argument is a string that contains a description of the " -"formatting options desired. The interpretation of the ``format_spec`` " -"argument is up to the type implementing :meth:`__format__`, however most " -"classes will either delegate formatting to one of the built-in types, or use " -"a similar formatting option syntax." +"*format_spec* argument is a string that contains a description of the " +"formatting options desired. The interpretation of the *format_spec* argument " +"is up to the type implementing :meth:`__format__`, however most classes will " +"either delegate formatting to one of the built-in types, or use a similar " +"formatting option syntax." msgstr "" "Appelée par la fonction native :func:`format` et, par extension, lors de " "l'évaluation de :ref:`formatted string literals ` ou de la " diff --git a/reference/executionmodel.po b/reference/executionmodel.po index 30107db6..fcdfcaa9 100644 --- a/reference/executionmodel.po +++ b/reference/executionmodel.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-21 09:48+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-19 23:21+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -398,10 +398,11 @@ msgstr "" "dans le code en question par le haut)." #: ../Doc/reference/executionmodel.rst:244 +#, fuzzy msgid "" "When an exception is not handled at all, the interpreter terminates " "execution of the program, or returns to its interactive main loop. In " -"either case, it prints a stack backtrace, except when the exception is :exc:" +"either case, it prints a stack traceback, except when the exception is :exc:" "`SystemExit`." msgstr "" "Quand une exception n'est gérée par aucun gestionnaire, l'interpréteur " diff --git a/reference/expressions.po b/reference/expressions.po index ab232058..40f546bc 100644 --- a/reference/expressions.po +++ b/reference/expressions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-21 09:48+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-02-21 16:15+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -218,10 +218,11 @@ msgstr "" "même (qui constitue donc elle-même la liste d'expressions)." #: ../Doc/reference/expressions.rst:146 +#, fuzzy msgid "" "An empty pair of parentheses yields an empty tuple object. Since tuples are " -"immutable, the rules for literals apply (i.e., two occurrences of the empty " -"tuple may or may not yield the same object)." +"immutable, the same rules as for literals apply (i.e., two occurrences of " +"the empty tuple may or may not yield the same object)." msgstr "" "Une paire de parenthèses vide produit un objet *tuple* vide. Comme les " "*tuples* sont immuables, la règle pour les littéraux s'applique (c'est-à-" @@ -754,12 +755,13 @@ msgstr "" "immédiatement." #: ../Doc/reference/expressions.rst:484 +#, fuzzy msgid "" "When the underlying iterator is complete, the :attr:`~StopIteration.value` " "attribute of the raised :exc:`StopIteration` instance becomes the value of " "the yield expression. It can be either set explicitly when raising :exc:" -"`StopIteration`, or automatically when the sub-iterator is a generator (by " -"returning a value from the sub-generator)." +"`StopIteration`, or automatically when the subiterator is a generator (by " +"returning a value from the subgenerator)." msgstr "" "Quand l'itérateur sous-jacent a terminé, l'attribut :attr:`~StopIteration." "value` de l'instance :exc:`StopIteration` qui a été levée devient la valeur " @@ -810,9 +812,10 @@ msgid ":pep:`380` - Syntax for Delegating to a Subgenerator" msgstr ":pep:`380` -- Syntaxe pour déléguer à un sous-générateur" #: ../Doc/reference/expressions.rst:506 +#, fuzzy msgid "" "The proposal to introduce the :token:`yield_from` syntax, making delegation " -"to sub-generators easy." +"to subgenerators easy." msgstr "" "Proposition d'introduire la syntaxe :token:`yield_from`, de manière à " "déléguer facilement l'exécution à un sous-générateur." @@ -955,9 +958,10 @@ msgid "Asynchronous generator functions" msgstr "Fonctions générateurs asynchrones" #: ../Doc/reference/expressions.rst:615 +#, fuzzy msgid "" "The presence of a yield expression in a function or method defined using :" -"keyword:`async def` further defines the function as a :term:`asynchronous " +"keyword:`async def` further defines the function as an :term:`asynchronous " "generator` function." msgstr "" "La présence d'une expression *yield* dans une fonction ou une méthode " @@ -1082,16 +1086,17 @@ msgstr "" "générateurs." #: ../Doc/reference/expressions.rst:679 +#, fuzzy msgid "" "Returns an awaitable which when run starts to execute the asynchronous " "generator or resumes it at the last executed yield expression. When an " -"asynchronous generator function is resumed with a :meth:`~agen.__anext__` " +"asynchronous generator function is resumed with an :meth:`~agen.__anext__` " "method, the current yield expression always evaluates to :const:`None` in " "the returned awaitable, which when run will continue to the next yield " "expression. The value of the :token:`expression_list` of the yield " "expression is the value of the :exc:`StopIteration` exception raised by the " "completing coroutine. If the asynchronous generator exits without yielding " -"another value, the awaitable instead raises an :exc:`StopAsyncIteration` " +"another value, the awaitable instead raises a :exc:`StopAsyncIteration` " "exception, signalling that the asynchronous iteration has completed." msgstr "" "Renvoie un *awaitable* qui, quand il a la main, démarre l'exécution du " @@ -1139,12 +1144,13 @@ msgstr "" "`None` car il n'y a pas d'expression ``yield`` pour recevoir la valeur." #: ../Doc/reference/expressions.rst:711 +#, fuzzy msgid "" "Returns an awaitable that raises an exception of type ``type`` at the point " "where the asynchronous generator was paused, and returns the next value " "yielded by the generator function as the value of the raised :exc:" "`StopIteration` exception. If the asynchronous generator exits without " -"yielding another value, an :exc:`StopAsyncIteration` exception is raised by " +"yielding another value, a :exc:`StopAsyncIteration` exception is raised by " "the awaitable. If the generator function does not catch the passed-in " "exception, or raises a different exception, then when the awaitable is run " "that exception propagates to the caller of the awaitable." @@ -2485,9 +2491,10 @@ msgstr "" "`in` avait levé cette exception)." #: ../Doc/reference/expressions.rst:1587 +#, fuzzy msgid "" -"The operator :keyword:`not in` is defined to have the inverse true value of :" -"keyword:`in`." +"The operator :keyword:`not in` is defined to have the inverse truth value " +"of :keyword:`in`." msgstr "" "L'opérateur :keyword:`not in` est défini comme produisant le contraire de :" "keyword:`in`." @@ -2497,11 +2504,12 @@ msgid "Identity comparisons" msgstr "Comparaisons d'identifiants" #: ../Doc/reference/expressions.rst:1602 +#, fuzzy msgid "" -"The operators :keyword:`is` and :keyword:`is not` test for object identity: " -"``x is y`` is true if and only if *x* and *y* are the same object. Object " -"identity is determined using the :meth:`id` function. ``x is not y`` yields " -"the inverse truth value. [#]_" +"The operators :keyword:`is` and :keyword:`is not` test for an object's " +"identity: ``x is y`` is true if and only if *x* and *y* are the same " +"object. An Object's identity is determined using the :meth:`id` function. " +"``x is not y`` yields the inverse truth value. [#]_" msgstr "" "Les opérateurs :keyword:`is` et :keyword:`is not` testent l'égalité des " "identifiants des objets : ``x is y`` est vrai si et seulement si *x* et *y* " diff --git a/reference/import.po b/reference/import.po index 0c413f39..51feb67e 100644 --- a/reference/import.po +++ b/reference/import.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-21 09:48+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-19 23:14+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -1839,11 +1839,42 @@ msgstr "" "indique que la recherche dans le méta-chemin peut continuer alors que la " "levée de l'exception termine immédiatement la recherche." -#: ../Doc/reference/import.rst:926 +#: ../Doc/reference/import.rst:927 +msgid "Package Relative Imports" +msgstr "" + +#: ../Doc/reference/import.rst:929 +msgid "" +"Relative imports use leading dots. A single leading dot indicates a relative " +"import, starting with the current package. Two or more leading dots indicate " +"a relative import to the parent(s) of the current package, one level per dot " +"after the first. For example, given the following package layout::" +msgstr "" + +#: ../Doc/reference/import.rst:945 +msgid "" +"In either ``subpackage1/moduleX.py`` or ``subpackage1/__init__.py``, the " +"following are valid relative imports::" +msgstr "" + +#: ../Doc/reference/import.rst:955 +msgid "" +"Absolute imports may use either the ``import <>`` or ``from <> import <>`` " +"syntax, but relative imports may only use the second form; the reason for " +"this is that::" +msgstr "" + +#: ../Doc/reference/import.rst:961 +msgid "" +"should expose ``XXX.YYY.ZZZ`` as a usable expression, but .moduleY is not a " +"valid expression." +msgstr "" + +#: ../Doc/reference/import.rst:966 msgid "Special considerations for __main__" msgstr "Cas particulier de __main__" -#: ../Doc/reference/import.rst:928 +#: ../Doc/reference/import.rst:968 msgid "" "The :mod:`__main__` module is a special case relative to Python's import " "system. As noted :ref:`elsewhere `, the ``__main__`` module is " @@ -1861,11 +1892,11 @@ msgstr "" "natif. Effectivement, la manière dont est initialisé ``__main__`` dépend des " "drapeaux et options avec lesquels l'interpréteur est lancé." -#: ../Doc/reference/import.rst:939 +#: ../Doc/reference/import.rst:979 msgid "__main__.__spec__" msgstr "__main__.__spec__" -#: ../Doc/reference/import.rst:941 +#: ../Doc/reference/import.rst:981 msgid "" "Depending on how :mod:`__main__` is initialized, ``__main__.__spec__`` gets " "set appropriately or to ``None``." @@ -1873,7 +1904,7 @@ msgstr "" "En fonction de la manière dont :mod:`__main__` est initialisé, ``__main__." "__spec__`` est défini de manière conforme ou mis à ``None``." -#: ../Doc/reference/import.rst:944 +#: ../Doc/reference/import.rst:984 msgid "" "When Python is started with the :option:`-m` option, ``__spec__`` is set to " "the module spec of the corresponding module or package. ``__spec__`` is also " @@ -1886,7 +1917,7 @@ msgstr "" "que partie de l'exécution d'un répertoire, d'un fichier zip ou d'une entrée " "de :data:`sys.path`." -#: ../Doc/reference/import.rst:949 +#: ../Doc/reference/import.rst:989 msgid "" "In :ref:`the remaining cases ` ``__main__." "__spec__`` is set to ``None``, as the code used to populate the :mod:" @@ -1896,23 +1927,23 @@ msgstr "" "__spec__`` est mis à ``None``, car le code qui peuple :mod:`__main__` ne " "trouve pas de correspondance directe avec un module que l'on importe :" -#: ../Doc/reference/import.rst:953 +#: ../Doc/reference/import.rst:993 msgid "interactive prompt" msgstr "invite de commande interactive" -#: ../Doc/reference/import.rst:954 +#: ../Doc/reference/import.rst:994 msgid ":option:`-c` option" msgstr "l'option :option:`-c`" -#: ../Doc/reference/import.rst:955 +#: ../Doc/reference/import.rst:995 msgid "running from stdin" msgstr "lecture depuis l'entrée standard" -#: ../Doc/reference/import.rst:956 +#: ../Doc/reference/import.rst:996 msgid "running directly from a source or bytecode file" msgstr "lecture depuis un fichier de code source ou de *bytecode*" -#: ../Doc/reference/import.rst:958 +#: ../Doc/reference/import.rst:998 msgid "" "Note that ``__main__.__spec__`` is always ``None`` in the last case, *even " "if* the file could technically be imported directly as a module instead. Use " @@ -1924,7 +1955,7 @@ msgstr "" "que module. Utilisez l'option :option:`-m` si vous souhaitez disposer de " "métadonnées valides du module dans :mod:`__main__`." -#: ../Doc/reference/import.rst:963 +#: ../Doc/reference/import.rst:1003 msgid "" "Note also that even when ``__main__`` corresponds with an importable module " "and ``__main__.__spec__`` is set accordingly, they're still considered " @@ -1939,15 +1970,15 @@ msgstr "" "module est utilisé pour peupler l'espace de nommage de ``__main__``, et pas " "durant une importation normale." -#: ../Doc/reference/import.rst:971 +#: ../Doc/reference/import.rst:1011 msgid "Open issues" msgstr "Idées d'amélioration" -#: ../Doc/reference/import.rst:973 +#: ../Doc/reference/import.rst:1013 msgid "XXX It would be really nice to have a diagram." msgstr "XXX Ce serait vraiment bien de disposer d'un diagramme." -#: ../Doc/reference/import.rst:975 +#: ../Doc/reference/import.rst:1015 msgid "" "XXX * (import_machinery.rst) how about a section devoted just to the " "attributes of modules and packages, perhaps expanding upon or supplanting " @@ -1957,7 +1988,7 @@ msgstr "" "attributs des modules et paquets, développant ou remplaçant les entrées " "associées dans la page de référence du modèle de données ?" -#: ../Doc/reference/import.rst:979 +#: ../Doc/reference/import.rst:1019 msgid "" "XXX runpy, pkgutil, et al in the library manual should all get \"See Also\" " "links at the top pointing to the new import system section." @@ -1966,7 +1997,7 @@ msgstr "" "comporter un lien \"Lisez aussi\" en début de page pointant vers la section " "du nouveau mécanisme d'import." -#: ../Doc/reference/import.rst:982 +#: ../Doc/reference/import.rst:1022 msgid "" "XXX Add more explanation regarding the different ways in which ``__main__`` " "is initialized?" @@ -1974,7 +2005,7 @@ msgstr "" "XXX Ajouter des explications sur les différentes manières dont ``__main__`` " "est initialisé ?" -#: ../Doc/reference/import.rst:985 +#: ../Doc/reference/import.rst:1025 msgid "" "XXX Add more info on ``__main__`` quirks/pitfalls (i.e. copy from :pep:" "`395`)." @@ -1982,11 +2013,11 @@ msgstr "" "XXX Ajouter des informations sur les pièges et bizarreries de ``__main__`` " "(c-à-d des extraits de la :pep:`395`)." -#: ../Doc/reference/import.rst:990 +#: ../Doc/reference/import.rst:1030 msgid "References" msgstr "Références" -#: ../Doc/reference/import.rst:992 +#: ../Doc/reference/import.rst:1032 msgid "" "The import machinery has evolved considerably since Python's early days. " "The original `specification for packages `_ originale est toujours disponible, bien que quelques détails " "ont changé depuis l'écriture de ce document." -#: ../Doc/reference/import.rst:997 +#: ../Doc/reference/import.rst:1037 msgid "" "The original specification for :data:`sys.meta_path` was :pep:`302`, with " "subsequent extension in :pep:`420`." @@ -2006,7 +2037,7 @@ msgstr "" "La spécification originale de :data:`sys.meta_path` se trouve dans la :pep:" "`302`. La :pep:`420` contient des extensions significatives." -#: ../Doc/reference/import.rst:1000 +#: ../Doc/reference/import.rst:1040 msgid "" ":pep:`420` introduced :term:`namespace packages ` for " "Python 3.3. :pep:`420` also introduced the :meth:`find_loader` protocol as " @@ -2017,7 +2048,7 @@ msgstr "" "`recherche du chargeur ` comme une alternative à :meth:" "`find_module`." -#: ../Doc/reference/import.rst:1004 +#: ../Doc/reference/import.rst:1044 msgid "" ":pep:`366` describes the addition of the ``__package__`` attribute for " "explicit relative imports in main modules." @@ -2025,7 +2056,7 @@ msgstr "" "La :pep:`366` décrit l'ajout de l'attribut ``__package__`` pour les " "importations relatives explicites dans les modules principaux." -#: ../Doc/reference/import.rst:1007 +#: ../Doc/reference/import.rst:1047 msgid "" ":pep:`328` introduced absolute and explicit relative imports and initially " "proposed ``__name__`` for semantics :pep:`366` would eventually specify for " @@ -2035,11 +2066,11 @@ msgstr "" "relatives explicites. Elle a aussi proposé ``__name__`` pour la sémantique " "que la :pep:`366` attribuait à ``__package__``." -#: ../Doc/reference/import.rst:1011 +#: ../Doc/reference/import.rst:1051 msgid ":pep:`338` defines executing modules as scripts." msgstr ":pep:`338` définit l'exécution de modules en tant que scripts." -#: ../Doc/reference/import.rst:1013 +#: ../Doc/reference/import.rst:1053 msgid "" ":pep:`451` adds the encapsulation of per-module import state in spec " "objects. It also off-loads most of the boilerplate responsibilities of " @@ -2053,15 +2084,15 @@ msgstr "" "permettent de supprimer plusieurs API dans le système d'importation et " "d'ajouter de nouvelles méthodes aux chercheurs et chargeurs." -#: ../Doc/reference/import.rst:1020 +#: ../Doc/reference/import.rst:1060 msgid "Footnotes" msgstr "Notes" -#: ../Doc/reference/import.rst:1021 +#: ../Doc/reference/import.rst:1061 msgid "See :class:`types.ModuleType`." msgstr "Voir :class:`types.ModuleType`." -#: ../Doc/reference/import.rst:1023 +#: ../Doc/reference/import.rst:1063 msgid "" "The importlib implementation avoids using the return value directly. " "Instead, it gets the module object by looking the module name up in :data:" @@ -2076,7 +2107,7 @@ msgstr "" "comportement spécifique à l'implémentation dont le résultat n'est pas " "garanti pour les autres implémentations de Python." -#: ../Doc/reference/import.rst:1030 +#: ../Doc/reference/import.rst:1070 msgid "" "In legacy code, it is possible to find instances of :class:`imp." "NullImporter` in the :data:`sys.path_importer_cache`. It is recommended " diff --git a/reference/lexical_analysis.po b/reference/lexical_analysis.po index e76a70bc..57262070 100644 --- a/reference/lexical_analysis.po +++ b/reference/lexical_analysis.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-11-01 22:48+0100\n" "Last-Translator: \n" "Language-Team: \n" @@ -108,11 +108,12 @@ msgid "Comments" msgstr "Commentaires" #: ../Doc/reference/lexical_analysis.rst:70 +#, fuzzy msgid "" "A comment starts with a hash character (``#``) that is not part of a string " "literal, and ends at the end of the physical line. A comment signifies the " "end of the logical line unless the implicit line joining rules are invoked. " -"Comments are ignored by the syntax; they are not tokens." +"Comments are ignored by the syntax." msgstr "" "Un commentaire commence par le caractère croisillon (``#``, *hash* en " "anglais et qui ressemble au symbole musical dièse, c'est pourquoi il est " diff --git a/reference/simple_stmts.po b/reference/simple_stmts.po index b0ec7f5c..47f53736 100644 --- a/reference/simple_stmts.po +++ b/reference/simple_stmts.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-24 14:22+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-19 23:15+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -1134,6 +1134,7 @@ msgstr "" "une définition de classe ou de fonction, cela lève une :exc:`SyntaxError`." #: ../Doc/reference/simple_stmts.rst:821 +#, fuzzy msgid "" "When specifying what module to import you do not have to specify the " "absolute name of the module. When a module or package is contained within " @@ -1146,8 +1147,8 @@ msgid "" "levels, etc. So if you execute ``from . import mod`` from a module in the " "``pkg`` package then you will end up importing ``pkg.mod``. If you execute " "``from ..subpkg2 import mod`` from within ``pkg.subpkg1`` you will import " -"``pkg.subpkg2.mod``. The specification for relative imports is contained " -"within :pep:`328`." +"``pkg.subpkg2.mod``. The specification for relative imports is contained in " +"the :ref:`relativeimports` section." msgstr "" "Quand vous spécifiez les modules à importer, vous n'avez pas besoin de " "spécifier les noms absolus des modules. Quand un module ou un paquet est " @@ -1165,7 +1166,7 @@ msgstr "" "finalement ``pkg.souspkg2.mod``. La spécification des importations relatives " "se situe dans la :pep:`328`." -#: ../Doc/reference/simple_stmts.rst:834 +#: ../Doc/reference/simple_stmts.rst:835 msgid "" ":func:`importlib.import_module` is provided to support applications that " "determine dynamically the modules to be loaded." @@ -1173,11 +1174,11 @@ msgstr "" ":func:`importlib.import_module` est fournie pour gérer les applications qui " "déterminent dynamiquement les modules à charger." -#: ../Doc/reference/simple_stmts.rst:841 +#: ../Doc/reference/simple_stmts.rst:842 msgid "Future statements" msgstr "L'instruction future" -#: ../Doc/reference/simple_stmts.rst:847 +#: ../Doc/reference/simple_stmts.rst:848 msgid "" "A :dfn:`future statement` is a directive to the compiler that a particular " "module should be compiled using syntax or semantics that will be available " @@ -1188,7 +1189,7 @@ msgstr "" "sémantique qui sera disponible dans une future version de Python où cette " "fonctionnalité est devenue un standard." -#: ../Doc/reference/simple_stmts.rst:851 +#: ../Doc/reference/simple_stmts.rst:852 msgid "" "The future statement is intended to ease migration to future versions of " "Python that introduce incompatible changes to the language. It allows use " @@ -1201,7 +1202,7 @@ msgstr "" "module avant qu'une version n'officialise cette fonctionnalité comme un " "standard." -#: ../Doc/reference/simple_stmts.rst:863 +#: ../Doc/reference/simple_stmts.rst:864 msgid "" "A future statement must appear near the top of the module. The only lines " "that can appear before a future statement are:" @@ -1209,23 +1210,23 @@ msgstr "" "Une instruction *future* doit apparaître en haut du module. Les seules " "lignes autorisées avant une instruction *future* sont :" -#: ../Doc/reference/simple_stmts.rst:866 +#: ../Doc/reference/simple_stmts.rst:867 msgid "the module docstring (if any)," msgstr "la chaîne de documentation du module (si elle existe)," -#: ../Doc/reference/simple_stmts.rst:867 +#: ../Doc/reference/simple_stmts.rst:868 msgid "comments," msgstr "des commentaires," -#: ../Doc/reference/simple_stmts.rst:868 +#: ../Doc/reference/simple_stmts.rst:869 msgid "blank lines, and" msgstr "des lignes vides et" -#: ../Doc/reference/simple_stmts.rst:869 +#: ../Doc/reference/simple_stmts.rst:870 msgid "other future statements." msgstr "d'autres instructions *future*." -#: ../Doc/reference/simple_stmts.rst:871 +#: ../Doc/reference/simple_stmts.rst:872 msgid "" "The only feature in Python 3.7 that requires using the future statement is " "``annotations``." @@ -1233,7 +1234,7 @@ msgstr "" "La seule fonctionnalité dans Python 3.7 qui nécessite l'utilisation de " "l'instruction `future` est ``annotations``. " -#: ../Doc/reference/simple_stmts.rst:874 +#: ../Doc/reference/simple_stmts.rst:875 msgid "" "All historical features enabled by the future statement are still recognized " "by Python 3. The list includes ``absolute_import``, ``division``, " @@ -1250,7 +1251,7 @@ msgstr "" "elles sont de toute manière activées ; elles ne sont conservées que par " "souci de compatibilité descendante." -#: ../Doc/reference/simple_stmts.rst:881 +#: ../Doc/reference/simple_stmts.rst:882 msgid "" "A future statement is recognized and treated specially at compile time: " "Changes to the semantics of core constructs are often implemented by " @@ -1267,7 +1268,7 @@ msgstr "" "le module de manière différente. De telles décisions ne peuvent pas être " "différées au moment de l'exécution." -#: ../Doc/reference/simple_stmts.rst:888 +#: ../Doc/reference/simple_stmts.rst:889 msgid "" "For any given release, the compiler knows which feature names have been " "defined, and raises a compile-time error if a future statement contains a " @@ -1277,7 +1278,7 @@ msgstr "" "définies et lève une erreur à la compilation si une instruction *future* " "contient une fonctionnalité qui lui est inconnue." -#: ../Doc/reference/simple_stmts.rst:892 +#: ../Doc/reference/simple_stmts.rst:893 msgid "" "The direct runtime semantics are the same as for any import statement: there " "is a standard module :mod:`__future__`, described later, and it will be " @@ -1288,7 +1289,7 @@ msgstr "" "loin, qui est importé comme les autres au moment ou l'instruction *future* " "est exécutée." -#: ../Doc/reference/simple_stmts.rst:896 +#: ../Doc/reference/simple_stmts.rst:897 msgid "" "The interesting runtime semantics depend on the specific feature enabled by " "the future statement." @@ -1296,11 +1297,11 @@ msgstr "" "La sémantique particulière à l'exécution dépend des fonctionnalités " "apportées par l'instruction *future*." -#: ../Doc/reference/simple_stmts.rst:899 +#: ../Doc/reference/simple_stmts.rst:900 msgid "Note that there is nothing special about the statement::" msgstr "Notez que l'instruction suivante est tout à fait normale ::" -#: ../Doc/reference/simple_stmts.rst:903 +#: ../Doc/reference/simple_stmts.rst:904 msgid "" "That is not a future statement; it's an ordinary import statement with no " "special semantics or syntax restrictions." @@ -1308,7 +1309,7 @@ msgstr "" "Ce n'est pas une instruction *future* ; c'est une instruction d'importation " "ordinaire qui n'a aucune sémantique particulière ou restriction de syntaxe." -#: ../Doc/reference/simple_stmts.rst:906 +#: ../Doc/reference/simple_stmts.rst:907 msgid "" "Code compiled by calls to the built-in functions :func:`exec` and :func:" "`compile` that occur in a module :mod:`M` containing a future statement " @@ -1323,7 +1324,7 @@ msgstr "" "à :func:`compile` --- voir la documentation de cette fonction pour les " "détails." -#: ../Doc/reference/simple_stmts.rst:912 +#: ../Doc/reference/simple_stmts.rst:913 msgid "" "A future statement typed at an interactive interpreter prompt will take " "effect for the rest of the interpreter session. If an interpreter is " @@ -1338,19 +1339,19 @@ msgstr "" "effective pour la session interactive qui démarre après l'exécution du " "script." -#: ../Doc/reference/simple_stmts.rst:920 +#: ../Doc/reference/simple_stmts.rst:921 msgid ":pep:`236` - Back to the __future__" msgstr ":pep:`236` -- retour vers le __future__" -#: ../Doc/reference/simple_stmts.rst:921 +#: ../Doc/reference/simple_stmts.rst:922 msgid "The original proposal for the __future__ mechanism." msgstr "La proposition originale pour le mécanisme de __future__." -#: ../Doc/reference/simple_stmts.rst:927 +#: ../Doc/reference/simple_stmts.rst:928 msgid "The :keyword:`!global` statement" msgstr "L'instruction :keyword:`!global`" -#: ../Doc/reference/simple_stmts.rst:937 +#: ../Doc/reference/simple_stmts.rst:938 msgid "" "The :keyword:`global` statement is a declaration which holds for the entire " "current code block. It means that the listed identifiers are to be " @@ -1365,7 +1366,7 @@ msgstr "" "rappelez-vous que les variables libres peuvent faire référence à des " "variables globales sans avoir été déclarées en tant que telles." -#: ../Doc/reference/simple_stmts.rst:943 +#: ../Doc/reference/simple_stmts.rst:944 msgid "" "Names listed in a :keyword:`global` statement must not be used in the same " "code block textually preceding that :keyword:`!global` statement." @@ -1373,7 +1374,7 @@ msgstr "" "Les noms listés dans l'instruction :keyword:`global` ne doivent pas être " "utilisés, dans le même bloc de code, avant l'instruction :keyword:`!global`." -#: ../Doc/reference/simple_stmts.rst:946 +#: ../Doc/reference/simple_stmts.rst:947 msgid "" "Names listed in a :keyword:`global` statement must not be defined as formal " "parameters or in a :keyword:`for` loop control target, :keyword:`class` " @@ -1385,7 +1386,7 @@ msgstr "" "dans une définition de :keyword:`class`, de fonction, d'instruction :" "keyword:`import` ou une annotation de variable." -#: ../Doc/reference/simple_stmts.rst:953 +#: ../Doc/reference/simple_stmts.rst:954 msgid "" "The current implementation does not enforce some of these restrictions, but " "programs should not abuse this freedom, as future implementations may " @@ -1396,7 +1397,7 @@ msgstr "" "faire la vérification ou modifier le comportement du programme sans vous " "avertir." -#: ../Doc/reference/simple_stmts.rst:962 +#: ../Doc/reference/simple_stmts.rst:963 msgid "" "**Programmer's note:** :keyword:`global` is a directive to the parser. It " "applies only to code parsed at the same time as the :keyword:`!global` " @@ -1416,11 +1417,11 @@ msgstr "" "instruction :keyword:`!global` placée dans le code contenant l'appel. Il en " "est de même pour les fonctions :func:`eval` et :func:`compile`." -#: ../Doc/reference/simple_stmts.rst:974 +#: ../Doc/reference/simple_stmts.rst:975 msgid "The :keyword:`!nonlocal` statement" msgstr "L'instruction :keyword:`!nonlocal`" -#: ../Doc/reference/simple_stmts.rst:986 +#: ../Doc/reference/simple_stmts.rst:987 msgid "" "The :keyword:`nonlocal` statement causes the listed identifiers to refer to " "previously bound variables in the nearest enclosing scope excluding globals. " @@ -1436,7 +1437,7 @@ msgstr "" "lier à des variables en dehors de la portée locale du code mais sans avoir " "de portée globale (c'est-à-dire de niveau module)." -#: ../Doc/reference/simple_stmts.rst:996 +#: ../Doc/reference/simple_stmts.rst:997 msgid "" "Names listed in a :keyword:`nonlocal` statement, unlike those listed in a :" "keyword:`global` statement, must refer to pre-existing bindings in an " @@ -1449,7 +1450,7 @@ msgstr "" "existantes dans les portées englobantes (en effet, la portée dans laquelle " "devrait être créée la liaison ne peut pas être déterminée *a priori*)." -#: ../Doc/reference/simple_stmts.rst:1001 +#: ../Doc/reference/simple_stmts.rst:1002 msgid "" "Names listed in a :keyword:`nonlocal` statement must not collide with pre-" "existing bindings in the local scope." @@ -1457,11 +1458,11 @@ msgstr "" "Les noms listés dans l'instruction :keyword:`nonlocal` ne doivent entrer en " "collision avec des liaisons déjà établies dans la portée locale." -#: ../Doc/reference/simple_stmts.rst:1006 +#: ../Doc/reference/simple_stmts.rst:1007 msgid ":pep:`3104` - Access to Names in Outer Scopes" msgstr ":pep:`3104` -- Accès à des noms en dehors de la portée locale" -#: ../Doc/reference/simple_stmts.rst:1007 +#: ../Doc/reference/simple_stmts.rst:1008 msgid "The specification for the :keyword:`nonlocal` statement." msgstr "Les spécifications pour l'instruction :keyword:`nonlocal`." diff --git a/tutorial/introduction.po b/tutorial/introduction.po index cda98679..7805ad51 100644 --- a/tutorial/introduction.po +++ b/tutorial/introduction.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-08-01 00:34+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -476,8 +476,9 @@ msgstr "" "du même type, bien qu'à l'usage ce soit souvent le cas. ::" #: ../Doc/tutorial/introduction.rst:386 +#, fuzzy msgid "" -"Like strings (and all other built-in :term:`sequence` type), lists can be " +"Like strings (and all other built-in :term:`sequence` types), lists can be " "indexed and sliced::" msgstr "" "Comme les chaînes de caractères (et toute autre type de :term:`sequence`), " diff --git a/tutorial/modules.po b/tutorial/modules.po index 244be4f6..eedf3209 100644 --- a/tutorial/modules.po +++ b/tutorial/modules.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-12-21 09:48+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-03-19 23:12+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -575,14 +575,14 @@ msgstr "" "path`` un sous-dossier du nom du paquet." #: ../Doc/tutorial/modules.rst:428 +#, fuzzy msgid "" -"The :file:`__init__.py` files are required to make Python treat the " -"directories as containing packages; this is done to prevent directories with " -"a common name, such as ``string``, from unintentionally hiding valid modules " -"that occur later on the module search path. In the simplest case, :file:" -"`__init__.py` can just be an empty file, but it can also execute " -"initialization code for the package or set the ``__all__`` variable, " -"described later." +"The :file:`__init__.py` files are required to make Python treat directories " +"containing the file as packages. This prevents directories with a common " +"name, such as ``string``, unintentionally hiding valid modules that occur " +"later on the module search path. In the simplest case, :file:`__init__.py` " +"can just be an empty file, but it can also execute initialization code for " +"the package or set the ``__all__`` variable, described later." msgstr "" "Les fichiers :file:`__init__.py` sont nécessaires pour que Python considère " "les dossiers comme contenant des paquets, cela évite que des dossiers ayant " @@ -761,8 +761,9 @@ msgstr "" "d'un environnement de production." #: ../Doc/tutorial/modules.rst:526 +#, fuzzy msgid "" -"Remember, there is nothing wrong with using ``from Package import " +"Remember, there is nothing wrong with using ``from package import " "specific_submodule``! In fact, this is the recommended notation unless the " "importing module needs to use submodules with the same name from different " "packages." diff --git a/tutorial/whatnow.po b/tutorial/whatnow.po index 549130a6..61e54f45 100644 --- a/tutorial/whatnow.po +++ b/tutorial/whatnow.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-10 11:27+0200\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2018-06-10 15:28+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -104,11 +104,12 @@ msgstr "" "Python en français." #: ../Doc/tutorial/whatnow.rst:41 +#, fuzzy msgid "" "https://pypi.org: The Python Package Index, previously also nicknamed the " -"Cheese Shop, is an index of user-created Python modules that are available " -"for download. Once you begin releasing code, you can register it here so " -"that others can find it." +"Cheese Shop [#]_, is an index of user-created Python modules that are " +"available for download. Once you begin releasing code, you can register it " +"here so that others can find it." msgstr "" "https://pypi.org (*The Python Package Index* en anglais, pour le " "\"répertoire des paquets Python\") : auparavant surnommé \"La Fromagerie" @@ -181,3 +182,13 @@ msgstr "" "`Foire Aux Questions ` (aussi appelée FAQ). La FAQ répond à " "beaucoup de questions fréquentes et contient probablement une solution à " "votre problème." + +#: ../Doc/tutorial/whatnow.rst:73 +msgid "Footnotes" +msgstr "" + +#: ../Doc/tutorial/whatnow.rst:74 +msgid "" +"\"Cheese Shop\" is a Monty Python's sketch: a customer enters a cheese shop, " +"but whatever cheese he asks for, the clerk says it's missing." +msgstr "" diff --git a/using/windows.po b/using/windows.po index 2f5620e8..8dbbd702 100644 --- a/using/windows.po +++ b/using/windows.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-03-11 12:59+0100\n" +"POT-Creation-Date: 2019-05-23 16:48+0200\n" "PO-Revision-Date: 2019-02-27 10:08+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -350,10 +350,10 @@ msgstr "InstallAllUsers" msgid "Perform a system-wide installation." msgstr "Effectue une installation pour tous les utilisateurs." -#: ../Doc/using/windows.rst:144 ../Doc/using/windows.rst:165 -#: ../Doc/using/windows.rst:168 ../Doc/using/windows.rst:177 -#: ../Doc/using/windows.rst:195 ../Doc/using/windows.rst:203 -#: ../Doc/using/windows.rst:206 +#: ../Doc/using/windows.rst:144 ../Doc/using/windows.rst:167 +#: ../Doc/using/windows.rst:170 ../Doc/using/windows.rst:179 +#: ../Doc/using/windows.rst:197 ../Doc/using/windows.rst:205 +#: ../Doc/using/windows.rst:208 msgid "0" msgstr "0" @@ -397,57 +397,59 @@ msgstr "" "Le dossier d'installation par défaut pour des installations juste pour soi" #: ../Doc/using/windows.rst:154 +#, fuzzy msgid "" ":file:`%LocalAppData%\\\\\\ Programs\\\\PythonXY` or :file:`%LocalAppData%\\" -"\\\\ Programs\\\\PythonXY-32`" +"\\\\ Programs\\\\PythonXY-32` or :file:`%LocalAppData%\\\\\\ Programs\\" +"\\PythonXY-64`" msgstr "" ":file:`%LocalAppData%\\\\\\ Programs\\\\PythonXY` ou :file:`%LocalAppData%\\" "\\\\ Programs\\\\PythonXY-32`" -#: ../Doc/using/windows.rst:159 +#: ../Doc/using/windows.rst:161 msgid "DefaultCustomTargetDir" msgstr "DefaultCustomTargetDir" -#: ../Doc/using/windows.rst:159 +#: ../Doc/using/windows.rst:161 msgid "The default custom install directory displayed in the UI" msgstr "" "Le dossier d'installation personnalisé par défaut affiché par l'interface " "utilisateur" -#: ../Doc/using/windows.rst:159 ../Doc/using/windows.rst:208 +#: ../Doc/using/windows.rst:161 ../Doc/using/windows.rst:210 msgid "(empty)" msgstr "(vide)" -#: ../Doc/using/windows.rst:162 +#: ../Doc/using/windows.rst:164 msgid "AssociateFiles" msgstr "AssociateFiles" -#: ../Doc/using/windows.rst:162 +#: ../Doc/using/windows.rst:164 msgid "Create file associations if the launcher is also installed." msgstr "Crée les associations de fichiers si le lanceur est aussi installé." -#: ../Doc/using/windows.rst:162 ../Doc/using/windows.rst:172 -#: ../Doc/using/windows.rst:175 ../Doc/using/windows.rst:179 -#: ../Doc/using/windows.rst:182 ../Doc/using/windows.rst:185 -#: ../Doc/using/windows.rst:187 ../Doc/using/windows.rst:190 -#: ../Doc/using/windows.rst:193 ../Doc/using/windows.rst:197 -#: ../Doc/using/windows.rst:199 ../Doc/using/windows.rst:201 +#: ../Doc/using/windows.rst:164 ../Doc/using/windows.rst:174 +#: ../Doc/using/windows.rst:177 ../Doc/using/windows.rst:181 +#: ../Doc/using/windows.rst:184 ../Doc/using/windows.rst:187 +#: ../Doc/using/windows.rst:189 ../Doc/using/windows.rst:192 +#: ../Doc/using/windows.rst:195 ../Doc/using/windows.rst:199 +#: ../Doc/using/windows.rst:201 ../Doc/using/windows.rst:203 msgid "1" msgstr "1" -#: ../Doc/using/windows.rst:165 +#: ../Doc/using/windows.rst:167 msgid "CompileAll" msgstr "CompileAll" -#: ../Doc/using/windows.rst:165 +#: ../Doc/using/windows.rst:167 msgid "Compile all ``.py`` files to ``.pyc``." msgstr "Compile tous les fichiers ``.py`` en ``.pyc``." -#: ../Doc/using/windows.rst:168 +#: ../Doc/using/windows.rst:170 msgid "PrependPath" msgstr "PrependPath" -#: ../Doc/using/windows.rst:168 +#: ../Doc/using/windows.rst:170 msgid "" "Add install and Scripts directories to :envvar:`PATH` and ``.PY`` to :envvar:" "`PATHEXT`" @@ -455,141 +457,141 @@ msgstr "" "Ajoute les dossiers ``install`` et ``Scripts`` à :envvar:`PATH` et assigne " "``.PY`` à :envvar:`PATHEXT`" -#: ../Doc/using/windows.rst:172 +#: ../Doc/using/windows.rst:174 msgid "Shortcuts" msgstr "Shortcuts" -#: ../Doc/using/windows.rst:172 +#: ../Doc/using/windows.rst:174 msgid "" "Create shortcuts for the interpreter, documentation and IDLE if installed." msgstr "" "Crée des raccourcis pour l'interpréteur, la documentation et IDLE si " "installé." -#: ../Doc/using/windows.rst:175 +#: ../Doc/using/windows.rst:177 msgid "Include_doc" msgstr "Include_doc" -#: ../Doc/using/windows.rst:175 +#: ../Doc/using/windows.rst:177 msgid "Install Python manual" msgstr "Installe le manuel Python" -#: ../Doc/using/windows.rst:177 +#: ../Doc/using/windows.rst:179 msgid "Include_debug" msgstr "Include_debug" -#: ../Doc/using/windows.rst:177 +#: ../Doc/using/windows.rst:179 msgid "Install debug binaries" msgstr "Installe les binaires de débogage" -#: ../Doc/using/windows.rst:179 +#: ../Doc/using/windows.rst:181 msgid "Include_dev" msgstr "Include_dev" -#: ../Doc/using/windows.rst:179 +#: ../Doc/using/windows.rst:181 msgid "Install developer headers and libraries" msgstr "Installe les fichiers d'en-tête et les bibliothèques développeur" -#: ../Doc/using/windows.rst:182 +#: ../Doc/using/windows.rst:184 msgid "Include_exe" msgstr "Include_exe" -#: ../Doc/using/windows.rst:182 +#: ../Doc/using/windows.rst:184 msgid "Install :file:`python.exe` and related files" msgstr "Installe :file:`python.exe` et les fichiers connexes" -#: ../Doc/using/windows.rst:185 +#: ../Doc/using/windows.rst:187 msgid "Include_launcher" msgstr "Include_launcher" -#: ../Doc/using/windows.rst:185 +#: ../Doc/using/windows.rst:187 msgid "Install :ref:`launcher`." msgstr "Installe le :ref:`launcher`." -#: ../Doc/using/windows.rst:187 +#: ../Doc/using/windows.rst:189 msgid "InstallLauncherAllUsers" msgstr "InstallLauncherAllUsers" -#: ../Doc/using/windows.rst:187 +#: ../Doc/using/windows.rst:189 msgid "Installs :ref:`launcher` for all users." msgstr "Installe le :ref:`launcher` pour tous les utilisateurs." -#: ../Doc/using/windows.rst:190 +#: ../Doc/using/windows.rst:192 msgid "Include_lib" msgstr "Include_lib" -#: ../Doc/using/windows.rst:190 +#: ../Doc/using/windows.rst:192 msgid "Install standard library and extension modules" msgstr "Installe la bibliothèque standard et les modules d'extension" -#: ../Doc/using/windows.rst:193 +#: ../Doc/using/windows.rst:195 msgid "Include_pip" msgstr "Include_pip" -#: ../Doc/using/windows.rst:193 +#: ../Doc/using/windows.rst:195 msgid "Install bundled pip and setuptools" msgstr "Installe ``pip`` et ``setuptools``" -#: ../Doc/using/windows.rst:195 +#: ../Doc/using/windows.rst:197 msgid "Include_symbols" msgstr "Include_symbols" -#: ../Doc/using/windows.rst:195 +#: ../Doc/using/windows.rst:197 msgid "Install debugging symbols (`*`.pdb)" msgstr "Installe les symboles de débogage (``*.pdb``)" -#: ../Doc/using/windows.rst:197 +#: ../Doc/using/windows.rst:199 msgid "Include_tcltk" msgstr "Include_tcltk" -#: ../Doc/using/windows.rst:197 +#: ../Doc/using/windows.rst:199 msgid "Install Tcl/Tk support and IDLE" msgstr "Installe Tcl/Tk et IDLE" -#: ../Doc/using/windows.rst:199 +#: ../Doc/using/windows.rst:201 msgid "Include_test" msgstr "Include_test" -#: ../Doc/using/windows.rst:199 +#: ../Doc/using/windows.rst:201 msgid "Install standard library test suite" msgstr "Installe la suite de tests de la bibliothèque standard" -#: ../Doc/using/windows.rst:201 +#: ../Doc/using/windows.rst:203 msgid "Include_tools" msgstr "Include_tools" -#: ../Doc/using/windows.rst:201 +#: ../Doc/using/windows.rst:203 msgid "Install utility scripts" msgstr "Installe les scripts utilitaires" -#: ../Doc/using/windows.rst:203 +#: ../Doc/using/windows.rst:205 msgid "LauncherOnly" msgstr "LauncherOnly" -#: ../Doc/using/windows.rst:203 +#: ../Doc/using/windows.rst:205 msgid "Only installs the launcher. This will override most other options." msgstr "" "Installe seulement le lanceur. Ceci écrasera la plupart des autres options." -#: ../Doc/using/windows.rst:206 +#: ../Doc/using/windows.rst:208 msgid "SimpleInstall" msgstr "SimpleInstall" -#: ../Doc/using/windows.rst:206 +#: ../Doc/using/windows.rst:208 msgid "Disable most install UI" msgstr "Désactive la plupart de l'interface d'installation" -#: ../Doc/using/windows.rst:208 +#: ../Doc/using/windows.rst:210 msgid "SimpleInstallDescription" msgstr "SimpleInstallDescription" -#: ../Doc/using/windows.rst:208 +#: ../Doc/using/windows.rst:210 msgid "A custom message to display when the simplified install UI is used." msgstr "" "Un message personnalisé à afficher quand l'interface d'installation " "simplifiée est utilisée." -#: ../Doc/using/windows.rst:212 +#: ../Doc/using/windows.rst:214 msgid "" "For example, to silently install a default, system-wide Python installation, " "you could use the following command (from an elevated command prompt)::" @@ -598,7 +600,7 @@ msgstr "" "pourriez utilisez la commande suivante (depuis une invite de commande " "administrateur) ::" -#: ../Doc/using/windows.rst:217 +#: ../Doc/using/windows.rst:219 msgid "" "To allow users to easily install a personal copy of Python without the test " "suite, you could provide a shortcut with the following command. This will " @@ -609,7 +611,7 @@ msgstr "" "suivante. Cela affichera une page initiale simplifiée et interdira la " "personnalisation ::" -#: ../Doc/using/windows.rst:224 +#: ../Doc/using/windows.rst:226 msgid "" "(Note that omitting the launcher also omits file associations, and is only " "recommended for per-user installs when there is also a system-wide " @@ -619,7 +621,7 @@ msgstr "" "n'est recommandé que pour les installations par utilisateur quand il y a " "aussi une installation complète sur le système qui a inclus de lanceur.)" -#: ../Doc/using/windows.rst:228 +#: ../Doc/using/windows.rst:230 msgid "" "The options listed above can also be provided in a file named ``unattend." "xml`` alongside the executable. This file specifies a list of options and " @@ -634,11 +636,11 @@ msgstr "" "texte sont toujours laissées en tant que chaînes de caractères. Ce fichier " "d'exemple propose les mêmes options que l'exemple précédent :" -#: ../Doc/using/windows.rst:247 +#: ../Doc/using/windows.rst:249 msgid "Installing Without Downloading" msgstr "Installation sans téléchargement" -#: ../Doc/using/windows.rst:249 +#: ../Doc/using/windows.rst:251 msgid "" "As some features of Python are not included in the initial installer " "download, selecting those features may require an internet connection. To " @@ -658,7 +660,7 @@ msgstr "" "d'installations doivent être faites, il est très utile d'avoir une copie " "locale." -#: ../Doc/using/windows.rst:257 +#: ../Doc/using/windows.rst:259 msgid "" "Execute the following command from Command Prompt to download all possible " "required files. Remember to substitute ``python-3.7.0.exe`` for the actual " @@ -671,17 +673,17 @@ msgstr "" "des *couches* dans leurs propres dossiers pour éviter les conflits entre " "fichiers du même nom." -#: ../Doc/using/windows.rst:266 +#: ../Doc/using/windows.rst:268 msgid "" "You may also specify the ``/quiet`` option to hide the progress display." msgstr "" "Vous pouvez aussi spécifier l'option ``/quiet`` pour masquer la progression." -#: ../Doc/using/windows.rst:269 +#: ../Doc/using/windows.rst:271 msgid "Modifying an install" msgstr "Modification d'une installation" -#: ../Doc/using/windows.rst:271 +#: ../Doc/using/windows.rst:273 msgid "" "Once Python has been installed, you can add or remove features through the " "Programs and Features tool that is part of Windows. Select the Python entry " @@ -693,7 +695,7 @@ msgstr "" "\"Uninstall/Change\" (Désinstaller/Modifier) pour ouvrir l'installateur en " "mode maintenance." -#: ../Doc/using/windows.rst:275 +#: ../Doc/using/windows.rst:277 msgid "" "\"Modify\" allows you to add or remove features by modifying the checkboxes " "- unchanged checkboxes will not install or remove anything. Some options " @@ -706,7 +708,7 @@ msgstr "" "mode, comme le dossier d'installation. Pour modifier ces options, vous " "devrez ré-installer Python entièrement." -#: ../Doc/using/windows.rst:280 +#: ../Doc/using/windows.rst:282 msgid "" "\"Repair\" will verify all the files that should be installed using the " "current settings and replace any that have been removed or modified." @@ -715,7 +717,7 @@ msgstr "" "paramètres actuels le sont, et remplacera ceux qui ont étés supprimés ou " "modifiés." -#: ../Doc/using/windows.rst:283 +#: ../Doc/using/windows.rst:285 msgid "" "\"Uninstall\" will remove Python entirely, with the exception of the :ref:" "`launcher`, which has its own entry in Programs and Features." @@ -723,11 +725,11 @@ msgstr "" "\"Uninstall\" désinstallera Python entièrement, à l'exception du :ref:" "`launcher` qui à sa propre ligne dans *Programs and Features*." -#: ../Doc/using/windows.rst:290 +#: ../Doc/using/windows.rst:292 msgid "The Microsoft Store package" msgstr "Le paquet Microsoft Store" -#: ../Doc/using/windows.rst:295 +#: ../Doc/using/windows.rst:297 msgid "" "The Microsoft Store package is currently considered unstable while its " "interactions with other tools and other copies of Python are evaluated. " @@ -740,7 +742,7 @@ msgstr "" "d'installation peut modifier son comportement et ses capacités durant les " "versions de Python 3.7." -#: ../Doc/using/windows.rst:300 +#: ../Doc/using/windows.rst:302 msgid "" "The Microsoft Store package is an easily installable Python interpreter that " "is intended mainly for interactive use, for example, by students." @@ -749,7 +751,7 @@ msgstr "" "installable qui est destiné principalement à une utilisation interactive, " "par exemple, par des étudiants." -#: ../Doc/using/windows.rst:303 +#: ../Doc/using/windows.rst:305 msgid "" "To install the package, ensure you have the latest Windows 10 updates and " "search the Microsoft Store app for \"Python |version|\". Ensure that the app " @@ -760,7 +762,7 @@ msgstr "" "version|”. Assurez-vous que l'application que vous sélectionnez est publiée " "par la *Python Software Foundation* et installez-la." -#: ../Doc/using/windows.rst:308 +#: ../Doc/using/windows.rst:310 msgid "" "Python will always be available for free on the Microsoft Store. If you are " "asked to pay for it, you have not selected the correct package." @@ -768,7 +770,7 @@ msgstr "" "Python sera toujours disponible gratuitement sur le Microsoft Store. Si vous " "êtes invité à payer, vous n'avez pas sélectionné le bon paquet." -#: ../Doc/using/windows.rst:311 +#: ../Doc/using/windows.rst:313 msgid "" "After installation, Python may be launched by finding it in Start. " "Alternatively, it will be available from any Command Prompt or PowerShell " @@ -781,7 +783,7 @@ msgstr "" "en entrant ``pip`` ou ``idle`` . IDLE peut également être trouvé dans le " "menu Démarrer." -#: ../Doc/using/windows.rst:316 +#: ../Doc/using/windows.rst:318 msgid "" "All three commands are also available with version number suffixes, for " "example, as ``python3.exe`` and ``python3.x.exe`` as well as ``python.exe`` " @@ -793,7 +795,7 @@ msgstr "" "``python.exe`` (ou ``3.x`` est la version spécifique que vous souhaitez " "lancer, tel que |version|)." -#: ../Doc/using/windows.rst:321 +#: ../Doc/using/windows.rst:323 msgid "" "Virtual environments can be created with ``python -m venv`` and activated " "and used as normal." @@ -801,7 +803,7 @@ msgstr "" "Les environnements virtuels peuvent être créés avec ``python -m venv`` et " "activés et utilisés normalement." -#: ../Doc/using/windows.rst:324 +#: ../Doc/using/windows.rst:326 msgid "" "If you have installed another version of Python and added it to your " "``PATH`` variable, it will be available as ``python.exe`` rather than the " @@ -813,7 +815,7 @@ msgstr "" "exe`` plutôt que celle de la boutique Microsoft. Pour accéder à la nouvelle " "installation, utilisez ``python3.exe`` ou ``python3.x.exe``." -#: ../Doc/using/windows.rst:329 +#: ../Doc/using/windows.rst:331 msgid "" "To remove Python, open Settings and use Apps and Features, or else find " "Python in Start and right-click to select Uninstall. Uninstalling will " @@ -827,11 +829,11 @@ msgstr "" "installés directement dans cette installation Python, mais ne supprimera " "aucun environnement virtuel" -#: ../Doc/using/windows.rst:335 +#: ../Doc/using/windows.rst:337 msgid "Known Issues" msgstr "Problèmes connus" -#: ../Doc/using/windows.rst:337 +#: ../Doc/using/windows.rst:339 msgid "" "Currently, the ``py.exe`` launcher cannot be used to start Python when it " "has been installed from the Microsoft Store." @@ -839,7 +841,7 @@ msgstr "" "Actuellement, le lanceur ``py.exe`` ne peut pas être utilisé pour démarrer " "Python lorsqu'il a été installé à partir de la boutique Microsoft." -#: ../Doc/using/windows.rst:340 +#: ../Doc/using/windows.rst:342 msgid "" "Because of restrictions on Microsoft Store apps, Python scripts may not have " "full write access to shared locations such as ``TEMP`` and the registry. " @@ -852,11 +854,11 @@ msgstr "" "une copie privée. Si vos scripts doivent modifier les emplacements partagés, " "vous devrez installer le programme d'installation complet." -#: ../Doc/using/windows.rst:349 +#: ../Doc/using/windows.rst:351 msgid "The nuget.org packages" msgstr "Les paquets *nuget.org*" -#: ../Doc/using/windows.rst:353 +#: ../Doc/using/windows.rst:355 msgid "" "The nuget.org package is a reduced size Python environment intended for use " "on continuous integration and build systems that do not have a system-wide " @@ -869,7 +871,7 @@ msgstr "" "package pour .NET”, il fonctionne également parfaitement bien pour les " "packages contenant des outils de *build-time*." -#: ../Doc/using/windows.rst:358 +#: ../Doc/using/windows.rst:360 msgid "" "Visit `nuget.org `_ for the most up-to-date " "information on using nuget. What follows is a summary that is sufficient for " @@ -879,7 +881,7 @@ msgstr "" "à jour sur l'utilisation de *nuget*. Ce qui suit est un résumé suffisant " "pour les développeurs Python." -#: ../Doc/using/windows.rst:362 +#: ../Doc/using/windows.rst:364 msgid "" "The ``nuget.exe`` command line tool may be downloaded directly from " "``https://aka.ms/nugetclidl``, for example, using curl or PowerShell. With " @@ -891,7 +893,7 @@ msgstr "" "ou de PowerShell. Avec l'outil, la dernière version de Python pour les " "machines 64 bits ou 32 bits est installée à l'aide de ::" -#: ../Doc/using/windows.rst:370 +#: ../Doc/using/windows.rst:372 msgid "" "To select a particular version, add a ``-Version 3.x.y``. The output " "directory may be changed from ``.``, and the package will be installed into " @@ -907,7 +909,7 @@ msgstr "" "version spécifique installée. À l'intérieur du sous-répertoire se trouve un " "répertoire ``tools`` qui contient l'installation Python ::" -#: ../Doc/using/windows.rst:385 +#: ../Doc/using/windows.rst:387 msgid "" "In general, nuget packages are not upgradeable, and newer versions should be " "installed side-by-side and referenced using the full path. Alternatively, " @@ -921,7 +923,7 @@ msgstr "" "systèmes CI le feront automatiquement s'ils ne conservent pas les fichiers " "entre les *builds*." -#: ../Doc/using/windows.rst:390 +#: ../Doc/using/windows.rst:392 msgid "" "Alongside the ``tools`` directory is a ``build\\native`` directory. This " "contains a MSBuild properties file ``python.props`` that can be used in a C+" @@ -934,7 +936,7 @@ msgstr "" "L'inclusion des paramètres utilisera automatiquement les en-têtes et les " "bibliothèques d'importation dans votre *build*." -#: ../Doc/using/windows.rst:395 +#: ../Doc/using/windows.rst:397 msgid "" "The package information pages on nuget.org are `www.nuget.org/packages/" "python `_ for the 64-bit version and " @@ -946,11 +948,11 @@ msgstr "" "nuget.org/packages/pythonx86 `_ " "pour la version 32 Bits." -#: ../Doc/using/windows.rst:404 +#: ../Doc/using/windows.rst:406 msgid "The embeddable package" msgstr "Le paquet intégrable" -#: ../Doc/using/windows.rst:408 +#: ../Doc/using/windows.rst:410 msgid "" "The embedded distribution is a ZIP file containing a minimal Python " "environment. It is intended for acting as part of another application, " @@ -960,7 +962,7 @@ msgstr "" "Python minimal. Il est destiné à agir dans le cadre d'une autre application, " "plutôt que d'être directement accessible par les utilisateurs finaux." -#: ../Doc/using/windows.rst:412 +#: ../Doc/using/windows.rst:414 msgid "" "When extracted, the embedded distribution is (almost) fully isolated from " "the user's system, including environment variables, system registry " @@ -978,7 +980,7 @@ msgstr "" "``pythonw.exe`` sont tous fournis. *Tcl/Tk* (y compris tous les dépendants, " "telles que IDLE), pip et la documentation Python ne sont pas inclus." -#: ../Doc/using/windows.rst:421 +#: ../Doc/using/windows.rst:423 msgid "" "The embedded distribution does not include the `Microsoft C Runtime `_ and it is the " @@ -994,7 +996,7 @@ msgstr "" "automatiquement via Windows Update, et peut être détecté en trouvant " "``ucrtbase.dll`` dans le répertoire système." -#: ../Doc/using/windows.rst:428 +#: ../Doc/using/windows.rst:430 msgid "" "Third-party packages should be installed by the application installer " "alongside the embedded distribution. Using pip to manage dependencies as for " @@ -1014,18 +1016,18 @@ msgstr "" "les versions plus récentes avant de fournir des mises à jour aux " "utilisateurs." -#: ../Doc/using/windows.rst:436 +#: ../Doc/using/windows.rst:438 msgid "" "The two recommended use cases for this distribution are described below." msgstr "" "Les deux cas d'utilisation recommandés pour cette distribution sont décrits " "ci-dessous." -#: ../Doc/using/windows.rst:439 +#: ../Doc/using/windows.rst:441 msgid "Python Application" msgstr "Application Python" -#: ../Doc/using/windows.rst:441 +#: ../Doc/using/windows.rst:443 msgid "" "An application written in Python does not necessarily require users to be " "aware of that fact. The embedded distribution may be used in this case to " @@ -1040,7 +1042,7 @@ msgstr "" "inversement, à quel point il doit paraître professionnel), il y a deux " "options." -#: ../Doc/using/windows.rst:447 +#: ../Doc/using/windows.rst:449 msgid "" "Using a specialized executable as a launcher requires some coding, but " "provides the most transparent experience for users. With a customized " @@ -1059,7 +1061,7 @@ msgstr "" "la plupart des cas, un lanceur personnalisé devrait simplement pouvoir " "appeler ``Py_Main`` avec une ligne de commande codée en dur." -#: ../Doc/using/windows.rst:454 +#: ../Doc/using/windows.rst:456 msgid "" "The simpler approach is to provide a batch file or generated shortcut that " "directly calls the ``python.exe`` or ``pythonw.exe`` with the required " @@ -1074,7 +1076,7 @@ msgstr "" "peuvent avoir du mal à le distinguer des autres processus Python en cours " "d'exécution ou des associations de fichiers." -#: ../Doc/using/windows.rst:460 +#: ../Doc/using/windows.rst:462 msgid "" "With the latter approach, packages should be installed as directories " "alongside the Python executable to ensure they are available on the path. " @@ -1088,11 +1090,11 @@ msgstr "" "installés dans d'autres emplacements car il y a une possibilité de spécifier " "le chemin de recherche avant de lancer l'application." -#: ../Doc/using/windows.rst:466 +#: ../Doc/using/windows.rst:468 msgid "Embedding Python" msgstr "Embarquer Python" -#: ../Doc/using/windows.rst:468 +#: ../Doc/using/windows.rst:470 msgid "" "Applications written in native code often require some form of scripting " "language, and the embedded Python distribution can be used for this purpose. " @@ -1110,7 +1112,7 @@ msgstr "" "dans un sous-répertoire de l'installation de l'application est suffisante " "pour fournir un interpréteur Python chargeable." -#: ../Doc/using/windows.rst:475 +#: ../Doc/using/windows.rst:477 msgid "" "As with the application use, packages can be installed to any location as " "there is an opportunity to specify search paths before initializing the " @@ -1123,11 +1125,11 @@ msgstr "" "pas de différences fondamentales entre l'utilisation de la distribution " "embarquée et une installation classique." -#: ../Doc/using/windows.rst:482 +#: ../Doc/using/windows.rst:484 msgid "Alternative bundles" msgstr "Paquets alternatifs" -#: ../Doc/using/windows.rst:484 +#: ../Doc/using/windows.rst:486 msgid "" "Besides the standard CPython distribution, there are modified packages " "including additional functionality. The following is a list of popular " @@ -1137,21 +1139,21 @@ msgstr "" "incluant des fonctionnalités additionnelles. La liste qui suit est une liste " "de versions populaires et de leurs fonctionnalités principales :" -#: ../Doc/using/windows.rst:489 +#: ../Doc/using/windows.rst:491 msgid "`ActivePython `_" msgstr "`ActivePython `_" -#: ../Doc/using/windows.rst:489 +#: ../Doc/using/windows.rst:491 msgid "Installer with multi-platform compatibility, documentation, PyWin32" msgstr "" "Installeur avec une compatibilité multi-plateforme, de la documentation, et " "*PyWin32*" -#: ../Doc/using/windows.rst:493 +#: ../Doc/using/windows.rst:495 msgid "`Anaconda `_" msgstr "`Anaconda `_" -#: ../Doc/using/windows.rst:492 +#: ../Doc/using/windows.rst:494 msgid "" "Popular scientific modules (such as numpy, scipy and pandas) and the " "``conda`` package manager." @@ -1159,11 +1161,11 @@ msgstr "" "Des modules scientifiques populaires (comme *numpy*, *scipy* et *pandas*) et " "le gestionnaire de paquets ``conda``." -#: ../Doc/using/windows.rst:497 +#: ../Doc/using/windows.rst:499 msgid "`Canopy `_" msgstr "`Canopy `_" -#: ../Doc/using/windows.rst:496 +#: ../Doc/using/windows.rst:498 msgid "" "A \"comprehensive Python analysis environment\" with editors and other " "development tools." @@ -1171,11 +1173,11 @@ msgstr "" "Un \"environnement d'analyse complet Python\" avec des éditeurs et autres " "outils de développement." -#: ../Doc/using/windows.rst:501 +#: ../Doc/using/windows.rst:503 msgid "`WinPython `_" msgstr "`WinPython `_" -#: ../Doc/using/windows.rst:500 +#: ../Doc/using/windows.rst:502 msgid "" "Windows-specific distribution with prebuilt scientific packages and tools " "for building packages." @@ -1183,7 +1185,7 @@ msgstr "" "Distribution spécifique à Windows avec des paquets scientifiques pré-" "compilés et des outils pour construire des paquets." -#: ../Doc/using/windows.rst:503 +#: ../Doc/using/windows.rst:505 msgid "" "Note that these packages may not include the latest versions of Python or " "other libraries, and are not maintained or supported by the core Python team." @@ -1192,11 +1194,11 @@ msgstr "" "ou d'autres bibliothèques, et ne sont pas maintenus ni supportés par les " "*core devs* Python." -#: ../Doc/using/windows.rst:509 +#: ../Doc/using/windows.rst:511 msgid "Configuring Python" msgstr "Configurer Python" -#: ../Doc/using/windows.rst:511 +#: ../Doc/using/windows.rst:513 msgid "" "To run Python conveniently from a command prompt, you might consider " "changing some default environment variables in Windows. While the installer " @@ -1212,11 +1214,11 @@ msgstr "" "régulièrement plusieurs versions de Python, pensez à utiliser le :ref:" "`launcher`." -#: ../Doc/using/windows.rst:521 +#: ../Doc/using/windows.rst:523 msgid "Excursus: Setting environment variables" msgstr "Digression : Définition des variables d'environnement" -#: ../Doc/using/windows.rst:523 +#: ../Doc/using/windows.rst:525 msgid "" "Windows allows environment variables to be configured permanently at both " "the User level and the System level, or temporarily in a command prompt." @@ -1225,7 +1227,7 @@ msgstr "" "permanente au niveau de l'utilisateur et du système, ou temporairement dans " "une invite de commandes." -#: ../Doc/using/windows.rst:526 +#: ../Doc/using/windows.rst:528 msgid "" "To temporarily set environment variables, open Command Prompt and use the :" "command:`set` command:" @@ -1233,7 +1235,7 @@ msgstr "" "Pour définir temporairement les variables d'environnement, ouvrez l'invite " "de commandes et utilisez la commande :command:`set` :" -#: ../Doc/using/windows.rst:535 +#: ../Doc/using/windows.rst:537 msgid "" "These changes will apply to any further commands executed in that console, " "and will be inherited by any applications started from the console." @@ -1242,7 +1244,7 @@ msgstr "" "dans cette console et seront héritées par toutes les applications démarrées " "à partir de cette console." -#: ../Doc/using/windows.rst:538 +#: ../Doc/using/windows.rst:540 msgid "" "Including the variable name within percent signs will expand to the existing " "value, allowing you to add your new value at either the start or the end. " @@ -1255,7 +1257,7 @@ msgstr "" "Ajouter :program:`python.exe` au début de :envvar:`PATH` est un moyen " "courant de s'assurer que la version correcte de Python est lancée." -#: ../Doc/using/windows.rst:544 +#: ../Doc/using/windows.rst:546 msgid "" "To permanently modify the default environment variables, click Start and " "search for 'edit environment variables', or open System properties, :" @@ -1273,7 +1275,7 @@ msgstr "" "besoin d'un accès non restreint à votre ordinateur (c'est-à-dire aux droits " "d'administrateur)." -#: ../Doc/using/windows.rst:553 +#: ../Doc/using/windows.rst:555 msgid "" "Windows will concatenate User variables *after* System variables, which may " "cause unexpected results when modifying :envvar:`PATH`." @@ -1282,7 +1284,7 @@ msgstr "" "systèmes, ce qui peut provoquer des résultats inattendus lors de la " "modification de :envvar:`PATH`." -#: ../Doc/using/windows.rst:556 +#: ../Doc/using/windows.rst:558 msgid "" "The :envvar:`PYTHONPATH` variable is used by all versions of Python 2 and " "Python 3, so you should not permanently configure this variable unless it " @@ -1294,34 +1296,34 @@ msgstr "" "façon permanente à moins qu'elle n'ajoute que du code compatible avec toutes " "les versions de Python installées." -#: ../Doc/using/windows.rst:564 +#: ../Doc/using/windows.rst:566 msgid "https://www.microsoft.com/en-us/wdsi/help/folder-variables" msgstr "https://www.microsoft.com/en-us/wdsi/help/folder-variables" -#: ../Doc/using/windows.rst:564 +#: ../Doc/using/windows.rst:566 msgid "Environment variables in Windows NT" msgstr "Variables d'environnement dans Windows NT" -#: ../Doc/using/windows.rst:567 +#: ../Doc/using/windows.rst:569 msgid "https://technet.microsoft.com/en-us/library/cc754250.aspx" msgstr "https://technet.microsoft.com/en-us/library/cc754250.aspx" -#: ../Doc/using/windows.rst:567 +#: ../Doc/using/windows.rst:569 msgid "The SET command, for temporarily modifying environment variables" msgstr "" "La commande SET, pour modifier temporairement les variables d'environnement" -#: ../Doc/using/windows.rst:570 +#: ../Doc/using/windows.rst:572 msgid "https://technet.microsoft.com/en-us/library/cc755104.aspx" msgstr "https://technet.microsoft.com/en-us/library/cc755104.aspx" -#: ../Doc/using/windows.rst:570 +#: ../Doc/using/windows.rst:572 msgid "The SETX command, for permanently modifying environment variables" msgstr "" "La commande SETX, pour modifier de façon permanente les variables " "d'environnement" -#: ../Doc/using/windows.rst:573 +#: ../Doc/using/windows.rst:575 msgid "" "https://support.microsoft.com/en-us/help/310519/how-to-manage-environment-" "variables-in-windows-xp" @@ -1329,23 +1331,23 @@ msgstr "" "https://support.microsoft.com/en-us/help/310519/how-to-manage-environment-" "variables-in-windows-xp" -#: ../Doc/using/windows.rst:573 +#: ../Doc/using/windows.rst:575 msgid "How To Manage Environment Variables in Windows XP" msgstr "Comment gérer les variables d'environnement sous Windows XP" -#: ../Doc/using/windows.rst:575 +#: ../Doc/using/windows.rst:577 msgid "https://www.chem.gla.ac.uk/~louis/software/faq/q1.html" msgstr "https://www.chem.gla.ac.uk/~louis/software/faq/q1.html" -#: ../Doc/using/windows.rst:576 +#: ../Doc/using/windows.rst:578 msgid "Setting Environment variables, Louis J. Farrugia" msgstr "Définir les variables d'environnement, *Louis J. Farrugia*" -#: ../Doc/using/windows.rst:581 +#: ../Doc/using/windows.rst:583 msgid "Finding the Python executable" msgstr "Trouver l'exécutable Python" -#: ../Doc/using/windows.rst:585 +#: ../Doc/using/windows.rst:587 msgid "" "Besides using the automatically created start menu entry for the Python " "interpreter, you might want to start Python in the command prompt. The " @@ -1356,7 +1358,7 @@ msgstr "" "l'invite de commandes. L'installateur a une option pour installer cela pour " "vous." -#: ../Doc/using/windows.rst:589 +#: ../Doc/using/windows.rst:591 msgid "" "On the first page of the installer, an option labelled \"Add Python to PATH" "\" may be selected to have the installer add the install location into the :" @@ -1375,7 +1377,7 @@ msgstr "" "avec les options de ligne de commande, voir la documentation :ref:`using-on-" "cmdline`." -#: ../Doc/using/windows.rst:596 +#: ../Doc/using/windows.rst:598 msgid "" "If you don't enable this option at install time, you can always re-run the " "installer, select Modify, and enable it. Alternatively, you can manually " @@ -1394,11 +1396,11 @@ msgstr "" "variable d'exemple pourrait ressembler à ceci (en supposant que les deux " "premières entrées existaient déjà) ::" -#: ../Doc/using/windows.rst:609 +#: ../Doc/using/windows.rst:611 msgid "Python Launcher for Windows" msgstr "Lanceur Python pour Windows" -#: ../Doc/using/windows.rst:613 +#: ../Doc/using/windows.rst:615 msgid "" "The Python launcher for Windows is a utility which aids in locating and " "executing of different Python versions. It allows scripts (or the command-" @@ -1410,7 +1412,7 @@ msgstr "" "à la ligne de commande) d'indiquer une préférence pour une version Python " "spécifique, cherchera et exécutera cette version." -#: ../Doc/using/windows.rst:618 +#: ../Doc/using/windows.rst:620 msgid "" "Unlike the :envvar:`PATH` variable, the launcher will correctly select the " "most appropriate version of Python. It will prefer per-user installations " @@ -1422,19 +1424,19 @@ msgstr "" "installations par utilisateur sur celles du système, et les trie par version " "plutôt que d'utiliser la version la plus récente installée." -#: ../Doc/using/windows.rst:623 +#: ../Doc/using/windows.rst:625 msgid "The launcher was originally specified in :pep:`397`." msgstr "Le lanceur a été initialement spécifié dans :pep:`397`." -#: ../Doc/using/windows.rst:626 +#: ../Doc/using/windows.rst:628 msgid "Getting started" msgstr "Pour commencer" -#: ../Doc/using/windows.rst:629 +#: ../Doc/using/windows.rst:631 msgid "From the command-line" msgstr "Depuis la ligne de commande" -#: ../Doc/using/windows.rst:633 +#: ../Doc/using/windows.rst:635 msgid "" "System-wide installations of Python 3.3 and later will put the launcher on " "your :envvar:`PATH`. The launcher is compatible with all available versions " @@ -1447,7 +1449,7 @@ msgstr "" "vérifier que le lanceur est disponible, exécutez la commande suivante dans " "l'invite de commandes :" -#: ../Doc/using/windows.rst:642 +#: ../Doc/using/windows.rst:644 msgid "" "You should find that the latest version of Python you have installed is " "started - it can be exited as normal, and any additional command-line " @@ -1457,7 +1459,7 @@ msgstr "" "peut être quitté normalement, et tous les arguments de ligne de commande " "supplémentaires spécifiés seront envoyés directement à Python." -#: ../Doc/using/windows.rst:646 +#: ../Doc/using/windows.rst:648 msgid "" "If you have multiple versions of Python installed (e.g., 2.7 and |version|) " "you will have noticed that Python |version| was started - to launch Python " @@ -1467,7 +1469,7 @@ msgstr "" "version|), vous aurez remarqué que Python |version| se lance -- pour lancer " "Python 2.7, essayez la commande :" -#: ../Doc/using/windows.rst:654 +#: ../Doc/using/windows.rst:656 msgid "" "If you want the latest version of Python 2.x you have installed, try the " "command:" @@ -1475,15 +1477,15 @@ msgstr "" "Si vous voulez que la dernière version de Python 2.x que vous avez installé, " "essayez la commande :" -#: ../Doc/using/windows.rst:661 +#: ../Doc/using/windows.rst:663 msgid "You should find the latest version of Python 2.x starts." msgstr "Remarquez que la dernière version de Python 2.x démarre." -#: ../Doc/using/windows.rst:663 +#: ../Doc/using/windows.rst:665 msgid "If you see the following error, you do not have the launcher installed:" msgstr "Si vous voyez l'erreur suivante, le lanceur n'est pas installé :" -#: ../Doc/using/windows.rst:670 +#: ../Doc/using/windows.rst:672 msgid "" "Per-user installations of Python do not add the launcher to :envvar:`PATH` " "unless the option was selected on installation." @@ -1491,11 +1493,11 @@ msgstr "" "Les installations par utilisateur de Python n'ajoutent pas le lanceur à :" "envvar:`PATH` sauf si l'option a été sélectionnée lors de l'installation." -#: ../Doc/using/windows.rst:674 +#: ../Doc/using/windows.rst:676 msgid "Virtual environments" msgstr "Environnements virtuels" -#: ../Doc/using/windows.rst:678 +#: ../Doc/using/windows.rst:680 msgid "" "If the launcher is run with no explicit Python version specification, and a " "virtual environment (created with the standard library :mod:`venv` module or " @@ -1511,11 +1513,11 @@ msgstr "" "Pour exécuter l'interpréteur global, désactivez l'environnement virtuel ou " "spécifiez explicitement la version Python globale." -#: ../Doc/using/windows.rst:686 +#: ../Doc/using/windows.rst:688 msgid "From a script" msgstr "À partir d'un script" -#: ../Doc/using/windows.rst:688 +#: ../Doc/using/windows.rst:690 msgid "" "Let's create a test Python script - create a file called ``hello.py`` with " "the following contents" @@ -1523,13 +1525,13 @@ msgstr "" "Créons un script Python de test, créez un fichier appelé ``hello.py`` avec " "le contenu suivant" -#: ../Doc/using/windows.rst:697 +#: ../Doc/using/windows.rst:699 msgid "From the directory in which hello.py lives, execute the command:" msgstr "" "À partir du répertoire dans lequel se trouve ``hello.py``, exécutez la " "commande :" -#: ../Doc/using/windows.rst:703 +#: ../Doc/using/windows.rst:705 msgid "" "You should notice the version number of your latest Python 2.x installation " "is printed. Now try changing the first line to be:" @@ -1537,7 +1539,7 @@ msgstr "" "Vous devriez voir le numéro de version du Python 2.x le plus récemment " "installé. Maintenant, essayez de changer la première ligne en :" -#: ../Doc/using/windows.rst:710 +#: ../Doc/using/windows.rst:712 msgid "" "Re-executing the command should now print the latest Python 3.x information. " "As with the above command-line examples, you can specify a more explicit " @@ -1552,7 +1554,7 @@ msgstr "" "python2.6`` et vous devriez trouver les informations de version 2.6 " "imprimées." -#: ../Doc/using/windows.rst:716 +#: ../Doc/using/windows.rst:718 msgid "" "Note that unlike interactive use, a bare \"python\" will use the latest " "version of Python 2.x that you have installed. This is for backward " @@ -1564,11 +1566,11 @@ msgstr "" "pour la compatibilité ascendante et pour la compatibilité avec UNIX, où la " "commande ``python`` fait généralement référence à Python 2." -#: ../Doc/using/windows.rst:722 +#: ../Doc/using/windows.rst:724 msgid "From file associations" msgstr "À partir d'associations de fichiers" -#: ../Doc/using/windows.rst:724 +#: ../Doc/using/windows.rst:726 msgid "" "The launcher should have been associated with Python files (i.e. ``.py``, ``." "pyw``, ``.pyc`` files) when it was installed. This means that when you " @@ -1583,7 +1585,7 @@ msgstr "" "les mêmes installations décrites ci-dessus pour que le script spécifie la " "version qui doit être utilisée." -#: ../Doc/using/windows.rst:730 +#: ../Doc/using/windows.rst:732 msgid "" "The key benefit of this is that a single launcher can support multiple " "Python versions at the same time depending on the contents of the first line." @@ -1592,11 +1594,11 @@ msgstr "" "plusieurs versions de Python en même temps en fonction du contenu de la " "première ligne." -#: ../Doc/using/windows.rst:734 +#: ../Doc/using/windows.rst:736 msgid "Shebang Lines" msgstr "Lignes Shebang" -#: ../Doc/using/windows.rst:736 +#: ../Doc/using/windows.rst:738 msgid "" "If the first line of a script file starts with ``#!``, it is known as a " "\"shebang\" line. Linux and other Unix like operating systems have native " @@ -1613,7 +1615,7 @@ msgstr "" "des scripts Python sur Windows et les exemples ci-dessus démontrent leur " "utilisation." -#: ../Doc/using/windows.rst:743 +#: ../Doc/using/windows.rst:745 msgid "" "To allow shebang lines in Python scripts to be portable between Unix and " "Windows, this launcher supports a number of 'virtual' commands to specify " @@ -1624,27 +1626,27 @@ msgstr "" "« virtuelles » pour spécifier l'interpréteur à utiliser. Les commandes " "virtuelles prises en charge sont :" -#: ../Doc/using/windows.rst:747 +#: ../Doc/using/windows.rst:749 msgid "``/usr/bin/env python``" msgstr "``/usr/bin/env python``" -#: ../Doc/using/windows.rst:748 +#: ../Doc/using/windows.rst:750 msgid "``/usr/bin/python``" msgstr "``/usr/bin/python``" -#: ../Doc/using/windows.rst:749 +#: ../Doc/using/windows.rst:751 msgid "``/usr/local/bin/python``" msgstr "``/usr/local/bin/python``" -#: ../Doc/using/windows.rst:750 +#: ../Doc/using/windows.rst:752 msgid "``python``" msgstr "``python``" -#: ../Doc/using/windows.rst:752 +#: ../Doc/using/windows.rst:754 msgid "For example, if the first line of your script starts with" msgstr "Par exemple, si la première ligne de votre script commence par" -#: ../Doc/using/windows.rst:758 +#: ../Doc/using/windows.rst:760 msgid "" "The default Python will be located and used. As many Python scripts written " "to work on Unix will already have this line, you should find these scripts " @@ -1658,19 +1660,28 @@ msgstr "" "nouveau script sur Windows et que vous pensez qu'il sera utile sur UNIX, " "vous devez utiliser l'une des lignes *shebang* commençant par ``/usr``." -#: ../Doc/using/windows.rst:764 +#: ../Doc/using/windows.rst:766 +#, fuzzy msgid "" "Any of the above virtual commands can be suffixed with an explicit version " -"(either just the major version, or the major and minor version) - for " -"example ``/usr/bin/python2.7`` - which will cause that specific version to " -"be located and used." +"(either just the major version, or the major and minor version). Furthermore " +"the 32-bit version can be requested by adding \"-32\" after the minor " +"version. I.e. ``/usr/bin/python2.7-32`` will request usage of the 32-bit " +"python 2.7." msgstr "" "Les commandes virtuelles ci-dessus peuvent être suffixées avec une version " "explicite (soit seulement la version principale, soit la version principale " "et mineure) — par exemple ``/usr/bin/python2.7`` — ce qui entraînera " "l'utilisation de cette version spécifique." -#: ../Doc/using/windows.rst:769 +#: ../Doc/using/windows.rst:774 +msgid "" +"Beginning with python launcher 3.7 it is possible to request 64-bit version " +"by the \"-64\" suffix. Furthermore it is possible to specify a major and " +"architecture without minor (i.e. ``/usr/bin/python3-64``)." +msgstr "" + +#: ../Doc/using/windows.rst:778 msgid "" "The ``/usr/bin/env`` form of shebang line has one further special property. " "Before looking for installed Python interpreters, this form will search the " @@ -1684,11 +1695,11 @@ msgstr "" "au comportement du programme Unix ``env``, qui effectue une recherche dans :" "envvar:`PATH`." -#: ../Doc/using/windows.rst:775 +#: ../Doc/using/windows.rst:784 msgid "Arguments in shebang lines" msgstr "Arguments dans les lignes *shebang*" -#: ../Doc/using/windows.rst:777 +#: ../Doc/using/windows.rst:786 msgid "" "The shebang lines can also specify additional options to be passed to the " "Python interpreter. For example, if you have a shebang line:" @@ -1697,19 +1708,19 @@ msgstr "" "à passer à l'interpréteur Python. Par exemple, si vous avez une ligne " "*shebang* :" -#: ../Doc/using/windows.rst:784 +#: ../Doc/using/windows.rst:793 msgid "Then Python will be started with the ``-v`` option" msgstr "Alors, Python sera démarré avec l'option ``-v``" -#: ../Doc/using/windows.rst:787 +#: ../Doc/using/windows.rst:796 msgid "Customization" msgstr "Personnalisation" -#: ../Doc/using/windows.rst:790 +#: ../Doc/using/windows.rst:799 msgid "Customization via INI files" msgstr "Personnalisation via des fichiers INI" -#: ../Doc/using/windows.rst:792 +#: ../Doc/using/windows.rst:801 msgid "" "Two .ini files will be searched by the launcher - ``py.ini`` in the current " "user's \"application data\" directory (i.e. the directory returned by " @@ -1726,7 +1737,7 @@ msgstr "" "« console » du lanceur (c'est-à-dire ``py.exe``) et pour la version " "« fenêtrée » (c'est-à-dire ``pyw.exe``)." -#: ../Doc/using/windows.rst:799 +#: ../Doc/using/windows.rst:808 msgid "" "Customization specified in the \"application directory\" will have " "precedence over the one next to the executable, so a user, who may not have " @@ -1738,18 +1749,19 @@ msgstr "" "qui peut ne pas avoir accès en écriture au fichier ``.ini`` à côté du " "lanceur, peut substituer des commandes dans ce fichier ``.ini`` global)" -#: ../Doc/using/windows.rst:804 +#: ../Doc/using/windows.rst:813 msgid "Customizing default Python versions" msgstr "Personnalisation des versions Python par défaut" -#: ../Doc/using/windows.rst:806 +#: ../Doc/using/windows.rst:815 +#, fuzzy msgid "" "In some cases, a version qualifier can be included in a command to dictate " "which version of Python will be used by the command. A version qualifier " "starts with a major version number and can optionally be followed by a " -"period ('.') and a minor version specifier. If the minor qualifier is " -"specified, it may optionally be followed by \"-32\" to indicate the 32-bit " -"implementation of that version be used." +"period ('.') and a minor version specifier. Furthermore it is possible to " +"specifiy if a 32 or 64 bit implementation shall be requested by adding " +"\"-32\" or \"-64\"." msgstr "" "Dans certains cas, un qualificateur de version peut être inclus dans une " "commande pour dicter quelle version de Python sera utilisée par la commande. " @@ -1759,7 +1771,7 @@ msgstr "" "éventuellement être suivi de ``-32`` pour forcer l'utilisation d'une version " "32 bits." -#: ../Doc/using/windows.rst:813 +#: ../Doc/using/windows.rst:821 msgid "" "For example, a shebang line of ``#!python`` has no version qualifier, while " "``#!python3`` has a version qualifier which specifies only a major version." @@ -1768,13 +1780,15 @@ msgstr "" "qualificateur de version, tandis que ``#!python3`` a un qualificateur de " "version qui ne spécifie qu'une version majeure." -#: ../Doc/using/windows.rst:816 +#: ../Doc/using/windows.rst:824 +#, fuzzy msgid "" -"If no version qualifiers are found in a command, the environment variable " -"``PY_PYTHON`` can be set to specify the default version qualifier - the " -"default value is \"2\". Note this value could specify just a major version " -"(e.g. \"2\") or a major.minor qualifier (e.g. \"2.6\"), or even major." -"minor-32." +"If no version qualifiers are found in a command, the environment variable :" +"envvar:`PY_PYTHON` can be set to specify the default version qualifier. If " +"it is not set, the default is \"3\". The variable can specify any value that " +"may be passed on the command line, such as \"3\", \"3.7\", \"3.7-32\" or " +"\"3.7-64\". (Note that the \"-64\" option is only available with the " +"launcher included with Python 3.7 or newer.)" msgstr "" "Si aucun qualificateur de version n'est trouvé dans une commande, la " "variable d'environnement ``PY_PYTHON`` peut être définie pour spécifier le " @@ -1783,7 +1797,7 @@ msgstr "" "\"2\") ou un qualificatif ``majeur.mineur`` (par ex. \"2.6\"), ou même " "``majeur.mineur-32``." -#: ../Doc/using/windows.rst:821 +#: ../Doc/using/windows.rst:831 msgid "" "If no minor version qualifiers are found, the environment variable " "``PY_PYTHON{major}`` (where ``{major}`` is the current major version " @@ -1801,7 +1815,8 @@ msgstr "" "la dernière version mineure trouvée pour la version principale, qui est " "probablement la plus récemment installée dans cette famille." -#: ../Doc/using/windows.rst:829 +#: ../Doc/using/windows.rst:839 +#, fuzzy msgid "" "On 64-bit Windows with both 32-bit and 64-bit implementations of the same " "(major.minor) Python version installed, the 64-bit version will always be " @@ -1811,8 +1826,8 @@ msgid "" "of the launcher can be predicted knowing only what versions are installed on " "the PC and without regard to the order in which they were installed (i.e., " "without knowing whether a 32 or 64-bit version of Python and corresponding " -"launcher was installed last). As noted above, an optional \"-32\" suffix can " -"be used on a version specifier to change this behaviour." +"launcher was installed last). As noted above, an optional \"-32\" or \"-64\" " +"suffix can be used on a version specifier to change this behaviour." msgstr "" "Sur Windows 64-bits avec les implémentations 32-bits et 64-bits de la même " "version Python (``major.minor``) installée, la version 64-bit est toujours " @@ -1826,11 +1841,11 @@ msgstr "" "un suffixe optionnel ``-32`` peut être utilisé sur un spécificateur de " "version pour modifier ce comportement." -#: ../Doc/using/windows.rst:840 +#: ../Doc/using/windows.rst:850 msgid "Examples:" msgstr "Exemples :" -#: ../Doc/using/windows.rst:842 +#: ../Doc/using/windows.rst:852 msgid "" "If no relevant options are set, the commands ``python`` and ``python2`` will " "use the latest Python 2.x version installed and the command ``python3`` will " @@ -1840,7 +1855,7 @@ msgstr "" "``python2`` utiliseront la dernière version de Python 2.x installée et la " "commande ``python3`` utilisera le dernier Python 3.x installé." -#: ../Doc/using/windows.rst:846 +#: ../Doc/using/windows.rst:856 msgid "" "The commands ``python3.1`` and ``python2.7`` will not consult any options at " "all as the versions are fully specified." @@ -1848,7 +1863,7 @@ msgstr "" "Les commandes ``python3.1`` et ``python2.7`` ne consultent aucune option du " "tout car les versions sont entièrement spécifiées." -#: ../Doc/using/windows.rst:849 +#: ../Doc/using/windows.rst:859 msgid "" "If ``PY_PYTHON=3``, the commands ``python`` and ``python3`` will both use " "the latest installed Python 3 version." @@ -1856,7 +1871,7 @@ msgstr "" "Si ``PY_PYTHON=3``, les commandes ``python`` et ``python3`` utiliseront la " "dernière version de Python 3 installée." -#: ../Doc/using/windows.rst:852 +#: ../Doc/using/windows.rst:862 msgid "" "If ``PY_PYTHON=3.1-32``, the command ``python`` will use the 32-bit " "implementation of 3.1 whereas the command ``python3`` will use the latest " @@ -1868,7 +1883,7 @@ msgstr "" "installé (*PY_PYTHON* n'a pas été considéré du tout comme une version " "majeure a été spécifiée.)" -#: ../Doc/using/windows.rst:857 +#: ../Doc/using/windows.rst:867 msgid "" "If ``PY_PYTHON=3`` and ``PY_PYTHON3=3.1``, the commands ``python`` and " "``python3`` will both use specifically 3.1" @@ -1876,7 +1891,7 @@ msgstr "" "Si ``PY_PYTHON=3`` et ``PY_PYTHON3=3.1``, les commandes ``python`` et " "``python3`` utiliseront spécifiquement 3.1" -#: ../Doc/using/windows.rst:860 +#: ../Doc/using/windows.rst:870 msgid "" "In addition to environment variables, the same settings can be configured in " "the .INI file used by the launcher. The section in the INI file is called " @@ -1893,15 +1908,15 @@ msgstr "" "contenu d'une variable d'environnement remplacera les éléments spécifiés " "dans le fichier *INI*." -#: ../Doc/using/windows.rst:867 +#: ../Doc/using/windows.rst:877 msgid "For example:" msgstr "Par exemple :" -#: ../Doc/using/windows.rst:869 +#: ../Doc/using/windows.rst:879 msgid "Setting ``PY_PYTHON=3.1`` is equivalent to the INI file containing:" msgstr "Le paramètre ``PY_PYTHON=3.1`` équivaut au fichier **INI** contenant :" -#: ../Doc/using/windows.rst:876 +#: ../Doc/using/windows.rst:886 msgid "" "Setting ``PY_PYTHON=3`` and ``PY_PYTHON3=3.1`` is equivalent to the INI file " "containing:" @@ -1909,11 +1924,11 @@ msgstr "" "Le paramètre ``PY_PYTHON=3`` et ``PY_PYTHON3=3.1`` équivaut au fichier *INI* " "contenant :" -#: ../Doc/using/windows.rst:886 +#: ../Doc/using/windows.rst:896 msgid "Diagnostics" msgstr "Diagnostics" -#: ../Doc/using/windows.rst:888 +#: ../Doc/using/windows.rst:898 msgid "" "If an environment variable ``PYLAUNCH_DEBUG`` is set (to any value), the " "launcher will print diagnostic information to stderr (i.e. to the console). " @@ -1930,11 +1945,11 @@ msgstr "" "une version particulière a été choisie et la ligne de commande exacte " "utilisée pour exécuter le Python cible." -#: ../Doc/using/windows.rst:900 +#: ../Doc/using/windows.rst:910 msgid "Finding modules" msgstr "Recherche de modules" -#: ../Doc/using/windows.rst:902 +#: ../Doc/using/windows.rst:912 msgid "" "Python usually stores its library (and thereby your site-packages folder) in " "the installation directory. So, if you had installed Python to :file:`C:\\" @@ -1948,7 +1963,7 @@ msgstr "" "dans :file:`C:\\\\Python\\\\Lib\\\\` et les modules tiers devraient être " "stockés dans :file:`C:\\\\Python\\\\Lib\\\\site-packages\\\\`." -#: ../Doc/using/windows.rst:908 +#: ../Doc/using/windows.rst:918 msgid "" "To completely override :data:`sys.path`, create a ``._pth`` file with the " "same name as the DLL (``python37._pth``) or the executable (``python._pth``) " @@ -1963,7 +1978,7 @@ msgstr "" "l'exécutable, qui permet aux chemins d'être restreints pour tout programme " "chargeant le *runtime* si désiré." -#: ../Doc/using/windows.rst:914 +#: ../Doc/using/windows.rst:924 msgid "" "When the file exists, all registry and environment variables are ignored, " "isolated mode is enabled, and :mod:`site` is not imported unless one line in " @@ -1980,7 +1995,7 @@ msgstr "" "autre que vers *site* ne sont pas autorisés, ni n'importe quelle instruction " "Python." -#: ../Doc/using/windows.rst:921 +#: ../Doc/using/windows.rst:931 msgid "" "Note that ``.pth`` files (without leading underscore) will be processed " "normally by the :mod:`site` module when ``import site`` has been specified." @@ -1989,7 +2004,7 @@ msgstr "" "seront traités normalement par le module :mod:`site` lorsque ``import site`` " "a été spécifié." -#: ../Doc/using/windows.rst:924 +#: ../Doc/using/windows.rst:934 msgid "" "When no ``._pth`` file is found, this is how :data:`sys.path` is populated " "on Windows:" @@ -1997,14 +2012,14 @@ msgstr "" "Lorsque aucun fichier ``._pth`` n'est trouvé, voilà comment :data:`sys.path` " "est construit sur Windows :" -#: ../Doc/using/windows.rst:927 +#: ../Doc/using/windows.rst:937 msgid "" "An empty entry is added at the start, which corresponds to the current " "directory." msgstr "" "Une entrée vide est ajoutée au début, qui correspond au répertoire courant." -#: ../Doc/using/windows.rst:930 +#: ../Doc/using/windows.rst:940 msgid "" "If the environment variable :envvar:`PYTHONPATH` exists, as described in :" "ref:`using-on-envvars`, its entries are added next. Note that on Windows, " @@ -2017,7 +2032,7 @@ msgstr "" "des points-virgules, pour les distinguer des deux points utilisés dans les " "identificateurs de lecteur (``C:\\`` etc.)." -#: ../Doc/using/windows.rst:935 +#: ../Doc/using/windows.rst:945 msgid "" "Additional \"application paths\" can be added in the registry as subkeys of :" "samp:`\\\\SOFTWARE\\\\Python\\\\PythonCore\\\\{version}\\\\PythonPath` under " @@ -2035,7 +2050,7 @@ msgstr "" "tous les installateurs connus utilisent seulement HKLM, donc HKCU est " "généralement vide.)" -#: ../Doc/using/windows.rst:942 +#: ../Doc/using/windows.rst:952 msgid "" "If the environment variable :envvar:`PYTHONHOME` is set, it is assumed as " "\"Python Home\". Otherwise, the path of the main Python executable is used " @@ -2054,7 +2069,7 @@ msgstr "" "chemin d'accès Python principal est construit à partir du PythonPath stocké " "dans le registre." -#: ../Doc/using/windows.rst:950 +#: ../Doc/using/windows.rst:960 msgid "" "If the Python Home cannot be located, no :envvar:`PYTHONPATH` is specified " "in the environment, and no registry entries can be found, a default path " @@ -2065,7 +2080,7 @@ msgstr "" "trouvée, un chemin par défaut avec des entrées relatives est utilisé (par " "exemple ``.\\Lib`` ; ``.\\plat-win``, etc.)." -#: ../Doc/using/windows.rst:954 +#: ../Doc/using/windows.rst:964 msgid "" "If a ``pyvenv.cfg`` file is found alongside the main executable or in the " "directory one level above the executable, the following variations apply:" @@ -2074,7 +2089,7 @@ msgstr "" "dans le répertoire un niveau au-dessus de l'exécutable, les variantes " "suivantes s'appliquent :" -#: ../Doc/using/windows.rst:957 +#: ../Doc/using/windows.rst:967 msgid "" "If ``home`` is an absolute path and :envvar:`PYTHONHOME` is not set, this " "path is used instead of the path to the main executable when deducing the " @@ -2084,11 +2099,11 @@ msgstr "" "ce chemin d'accès est utilisé au lieu du chemin d'accès à l'exécutable " "principal lors de la déduction de l'emplacement du `home`." -#: ../Doc/using/windows.rst:961 +#: ../Doc/using/windows.rst:971 msgid "The end result of all this is:" msgstr "Le résultat final de tout ceci est :" -#: ../Doc/using/windows.rst:963 +#: ../Doc/using/windows.rst:973 msgid "" "When running :file:`python.exe`, or any other .exe in the main Python " "directory (either an installed version, or directly from the PCbuild " @@ -2101,7 +2116,7 @@ msgstr "" "chemins d'accès principaux dans le Registre sont ignorés. D'autres \"chemins " "d'application\" dans le registre sont toujours lus." -#: ../Doc/using/windows.rst:968 +#: ../Doc/using/windows.rst:978 msgid "" "When Python is hosted in another .exe (different directory, embedded via " "COM, etc), the \"Python Home\" will not be deduced, so the core path from " @@ -2113,7 +2128,7 @@ msgstr "" "sorte que le chemin d'accès principal du registre est utilisé. D'autres " "\"chemins d'application\" dans le registre sont toujours lus." -#: ../Doc/using/windows.rst:972 +#: ../Doc/using/windows.rst:982 msgid "" "If Python can't find its home and there are no registry value (frozen .exe, " "some very strange installation setup) you get a path with some default, but " @@ -2123,7 +2138,7 @@ msgstr "" "registre (*.exe* gelé, une installation très étrange) vous obtenez un chemin " "d'accès avec certains chemins par défaut, mais relatif." -#: ../Doc/using/windows.rst:976 +#: ../Doc/using/windows.rst:986 msgid "" "For those who want to bundle Python into their application or distribution, " "the following advice will prevent conflicts with other installations:" @@ -2132,7 +2147,7 @@ msgstr "" "distribution, les conseils suivants empêcheront les conflits avec d'autres " "installations :" -#: ../Doc/using/windows.rst:979 +#: ../Doc/using/windows.rst:989 msgid "" "Include a ``._pth`` file alongside your executable containing the " "directories to include. This will ignore paths listed in the registry and " @@ -2144,7 +2159,7 @@ msgstr "" "registre et les variables d'environnement, et ignorera également :mod:`site` " "à moins que ``import site`` soit listé." -#: ../Doc/using/windows.rst:984 +#: ../Doc/using/windows.rst:994 msgid "" "If you are loading :file:`python3.dll` or :file:`python37.dll` in your own " "executable, explicitly call :c:func:`Py_SetPath` or (at least) :c:func:" @@ -2154,7 +2169,7 @@ msgstr "" "propre exécutable, appelez explicitement :c:func:`Py_SetPath` ou (au moins) :" "c:func:`Py_SetProgramName` avant :c:func:`Py_Initialize`." -#: ../Doc/using/windows.rst:988 +#: ../Doc/using/windows.rst:998 msgid "" "Clear and/or overwrite :envvar:`PYTHONPATH` and set :envvar:`PYTHONHOME` " "before launching :file:`python.exe` from your application." @@ -2162,7 +2177,7 @@ msgstr "" "Effacer et/ou écraser :envvar:`PYTHONPATH` et configurez :envvar:" "`PYTHONHOME` avant de lancer le :file:`python.exe` de votre application." -#: ../Doc/using/windows.rst:991 +#: ../Doc/using/windows.rst:1001 msgid "" "If you cannot use the previous suggestions (for example, you are a " "distribution that allows people to run :file:`python.exe` directly), ensure " @@ -2177,7 +2192,7 @@ msgstr "" "détecté à l'intérieur d'un fichier ZIP, mais un fichier ZIP correctement " "nommé sera détecté à la place.)" -#: ../Doc/using/windows.rst:997 +#: ../Doc/using/windows.rst:1007 msgid "" "These will ensure that the files in a system-wide installation will not take " "precedence over the copy of the standard library bundled with your " @@ -2193,7 +2208,7 @@ msgstr "" "suggestion est la meilleure, car les autres peuvent encore être sensibles " "aux chemins non-standard dans le registre et le *site-packages* utilisateur." -#: ../Doc/using/windows.rst:1006 +#: ../Doc/using/windows.rst:1016 msgid "" "Adds ``._pth`` file support and removes ``applocal`` option from ``pyvenv." "cfg``." @@ -2201,7 +2216,7 @@ msgstr "" "Ajout de la gestion des ``._pth`` et suppression de l'option ``applocal`` de " "``pyvenv.cfg``." -#: ../Doc/using/windows.rst:1008 +#: ../Doc/using/windows.rst:1018 msgid "" "Adds ``pythonXX.zip`` as a potential landmark when directly adjacent to the " "executable." @@ -2209,7 +2224,7 @@ msgstr "" "Ajout de ``pythonXX.zip`` comme point de repère potentiel lorsqu'il est " "directement adjacent à l'exécutable." -#: ../Doc/using/windows.rst:1014 +#: ../Doc/using/windows.rst:1024 msgid "" "Modules specified in the registry under ``Modules`` (not ``PythonPath``) may " "be imported by :class:`importlib.machinery.WindowsRegistryFinder`. This " @@ -2222,11 +2237,11 @@ msgstr "" "récent, mais il pourrait être nécessaire de l'ajouter explicitement à :attr:" "`sys.meta_path` à l'avenir." -#: ../Doc/using/windows.rst:1020 +#: ../Doc/using/windows.rst:1030 msgid "Additional modules" msgstr "Modules supplémentaires" -#: ../Doc/using/windows.rst:1022 +#: ../Doc/using/windows.rst:1032 msgid "" "Even though Python aims to be portable among all platforms, there are " "features that are unique to Windows. A couple of modules, both in the " @@ -2237,7 +2252,7 @@ msgstr "" "dans la bibliothèque standard et externe, et des exemples existent pour " "utiliser ces fonctionnalités." -#: ../Doc/using/windows.rst:1026 +#: ../Doc/using/windows.rst:1036 msgid "" "The Windows-specific standard modules are documented in :ref:`mswin-specific-" "services`." @@ -2245,11 +2260,11 @@ msgstr "" "Les modules standard de Windows sont documentés dans :ref:`mswin-specific-" "services`." -#: ../Doc/using/windows.rst:1030 +#: ../Doc/using/windows.rst:1040 msgid "PyWin32" msgstr "PyWin32" -#: ../Doc/using/windows.rst:1032 +#: ../Doc/using/windows.rst:1042 msgid "" "The `PyWin32 `_ module by Mark Hammond is " "a collection of modules for advanced Windows-specific support. This " @@ -2259,23 +2274,23 @@ msgstr "" "une collection de modules pour un support avancé spécifique à Windows. Cela " "inclut les services pour :" -#: ../Doc/using/windows.rst:1036 +#: ../Doc/using/windows.rst:1046 msgid "`Component Object Model `_ (COM)" msgstr "`Component Object Model `_ (COM)" -#: ../Doc/using/windows.rst:1037 +#: ../Doc/using/windows.rst:1047 msgid "Win32 API calls" msgstr "Appels à l'API Win32" -#: ../Doc/using/windows.rst:1038 +#: ../Doc/using/windows.rst:1048 msgid "Registry" msgstr "Registre" -#: ../Doc/using/windows.rst:1039 +#: ../Doc/using/windows.rst:1049 msgid "Event log" msgstr "Journal d'événement" -#: ../Doc/using/windows.rst:1040 +#: ../Doc/using/windows.rst:1050 msgid "" "`Microsoft Foundation Classes `_ (MFC) user interfaces" @@ -2283,7 +2298,7 @@ msgstr "" "`Microsoft Foundation Classes `_ (MFC) interfaces utilisateur" -#: ../Doc/using/windows.rst:1043 +#: ../Doc/using/windows.rst:1053 msgid "" "`PythonWin `_ is a sample MFC application shipped with PyWin32. " @@ -2293,29 +2308,29 @@ msgstr "" "windows/pythonwin/>`_ est un exemple d'application MFC livrée avec PyWin32. " "Il s'agit d'un IDE embarqué avec débogueur intégré." -#: ../Doc/using/windows.rst:1050 +#: ../Doc/using/windows.rst:1060 msgid "" "`Win32 How Do I...? `_" msgstr "" "`Win32 How Do I...? `_" -#: ../Doc/using/windows.rst:1050 +#: ../Doc/using/windows.rst:1060 msgid "by Tim Golden" msgstr "par Tim Golden" -#: ../Doc/using/windows.rst:1052 +#: ../Doc/using/windows.rst:1062 msgid "`Python and COM `_" msgstr "`Python and COM `_" -#: ../Doc/using/windows.rst:1053 +#: ../Doc/using/windows.rst:1063 msgid "by David and Paul Boddie" msgstr "par David et Paul Boddie" -#: ../Doc/using/windows.rst:1057 +#: ../Doc/using/windows.rst:1067 msgid "cx_Freeze" msgstr "cx_Freeze" -#: ../Doc/using/windows.rst:1059 +#: ../Doc/using/windows.rst:1069 msgid "" "`cx_Freeze `_ is a :mod:" "`distutils` extension (see :ref:`extending-distutils`) which wraps Python " @@ -2329,11 +2344,11 @@ msgstr "" "`{*}.exe`). Lorsque vous l'avez fait, vous pouvez distribuer votre " "application sans demander à vos utilisateurs d'installer Python." -#: ../Doc/using/windows.rst:1067 +#: ../Doc/using/windows.rst:1077 msgid "WConio" msgstr "WConio" -#: ../Doc/using/windows.rst:1069 +#: ../Doc/using/windows.rst:1079 msgid "" "Since Python's advanced terminal handling layer, :mod:`curses`, is " "restricted to Unix-like systems, there is a library exclusive to Windows as " @@ -2343,7 +2358,7 @@ msgstr "" "est limité aux systèmes de type UNIX, il existe une bibliothèque exclusive à " "Windows : *Windows Console I/O for Python*." -#: ../Doc/using/windows.rst:1073 +#: ../Doc/using/windows.rst:1083 msgid "" "`WConio `_ is a wrapper " "for Turbo-C's :file:`CONIO.H`, used to create text user interfaces." @@ -2352,11 +2367,11 @@ msgstr "" "*wrapper* pour les fichiers Turbo-C :file:`CONIO.H`, utilisé pour créer des " "interfaces texte utilisateur." -#: ../Doc/using/windows.rst:1079 +#: ../Doc/using/windows.rst:1089 msgid "Compiling Python on Windows" msgstr "Compiler Python sous Windows" -#: ../Doc/using/windows.rst:1081 +#: ../Doc/using/windows.rst:1091 msgid "" "If you want to compile CPython yourself, first thing you should do is get " "the `source `_. You can download " @@ -2368,7 +2383,7 @@ msgstr "" "télécharger soit la source de la dernière version ou tout simplement prendre " "un `checkout `_." -#: ../Doc/using/windows.rst:1086 +#: ../Doc/using/windows.rst:1096 msgid "" "The source tree contains a build solution and project files for Microsoft " "Visual Studio 2015, which is the compiler used to build the official Python " @@ -2379,7 +2394,7 @@ msgstr "" "pour générer les versions officielles de Python. Ces fichiers se trouvent " "dans le répertoire :file:`PCbuild`." -#: ../Doc/using/windows.rst:1090 +#: ../Doc/using/windows.rst:1100 msgid "" "Check :file:`PCbuild/readme.txt` for general information on the build " "process." @@ -2387,11 +2402,11 @@ msgstr "" "Consultez :file:`PC/readme.txt` pour des informations générales sur le " "processus de construction." -#: ../Doc/using/windows.rst:1093 +#: ../Doc/using/windows.rst:1103 msgid "For extension modules, consult :ref:`building-on-windows`." msgstr "Pour les modules d'extension, consultez :ref:`building-on-windows`." -#: ../Doc/using/windows.rst:1100 +#: ../Doc/using/windows.rst:1110 msgid "" "`Python + Windows + distutils + SWIG + gcc MinGW `_" @@ -2399,7 +2414,7 @@ msgstr "" "`Python + Windows + distutils + SWIG + gcc MinGW `_" -#: ../Doc/using/windows.rst:1098 +#: ../Doc/using/windows.rst:1108 msgid "" "or \"Creating Python extensions in C/C++ with SWIG and compiling them with " "MinGW gcc under Windows\" or \"Installing Python extension with distutils " @@ -2409,7 +2424,7 @@ msgstr "" "MinGW gcc under Windows*\" ou \"*Installing Python extension with distutils " "and without Microsoft Visual C++*\" par Sébastien Sauvage, 2003" -#: ../Doc/using/windows.rst:1102 +#: ../Doc/using/windows.rst:1112 msgid "" "`MingW -- Python extensions `_" @@ -2417,15 +2432,15 @@ msgstr "" "`MingW -- Python extensions `_" -#: ../Doc/using/windows.rst:1103 +#: ../Doc/using/windows.rst:1113 msgid "by Trent Apted et al, 2007" msgstr "par Trent Apted et al, 2007" -#: ../Doc/using/windows.rst:1107 +#: ../Doc/using/windows.rst:1117 msgid "Other Platforms" msgstr "Autres plateformes" -#: ../Doc/using/windows.rst:1109 +#: ../Doc/using/windows.rst:1119 msgid "" "With ongoing development of Python, some platforms that used to be supported " "earlier are no longer supported (due to the lack of users or developers). " @@ -2436,12 +2451,12 @@ msgstr "" "manque d'utilisateurs ou de développeurs). Voir :pep:`11` pour plus de " "détails sur toutes les plateformes non prises en charge." -#: ../Doc/using/windows.rst:1113 +#: ../Doc/using/windows.rst:1123 msgid "`Windows CE `_ is still supported." msgstr "" "`Windows CE `_ est toujours pris en charge." -#: ../Doc/using/windows.rst:1114 +#: ../Doc/using/windows.rst:1124 msgid "" "The `Cygwin `_ installer offers to install the Python " "interpreter as well (cf. `Cygwin package source `_, `Maintainer " "releases `_)" -#: ../Doc/using/windows.rst:1120 +#: ../Doc/using/windows.rst:1130 msgid "" "See `Python for Windows `_ for " "detailed information about platforms with pre-compiled installers." From 121bfa0b17de388845f98d118394d80c91bdd4ea Mon Sep 17 00:00:00 2001 From: Mathieu Dupuy Date: Thu, 23 May 2019 20:55:52 +0200 Subject: [PATCH 03/14] =?UTF-8?q?retire=20la=20majuscule=20=C3=A0=20*Bytes?= =?UTF-8?q?*=20(#739)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- library/stdtypes.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/library/stdtypes.po b/library/stdtypes.po index 06211607..9ae147b7 100644 --- a/library/stdtypes.po +++ b/library/stdtypes.po @@ -3934,8 +3934,8 @@ msgid "" "several methods that are only valid when working with ASCII compatible data " "and are closely related to string objects in a variety of other ways." msgstr "" -"Les *Bytes* sont des séquences immuables d'octets. Comme beaucoup de " -"protocoles binaires utilisent l'ASCII, les objets *Bytes* offrent plusieurs " +"Les *bytes* sont des séquences immuables d'octets. Comme beaucoup de " +"protocoles binaires utilisent l'ASCII, les objets *bytes* offrent plusieurs " "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." From fc7633caedd19c8796548f8e05d81a3d66859dcc Mon Sep 17 00:00:00 2001 From: Julien Palard Date: Thu, 23 May 2019 20:56:01 +0200 Subject: [PATCH 04/14] Fuzzy in distributing/index. (#734) --- distributing/index.po | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/distributing/index.po b/distributing/index.po index 53e6fe30..62951c19 100644 --- a/distributing/index.po +++ b/distributing/index.po @@ -6,8 +6,8 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2018-08-01 00:05+0200\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2019-05-23 20:39+0200\n" +"Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" "Language: fr\n" "MIME-Version: 1.0\n" @@ -251,20 +251,16 @@ msgstr "" "outils actuellement recommandés `_." #: ../Doc/distributing/index.rst:123 -#, fuzzy msgid "Reading the Python Packaging User Guide" -msgstr "" -"`(en) Téléverser le projet sur le Python Packaging Index `_" +msgstr "Consultez le *Python Packaging User Guide*" #: ../Doc/distributing/index.rst:125 -#, fuzzy msgid "" "The Python Packaging User Guide covers the various key steps and elements " "involved in creating and publishing a project:" msgstr "" "Le *Python Packaging User Guide* couvre les différentes étapes et les " -"éléments clés de la création et publication d'un projet :" +"éléments clés de la création et publication d'un projet :" #: ../Doc/distributing/index.rst:128 msgid "`Project structure`_" From d169bb6eb2095783288a195b76684143729f582a Mon Sep 17 00:00:00 2001 From: Antoine <43954001+awecx@users.noreply.github.com> Date: Thu, 23 May 2019 21:55:23 +0200 Subject: [PATCH 05/14] Correction powrap + faute mineure (#763) --- library/operator.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/library/operator.po b/library/operator.po index 1822ea88..342599e9 100644 --- a/library/operator.po +++ b/library/operator.po @@ -793,9 +793,9 @@ msgid "" "operator.iadd(x, y)`` is equivalent to the compound statement ``z = x; z += " "y``." msgstr "" -"Beaucoup d'opération ont une version travaillant « en-place ». Les fonctions " -"listées ci-dessous fournissent un accès plus direct aux opérateurs en-place " -"que la syntaxe Python habituelle ; par exemple, l'expression :term:" +"Beaucoup d'opérations ont une version travaillant « en-place ». Les " +"fonctions listées ci-dessous fournissent un accès plus direct aux opérateurs " +"en-place que la syntaxe Python habituelle ; par exemple, l'expression :term:" "`statement` ``x += y`` équivaut à ``x = operator.iadd(x, y)``. Autrement " "dit, l'expression ``z = operator.iadd(x, y)`` équivaut à l'expression " "composée ``z = x; z += y``." From ecee776c785f8267b6c92173dfb31729f5e75b02 Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 08:13:48 +0200 Subject: [PATCH 06/14] Fix fuzzies in reference/datamodel.po (#777) Fixes #752 --- reference/datamodel.po | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/reference/datamodel.po b/reference/datamodel.po index b8652107..56084ebf 100644 --- a/reference/datamodel.po +++ b/reference/datamodel.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2019-04-11 21:33+0200\n" +"PO-Revision-Date: 2019-05-23 21:46+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -2240,7 +2240,6 @@ msgstr "" "chaîne *bytes* d'un objet. Elle doit renvoyer un objet :class:`bytes`." #: ../Doc/reference/datamodel.rst:1315 -#, fuzzy msgid "" "Called by the :func:`format` built-in function, and by extension, evaluation " "of :ref:`formatted string literals ` and the :meth:`str.format` " @@ -2252,9 +2251,9 @@ msgid "" "formatting option syntax." msgstr "" "Appelée par la fonction native :func:`format` et, par extension, lors de " -"l'évaluation de :ref:`formatted string literals ` ou de la " -"méthode :meth:`str.format`. Elle produit une chaîne de caractères \"formatée" -"\" représentant un objet. L'argument ``format_spec`` est une chaîne de " +"l'évaluation de :ref:`formatted string literals ` et la méthode :" +"meth:`str.format`. Elle produit une chaîne de caractères \"formatée\" " +"représentant un objet. L'argument ``format_spec`` est une chaîne de " "caractères contenant la description des options de formatage voulues. " "L'interprétation de l'argument ``format_spec`` est laissée au type " "implémentant :meth:`__format__`. Cependant, la plupart des classes délèguent " From b8a1745553dda1500b1d4e22090579988b5ca843 Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 18:18:53 +0200 Subject: [PATCH 07/14] Fix fuzzies in license.po (#776) Fixes #745 --- license.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/license.po b/license.po index 141046a5..33e294b3 100644 --- a/license.po +++ b/license.po @@ -6,13 +6,14 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2018-07-27 10:02+0200\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2019-05-23 19:50+0200\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: Jules Lasne \n" +"X-Generator: Poedit 2.2.1\n" #: ../Doc/license.rst:7 msgid "History and License" @@ -371,14 +372,13 @@ msgid "SipHash24" msgstr "SipHash24" #: ../Doc/license.rst:563 -#, fuzzy msgid "" "The file :file:`Python/pyhash.c` contains Marek Majkowski' implementation of " "Dan Bernstein's SipHash24 algorithm. It contains the following note::" msgstr "" "Le fichier :file:`Python/pyhash.c` contiens une implémentation par Marek " "Majkowski de l'algorithme *SipHash24* de Dan Bernstein. Il contient la note " -"suivante : ::" +"suivante ::" #: ../Doc/license.rst:590 msgid "strtod and dtoa" From 80edf3e3155c6b9eeb8375a0026af0387cd97b9a Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 18:19:20 +0200 Subject: [PATCH 08/14] Fix fuzzies in library/sys.po (#775) Fixes #751 --- library/sys.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/library/sys.po b/library/sys.po index 9a9c645c..c61b589f 100644 --- a/library/sys.po +++ b/library/sys.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2019-04-11 21:41+0200\n" +"PO-Revision-Date: 2019-05-23 21:46+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -2178,7 +2178,6 @@ msgstr "" "d'exploitation. L'interpréteur n'a pas son propre ordonnanceur." #: ../Doc/library/sys.rst:1172 -#, fuzzy msgid "" "Set the system's trace function, which allows you to implement a Python " "source code debugger in Python. The function is thread-specific; for a " @@ -2187,10 +2186,11 @@ msgid "" "`threading.settrace`." msgstr "" "Définit la fonction de traçage du système, qui vous permet d'implémenter un " -"débogueur de code source Python en Python. Cette fonction est locale au fil " +"débogueur de code source Python en Python. Cette fonction est locale au fil " "d'exécution courant. Pour qu'un débogueur puisse gérer plusieurs fils " "d'exécution, il doit enregistrer sa fonction en appelant :func:`settrace` " -"pour chaque fil d'exécution qu'il souhaite surveiller." +"pour chaque fil d'exécution qu'il souhaite surveiller ou utilisez :func:" +"`threading.settrace`." #: ../Doc/library/sys.rst:1177 msgid "" From 12c2c9c069a66c775dc4ac40914f2257fa25a7fd Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 18:20:58 +0200 Subject: [PATCH 09/14] Fix fuzzies in tutorial/introduction.po (#771) fixes #758 --- tutorial/introduction.po | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/tutorial/introduction.po b/tutorial/introduction.po index 7805ad51..cab43ed5 100644 --- a/tutorial/introduction.po +++ b/tutorial/introduction.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2018-08-01 00:34+0200\n" -"Last-Translator: Julien Palard \n" +"PO-Revision-Date: 2019-05-23 23:05+0200\n" +"Last-Translator: Jules Lasne \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" -"X-Generator: Poedit 2.0.2\n" +"X-Generator: Poedit 2.2.1\n" #: ../Doc/tutorial/introduction.rst:5 msgid "An Informal Introduction to Python" @@ -476,13 +476,12 @@ msgstr "" "du même type, bien qu'à l'usage ce soit souvent le cas. ::" #: ../Doc/tutorial/introduction.rst:386 -#, fuzzy msgid "" "Like strings (and all other built-in :term:`sequence` types), lists can be " "indexed and sliced::" msgstr "" "Comme les chaînes de caractères (et toute autre type de :term:`sequence`), " -"les listes peuvent être indicées et découpées : ::" +"les listes peuvent être indicées et découpées ::" #: ../Doc/tutorial/introduction.rst:396 msgid "" From f83dd51893f438098c0a22db44e48e2378efaf48 Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 18:26:54 +0200 Subject: [PATCH 10/14] Fix fuzzies in reference/lexical_analysis.po (#769) Fixed #756 --- reference/lexical_analysis.po | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/reference/lexical_analysis.po b/reference/lexical_analysis.po index 57262070..4d493743 100644 --- a/reference/lexical_analysis.po +++ b/reference/lexical_analysis.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2018-11-01 22:48+0100\n" -"Last-Translator: \n" +"PO-Revision-Date: 2019-05-23 21:51+0200\n" +"Last-Translator: Jules Lasne \n" "Language-Team: \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.0.2\n" +"X-Generator: Poedit 2.2.1\n" #: ../Doc/reference/lexical_analysis.rst:6 msgid "Lexical analysis" @@ -108,7 +108,6 @@ msgid "Comments" msgstr "Commentaires" #: ../Doc/reference/lexical_analysis.rst:70 -#, fuzzy msgid "" "A comment starts with a hash character (``#``) that is not part of a string " "literal, and ends at the end of the physical line. A comment signifies the " From ecb94467f6f5fc6694a3eb665bc531511d75b7a6 Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 18:32:31 +0200 Subject: [PATCH 11/14] Fix fuzzies in library/subprocess.po (#780) * Fix fuzzies in library/subprocess.po Fixes #750 * Apply suggestions from code review Co-Authored-By: Antoine <43954001+awecx@users.noreply.github.com> * powrap --- library/subprocess.po | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/library/subprocess.po b/library/subprocess.po index c47fbf80..4664b35f 100644 --- a/library/subprocess.po +++ b/library/subprocess.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2019-04-11 18:13+0200\n" +"PO-Revision-Date: 2019-05-23 21:44+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" "Language: fr\n" @@ -97,7 +97,6 @@ msgstr "" "travers cette interface." #: ../Doc/library/subprocess.rst:55 -#, fuzzy msgid "" "If *capture_output* is true, stdout and stderr will be captured. When used, " "the internal :class:`Popen` object is automatically created with " @@ -106,10 +105,13 @@ msgid "" "capture and combine both streams into one, use ``stdout=PIPE`` and " "``stderr=STDOUT`` instead of *capture_output*." msgstr "" -"Si *capture_output* est vrai, la sortie et l'erreur standard sont capturées. " -"Dans ce cas, l'objet interne :class:`Popen` est automatiquement créé avec " -"les arguments ``stdout=PIPE`` et ``stderr=PIPE``. Les arguments *stdout* et " -"*stderr* ne doivent pas être passés en même temps que *capture_output*." +"Si *capture_output* est vrai, la sortie et l'erreur standard (``stdout`` et " +"``stderr``) sont capturées. Dans ce cas, l'objet interne :class:`Popen` est " +"automatiquement créé avec les arguments ``stdout=PIPE`` et ``stderr=PIPE``. " +"Les arguments *stdout* et *stderr* ne doivent pas être passés en même temps " +"que *capture_output*. Si vous souhaitez capturer et combiner les deux flux " +"dans un seul, utilisez ``stdout=PIPE`` et ``stderr=STDOUT`` au lieu de " +"*capture_output*." #: ../Doc/library/subprocess.rst:62 msgid "" From ecd14c964f7ecde02e2cb225d0874bafb5503767 Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 18:35:10 +0200 Subject: [PATCH 12/14] Fix fuzzies in reference/executionmodel.po (#772) * Fix fuzzies in reference/executionmodel.po Fixes #753 * Apply suggestions from code review Co-Authored-By: Antoine <43954001+awecx@users.noreply.github.com> --- reference/executionmodel.po | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/reference/executionmodel.po b/reference/executionmodel.po index fcdfcaa9..4ea5d544 100644 --- a/reference/executionmodel.po +++ b/reference/executionmodel.po @@ -6,14 +6,14 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2019-03-19 23:21+0100\n" +"PO-Revision-Date: 2019-05-23 21:53+0200\n" "Last-Translator: Jules Lasne \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" -"X-Generator: Poedit 2.0.2\n" +"X-Generator: Poedit 2.2.1\n" #: ../Doc/reference/executionmodel.rst:6 msgid "Execution model" @@ -398,17 +398,16 @@ msgstr "" "dans le code en question par le haut)." #: ../Doc/reference/executionmodel.rst:244 -#, fuzzy msgid "" "When an exception is not handled at all, the interpreter terminates " "execution of the program, or returns to its interactive main loop. In " "either case, it prints a stack traceback, except when the exception is :exc:" "`SystemExit`." msgstr "" -"Quand une exception n'est gérée par aucun gestionnaire, l'interpréteur " -"termine l'exécution du programme ou retourne à la boucle interactive. Dans " -"ces cas, il affiche une trace de la pile d'appels, sauf si l'exception est :" -"exc:`SystemExit`." +"Quand une exception n'est pas du tout gérée, l'interpréteur termine " +"l'exécution du programme ou retourne à la boucle interactive. Dans ces cas, " +"il affiche une trace de la pile d'appels, sauf si l'exception est :exc:" +"`SystemExit`." #: ../Doc/reference/executionmodel.rst:248 msgid "" From 41cc658433e0f8773fccbe52a8e30340ad3a4cb9 Mon Sep 17 00:00:00 2001 From: "Jules Lasne (jlasne)" Date: Fri, 24 May 2019 18:38:08 +0200 Subject: [PATCH 13/14] Fix fuzzies in tutorial/whatnow.po (#767) * Fix fuzzies in /whatnow.po fixes #760 * fix missing tag * Apply suggestions from code review Co-Authored-By: Antoine <43954001+awecx@users.noreply.github.com> --- tutorial/whatnow.po | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/tutorial/whatnow.po b/tutorial/whatnow.po index 61e54f45..8fc38b71 100644 --- a/tutorial/whatnow.po +++ b/tutorial/whatnow.po @@ -6,13 +6,14 @@ msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-23 16:48+0200\n" -"PO-Revision-Date: 2018-06-10 15:28+0200\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2019-05-23 23:43+0200\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: Jules Lasne \n" +"X-Generator: Poedit 2.2.1\n" #: ../Doc/tutorial/whatnow.rst:5 msgid "What Now?" @@ -104,7 +105,6 @@ msgstr "" "Python en français." #: ../Doc/tutorial/whatnow.rst:41 -#, fuzzy msgid "" "https://pypi.org: The Python Package Index, previously also nicknamed the " "Cheese Shop [#]_, is an index of user-created Python modules that are " @@ -113,7 +113,7 @@ msgid "" msgstr "" "https://pypi.org (*The Python Package Index* en anglais, pour le " "\"répertoire des paquets Python\") : auparavant surnommé \"La Fromagerie" -"\" (*The Cheese Shop* en anglais), c'est un catalogue de modules Python " +"\" [#]_ (*The Cheese Shop* en anglais), c'est un catalogue de modules Python " "disponibles au téléchargement, construit par les utilisateurs. Lorsque vous " "commencez à distribuer du code, vous pouvez l'inscrire ici afin que les " "autres puissent le trouver." @@ -185,10 +185,13 @@ msgstr "" #: ../Doc/tutorial/whatnow.rst:73 msgid "Footnotes" -msgstr "" +msgstr "Notes" #: ../Doc/tutorial/whatnow.rst:74 msgid "" "\"Cheese Shop\" is a Monty Python's sketch: a customer enters a cheese shop, " "but whatever cheese he asks for, the clerk says it's missing." msgstr "" +"“Cheese Shop” est un sketch de Monty Python : un client entre dans une " +"fromagerie, mais peu importe le fromage que demande le client, le vendeur " +"dit qu’il n’en a pas." From fe7925ffeb31bb4040fe4e3c630801a08ae1dea0 Mon Sep 17 00:00:00 2001 From: Mathieu Dupuy Date: Sun, 26 May 2019 16:39:59 +0200 Subject: [PATCH 14/14] python3.6 suffit pour potodo (#792) --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 1c1f0351..27ceceea 100644 --- a/README.rst +++ b/README.rst @@ -82,7 +82,7 @@ Step by step: Next, you need to find a file to work on. You can use `potodo `, a tool made to find ``po`` to do. -Install it using pip (``pip install potodo``) in a ``python3.7`` environement. +Install it using pip (``pip install potodo``) in a ``python3.6`` (or more) environement. Then run the command ``potodo`` in your cloned fork. From the list returned by the command, you can choose any file that is not reserved.