diff --git a/c-api/buffer.po b/c-api/buffer.po index 4eb1c3d48..f85aea355 100644 --- a/c-api/buffer.po +++ b/c-api/buffer.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-10-04 12:18+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -676,44 +676,51 @@ msgstr "" #: ../Doc/c-api/buffer.rst:486 msgid "" +"Copy contiguous *len* bytes from *buf* to *view*. *fort* can be ``'C'`` or " +"``'F'`` (for C-style or Fortran-style ordering). ``0`` is returned on " +"success, ``-1`` on error." +msgstr "" + +#: ../Doc/c-api/buffer.rst:493 +msgid "" "Copy *len* bytes from *src* to its contiguous representation in *buf*. " -"*order* can be ``'C'`` or ``'F'`` (for C-style or Fortran-style ordering). " -"``0`` is returned on success, ``-1`` on error." +"*order* can be ``'C'`` or ``'F'`` or ``'A'`` (for C-style or Fortran-style " +"ordering or either one). ``0`` is returned on success, ``-1`` on error." msgstr "" -#: ../Doc/c-api/buffer.rst:490 +#: ../Doc/c-api/buffer.rst:497 msgid "This function fails if *len* != *src->len*." msgstr "" -#: ../Doc/c-api/buffer.rst:495 +#: ../Doc/c-api/buffer.rst:502 msgid "" "Fill the *strides* array with byte-strides of a :term:`contiguous` (C-style " "if *order* is ``'C'`` or Fortran-style if *order* is ``'F'``) array of the " "given shape with the given number of bytes per element." msgstr "" -#: ../Doc/c-api/buffer.rst:502 +#: ../Doc/c-api/buffer.rst:509 msgid "" "Handle buffer requests for an exporter that wants to expose *buf* of size " "*len* with writability set according to *readonly*. *buf* is interpreted as " "a sequence of unsigned bytes." msgstr "" -#: ../Doc/c-api/buffer.rst:506 +#: ../Doc/c-api/buffer.rst:513 msgid "" "The *flags* argument indicates the request type. This function always fills " "in *view* as specified by flags, unless *buf* has been designated as read-" "only and :c:macro:`PyBUF_WRITABLE` is set in *flags*." msgstr "" -#: ../Doc/c-api/buffer.rst:510 +#: ../Doc/c-api/buffer.rst:517 msgid "" "On success, set :c:member:`view->obj` to a new reference to *exporter* and " "return 0. Otherwise, raise :c:data:`PyExc_BufferError`, set :c:member:`view-" ">obj` to *NULL* and return ``-1``;" msgstr "" -#: ../Doc/c-api/buffer.rst:514 +#: ../Doc/c-api/buffer.rst:521 msgid "" "If this function is used as part of a :ref:`getbufferproc `, " "*exporter* MUST be set to the exporting object and *flags* must be passed " diff --git a/c-api/init.po b/c-api/init.po index 870442903..eacc17540 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-11-29 18:22+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -467,54 +467,60 @@ msgid "" "than once." msgstr "" -#: ../Doc/c-api/init.rst:309 +#: ../Doc/c-api/init.rst:305 +msgid "" +"Raises an :ref:`auditing event ` ``cpython." +"_PySys_ClearAuditHooks`` with no arguments." +msgstr "" + +#: ../Doc/c-api/init.rst:310 msgid "" "This is a backwards-compatible version of :c:func:`Py_FinalizeEx` that " "disregards the return value." msgstr "" -#: ../Doc/c-api/init.rst:314 +#: ../Doc/c-api/init.rst:315 msgid "Process-wide parameters" msgstr "" -#: ../Doc/c-api/init.rst:324 +#: ../Doc/c-api/init.rst:325 msgid "" "This function should be called before :c:func:`Py_Initialize`, if it is " "called at all. It specifies which encoding and error handling to use with " "standard IO, with the same meanings as in :func:`str.encode`." msgstr "" -#: ../Doc/c-api/init.rst:328 +#: ../Doc/c-api/init.rst:329 msgid "" "It overrides :envvar:`PYTHONIOENCODING` values, and allows embedding code to " "control IO encoding when the environment variable does not work." msgstr "" -#: ../Doc/c-api/init.rst:331 +#: ../Doc/c-api/init.rst:332 msgid "" "``encoding`` and/or ``errors`` may be NULL to use :envvar:`PYTHONIOENCODING` " "and/or default values (depending on other settings)." msgstr "" -#: ../Doc/c-api/init.rst:335 +#: ../Doc/c-api/init.rst:336 msgid "" "Note that :data:`sys.stderr` always uses the \"backslashreplace\" error " "handler, regardless of this (or any other) setting." msgstr "" -#: ../Doc/c-api/init.rst:338 +#: ../Doc/c-api/init.rst:339 msgid "" "If :c:func:`Py_FinalizeEx` is called, this function will need to be called " "again in order to affect subsequent calls to :c:func:`Py_Initialize`." msgstr "" -#: ../Doc/c-api/init.rst:341 +#: ../Doc/c-api/init.rst:342 msgid "" "Returns ``0`` if successful, a nonzero value on error (e.g. calling after " "the interpreter has already been initialized)." msgstr "" -#: ../Doc/c-api/init.rst:354 +#: ../Doc/c-api/init.rst:355 msgid "" "This function should be called before :c:func:`Py_Initialize` is called for " "the first time, if it is called at all. It tells the interpreter the value " @@ -528,22 +534,22 @@ msgid "" "this storage." msgstr "" -#: ../Doc/c-api/init.rst:365 ../Doc/c-api/init.rst:479 -#: ../Doc/c-api/init.rst:581 ../Doc/c-api/init.rst:608 -#: ../Doc/c-api/init.rst:625 +#: ../Doc/c-api/init.rst:366 ../Doc/c-api/init.rst:480 +#: ../Doc/c-api/init.rst:586 ../Doc/c-api/init.rst:613 +#: ../Doc/c-api/init.rst:630 msgid "" "Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:type:" "`wchar_*` string." msgstr "" -#: ../Doc/c-api/init.rst:373 +#: ../Doc/c-api/init.rst:374 msgid "" "Return the program name set with :c:func:`Py_SetProgramName`, or the " "default. The returned string points into static storage; the caller should " "not modify its value." msgstr "" -#: ../Doc/c-api/init.rst:380 +#: ../Doc/c-api/init.rst:381 msgid "" "Return the *prefix* for installed platform-independent files. This is " "derived through a number of complicated rules from the program name set " @@ -557,7 +563,7 @@ msgid "" "function." msgstr "" -#: ../Doc/c-api/init.rst:393 +#: ../Doc/c-api/init.rst:394 msgid "" "Return the *exec-prefix* for installed platform-*dependent* files. This is " "derived through a number of complicated rules from the program name set " @@ -571,7 +577,7 @@ msgid "" "on Unix." msgstr "" -#: ../Doc/c-api/init.rst:403 +#: ../Doc/c-api/init.rst:404 msgid "" "Background: The exec-prefix differs from the prefix when platform dependent " "files (such as executables and shared libraries) are installed in a " @@ -580,7 +586,7 @@ msgid "" "independent may be installed in :file:`/usr/local`." msgstr "" -#: ../Doc/c-api/init.rst:409 +#: ../Doc/c-api/init.rst:410 msgid "" "Generally speaking, a platform is a combination of hardware and software " "families, e.g. Sparc machines running the Solaris 2.x operating system are " @@ -594,7 +600,7 @@ msgid "" "independent from the Python version by which they were compiled!)." msgstr "" -#: ../Doc/c-api/init.rst:420 +#: ../Doc/c-api/init.rst:421 msgid "" "System administrators will know how to configure the :program:`mount` or :" "program:`automount` programs to share :file:`/usr/local` between platforms " @@ -602,7 +608,7 @@ msgid "" "platform." msgstr "" -#: ../Doc/c-api/init.rst:432 +#: ../Doc/c-api/init.rst:433 msgid "" "Return the full program name of the Python executable; this is computed as " "a side-effect of deriving the default module search path from the program " @@ -611,7 +617,7 @@ msgid "" "available to Python code as ``sys.executable``." msgstr "" -#: ../Doc/c-api/init.rst:446 +#: ../Doc/c-api/init.rst:447 msgid "" "Return the default module search path; this is computed from the program " "name (set by :c:func:`Py_SetProgramName` above) and some environment " @@ -624,7 +630,7 @@ msgid "" "for loading modules." msgstr "" -#: ../Doc/c-api/init.rst:466 +#: ../Doc/c-api/init.rst:467 msgid "" "Set the default module search path. If this function is called before :c:" "func:`Py_Initialize`, then :c:func:`Py_GetPath` won't attempt to compute a " @@ -635,27 +641,33 @@ msgid "" "``';'`` on Windows." msgstr "" -#: ../Doc/c-api/init.rst:474 +#: ../Doc/c-api/init.rst:475 msgid "" -"This also causes :data:`sys.executable` to be set only to the raw program " -"name (see :c:func:`Py_SetProgramName`) and for :data:`sys.prefix` and :data:" +"This also causes :data:`sys.executable` to be set to the program full path " +"(see :c:func:`Py_GetProgramFullPath`) and for :data:`sys.prefix` and :data:" "`sys.exec_prefix` to be empty. It is up to the caller to modify these if " "required after calling :c:func:`Py_Initialize`." msgstr "" -#: ../Doc/c-api/init.rst:482 +#: ../Doc/c-api/init.rst:483 msgid "" "The path argument is copied internally, so the caller may free it after the " "call completes." msgstr "" -#: ../Doc/c-api/init.rst:488 +#: ../Doc/c-api/init.rst:486 +msgid "" +"The program full path is now used for :data:`sys.executable`, instead of the " +"program name." +msgstr "" + +#: ../Doc/c-api/init.rst:493 msgid "" "Return the version of this Python interpreter. This is a string that looks " "something like ::" msgstr "" -#: ../Doc/c-api/init.rst:495 +#: ../Doc/c-api/init.rst:500 msgid "" "The first word (up to the first space character) is the current Python " "version; the first three characters are the major and minor version " @@ -664,7 +676,7 @@ msgid "" "as :data:`sys.version`." msgstr "" -#: ../Doc/c-api/init.rst:505 +#: ../Doc/c-api/init.rst:510 msgid "" "Return the platform identifier for the current platform. On Unix, this is " "formed from the \"official\" name of the operating system, converted to " @@ -675,42 +687,42 @@ msgid "" "value is available to Python code as ``sys.platform``." msgstr "" -#: ../Doc/c-api/init.rst:516 +#: ../Doc/c-api/init.rst:521 msgid "" "Return the official copyright string for the current Python version, for " "example" msgstr "" -#: ../Doc/c-api/init.rst:518 +#: ../Doc/c-api/init.rst:523 msgid "``'Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam'``" msgstr "" -#: ../Doc/c-api/init.rst:522 +#: ../Doc/c-api/init.rst:527 msgid "" "The returned string points into static storage; the caller should not modify " "its value. The value is available to Python code as ``sys.copyright``." msgstr "" -#: ../Doc/c-api/init.rst:528 +#: ../Doc/c-api/init.rst:533 msgid "" "Return an indication of the compiler used to build the current Python " "version, in square brackets, for example::" msgstr "" -#: ../Doc/c-api/init.rst:535 ../Doc/c-api/init.rst:549 +#: ../Doc/c-api/init.rst:540 ../Doc/c-api/init.rst:554 msgid "" "The returned string points into static storage; the caller should not modify " "its value. The value is available to Python code as part of the variable " "``sys.version``." msgstr "" -#: ../Doc/c-api/init.rst:542 +#: ../Doc/c-api/init.rst:547 msgid "" "Return information about the sequence number and build date and time of the " "current Python interpreter instance, for example ::" msgstr "" -#: ../Doc/c-api/init.rst:561 +#: ../Doc/c-api/init.rst:566 msgid "" "Set :data:`sys.argv` based on *argc* and *argv*. These parameters are " "similar to those passed to the program's :c:func:`main` function with the " @@ -721,28 +733,28 @@ msgid "" "fatal condition is signalled using :c:func:`Py_FatalError`." msgstr "" -#: ../Doc/c-api/init.rst:569 +#: ../Doc/c-api/init.rst:574 msgid "" "If *updatepath* is zero, this is all the function does. If *updatepath* is " "non-zero, the function also modifies :data:`sys.path` according to the " "following algorithm:" msgstr "" -#: ../Doc/c-api/init.rst:573 +#: ../Doc/c-api/init.rst:578 msgid "" "If the name of an existing script is passed in ``argv[0]``, the absolute " "path of the directory where the script is located is prepended to :data:`sys." "path`." msgstr "" -#: ../Doc/c-api/init.rst:576 +#: ../Doc/c-api/init.rst:581 msgid "" "Otherwise (that is, if *argc* is ``0`` or ``argv[0]`` doesn't point to an " "existing file name), an empty string is prepended to :data:`sys.path`, which " "is the same as prepending the current working directory (``\".\"``)." msgstr "" -#: ../Doc/c-api/init.rst:585 +#: ../Doc/c-api/init.rst:590 msgid "" "It is recommended that applications embedding the Python interpreter for " "purposes other than executing a single script pass ``0`` as *updatepath*, " @@ -750,32 +762,32 @@ msgid "" "`_." msgstr "" -#: ../Doc/c-api/init.rst:590 +#: ../Doc/c-api/init.rst:595 msgid "" "On versions before 3.1.3, you can achieve the same effect by manually " "popping the first :data:`sys.path` element after having called :c:func:" "`PySys_SetArgv`, for example using::" msgstr "" -#: ../Doc/c-api/init.rst:604 +#: ../Doc/c-api/init.rst:609 msgid "" "This function works like :c:func:`PySys_SetArgvEx` with *updatepath* set to " "``1`` unless the :program:`python` interpreter was started with the :option:" "`-I`." msgstr "" -#: ../Doc/c-api/init.rst:611 +#: ../Doc/c-api/init.rst:616 msgid "The *updatepath* value depends on :option:`-I`." msgstr "" -#: ../Doc/c-api/init.rst:616 +#: ../Doc/c-api/init.rst:621 msgid "" "Set the default \"home\" directory, that is, the location of the standard " "Python libraries. See :envvar:`PYTHONHOME` for the meaning of the argument " "string." msgstr "" -#: ../Doc/c-api/init.rst:620 +#: ../Doc/c-api/init.rst:625 msgid "" "The argument should point to a zero-terminated character string in static " "storage whose contents will not change for the duration of the program's " @@ -783,18 +795,18 @@ msgid "" "this storage." msgstr "" -#: ../Doc/c-api/init.rst:631 +#: ../Doc/c-api/init.rst:636 msgid "" "Return the default \"home\", that is, the value set by a previous call to :c:" "func:`Py_SetPythonHome`, or the value of the :envvar:`PYTHONHOME` " "environment variable if it is set." msgstr "" -#: ../Doc/c-api/init.rst:639 +#: ../Doc/c-api/init.rst:644 msgid "Thread State and the Global Interpreter Lock" msgstr "" -#: ../Doc/c-api/init.rst:646 +#: ../Doc/c-api/init.rst:651 msgid "" "The Python interpreter is not fully thread-safe. In order to support multi-" "threaded Python programs, there's a global lock, called the :term:`global " @@ -806,7 +818,7 @@ msgid "" "once instead of twice." msgstr "" -#: ../Doc/c-api/init.rst:656 +#: ../Doc/c-api/init.rst:661 msgid "" "Therefore, the rule exists that only the thread that has acquired the :term:" "`GIL` may operate on Python objects or call Python/C API functions. In order " @@ -816,7 +828,7 @@ msgid "" "a file, so that other Python threads can run in the meantime." msgstr "" -#: ../Doc/c-api/init.rst:667 +#: ../Doc/c-api/init.rst:672 msgid "" "The Python interpreter keeps some thread-specific bookkeeping information " "inside a data structure called :c:type:`PyThreadState`. There's also one " @@ -824,32 +836,32 @@ msgid "" "retrieved using :c:func:`PyThreadState_Get`." msgstr "" -#: ../Doc/c-api/init.rst:673 +#: ../Doc/c-api/init.rst:678 msgid "Releasing the GIL from extension code" msgstr "" -#: ../Doc/c-api/init.rst:675 +#: ../Doc/c-api/init.rst:680 msgid "" "Most extension code manipulating the :term:`GIL` has the following simple " "structure::" msgstr "" -#: ../Doc/c-api/init.rst:684 +#: ../Doc/c-api/init.rst:689 msgid "This is so common that a pair of macros exists to simplify it::" msgstr "" -#: ../Doc/c-api/init.rst:694 +#: ../Doc/c-api/init.rst:699 msgid "" "The :c:macro:`Py_BEGIN_ALLOW_THREADS` macro opens a new block and declares a " "hidden local variable; the :c:macro:`Py_END_ALLOW_THREADS` macro closes the " "block." msgstr "" -#: ../Doc/c-api/init.rst:698 +#: ../Doc/c-api/init.rst:703 msgid "The block above expands to the following code::" msgstr "" -#: ../Doc/c-api/init.rst:710 +#: ../Doc/c-api/init.rst:715 msgid "" "Here is how these functions work: the global interpreter lock is used to " "protect the pointer to the current thread state. When releasing the lock " @@ -860,7 +872,7 @@ msgid "" "state, the lock must be acquired before storing the thread state pointer." msgstr "" -#: ../Doc/c-api/init.rst:719 +#: ../Doc/c-api/init.rst:724 msgid "" "Calling system I/O functions is the most common use case for releasing the " "GIL, but it can also be useful before calling long-running computations " @@ -870,11 +882,11 @@ msgid "" "compressing or hashing data." msgstr "" -#: ../Doc/c-api/init.rst:730 +#: ../Doc/c-api/init.rst:735 msgid "Non-Python created threads" msgstr "" -#: ../Doc/c-api/init.rst:732 +#: ../Doc/c-api/init.rst:737 msgid "" "When threads are created using the dedicated Python APIs (such as the :mod:" "`threading` module), a thread state is automatically associated to them and " @@ -884,7 +896,7 @@ msgid "" "for them." msgstr "" -#: ../Doc/c-api/init.rst:739 +#: ../Doc/c-api/init.rst:744 msgid "" "If you need to call Python code from these threads (often this will be part " "of a callback API provided by the aforementioned third-party library), you " @@ -895,14 +907,14 @@ msgid "" "finally free the thread state data structure." msgstr "" -#: ../Doc/c-api/init.rst:747 +#: ../Doc/c-api/init.rst:752 msgid "" "The :c:func:`PyGILState_Ensure` and :c:func:`PyGILState_Release` functions " "do all of the above automatically. The typical idiom for calling into " "Python from a C thread is::" msgstr "" -#: ../Doc/c-api/init.rst:761 +#: ../Doc/c-api/init.rst:766 msgid "" "Note that the :c:func:`PyGILState_\\*` functions assume there is only one " "global interpreter (created automatically by :c:func:`Py_Initialize`). " @@ -911,7 +923,7 @@ msgid "" "`PyGILState_\\*` API is unsupported." msgstr "" -#: ../Doc/c-api/init.rst:767 +#: ../Doc/c-api/init.rst:772 msgid "" "Another important thing to note about threads is their behaviour in the face " "of the C :c:func:`fork` call. On most systems with :c:func:`fork`, after a " @@ -931,17 +943,17 @@ msgid "" "able to." msgstr "" -#: ../Doc/c-api/init.rst:786 +#: ../Doc/c-api/init.rst:791 msgid "High-level API" msgstr "" -#: ../Doc/c-api/init.rst:788 +#: ../Doc/c-api/init.rst:793 msgid "" "These are the most commonly used types and functions when writing C " "extension code, or when embedding the Python interpreter:" msgstr "" -#: ../Doc/c-api/init.rst:793 +#: ../Doc/c-api/init.rst:798 msgid "" "This data structure represents the state shared by a number of cooperating " "threads. Threads belonging to the same interpreter share their module " @@ -949,7 +961,7 @@ msgid "" "in this structure." msgstr "" -#: ../Doc/c-api/init.rst:798 +#: ../Doc/c-api/init.rst:803 msgid "" "Threads belonging to different interpreters initially share nothing, except " "process state like available memory, open file descriptors and such. The " @@ -957,14 +969,14 @@ msgid "" "which interpreter they belong." msgstr "" -#: ../Doc/c-api/init.rst:806 +#: ../Doc/c-api/init.rst:811 msgid "" "This data structure represents the state of a single thread. The only " "public data member is :c:type:`PyInterpreterState \\*`:attr:`interp`, which " "points to this thread's interpreter state." msgstr "" -#: ../Doc/c-api/init.rst:819 +#: ../Doc/c-api/init.rst:824 msgid "" "Initialize and acquire the global interpreter lock. It should be called in " "the main thread before creating a second thread or engaging in any other " @@ -972,33 +984,33 @@ msgid "" "before calling :c:func:`PyEval_SaveThread` or :c:func:`PyEval_RestoreThread`." msgstr "" -#: ../Doc/c-api/init.rst:824 +#: ../Doc/c-api/init.rst:829 msgid "This is a no-op when called for a second time." msgstr "" -#: ../Doc/c-api/init.rst:826 +#: ../Doc/c-api/init.rst:831 msgid "" "This function is now called by :c:func:`Py_Initialize()`, so you don't have " "to call it yourself anymore." msgstr "" -#: ../Doc/c-api/init.rst:830 +#: ../Doc/c-api/init.rst:835 msgid "" "This function cannot be called before :c:func:`Py_Initialize()` anymore." msgstr "" -#: ../Doc/c-api/init.rst:838 +#: ../Doc/c-api/init.rst:843 msgid "" "Returns a non-zero value if :c:func:`PyEval_InitThreads` has been called. " "This function can be called without holding the GIL, and therefore can be " "used to avoid calls to the locking API when running single-threaded." msgstr "" -#: ../Doc/c-api/init.rst:842 +#: ../Doc/c-api/init.rst:847 msgid "The :term:`GIL` is now initialized by :c:func:`Py_Initialize()`." msgstr "" -#: ../Doc/c-api/init.rst:848 +#: ../Doc/c-api/init.rst:853 msgid "" "Release the global interpreter lock (if it has been created) and reset the " "thread state to *NULL*, returning the previous thread state (which is not " @@ -1006,7 +1018,7 @@ msgid "" "acquired it." msgstr "" -#: ../Doc/c-api/init.rst:856 +#: ../Doc/c-api/init.rst:861 msgid "" "Acquire the global interpreter lock (if it has been created) and set the " "thread state to *tstate*, which must not be *NULL*. If the lock has been " @@ -1014,8 +1026,8 @@ msgid "" "ensues." msgstr "" -#: ../Doc/c-api/init.rst:862 ../Doc/c-api/init.rst:908 -#: ../Doc/c-api/init.rst:1079 ../Doc/c-api/init.rst:1117 +#: ../Doc/c-api/init.rst:867 ../Doc/c-api/init.rst:913 +#: ../Doc/c-api/init.rst:1088 ../Doc/c-api/init.rst:1126 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 " @@ -1024,27 +1036,27 @@ msgid "" "avoid unwanted termination." msgstr "" -#: ../Doc/c-api/init.rst:870 +#: ../Doc/c-api/init.rst:875 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:877 +#: ../Doc/c-api/init.rst:882 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:882 +#: ../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:887 +#: ../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 " @@ -1057,7 +1069,7 @@ msgid "" "is acceptable." msgstr "" -#: ../Doc/c-api/init.rst:897 +#: ../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:" @@ -1067,13 +1079,13 @@ msgid "" "func:`PyGILState_Release`." msgstr "" -#: ../Doc/c-api/init.rst:904 +#: ../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:916 +#: ../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:" @@ -1081,13 +1093,13 @@ msgid "" "caller, hence the use of the GILState API)." msgstr "" -#: ../Doc/c-api/init.rst:921 +#: ../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:927 +#: ../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 " @@ -1095,7 +1107,7 @@ msgid "" "made on the main thread. This is mainly a helper/diagnostic function." msgstr "" -#: ../Doc/c-api/init.rst:935 +#: ../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 " @@ -1106,13 +1118,13 @@ msgid "" "otherwise behave differently." msgstr "" -#: ../Doc/c-api/init.rst:947 +#: ../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:953 +#: ../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 " @@ -1120,7 +1132,7 @@ msgid "" "discussion of this macro." msgstr "" -#: ../Doc/c-api/init.rst:961 +#: ../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:" @@ -1128,92 +1140,104 @@ msgid "" "macro." msgstr "" -#: ../Doc/c-api/init.rst:969 +#: ../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:975 +#: ../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:981 +#: ../Doc/c-api/init.rst:986 msgid "Low-level API" msgstr "" -#: ../Doc/c-api/init.rst:983 +#: ../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:985 +#: ../Doc/c-api/init.rst:990 msgid ":c:func:`Py_Initialize()` now initializes the :term:`GIL`." msgstr "" -#: ../Doc/c-api/init.rst:991 +#: ../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:998 +#: ../Doc/c-api/init.rst:1000 +msgid "" +"Raises an :ref:`auditing event ` ``cpython." +"PyInterpreterState_New`` with no arguments." +msgstr "" + +#: ../Doc/c-api/init.rst:1005 msgid "" "Reset all information in an interpreter state object. The global " "interpreter lock must be held." msgstr "" -#: ../Doc/c-api/init.rst:1004 +#: ../Doc/c-api/init.rst:1008 +msgid "" +"Raises an :ref:`auditing event ` ``cpython." +"PyInterpreterState_Clear`` with no arguments." +msgstr "" + +#: ../Doc/c-api/init.rst:1013 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:1011 +#: ../Doc/c-api/init.rst:1020 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:1018 +#: ../Doc/c-api/init.rst:1027 msgid "" "Reset all information in a thread state object. The global interpreter lock " "must be held." msgstr "" -#: ../Doc/c-api/init.rst:1024 +#: ../Doc/c-api/init.rst:1033 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:1031 +#: ../Doc/c-api/init.rst:1040 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:1039 +#: ../Doc/c-api/init.rst:1048 msgid "" "Return a dictionary in which interpreter-specific data may be stored. If " "this function returns *NULL* then no exception has been raised and the " "caller should assume no interpreter-specific dict is available." msgstr "" -#: ../Doc/c-api/init.rst:1043 +#: ../Doc/c-api/init.rst:1052 msgid "" "This is not a replacement for :c:func:`PyModule_GetState()`, which " "extensions should use to store interpreter-specific state information." msgstr "" -#: ../Doc/c-api/init.rst:1051 +#: ../Doc/c-api/init.rst:1060 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 " @@ -1222,7 +1246,7 @@ msgid "" "raised and the caller should assume no current thread state is available." msgstr "" -#: ../Doc/c-api/init.rst:1060 +#: ../Doc/c-api/init.rst:1069 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. " @@ -1234,33 +1258,33 @@ msgid "" "raises no exceptions." msgstr "" -#: ../Doc/c-api/init.rst:1068 +#: ../Doc/c-api/init.rst:1077 msgid "" "The type of the *id* parameter changed from :c:type:`long` to :c:type:" "`unsigned long`." msgstr "" -#: ../Doc/c-api/init.rst:1074 +#: ../Doc/c-api/init.rst:1083 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:1085 ../Doc/c-api/init.rst:1123 +#: ../Doc/c-api/init.rst:1094 ../Doc/c-api/init.rst:1132 msgid "" "Updated to be consistent with :c:func:`PyEval_RestoreThread`, :c:func:" "`Py_END_ALLOW_THREADS`, and :c:func:`PyGILState_Ensure`, and terminate the " "current thread if called while the interpreter is finalizing." msgstr "" -#: ../Doc/c-api/init.rst:1090 +#: ../Doc/c-api/init.rst:1099 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:1096 +#: ../Doc/c-api/init.rst:1105 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 " @@ -1269,41 +1293,41 @@ msgid "" "fatal error is reported." msgstr "" -#: ../Doc/c-api/init.rst:1102 +#: ../Doc/c-api/init.rst:1111 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:1108 +#: ../Doc/c-api/init.rst:1117 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:1111 +#: ../Doc/c-api/init.rst:1120 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:1131 +#: ../Doc/c-api/init.rst:1140 msgid "" "Release the global interpreter lock. The lock must have been created " "earlier." msgstr "" -#: ../Doc/c-api/init.rst:1133 +#: ../Doc/c-api/init.rst:1142 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:1142 +#: ../Doc/c-api/init.rst:1151 msgid "Sub-interpreter support" msgstr "" -#: ../Doc/c-api/init.rst:1144 +#: ../Doc/c-api/init.rst:1153 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 " @@ -1311,7 +1335,7 @@ msgid "" "to do that." msgstr "" -#: ../Doc/c-api/init.rst:1149 +#: ../Doc/c-api/init.rst:1158 msgid "" "The \"main\" interpreter is the first one created when the runtime " "initializes. It is usually the only Python interpreter in a process. Unlike " @@ -1322,14 +1346,14 @@ msgid "" "a pointer to its state." msgstr "" -#: ../Doc/c-api/init.rst:1156 +#: ../Doc/c-api/init.rst:1165 msgid "" "You can switch between sub-interpreters using the :c:func:" "`PyThreadState_Swap` function. You can create and destroy them using the " "following functions:" msgstr "" -#: ../Doc/c-api/init.rst:1170 +#: ../Doc/c-api/init.rst:1179 msgid "" "Create a new sub-interpreter. This is an (almost) totally separate " "environment for the execution of Python code. In particular, the new " @@ -1342,7 +1366,7 @@ msgid "" "underlying file descriptors)." msgstr "" -#: ../Doc/c-api/init.rst:1180 +#: ../Doc/c-api/init.rst:1189 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 " @@ -1356,7 +1380,7 @@ msgid "" "state on entry.)" msgstr "" -#: ../Doc/c-api/init.rst:1195 +#: ../Doc/c-api/init.rst:1204 msgid "" "Extension modules are shared between (sub-)interpreters as follows: the " "first time a particular extension is imported, it is initialized normally, " @@ -1370,7 +1394,7 @@ msgid "" "called again." msgstr "" -#: ../Doc/c-api/init.rst:1212 +#: ../Doc/c-api/init.rst:1221 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 " @@ -1381,11 +1405,11 @@ msgid "" "sub-interpreters that haven't been explicitly destroyed at that point." msgstr "" -#: ../Doc/c-api/init.rst:1222 +#: ../Doc/c-api/init.rst:1231 msgid "Bugs and caveats" msgstr "" -#: ../Doc/c-api/init.rst:1224 +#: ../Doc/c-api/init.rst:1233 msgid "" "Because sub-interpreters (and the main interpreter) are part of the same " "process, the insulation between them isn't perfect --- for example, using " @@ -1402,7 +1426,7 @@ msgid "" "of loaded modules." msgstr "" -#: ../Doc/c-api/init.rst:1238 +#: ../Doc/c-api/init.rst:1247 msgid "" "Also note that combining this functionality with :c:func:`PyGILState_\\*` " "APIs is delicate, because these APIs assume a bijection between Python " @@ -1414,25 +1438,25 @@ msgid "" "created threads will probably be broken when using sub-interpreters." msgstr "" -#: ../Doc/c-api/init.rst:1249 +#: ../Doc/c-api/init.rst:1258 msgid "Asynchronous Notifications" msgstr "" -#: ../Doc/c-api/init.rst:1251 +#: ../Doc/c-api/init.rst:1260 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:1260 +#: ../Doc/c-api/init.rst:1269 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:1264 +#: ../Doc/c-api/init.rst:1273 msgid "" "When successfully queued, *func* will be *eventually* called from the main " "interpreter thread with the argument *arg*. It will be called " @@ -1440,17 +1464,17 @@ msgid "" "these conditions met:" msgstr "" -#: ../Doc/c-api/init.rst:1269 +#: ../Doc/c-api/init.rst:1278 msgid "on a :term:`bytecode` boundary;" msgstr "" -#: ../Doc/c-api/init.rst:1270 +#: ../Doc/c-api/init.rst:1279 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:1273 +#: ../Doc/c-api/init.rst:1282 msgid "" "*func* must return ``0`` on success, or ``-1`` on failure with an exception " "set. *func* won't be interrupted to perform another asynchronous " @@ -1458,13 +1482,13 @@ msgid "" "if the global interpreter lock is released." msgstr "" -#: ../Doc/c-api/init.rst:1278 +#: ../Doc/c-api/init.rst:1287 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:1282 +#: ../Doc/c-api/init.rst:1291 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 " @@ -1474,18 +1498,18 @@ msgid "" "`PyGILState API`." msgstr "" -#: ../Doc/c-api/init.rst:1294 +#: ../Doc/c-api/init.rst:1303 msgid "Profiling and Tracing" msgstr "" -#: ../Doc/c-api/init.rst:1299 +#: ../Doc/c-api/init.rst:1308 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:1303 +#: ../Doc/c-api/init.rst:1312 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 " @@ -1495,7 +1519,7 @@ msgid "" "reported to the Python-level trace functions in previous versions." msgstr "" -#: ../Doc/c-api/init.rst:1313 +#: ../Doc/c-api/init.rst:1322 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 " @@ -1506,66 +1530,66 @@ msgid "" "or :const:`PyTrace_OPCODE`, and *arg* depends on the value of *what*:" msgstr "" -#: ../Doc/c-api/init.rst:1322 +#: ../Doc/c-api/init.rst:1331 msgid "Value of *what*" msgstr "" -#: ../Doc/c-api/init.rst:1322 +#: ../Doc/c-api/init.rst:1331 msgid "Meaning of *arg*" msgstr "" -#: ../Doc/c-api/init.rst:1324 +#: ../Doc/c-api/init.rst:1333 msgid ":const:`PyTrace_CALL`" msgstr "" -#: ../Doc/c-api/init.rst:1324 ../Doc/c-api/init.rst:1329 -#: ../Doc/c-api/init.rst:1340 +#: ../Doc/c-api/init.rst:1333 ../Doc/c-api/init.rst:1338 +#: ../Doc/c-api/init.rst:1349 msgid "Always :c:data:`Py_None`." msgstr "" -#: ../Doc/c-api/init.rst:1326 +#: ../Doc/c-api/init.rst:1335 msgid ":const:`PyTrace_EXCEPTION`" msgstr "" -#: ../Doc/c-api/init.rst:1326 +#: ../Doc/c-api/init.rst:1335 msgid "Exception information as returned by :func:`sys.exc_info`." msgstr "" -#: ../Doc/c-api/init.rst:1329 +#: ../Doc/c-api/init.rst:1338 msgid ":const:`PyTrace_LINE`" msgstr "" -#: ../Doc/c-api/init.rst:1331 +#: ../Doc/c-api/init.rst:1340 msgid ":const:`PyTrace_RETURN`" msgstr "" -#: ../Doc/c-api/init.rst:1331 +#: ../Doc/c-api/init.rst:1340 msgid "" "Value being returned to the caller, or *NULL* if caused by an exception." msgstr "" -#: ../Doc/c-api/init.rst:1334 +#: ../Doc/c-api/init.rst:1343 msgid ":const:`PyTrace_C_CALL`" msgstr "" -#: ../Doc/c-api/init.rst:1334 ../Doc/c-api/init.rst:1336 -#: ../Doc/c-api/init.rst:1338 +#: ../Doc/c-api/init.rst:1343 ../Doc/c-api/init.rst:1345 +#: ../Doc/c-api/init.rst:1347 msgid "Function object being called." msgstr "" -#: ../Doc/c-api/init.rst:1336 +#: ../Doc/c-api/init.rst:1345 msgid ":const:`PyTrace_C_EXCEPTION`" msgstr "" -#: ../Doc/c-api/init.rst:1338 +#: ../Doc/c-api/init.rst:1347 msgid ":const:`PyTrace_C_RETURN`" msgstr "" -#: ../Doc/c-api/init.rst:1340 +#: ../Doc/c-api/init.rst:1349 msgid ":const:`PyTrace_OPCODE`" msgstr "" -#: ../Doc/c-api/init.rst:1345 +#: ../Doc/c-api/init.rst:1354 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 " @@ -1574,7 +1598,7 @@ msgid "" "the corresponding frame." msgstr "" -#: ../Doc/c-api/init.rst:1354 +#: ../Doc/c-api/init.rst:1363 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 " @@ -1586,7 +1610,7 @@ msgid "" "profiler." msgstr "" -#: ../Doc/c-api/init.rst:1365 +#: ../Doc/c-api/init.rst:1374 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 " @@ -1594,31 +1618,31 @@ msgid "" "*0* on that frame." msgstr "" -#: ../Doc/c-api/init.rst:1372 +#: ../Doc/c-api/init.rst:1381 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:1378 +#: ../Doc/c-api/init.rst:1387 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:1384 +#: ../Doc/c-api/init.rst:1393 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:1390 +#: ../Doc/c-api/init.rst:1399 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:1396 +#: ../Doc/c-api/init.rst:1405 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 " @@ -1626,7 +1650,7 @@ msgid "" "attr:`f_trace_opcodes` to *1* on the frame." msgstr "" -#: ../Doc/c-api/init.rst:1404 +#: ../Doc/c-api/init.rst:1413 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*. " @@ -1636,7 +1660,7 @@ msgid "" "`PyTrace_LINE` :const:`PyTrace_OPCODE` and :const:`PyTrace_EXCEPTION`." msgstr "" -#: ../Doc/c-api/init.rst:1414 +#: ../Doc/c-api/init.rst:1423 msgid "" "Set the tracing function to *func*. This is similar to :c:func:" "`PyEval_SetProfile`, except the tracing function does receive line-number " @@ -1647,48 +1671,48 @@ msgid "" "parameter." msgstr "" -#: ../Doc/c-api/init.rst:1424 +#: ../Doc/c-api/init.rst:1433 msgid "Advanced Debugger Support" msgstr "Support avancé du débogueur" -#: ../Doc/c-api/init.rst:1429 +#: ../Doc/c-api/init.rst:1438 msgid "" "These functions are only intended to be used by advanced debugging tools." msgstr "" -#: ../Doc/c-api/init.rst:1434 +#: ../Doc/c-api/init.rst:1443 msgid "" "Return the interpreter state object at the head of the list of all such " "objects." msgstr "" -#: ../Doc/c-api/init.rst:1439 +#: ../Doc/c-api/init.rst:1448 msgid "Return the main interpreter state object." msgstr "" -#: ../Doc/c-api/init.rst:1444 +#: ../Doc/c-api/init.rst:1453 msgid "" "Return the next interpreter state object after *interp* from the list of all " "such objects." msgstr "" -#: ../Doc/c-api/init.rst:1450 +#: ../Doc/c-api/init.rst:1459 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:1456 +#: ../Doc/c-api/init.rst:1465 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:1463 +#: ../Doc/c-api/init.rst:1472 msgid "Thread Local Storage Support" msgstr "" -#: ../Doc/c-api/init.rst:1467 +#: ../Doc/c-api/init.rst:1476 msgid "" "The Python interpreter provides low-level support for thread-local storage " "(TLS) which wraps the underlying native TLS implementation to support the " @@ -1698,19 +1722,19 @@ msgid "" "thread." msgstr "" -#: ../Doc/c-api/init.rst:1474 +#: ../Doc/c-api/init.rst:1483 msgid "" "The GIL does *not* need to be held when calling these functions; they supply " "their own locking." msgstr "" -#: ../Doc/c-api/init.rst:1477 +#: ../Doc/c-api/init.rst:1486 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:1481 +#: ../Doc/c-api/init.rst:1490 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. " @@ -1718,22 +1742,22 @@ msgid "" "functions don't do refcount operations on them either." msgstr "" -#: ../Doc/c-api/init.rst:1489 +#: ../Doc/c-api/init.rst:1498 msgid "Thread Specific Storage (TSS) API" msgstr "" -#: ../Doc/c-api/init.rst:1491 +#: ../Doc/c-api/init.rst:1500 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:1497 +#: ../Doc/c-api/init.rst:1506 msgid "\"A New C-API for Thread-Local Storage in CPython\" (:pep:`539`)" msgstr "" -#: ../Doc/c-api/init.rst:1502 +#: ../Doc/c-api/init.rst:1511 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 " @@ -1741,52 +1765,52 @@ msgid "" "public members in this structure." msgstr "" -#: ../Doc/c-api/init.rst:1507 +#: ../Doc/c-api/init.rst:1516 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:1513 +#: ../Doc/c-api/init.rst:1522 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:1518 +#: ../Doc/c-api/init.rst:1527 msgid "Dynamic Allocation" msgstr "" -#: ../Doc/c-api/init.rst:1520 +#: ../Doc/c-api/init.rst:1529 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:1527 +#: ../Doc/c-api/init.rst:1536 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:1534 +#: ../Doc/c-api/init.rst:1543 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:1540 +#: ../Doc/c-api/init.rst:1549 msgid "" "A freed key becomes a dangling pointer, you should reset the key to `NULL`." msgstr "" -#: ../Doc/c-api/init.rst:1545 +#: ../Doc/c-api/init.rst:1554 msgid "Methods" msgstr "Méthodes" -#: ../Doc/c-api/init.rst:1547 +#: ../Doc/c-api/init.rst:1556 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 " @@ -1794,13 +1818,13 @@ msgid "" "func:`PyThread_tss_create`." msgstr "" -#: ../Doc/c-api/init.rst:1555 +#: ../Doc/c-api/init.rst:1564 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:1561 +#: ../Doc/c-api/init.rst:1570 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 " @@ -1809,7 +1833,7 @@ msgid "" "no-op and immediately returns success." msgstr "" -#: ../Doc/c-api/init.rst:1570 +#: ../Doc/c-api/init.rst:1579 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 " @@ -1818,31 +1842,31 @@ msgid "" "key -- calling it on an already destroyed key is a no-op." msgstr "" -#: ../Doc/c-api/init.rst:1579 +#: ../Doc/c-api/init.rst:1588 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:1586 +#: ../Doc/c-api/init.rst:1595 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:1594 +#: ../Doc/c-api/init.rst:1603 msgid "Thread Local Storage (TLS) API" msgstr "" -#: ../Doc/c-api/init.rst:1596 +#: ../Doc/c-api/init.rst:1605 msgid "" "This API is superseded by :ref:`Thread Specific Storage (TSS) API `." msgstr "" -#: ../Doc/c-api/init.rst:1601 +#: ../Doc/c-api/init.rst:1610 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 " @@ -1851,7 +1875,7 @@ msgid "" "platforms." msgstr "" -#: ../Doc/c-api/init.rst:1606 +#: ../Doc/c-api/init.rst:1615 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/init_config.po b/c-api/init_config.po index 797a29dc3..d3dcfff69 100644 --- a/c-api/init_config.po +++ b/c-api/init_config.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-04 11:42+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -203,7 +203,7 @@ msgid "*index* must be greater than or equal to 0." msgstr "" #: ../Doc/c-api/init_config.rst:86 ../Doc/c-api/init_config.rst:106 -#: ../Doc/c-api/init_config.rst:209 ../Doc/c-api/init_config.rst:414 +#: ../Doc/c-api/init_config.rst:209 ../Doc/c-api/init_config.rst:416 msgid "Structure fields:" msgstr "" @@ -394,27 +394,31 @@ msgid "" "locale to decide if it should be coerced." msgstr "" -#: ../Doc/c-api/init_config.rst:248 +#: ../Doc/c-api/init_config.rst:245 +msgid "If non-zero, emit a warning if the C locale is coerced." +msgstr "" + +#: ../Doc/c-api/init_config.rst:249 msgid "See :c:member:`PyConfig.dev_mode`." msgstr "" -#: ../Doc/c-api/init_config.rst:252 +#: ../Doc/c-api/init_config.rst:253 msgid "See :c:member:`PyConfig.isolated`." msgstr "" -#: ../Doc/c-api/init_config.rst:256 +#: ../Doc/c-api/init_config.rst:257 msgid "" "If non-zero, disable UTF-8 Mode, set the Python filesystem encoding to " "``mbcs``, set the filesystem error handler to ``replace``." msgstr "" -#: ../Doc/c-api/init_config.rst:259 ../Doc/c-api/init_config.rst:536 +#: ../Doc/c-api/init_config.rst:260 ../Doc/c-api/init_config.rst:546 msgid "" "Only available on Windows. ``#ifdef MS_WINDOWS`` macro can be used for " "Windows specific code." msgstr "" -#: ../Doc/c-api/init_config.rst:264 +#: ../Doc/c-api/init_config.rst:265 msgid "" "If non-zero, :c:func:`Py_PreInitializeFromArgs` and :c:func:" "`Py_PreInitializeFromBytesArgs` parse their ``argv`` argument the same way " @@ -422,55 +426,55 @@ msgid "" "Arguments `." msgstr "" -#: ../Doc/c-api/init_config.rst:271 +#: ../Doc/c-api/init_config.rst:272 msgid "See :c:member:`PyConfig.use_environment`." msgstr "" -#: ../Doc/c-api/init_config.rst:275 +#: ../Doc/c-api/init_config.rst:276 msgid "If non-zero, enable the UTF-8 mode." msgstr "" -#: ../Doc/c-api/init_config.rst:278 +#: ../Doc/c-api/init_config.rst:279 msgid "Preinitialization with PyPreConfig" msgstr "" -#: ../Doc/c-api/init_config.rst:280 +#: ../Doc/c-api/init_config.rst:281 msgid "Functions to preinitialize Python:" msgstr "" -#: ../Doc/c-api/init_config.rst:284 +#: ../Doc/c-api/init_config.rst:285 msgid "Preinitialize Python from *preconfig* preconfiguration." msgstr "" -#: ../Doc/c-api/init_config.rst:288 +#: ../Doc/c-api/init_config.rst:289 msgid "" "Preinitialize Python from *preconfig* preconfiguration and command line " "arguments (bytes strings)." msgstr "" -#: ../Doc/c-api/init_config.rst:293 +#: ../Doc/c-api/init_config.rst:294 msgid "" "Preinitialize Python from *preconfig* preconfiguration and command line " "arguments (wide strings)." msgstr "" -#: ../Doc/c-api/init_config.rst:296 ../Doc/c-api/init_config.rst:689 +#: ../Doc/c-api/init_config.rst:297 ../Doc/c-api/init_config.rst:715 msgid "" "The caller is responsible to handle exceptions (error or exit) using :c:func:" "`PyStatus_Exception` and :c:func:`Py_ExitStatusException`." msgstr "" -#: ../Doc/c-api/init_config.rst:299 +#: ../Doc/c-api/init_config.rst:300 msgid "" "For :ref:`Python Configuration ` (:c:func:" "`PyPreConfig_InitPythonConfig`), if Python is initialized with command line " "arguments, the command line arguments must also be passed to preinitialize " "Python, since they have an effect on the pre-configuration like encodings. " -"For example, the :option:`-X` ``utf8`` command line option enables the UTF-8 " -"Mode." +"For example, the :option:`-X utf8 <-X>` command line option enables the " +"UTF-8 Mode." msgstr "" -#: ../Doc/c-api/init_config.rst:306 +#: ../Doc/c-api/init_config.rst:307 msgid "" "``PyMem_SetAllocator()`` can be called after :c:func:`Py_PreInitialize` and " "before :c:func:`Py_InitializeFromConfig` to install a custom memory " @@ -478,7 +482,7 @@ msgid "" "`PyPreConfig.allocator` is set to ``PYMEM_ALLOCATOR_NOT_SET``." msgstr "" -#: ../Doc/c-api/init_config.rst:311 +#: ../Doc/c-api/init_config.rst:312 msgid "" "Python memory allocation functions like :c:func:`PyMem_RawMalloc` must not " "be used before Python preinitialization, whereas calling directly " @@ -486,76 +490,76 @@ msgid "" "not be called before the preinitialization." msgstr "" -#: ../Doc/c-api/init_config.rst:316 +#: ../Doc/c-api/init_config.rst:317 msgid "Example using the preinitialization to enable the UTF-8 Mode::" msgstr "" -#: ../Doc/c-api/init_config.rst:336 +#: ../Doc/c-api/init_config.rst:338 msgid "PyConfig" msgstr "" -#: ../Doc/c-api/init_config.rst:340 +#: ../Doc/c-api/init_config.rst:342 msgid "Structure containing most parameters to configure Python." msgstr "" -#: ../Doc/c-api/init_config.rst:342 +#: ../Doc/c-api/init_config.rst:344 msgid "Structure methods:" msgstr "" -#: ../Doc/c-api/init_config.rst:346 +#: ../Doc/c-api/init_config.rst:348 msgid "" "Initialize configuration with :ref:`Python Configuration `." msgstr "" -#: ../Doc/c-api/init_config.rst:351 +#: ../Doc/c-api/init_config.rst:353 msgid "" "Initialize configuration with :ref:`Isolated Configuration `." msgstr "" -#: ../Doc/c-api/init_config.rst:356 +#: ../Doc/c-api/init_config.rst:358 msgid "Copy the wide character string *str* into ``*config_str``." msgstr "" -#: ../Doc/c-api/init_config.rst:358 ../Doc/c-api/init_config.rst:364 -#: ../Doc/c-api/init_config.rst:370 ../Doc/c-api/init_config.rst:376 -#: ../Doc/c-api/init_config.rst:382 ../Doc/c-api/init_config.rst:390 +#: ../Doc/c-api/init_config.rst:360 ../Doc/c-api/init_config.rst:366 +#: ../Doc/c-api/init_config.rst:372 ../Doc/c-api/init_config.rst:378 +#: ../Doc/c-api/init_config.rst:384 ../Doc/c-api/init_config.rst:392 msgid "Preinitialize Python if needed." msgstr "" -#: ../Doc/c-api/init_config.rst:362 +#: ../Doc/c-api/init_config.rst:364 msgid "" "Decode *str* using ``Py_DecodeLocale()`` and set the result into " "``*config_str``." msgstr "" -#: ../Doc/c-api/init_config.rst:368 +#: ../Doc/c-api/init_config.rst:370 msgid "Set command line arguments from wide character strings." msgstr "" -#: ../Doc/c-api/init_config.rst:374 +#: ../Doc/c-api/init_config.rst:376 msgid "" "Set command line arguments: decode bytes using :c:func:`Py_DecodeLocale`." msgstr "" -#: ../Doc/c-api/init_config.rst:380 +#: ../Doc/c-api/init_config.rst:382 msgid "Set the list of wide strings *list* to *length* and *items*." msgstr "" -#: ../Doc/c-api/init_config.rst:386 +#: ../Doc/c-api/init_config.rst:388 msgid "Read all Python configuration." msgstr "" -#: ../Doc/c-api/init_config.rst:388 +#: ../Doc/c-api/init_config.rst:390 msgid "Fields which are already initialized are left unchanged." msgstr "" -#: ../Doc/c-api/init_config.rst:394 +#: ../Doc/c-api/init_config.rst:396 msgid "Release configuration memory." msgstr "" -#: ../Doc/c-api/init_config.rst:396 +#: ../Doc/c-api/init_config.rst:398 msgid "" "Most ``PyConfig`` methods preinitialize Python if needed. In that case, the " "Python preinitialization configuration in based on the :c:type:`PyConfig`. " @@ -563,23 +567,23 @@ msgid "" "tuned, they must be set before calling a :c:type:`PyConfig` method:" msgstr "" -#: ../Doc/c-api/init_config.rst:401 +#: ../Doc/c-api/init_config.rst:403 msgid ":c:member:`~PyConfig.dev_mode`" msgstr "" -#: ../Doc/c-api/init_config.rst:402 +#: ../Doc/c-api/init_config.rst:404 msgid ":c:member:`~PyConfig.isolated`" msgstr "" -#: ../Doc/c-api/init_config.rst:403 +#: ../Doc/c-api/init_config.rst:405 msgid ":c:member:`~PyConfig.parse_argv`" msgstr "" -#: ../Doc/c-api/init_config.rst:404 +#: ../Doc/c-api/init_config.rst:406 msgid ":c:member:`~PyConfig.use_environment`" msgstr "" -#: ../Doc/c-api/init_config.rst:406 +#: ../Doc/c-api/init_config.rst:408 msgid "" "Moreover, if :c:func:`PyConfig_SetArgv` or :c:func:`PyConfig_SetBytesArgv` " "is used, this method must be called first, before other methods, since the " @@ -587,13 +591,13 @@ msgid "" "member:`parse_argv` is non-zero)." msgstr "" -#: ../Doc/c-api/init_config.rst:411 +#: ../Doc/c-api/init_config.rst:413 msgid "" "The caller of these methods is responsible to handle exceptions (error or " "exit) using ``PyStatus_Exception()`` and ``Py_ExitStatusException()``." msgstr "" -#: ../Doc/c-api/init_config.rst:418 +#: ../Doc/c-api/init_config.rst:420 msgid "" "Command line arguments, :data:`sys.argv`. See :c:member:`~PyConfig." "parse_argv` to parse :c:member:`~PyConfig.argv` the same way the regular " @@ -602,356 +606,396 @@ msgid "" "exists and is never empty." msgstr "" -#: ../Doc/c-api/init_config.rst:426 +#: ../Doc/c-api/init_config.rst:428 msgid ":data:`sys.base_exec_prefix`." msgstr "" -#: ../Doc/c-api/init_config.rst:430 +#: ../Doc/c-api/init_config.rst:432 +msgid "" +":data:`sys._base_executable`: ``__PYVENV_LAUNCHER__`` environment variable " +"value, or copy of :c:member:`PyConfig.executable`." +msgstr "" + +#: ../Doc/c-api/init_config.rst:437 msgid ":data:`sys.base_prefix`." msgstr "" -#: ../Doc/c-api/init_config.rst:434 +#: ../Doc/c-api/init_config.rst:441 msgid "" "If equals to 0, enable unbuffered mode, making the stdout and stderr streams " "unbuffered." msgstr "" -#: ../Doc/c-api/init_config.rst:437 +#: ../Doc/c-api/init_config.rst:444 msgid "stdin is always opened in buffered mode." msgstr "" -#: ../Doc/c-api/init_config.rst:441 +#: ../Doc/c-api/init_config.rst:448 msgid "" "If equals to 1, issue a warning when comparing :class:`bytes` or :class:" "`bytearray` with :class:`str`, or comparing :class:`bytes` with :class:" "`int`. If equal or greater to 2, raise a :exc:`BytesWarning` exception." msgstr "" -#: ../Doc/c-api/init_config.rst:448 +#: ../Doc/c-api/init_config.rst:455 msgid "" "Control the validation behavior of hash-based ``.pyc`` files (see :pep:" "`552`): :option:`--check-hash-based-pycs` command line option value." msgstr "" -#: ../Doc/c-api/init_config.rst:451 +#: ../Doc/c-api/init_config.rst:458 msgid "Valid values: ``always``, ``never`` and ``default``." msgstr "" -#: ../Doc/c-api/init_config.rst:453 +#: ../Doc/c-api/init_config.rst:460 msgid "The default value is: ``default``." msgstr "" -#: ../Doc/c-api/init_config.rst:457 +#: ../Doc/c-api/init_config.rst:464 msgid "" "If non-zero, configure C standard streams (``stdio``, ``stdout``, " "``stdout``). For example, set their mode to ``O_BINARY`` on Windows." msgstr "" -#: ../Doc/c-api/init_config.rst:462 -msgid "Development mode: see :option:`-X` ``dev``." +#: ../Doc/c-api/init_config.rst:469 +msgid "Development mode: see :option:`-X dev <-X>`." msgstr "" -#: ../Doc/c-api/init_config.rst:466 +#: ../Doc/c-api/init_config.rst:473 msgid "If non-zero, dump all objects which are still alive at exit." msgstr "" -#: ../Doc/c-api/init_config.rst:468 +#: ../Doc/c-api/init_config.rst:475 msgid "" "Require a debug build of Python (``Py_REF_DEBUG`` macro must be defined)." msgstr "" -#: ../Doc/c-api/init_config.rst:472 +#: ../Doc/c-api/init_config.rst:479 msgid ":data:`sys.exec_prefix`." msgstr "" -#: ../Doc/c-api/init_config.rst:476 +#: ../Doc/c-api/init_config.rst:483 msgid ":data:`sys.executable`." msgstr "" -#: ../Doc/c-api/init_config.rst:480 -msgid "If non-zero, call :func:`faulthandler.enable`." +#: ../Doc/c-api/init_config.rst:487 +msgid "If non-zero, call :func:`faulthandler.enable` at startup." msgstr "" -#: ../Doc/c-api/init_config.rst:484 +#: ../Doc/c-api/init_config.rst:491 msgid "Filesystem encoding, :func:`sys.getfilesystemencoding`." msgstr "" -#: ../Doc/c-api/init_config.rst:488 +#: ../Doc/c-api/init_config.rst:495 msgid "Filesystem encoding errors, :func:`sys.getfilesystemencodeerrors`." msgstr "" -#: ../Doc/c-api/init_config.rst:493 +#: ../Doc/c-api/init_config.rst:500 msgid "Randomized hash function seed." msgstr "" -#: ../Doc/c-api/init_config.rst:495 +#: ../Doc/c-api/init_config.rst:502 msgid "" "If :c:member:`~PyConfig.use_hash_seed` is zero, a seed is chosen randomly at " "Pythonstartup, and :c:member:`~PyConfig.hash_seed` is ignored." msgstr "" -#: ../Doc/c-api/init_config.rst:500 +#: ../Doc/c-api/init_config.rst:507 msgid "Python home directory." msgstr "" -#: ../Doc/c-api/init_config.rst:504 +#: ../Doc/c-api/init_config.rst:509 +msgid "" +"Initialized from :envvar:`PYTHONHOME` environment variable value by default." +msgstr "" + +#: ../Doc/c-api/init_config.rst:514 msgid "If non-zero, profile import time." msgstr "" -#: ../Doc/c-api/init_config.rst:508 +#: ../Doc/c-api/init_config.rst:518 msgid "Enter interactive mode after executing a script or a command." msgstr "" -#: ../Doc/c-api/init_config.rst:512 +#: ../Doc/c-api/init_config.rst:522 msgid "Install signal handlers?" msgstr "" -#: ../Doc/c-api/init_config.rst:516 +#: ../Doc/c-api/init_config.rst:526 msgid "Interactive mode." msgstr "" -#: ../Doc/c-api/init_config.rst:520 +#: ../Doc/c-api/init_config.rst:530 msgid "If greater than 0, enable isolated mode:" msgstr "" -#: ../Doc/c-api/init_config.rst:522 +#: ../Doc/c-api/init_config.rst:532 msgid "" ":data:`sys.path` contains neither the script's directory (computed from " "``argv[0]`` or the current directory) nor the user's site-packages directory." msgstr "" -#: ../Doc/c-api/init_config.rst:525 +#: ../Doc/c-api/init_config.rst:535 msgid "" "Python REPL doesn't import :mod:`readline` nor enable default readline " "configuration on interactive prompts." msgstr "" -#: ../Doc/c-api/init_config.rst:527 +#: ../Doc/c-api/init_config.rst:537 msgid "" "Set :c:member:`~PyConfig.use_environment` and :c:member:`~PyConfig." "user_site_directory` to 0." msgstr "" -#: ../Doc/c-api/init_config.rst:532 +#: ../Doc/c-api/init_config.rst:542 msgid "" "If non-zero, use :class:`io.FileIO` instead of :class:`io.WindowsConsoleIO` " "for :data:`sys.stdin`, :data:`sys.stdout` and :data:`sys.stderr`." msgstr "" -#: ../Doc/c-api/init_config.rst:541 +#: ../Doc/c-api/init_config.rst:551 msgid "" "If non-zero, dump statistics on :ref:`Python pymalloc memory allocator " "` at exit." msgstr "" -#: ../Doc/c-api/init_config.rst:544 +#: ../Doc/c-api/init_config.rst:554 msgid "The option is ignored if Python is built using ``--without-pymalloc``." msgstr "" -#: ../Doc/c-api/init_config.rst:548 +#: ../Doc/c-api/init_config.rst:558 msgid "" "Module search paths as a string separated by ``DELIM`` (:data:`os.path." "pathsep`)." msgstr "" -#: ../Doc/c-api/init_config.rst:551 +#: ../Doc/c-api/init_config.rst:561 msgid "" "Initialized from :envvar:`PYTHONPATH` environment variable value by default." msgstr "" -#: ../Doc/c-api/init_config.rst:557 +#: ../Doc/c-api/init_config.rst:567 msgid "" ":data:`sys.path`. If :c:member:`~PyConfig.module_search_paths_set` is equal " "to 0, the :c:member:`~PyConfig.module_search_paths` is overridden by the " -"function computing the :ref:`Path Configuration `." +"function calculating the :ref:`Path Configuration `." msgstr "" -#: ../Doc/c-api/init_config.rst:564 +#: ../Doc/c-api/init_config.rst:574 msgid "Compilation optimization level:" msgstr "" -#: ../Doc/c-api/init_config.rst:566 +#: ../Doc/c-api/init_config.rst:576 msgid "0: Peephole optimizer (and ``__debug__`` is set to ``True``)" msgstr "" -#: ../Doc/c-api/init_config.rst:567 +#: ../Doc/c-api/init_config.rst:577 msgid "1: Remove assertions, set ``__debug__`` to ``False``" msgstr "" -#: ../Doc/c-api/init_config.rst:568 +#: ../Doc/c-api/init_config.rst:578 msgid "2: Strip docstrings" msgstr "" -#: ../Doc/c-api/init_config.rst:572 +#: ../Doc/c-api/init_config.rst:582 msgid "" "If non-zero, parse :c:member:`~PyConfig.argv` the same way the regular " "Python command line arguments, and strip Python arguments from :c:member:" "`~PyConfig.argv`: see :ref:`Command Line Arguments `." msgstr "" -#: ../Doc/c-api/init_config.rst:579 +#: ../Doc/c-api/init_config.rst:589 msgid "" "If non-zero, turn on parser debugging output (for expert only, depending on " "compilation options)." msgstr "" -#: ../Doc/c-api/init_config.rst:584 +#: ../Doc/c-api/init_config.rst:594 msgid "" -"If equal to 0, suppress warnings when computing the path configuration (Unix " -"only, Windows does not log any warning). Otherwise, warnings are written " -"into ``stderr``." +"If equal to 0, suppress warnings when calculating the :ref:`Path " +"Configuration ` (Unix only, Windows does not log any " +"warning). Otherwise, warnings are written into ``stderr``." msgstr "" -#: ../Doc/c-api/init_config.rst:590 +#: ../Doc/c-api/init_config.rst:600 msgid ":data:`sys.prefix`." msgstr "" -#: ../Doc/c-api/init_config.rst:594 -msgid "Program name." +#: ../Doc/c-api/init_config.rst:604 +msgid "" +"Program name. Used to initialize :c:member:`~PyConfig.executable`, and in " +"early error messages." msgstr "" -#: ../Doc/c-api/init_config.rst:598 -msgid "``.pyc`` cache prefix." +#: ../Doc/c-api/init_config.rst:609 +msgid ":data:`sys.pycache_prefix`: ``.pyc`` cache prefix." msgstr "" -#: ../Doc/c-api/init_config.rst:602 +#: ../Doc/c-api/init_config.rst:611 +msgid "If NULL, :data:`sys.pycache_prefix` is set to ``None``." +msgstr "" + +#: ../Doc/c-api/init_config.rst:615 msgid "" -"Quiet mode. For example, don't display the copyright and version messages " -"even in interactive mode." +"Quiet mode. For example, don't display the copyright and version messages in " +"interactive mode." msgstr "" -#: ../Doc/c-api/init_config.rst:607 -msgid "``python3 -c COMMAND`` argument." +#: ../Doc/c-api/init_config.rst:620 +msgid "``python3 -c COMMAND`` argument. Used by :c:func:`Py_RunMain`." msgstr "" -#: ../Doc/c-api/init_config.rst:611 -msgid "``python3 FILENAME`` argument." +#: ../Doc/c-api/init_config.rst:624 +msgid "``python3 FILENAME`` argument. Used by :c:func:`Py_RunMain`." msgstr "" -#: ../Doc/c-api/init_config.rst:615 -msgid "``python3 -m MODULE`` argument." +#: ../Doc/c-api/init_config.rst:628 +msgid "``python3 -m MODULE`` argument. Used by :c:func:`Py_RunMain`." msgstr "" -#: ../Doc/c-api/init_config.rst:619 +#: ../Doc/c-api/init_config.rst:632 msgid "Show allocation counts at exit?" msgstr "" -#: ../Doc/c-api/init_config.rst:621 +#: ../Doc/c-api/init_config.rst:634 +msgid "Set to 1 by :option:`-X showalloccount <-X>` command line option." +msgstr "" + +#: ../Doc/c-api/init_config.rst:636 msgid "Need a special Python build with ``COUNT_ALLOCS`` macro defined." msgstr "" -#: ../Doc/c-api/init_config.rst:625 +#: ../Doc/c-api/init_config.rst:640 msgid "Show total reference count at exit?" msgstr "" -#: ../Doc/c-api/init_config.rst:627 +#: ../Doc/c-api/init_config.rst:642 +msgid "Set to 1 by :option:`-X showrefcount <-X>` command line option." +msgstr "" + +#: ../Doc/c-api/init_config.rst:644 msgid "Need a debug build of Python (``Py_REF_DEBUG`` macro must be defined)." msgstr "" -#: ../Doc/c-api/init_config.rst:631 +#: ../Doc/c-api/init_config.rst:648 msgid "Import the :mod:`site` module at startup?" msgstr "" -#: ../Doc/c-api/init_config.rst:635 +#: ../Doc/c-api/init_config.rst:652 msgid "Skip the first line of the source?" msgstr "" -#: ../Doc/c-api/init_config.rst:640 +#: ../Doc/c-api/init_config.rst:657 msgid "" "Encoding and encoding errors of :data:`sys.stdin`, :data:`sys.stdout` and :" "data:`sys.stderr`." msgstr "" -#: ../Doc/c-api/init_config.rst:645 -msgid "If non-zero, call :func:`tracemalloc.start`." +#: ../Doc/c-api/init_config.rst:662 +msgid "If non-zero, call :func:`tracemalloc.start` at startup." msgstr "" -#: ../Doc/c-api/init_config.rst:649 +#: ../Doc/c-api/init_config.rst:666 msgid "If greater than 0, use :ref:`environment variables `." msgstr "" -#: ../Doc/c-api/init_config.rst:653 +#: ../Doc/c-api/init_config.rst:670 msgid "If non-zero, add user site directory to :data:`sys.path`." msgstr "" -#: ../Doc/c-api/init_config.rst:657 +#: ../Doc/c-api/init_config.rst:674 msgid "If non-zero, enable verbose mode." msgstr "" -#: ../Doc/c-api/init_config.rst:661 -msgid "Options of the :mod:`warnings` module to build warnings filters." +#: ../Doc/c-api/init_config.rst:678 +msgid "" +":data:`sys.warnoptions`: options of the :mod:`warnings` module to build " +"warnings filters: lowest to highest priority." +msgstr "" + +#: ../Doc/c-api/init_config.rst:681 +msgid "" +"The :mod:`warnings` module adds :data:`sys.warnoptions` in the reverse " +"order: the last :c:member:`PyConfig.warnoptions` item becomes the first item " +"of :data:`warnings.filters` which is checked first (highest priority)." msgstr "" -#: ../Doc/c-api/init_config.rst:665 +#: ../Doc/c-api/init_config.rst:688 msgid "If non-zero, write ``.pyc`` files." msgstr "" -#: ../Doc/c-api/init_config.rst:669 +#: ../Doc/c-api/init_config.rst:690 +msgid "" +":data:`sys.dont_write_bytecode` is initialized to the inverted value of :c:" +"member:`~PyConfig.write_bytecode`." +msgstr "" + +#: ../Doc/c-api/init_config.rst:695 msgid ":data:`sys._xoptions`." msgstr "" -#: ../Doc/c-api/init_config.rst:671 +#: ../Doc/c-api/init_config.rst:697 msgid "" "If ``parse_argv`` is non-zero, ``argv`` arguments are parsed the same way " "the regular Python parses command line arguments, and Python arguments are " "stripped from ``argv``: see :ref:`Command Line Arguments `." msgstr "" -#: ../Doc/c-api/init_config.rst:676 +#: ../Doc/c-api/init_config.rst:702 msgid "" "The ``xoptions`` options are parsed to set other options: see :option:`-X` " "option." msgstr "" -#: ../Doc/c-api/init_config.rst:681 +#: ../Doc/c-api/init_config.rst:707 msgid "Initialization with PyConfig" msgstr "" -#: ../Doc/c-api/init_config.rst:683 +#: ../Doc/c-api/init_config.rst:709 msgid "Function to initialize Python:" msgstr "" -#: ../Doc/c-api/init_config.rst:687 +#: ../Doc/c-api/init_config.rst:713 msgid "Initialize Python from *config* configuration." msgstr "" -#: ../Doc/c-api/init_config.rst:692 +#: ../Doc/c-api/init_config.rst:718 msgid "" -"``PyImport_FrozenModules``, ``PyImport_AppendInittab()`` or " -"``PyImport_ExtendInittab()`` is used: they must be set or called after " +"If ``PyImport_FrozenModules``, ``PyImport_AppendInittab()`` or " +"``PyImport_ExtendInittab()`` are used, they must be set or called after " "Python preinitialization and before the Python initialization." msgstr "" -#: ../Doc/c-api/init_config.rst:696 +#: ../Doc/c-api/init_config.rst:722 msgid "Example setting the program name::" msgstr "" -#: ../Doc/c-api/init_config.rst:727 +#: ../Doc/c-api/init_config.rst:750 msgid "" "More complete example modifying the default configuration, read the " "configuration, and then override some parameters::" msgstr "" -#: ../Doc/c-api/init_config.rst:781 +#: ../Doc/c-api/init_config.rst:801 msgid "Isolated Configuration" msgstr "" -#: ../Doc/c-api/init_config.rst:783 +#: ../Doc/c-api/init_config.rst:803 msgid "" ":c:func:`PyPreConfig_InitIsolatedConfig` and :c:func:" "`PyConfig_InitIsolatedConfig` functions create a configuration to isolate " "Python from the system. For example, to embed Python into an application." msgstr "" -#: ../Doc/c-api/init_config.rst:788 +#: ../Doc/c-api/init_config.rst:808 msgid "" "This configuration ignores global configuration variables, environments " -"variables and command line arguments (:c:member:`PyConfig.argv` is not " -"parsed). The C standard streams (ex: ``stdout``) and the LC_CTYPE locale are " -"left unchanged by default." +"variables, command line arguments (:c:member:`PyConfig.argv` is not parsed) " +"and user site directory. The C standard streams (ex: ``stdout``) and the " +"LC_CTYPE locale are left unchanged. Signal handlers are not installed." msgstr "" -#: ../Doc/c-api/init_config.rst:793 +#: ../Doc/c-api/init_config.rst:813 msgid "" "Configuration files are still used with this configuration. Set the :ref:" "`Path Configuration ` (\"output fields\") to ignore these " @@ -959,145 +1003,182 @@ msgid "" "configuration." msgstr "" -#: ../Doc/c-api/init_config.rst:802 +#: ../Doc/c-api/init_config.rst:822 msgid "Python Configuration" msgstr "" -#: ../Doc/c-api/init_config.rst:804 +#: ../Doc/c-api/init_config.rst:824 msgid "" ":c:func:`PyPreConfig_InitPythonConfig` and :c:func:" "`PyConfig_InitPythonConfig` functions create a configuration to build a " "customized Python which behaves as the regular Python." msgstr "" -#: ../Doc/c-api/init_config.rst:808 +#: ../Doc/c-api/init_config.rst:828 msgid "" "Environments variables and command line arguments are used to configure " "Python, whereas global configuration variables are ignored." msgstr "" -#: ../Doc/c-api/init_config.rst:811 +#: ../Doc/c-api/init_config.rst:831 msgid "" "This function enables C locale coercion (:pep:`538`) and UTF-8 Mode (:pep:" "`540`) depending on the LC_CTYPE locale, :envvar:`PYTHONUTF8` and :envvar:" "`PYTHONCOERCECLOCALE` environment variables." msgstr "" -#: ../Doc/c-api/init_config.rst:815 +#: ../Doc/c-api/init_config.rst:835 msgid "Example of customized Python always running in isolated mode::" msgstr "" -#: ../Doc/c-api/init_config.rst:858 +#: ../Doc/c-api/init_config.rst:874 msgid "Path Configuration" msgstr "" -#: ../Doc/c-api/init_config.rst:860 +#: ../Doc/c-api/init_config.rst:876 msgid ":c:type:`PyConfig` contains multiple fields for the path configuration:" msgstr "" -#: ../Doc/c-api/init_config.rst:862 -msgid "Path configuration input fields:" +#: ../Doc/c-api/init_config.rst:878 +msgid "Path configuration inputs:" msgstr "" -#: ../Doc/c-api/init_config.rst:864 +#: ../Doc/c-api/init_config.rst:880 msgid ":c:member:`PyConfig.home`" msgstr "" -#: ../Doc/c-api/init_config.rst:865 +#: ../Doc/c-api/init_config.rst:881 +msgid ":c:member:`PyConfig.pathconfig_warnings`" +msgstr "" + +#: ../Doc/c-api/init_config.rst:882 +msgid ":c:member:`PyConfig.program_name`" +msgstr "" + +#: ../Doc/c-api/init_config.rst:883 msgid ":c:member:`PyConfig.pythonpath_env`" msgstr "" -#: ../Doc/c-api/init_config.rst:866 -msgid ":c:member:`PyConfig.pathconfig_warnings`" +#: ../Doc/c-api/init_config.rst:884 +msgid "current working directory: to get absolute paths" +msgstr "" + +#: ../Doc/c-api/init_config.rst:885 +msgid "" +"``PATH`` environment variable to get the program full path (from :c:member:" +"`PyConfig.program_name`)" msgstr "" -#: ../Doc/c-api/init_config.rst:868 +#: ../Doc/c-api/init_config.rst:887 +msgid "``__PYVENV_LAUNCHER__`` environment variable" +msgstr "" + +#: ../Doc/c-api/init_config.rst:888 +msgid "" +"(Windows only) Application paths in the registry under \"Software\\Python" +"\\PythonCore\\X.Y\\PythonPath\" of HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE " +"(where X.Y is the Python version)." +msgstr "" + +#: ../Doc/c-api/init_config.rst:892 msgid "Path configuration output fields:" msgstr "" -#: ../Doc/c-api/init_config.rst:870 -msgid ":c:member:`PyConfig.exec_prefix`" +#: ../Doc/c-api/init_config.rst:894 +msgid ":c:member:`PyConfig.base_exec_prefix`" msgstr "" -#: ../Doc/c-api/init_config.rst:871 -msgid ":c:member:`PyConfig.executable`" +#: ../Doc/c-api/init_config.rst:895 +msgid ":c:member:`PyConfig.base_executable`" msgstr "" -#: ../Doc/c-api/init_config.rst:872 -msgid ":c:member:`PyConfig.prefix`" +#: ../Doc/c-api/init_config.rst:896 +msgid ":c:member:`PyConfig.base_prefix`" +msgstr "" + +#: ../Doc/c-api/init_config.rst:897 +msgid ":c:member:`PyConfig.exec_prefix`" +msgstr "" + +#: ../Doc/c-api/init_config.rst:898 +msgid ":c:member:`PyConfig.executable`" msgstr "" -#: ../Doc/c-api/init_config.rst:873 +#: ../Doc/c-api/init_config.rst:899 msgid "" ":c:member:`PyConfig.module_search_paths_set`, :c:member:`PyConfig." "module_search_paths`" msgstr "" -#: ../Doc/c-api/init_config.rst:876 +#: ../Doc/c-api/init_config.rst:901 +msgid ":c:member:`PyConfig.prefix`" +msgstr "" + +#: ../Doc/c-api/init_config.rst:903 msgid "" -"If at least one \"output field\" is not set, Python computes the path " +"If at least one \"output field\" is not set, Python calculates the path " "configuration to fill unset fields. If :c:member:`~PyConfig." "module_search_paths_set` is equal to 0, :c:member:`~PyConfig." "module_search_paths` is overridden and :c:member:`~PyConfig." "module_search_paths_set` is set to 1." msgstr "" -#: ../Doc/c-api/init_config.rst:882 +#: ../Doc/c-api/init_config.rst:909 msgid "" -"It is possible to completely ignore the function computing the default path " -"configuration by setting explicitly all path configuration output fields " -"listed above. A string is considered as set even if it is non-empty. " +"It is possible to completely ignore the function calculating the default " +"path configuration by setting explicitly all path configuration output " +"fields listed above. A string is considered as set even if it is non-empty. " "``module_search_paths`` is considered as set if ``module_search_paths_set`` " "is set to 1. In this case, path configuration input fields are ignored as " "well." msgstr "" -#: ../Doc/c-api/init_config.rst:889 +#: ../Doc/c-api/init_config.rst:916 msgid "" "Set :c:member:`~PyConfig.pathconfig_warnings` to 0 to suppress warnings when " -"computing the path configuration (Unix only, Windows does not log any " +"calculating the path configuration (Unix only, Windows does not log any " "warning)." msgstr "" -#: ../Doc/c-api/init_config.rst:892 +#: ../Doc/c-api/init_config.rst:919 msgid "" "If :c:member:`~PyConfig.base_prefix` or :c:member:`~PyConfig." "base_exec_prefix` fields are not set, they inherit their value from :c:" "member:`~PyConfig.prefix` and :c:member:`~PyConfig.exec_prefix` respectively." msgstr "" -#: ../Doc/c-api/init_config.rst:896 +#: ../Doc/c-api/init_config.rst:923 msgid ":c:func:`Py_RunMain` and :c:func:`Py_Main` modify :data:`sys.path`:" msgstr "" -#: ../Doc/c-api/init_config.rst:898 +#: ../Doc/c-api/init_config.rst:925 msgid "" "If :c:member:`~PyConfig.run_filename` is set and is a directory which " "contains a ``__main__.py`` script, prepend :c:member:`~PyConfig." "run_filename` to :data:`sys.path`." msgstr "" -#: ../Doc/c-api/init_config.rst:901 +#: ../Doc/c-api/init_config.rst:928 msgid "If :c:member:`~PyConfig.isolated` is zero:" msgstr "" -#: ../Doc/c-api/init_config.rst:903 +#: ../Doc/c-api/init_config.rst:930 msgid "" "If :c:member:`~PyConfig.run_module` is set, prepend the current directory " "to :data:`sys.path`. Do nothing if the current directory cannot be read." msgstr "" -#: ../Doc/c-api/init_config.rst:905 +#: ../Doc/c-api/init_config.rst:932 msgid "" "If :c:member:`~PyConfig.run_filename` is set, prepend the directory of the " "filename to :data:`sys.path`." msgstr "" -#: ../Doc/c-api/init_config.rst:907 +#: ../Doc/c-api/init_config.rst:934 msgid "Otherwise, prepend an empty string to :data:`sys.path`." msgstr "" -#: ../Doc/c-api/init_config.rst:909 +#: ../Doc/c-api/init_config.rst:936 msgid "" "If :c:member:`~PyConfig.site_import` is non-zero, :data:`sys.path` can be " "modified by the :mod:`site` module. If :c:member:`~PyConfig." @@ -1106,148 +1187,154 @@ msgid "" "data:`sys.path`." msgstr "" -#: ../Doc/c-api/init_config.rst:915 +#: ../Doc/c-api/init_config.rst:942 msgid "The following configuration files are used by the path configuration:" msgstr "" -#: ../Doc/c-api/init_config.rst:917 +#: ../Doc/c-api/init_config.rst:944 msgid "``pyvenv.cfg``" msgstr "" -#: ../Doc/c-api/init_config.rst:918 +#: ../Doc/c-api/init_config.rst:945 msgid "``python._pth`` (Windows only)" msgstr "" -#: ../Doc/c-api/init_config.rst:919 +#: ../Doc/c-api/init_config.rst:946 msgid "``pybuilddir.txt`` (Unix only)" msgstr "" -#: ../Doc/c-api/init_config.rst:923 +#: ../Doc/c-api/init_config.rst:948 +msgid "" +"The ``__PYVENV_LAUNCHER__`` environment variable is used to set :c:member:" +"`PyConfig.base_executable`" +msgstr "" + +#: ../Doc/c-api/init_config.rst:953 msgid "Py_RunMain()" msgstr "" -#: ../Doc/c-api/init_config.rst:927 +#: ../Doc/c-api/init_config.rst:957 msgid "" "Execute the command (:c:member:`PyConfig.run_command`), the script (:c:" "member:`PyConfig.run_filename`) or the module (:c:member:`PyConfig." "run_module`) specified on the command line or in the configuration." msgstr "" -#: ../Doc/c-api/init_config.rst:932 +#: ../Doc/c-api/init_config.rst:962 msgid "By default and when if :option:`-i` option is used, run the REPL." msgstr "" -#: ../Doc/c-api/init_config.rst:934 +#: ../Doc/c-api/init_config.rst:964 msgid "" "Finally, finalizes Python and returns an exit status that can be passed to " "the ``exit()`` function." msgstr "" -#: ../Doc/c-api/init_config.rst:937 +#: ../Doc/c-api/init_config.rst:967 msgid "" "See :ref:`Python Configuration ` for an example of " "customized Python always running in isolated mode using :c:func:`Py_RunMain`." msgstr "" -#: ../Doc/c-api/init_config.rst:943 +#: ../Doc/c-api/init_config.rst:973 msgid "Multi-Phase Initialization Private Provisional API" msgstr "" -#: ../Doc/c-api/init_config.rst:945 +#: ../Doc/c-api/init_config.rst:975 msgid "" "This section is a private provisional API introducing multi-phase " "initialization, the core feature of the :pep:`432`:" msgstr "" -#: ../Doc/c-api/init_config.rst:948 +#: ../Doc/c-api/init_config.rst:978 msgid "\"Core\" initialization phase, \"bare minimum Python\":" msgstr "" -#: ../Doc/c-api/init_config.rst:950 +#: ../Doc/c-api/init_config.rst:980 msgid "Builtin types;" msgstr "" -#: ../Doc/c-api/init_config.rst:951 +#: ../Doc/c-api/init_config.rst:981 msgid "Builtin exceptions;" msgstr "" -#: ../Doc/c-api/init_config.rst:952 +#: ../Doc/c-api/init_config.rst:982 msgid "Builtin and frozen modules;" msgstr "" -#: ../Doc/c-api/init_config.rst:953 +#: ../Doc/c-api/init_config.rst:983 msgid "" "The :mod:`sys` module is only partially initialized (ex: :data:`sys.path` " -"doesn't exist yet);" +"doesn't exist yet)." msgstr "" -#: ../Doc/c-api/init_config.rst:956 +#: ../Doc/c-api/init_config.rst:986 msgid "\"Main\" initialization phase, Python is fully initialized:" msgstr "" -#: ../Doc/c-api/init_config.rst:958 +#: ../Doc/c-api/init_config.rst:988 msgid "Install and configure :mod:`importlib`;" msgstr "" -#: ../Doc/c-api/init_config.rst:959 +#: ../Doc/c-api/init_config.rst:989 msgid "Apply the :ref:`Path Configuration `;" msgstr "" -#: ../Doc/c-api/init_config.rst:960 +#: ../Doc/c-api/init_config.rst:990 msgid "Install signal handlers;" msgstr "" -#: ../Doc/c-api/init_config.rst:961 +#: ../Doc/c-api/init_config.rst:991 msgid "" "Finish :mod:`sys` module initialization (ex: create :data:`sys.stdout` and :" "data:`sys.path`);" msgstr "" -#: ../Doc/c-api/init_config.rst:963 +#: ../Doc/c-api/init_config.rst:993 msgid "" "Enable optional features like :mod:`faulthandler` and :mod:`tracemalloc`;" msgstr "" -#: ../Doc/c-api/init_config.rst:964 +#: ../Doc/c-api/init_config.rst:994 msgid "Import the :mod:`site` module;" msgstr "" -#: ../Doc/c-api/init_config.rst:965 +#: ../Doc/c-api/init_config.rst:995 msgid "etc." msgstr "" -#: ../Doc/c-api/init_config.rst:967 +#: ../Doc/c-api/init_config.rst:997 msgid "Private provisional API:" msgstr "" -#: ../Doc/c-api/init_config.rst:969 +#: ../Doc/c-api/init_config.rst:999 msgid "" ":c:member:`PyConfig._init_main`: if set to 0, :c:func:" "`Py_InitializeFromConfig` stops at the \"Core\" initialization phase." msgstr "" -#: ../Doc/c-api/init_config.rst:974 +#: ../Doc/c-api/init_config.rst:1004 msgid "" "Move to the \"Main\" initialization phase, finish the Python initialization." msgstr "" -#: ../Doc/c-api/init_config.rst:976 +#: ../Doc/c-api/init_config.rst:1006 msgid "" "No module is imported during the \"Core\" phase and the ``importlib`` module " "is not configured: the :ref:`Path Configuration ` is only " "applied during the \"Main\" phase. It may allow to customize Python in " "Python to override or tune the :ref:`Path Configuration `, " -"maybe install a custom sys.meta_path importer or an import hook, etc." +"maybe install a custom :data:`sys.meta_path` importer or an import hook, etc." msgstr "" -#: ../Doc/c-api/init_config.rst:982 +#: ../Doc/c-api/init_config.rst:1012 msgid "" -"It may become possible to compute the :ref:`Path Configuration ` in Python, after the Core phase and before the Main phase, which is " "one of the :pep:`432` motivation." msgstr "" -#: ../Doc/c-api/init_config.rst:986 +#: ../Doc/c-api/init_config.rst:1016 msgid "" "The \"Core\" phase is not properly defined: what should be and what should " "not be available at this phase is not specified yet. The API is marked as " @@ -1255,7 +1342,7 @@ msgid "" "until a proper public API is designed." msgstr "" -#: ../Doc/c-api/init_config.rst:991 +#: ../Doc/c-api/init_config.rst:1021 msgid "" "Example running Python code between \"Core\" and \"Main\" initialization " "phases::" diff --git a/c-api/intro.po b/c-api/intro.po index 54c9d92ff..8a9ea2803 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: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -104,15 +104,15 @@ msgid "" "names do not have a reserved prefix." msgstr "" -#: ../Doc/c-api/intro.rst:72 +#: ../Doc/c-api/intro.rst:74 msgid "" -"**Important:** user code should never define names that begin with ``Py`` or " -"``_Py``. This confuses the reader, and jeopardizes the portability of the " -"user code to future Python versions, which may define additional names " -"beginning with one of these prefixes." +"User code should never define names that begin with ``Py`` or ``_Py``. This " +"confuses the reader, and jeopardizes the portability of the user code to " +"future Python versions, which may define additional names beginning with one " +"of these prefixes." msgstr "" -#: ../Doc/c-api/intro.rst:77 +#: ../Doc/c-api/intro.rst:79 msgid "" "The header files are typically installed with Python. On Unix, these are " "located in the directories :file:`{prefix}/include/pythonversion/` and :file:" @@ -124,7 +124,7 @@ msgid "" "specified to the installer." msgstr "" -#: ../Doc/c-api/intro.rst:86 +#: ../Doc/c-api/intro.rst:88 msgid "" "To include the headers, place both directories (if different) on your " "compiler's search path for includes. Do *not* place the parent directories " @@ -134,18 +134,18 @@ msgid "" "`exec_prefix`." msgstr "" -#: ../Doc/c-api/intro.rst:93 +#: ../Doc/c-api/intro.rst:95 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++." +"C++ users should note that although the API is defined entirely using C, the " +"header files properly declare the entry points to be ``extern \"C\"``. As a " +"result, there is no need to do anything special to use the API from C++." msgstr "" -#: ../Doc/c-api/intro.rst:99 +#: ../Doc/c-api/intro.rst:101 msgid "Useful macros" msgstr "" -#: ../Doc/c-api/intro.rst:101 +#: ../Doc/c-api/intro.rst:103 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`). " @@ -153,7 +153,7 @@ msgid "" "a complete listing." msgstr "" -#: ../Doc/c-api/intro.rst:108 +#: ../Doc/c-api/intro.rst:110 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 " @@ -161,64 +161,64 @@ msgid "" "where you might be tempted to put an ``assert(0)`` or ``abort()`` call." msgstr "" -#: ../Doc/c-api/intro.rst:117 +#: ../Doc/c-api/intro.rst:119 msgid "Return the absolute value of ``x``." msgstr "" -#: ../Doc/c-api/intro.rst:123 +#: ../Doc/c-api/intro.rst:125 msgid "Return the minimum value between ``x`` and ``y``." msgstr "" -#: ../Doc/c-api/intro.rst:129 +#: ../Doc/c-api/intro.rst:131 msgid "Return the maximum value between ``x`` and ``y``." msgstr "" -#: ../Doc/c-api/intro.rst:135 +#: ../Doc/c-api/intro.rst:137 msgid "" "Convert ``x`` to a C string. E.g. ``Py_STRINGIFY(123)`` returns ``\"123\"``." msgstr "" -#: ../Doc/c-api/intro.rst:142 +#: ../Doc/c-api/intro.rst:144 msgid "Return the size of a structure (``type``) ``member`` in bytes." msgstr "" -#: ../Doc/c-api/intro.rst:148 +#: ../Doc/c-api/intro.rst:150 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:153 +#: ../Doc/c-api/intro.rst:155 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:158 +#: ../Doc/c-api/intro.rst:160 msgid "" "Use this for unused arguments in a function definition to silence compiler " "warnings. Example: ``int func(int a, int Py_UNUSED(b)) { return a; }``." msgstr "" -#: ../Doc/c-api/intro.rst:165 +#: ../Doc/c-api/intro.rst:167 msgid "" "Use this for deprecated declarations. The macro must be placed before the " "symbol name." msgstr "" -#: ../Doc/c-api/intro.rst:168 +#: ../Doc/c-api/intro.rst:170 msgid "Example::" msgstr "Exemple ::" -#: ../Doc/c-api/intro.rst:172 +#: ../Doc/c-api/intro.rst:174 msgid "MSVC support was added." msgstr "" -#: ../Doc/c-api/intro.rst:179 +#: ../Doc/c-api/intro.rst:181 msgid "Objects, Types and Reference Counts" msgstr "" -#: ../Doc/c-api/intro.rst:183 +#: ../Doc/c-api/intro.rst:185 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 " @@ -233,7 +233,7 @@ msgid "" "objects." msgstr "" -#: ../Doc/c-api/intro.rst:194 +#: ../Doc/c-api/intro.rst:196 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." @@ -244,11 +244,11 @@ msgid "" "a Python list." msgstr "" -#: ../Doc/c-api/intro.rst:205 +#: ../Doc/c-api/intro.rst:207 msgid "Reference Counts" msgstr "" -#: ../Doc/c-api/intro.rst:207 +#: ../Doc/c-api/intro.rst:209 msgid "" "The reference count is important because today's computers have a finite " "(and often severely limited) memory size; it counts how many different " @@ -262,7 +262,7 @@ msgid "" "for now, the solution is \"don't do that.\")" msgstr "" -#: ../Doc/c-api/intro.rst:222 +#: ../Doc/c-api/intro.rst:224 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 " @@ -280,7 +280,7 @@ msgid "" "reference count increment is a simple operation." msgstr "" -#: ../Doc/c-api/intro.rst:236 +#: ../Doc/c-api/intro.rst:238 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 " @@ -297,7 +297,7 @@ msgid "" "to hold a reference to every argument for the duration of the call." msgstr "" -#: ../Doc/c-api/intro.rst:250 +#: ../Doc/c-api/intro.rst:252 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 " @@ -308,7 +308,7 @@ msgid "" "from a :c:func:`Py_DECREF`, so almost any operation is potentially dangerous." msgstr "" -#: ../Doc/c-api/intro.rst:258 +#: ../Doc/c-api/intro.rst:260 msgid "" "A safe approach is to always use the generic operations (functions whose " "name begins with ``PyObject_``, ``PyNumber_``, ``PySequence_`` or " @@ -318,11 +318,11 @@ msgid "" "becomes second nature." msgstr "" -#: ../Doc/c-api/intro.rst:268 +#: ../Doc/c-api/intro.rst:270 msgid "Reference Count Details" msgstr "" -#: ../Doc/c-api/intro.rst:270 +#: ../Doc/c-api/intro.rst:272 msgid "" "The reference count behavior of functions in the Python/C API is best " "explained in terms of *ownership of references*. Ownership pertains to " @@ -339,7 +339,7 @@ msgid "" "reference." msgstr "" -#: ../Doc/c-api/intro.rst:283 +#: ../Doc/c-api/intro.rst:285 msgid "" "Conversely, when a calling function passes in a reference to an object, " "there are two possibilities: the function *steals* a reference to the " @@ -348,7 +348,7 @@ msgid "" "reference, and you are not responsible for it any longer." msgstr "" -#: ../Doc/c-api/intro.rst:293 +#: ../Doc/c-api/intro.rst:295 msgid "" "Few functions steal references; the two notable exceptions are :c:func:" "`PyList_SetItem` and :c:func:`PyTuple_SetItem`, which steal a reference to " @@ -360,7 +360,7 @@ msgid "" "below)::" msgstr "" -#: ../Doc/c-api/intro.rst:308 +#: ../Doc/c-api/intro.rst:310 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 " @@ -368,7 +368,7 @@ msgid "" "another reference before calling the reference-stealing function." msgstr "" -#: ../Doc/c-api/intro.rst:313 +#: ../Doc/c-api/intro.rst:315 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 " @@ -376,13 +376,13 @@ msgid "" "func:`PyTuple_SetItem` for tuples that you are creating yourself." msgstr "" -#: ../Doc/c-api/intro.rst:318 +#: ../Doc/c-api/intro.rst:320 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:321 +#: ../Doc/c-api/intro.rst:323 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:" @@ -391,7 +391,7 @@ msgid "" "be replaced by the following (which also takes care of the error checking)::" msgstr "" -#: ../Doc/c-api/intro.rst:332 +#: ../Doc/c-api/intro.rst:334 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 " @@ -402,7 +402,7 @@ msgid "" "sequence) to a given item::" msgstr "" -#: ../Doc/c-api/intro.rst:362 +#: ../Doc/c-api/intro.rst:364 msgid "" "The situation is slightly different for function return values. While " "passing a reference to most functions does not change your ownership " @@ -415,7 +415,7 @@ msgid "" "becomes the owner of the reference)." msgstr "" -#: ../Doc/c-api/intro.rst:371 +#: ../Doc/c-api/intro.rst:373 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 " @@ -426,18 +426,18 @@ msgid "" "the same arguments), you do own a reference to the returned object." msgstr "" -#: ../Doc/c-api/intro.rst:383 +#: ../Doc/c-api/intro.rst:385 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:447 +#: ../Doc/c-api/intro.rst:449 msgid "Types" msgstr "" -#: ../Doc/c-api/intro.rst:449 +#: ../Doc/c-api/intro.rst:451 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:" @@ -448,11 +448,11 @@ msgid "" "that use them." msgstr "" -#: ../Doc/c-api/intro.rst:461 +#: ../Doc/c-api/intro.rst:463 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/c-api/intro.rst:463 +#: ../Doc/c-api/intro.rst:465 msgid "" "The Python programmer only needs to deal with exceptions if specific error " "handling is required; unhandled exceptions are automatically propagated to " @@ -461,7 +461,7 @@ msgid "" "stack traceback." msgstr "" -#: ../Doc/c-api/intro.rst:471 +#: ../Doc/c-api/intro.rst:473 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 " @@ -476,7 +476,7 @@ msgid "" "explicitly documented." msgstr "" -#: ../Doc/c-api/intro.rst:486 +#: ../Doc/c-api/intro.rst:488 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 " @@ -489,7 +489,7 @@ msgid "" "clears the exception state." msgstr "" -#: ../Doc/c-api/intro.rst:496 +#: ../Doc/c-api/intro.rst:498 msgid "" "The full exception state consists of three objects (all of which can be " "*NULL*): the exception type, the corresponding exception value, and the " @@ -502,7 +502,7 @@ msgid "" "``sys.exc_info()`` and friends." msgstr "" -#: ../Doc/c-api/intro.rst:508 +#: ../Doc/c-api/intro.rst:510 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." @@ -516,7 +516,7 @@ msgid "" "referenced by the stack frames in the traceback." msgstr "" -#: ../Doc/c-api/intro.rst:519 +#: ../Doc/c-api/intro.rst:521 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 " @@ -527,7 +527,7 @@ msgid "" "of the error." msgstr "" -#: ../Doc/c-api/intro.rst:528 +#: ../Doc/c-api/intro.rst:530 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 " @@ -536,11 +536,11 @@ msgid "" "why you like Python, we show the equivalent Python code::" msgstr "" -#: ../Doc/c-api/intro.rst:543 +#: ../Doc/c-api/intro.rst:545 msgid "Here is the corresponding C code, in all its glory::" msgstr "" -#: ../Doc/c-api/intro.rst:595 +#: ../Doc/c-api/intro.rst:597 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:" @@ -553,11 +553,11 @@ msgid "" "success after the final call made is successful." msgstr "" -#: ../Doc/c-api/intro.rst:609 +#: ../Doc/c-api/intro.rst:611 msgid "Embedding Python" msgstr "Embarquer Python" -#: ../Doc/c-api/intro.rst:611 +#: ../Doc/c-api/intro.rst:613 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 " @@ -565,7 +565,7 @@ msgid "" "the interpreter can only be used after the interpreter has been initialized." msgstr "" -#: ../Doc/c-api/intro.rst:624 +#: ../Doc/c-api/intro.rst:626 msgid "" "The basic initialization function is :c:func:`Py_Initialize`. This " "initializes the table of loaded modules, and creates the fundamental " @@ -573,7 +573,7 @@ msgid "" "initializes the module search path (``sys.path``)." msgstr "" -#: ../Doc/c-api/intro.rst:631 +#: ../Doc/c-api/intro.rst:633 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 " @@ -581,7 +581,7 @@ msgid "" "argv, updatepath)`` after the call to :c:func:`Py_Initialize`." msgstr "" -#: ../Doc/c-api/intro.rst:636 +#: ../Doc/c-api/intro.rst:638 msgid "" "On most systems (in particular, on Unix and Windows, although the details " "are slightly different), :c:func:`Py_Initialize` calculates the module " @@ -593,7 +593,7 @@ msgid "" "on the shell command search path (the environment variable :envvar:`PATH`)." msgstr "" -#: ../Doc/c-api/intro.rst:645 +#: ../Doc/c-api/intro.rst:647 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/" @@ -604,7 +604,7 @@ msgid "" "in front of the standard path by setting :envvar:`PYTHONPATH`." msgstr "" -#: ../Doc/c-api/intro.rst:660 +#: ../Doc/c-api/intro.rst:662 msgid "" "The embedding application can steer the search by calling " "``Py_SetProgramName(file)`` *before* calling :c:func:`Py_Initialize`. Note " @@ -615,7 +615,7 @@ msgid "" "func:`Py_GetProgramFullPath` (all defined in :file:`Modules/getpath.c`)." msgstr "" -#: ../Doc/c-api/intro.rst:670 +#: ../Doc/c-api/intro.rst:672 msgid "" "Sometimes, it is desirable to \"uninitialize\" Python. For instance, the " "application may want to start over (make another call to :c:func:" @@ -629,18 +629,18 @@ msgid "" "released." msgstr "" -#: ../Doc/c-api/intro.rst:684 +#: ../Doc/c-api/intro.rst:686 msgid "Debugging Builds" msgstr "" -#: ../Doc/c-api/intro.rst:686 +#: ../Doc/c-api/intro.rst:688 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:690 +#: ../Doc/c-api/intro.rst:692 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 " @@ -650,7 +650,7 @@ msgid "" "section." msgstr "" -#: ../Doc/c-api/intro.rst:696 +#: ../Doc/c-api/intro.rst:698 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:" @@ -660,61 +660,61 @@ msgid "" "enabled in the Unix build, compiler optimization is disabled." msgstr "" -#: ../Doc/c-api/intro.rst:703 +#: ../Doc/c-api/intro.rst:705 msgid "" "In addition to the reference count debugging described below, the following " "extra checks are performed:" msgstr "" -#: ../Doc/c-api/intro.rst:706 +#: ../Doc/c-api/intro.rst:708 msgid "Extra checks are added to the object allocator." msgstr "" -#: ../Doc/c-api/intro.rst:708 +#: ../Doc/c-api/intro.rst:710 msgid "Extra checks are added to the parser and compiler." msgstr "" -#: ../Doc/c-api/intro.rst:710 +#: ../Doc/c-api/intro.rst:712 msgid "" "Downcasts from wide types to narrow types are checked for loss of " "information." msgstr "" -#: ../Doc/c-api/intro.rst:712 +#: ../Doc/c-api/intro.rst:714 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:715 +#: ../Doc/c-api/intro.rst:717 msgid "Sanity checks of the input arguments are added to frame creation." msgstr "" -#: ../Doc/c-api/intro.rst:717 +#: ../Doc/c-api/intro.rst:719 msgid "" "The storage for ints is initialized with a known invalid pattern to catch " "reference to uninitialized digits." msgstr "" -#: ../Doc/c-api/intro.rst:720 +#: ../Doc/c-api/intro.rst:722 msgid "" "Low-level tracing and extra exception checking are added to the runtime " "virtual machine." msgstr "" -#: ../Doc/c-api/intro.rst:723 +#: ../Doc/c-api/intro.rst:725 msgid "Extra checks are added to the memory arena implementation." msgstr "" -#: ../Doc/c-api/intro.rst:725 +#: ../Doc/c-api/intro.rst:727 msgid "Extra debugging is added to the thread module." msgstr "" -#: ../Doc/c-api/intro.rst:727 +#: ../Doc/c-api/intro.rst:729 msgid "There may be additional checks not mentioned here." msgstr "" -#: ../Doc/c-api/intro.rst:729 +#: ../Doc/c-api/intro.rst:731 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 " @@ -724,7 +724,7 @@ msgid "" "macro:`Py_DEBUG`." msgstr "" -#: ../Doc/c-api/intro.rst:735 +#: ../Doc/c-api/intro.rst:737 msgid "" "Please refer to :file:`Misc/SpecialBuilds.txt` in the Python source " "distribution for more detailed information." diff --git a/c-api/module.po b/c-api/module.po index 471e8f9a7..90e5e77eb 100644 --- a/c-api/module.po +++ b/c-api/module.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-03-23 09:03+0100\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -476,24 +476,36 @@ msgstr "" msgid "" "Add an object to *module* as *name*. This is a convenience function which " "can be used from the module's initialization function. This steals a " -"reference to *value*. Return ``-1`` on error, ``0`` on success." +"reference to *value* on success. Return ``-1`` on error, ``0`` on success." msgstr "" #: ../Doc/c-api/module.rst:424 msgid "" +"Unlike other functions that steal references, ``PyModule_AddObject()`` only " +"decrements the reference count of *value* **on success**." +msgstr "" + +#: ../Doc/c-api/module.rst:427 +msgid "" +"This means that its return value must be checked, and calling code must :c:" +"func:`Py_DECREF` *value* manually on error. Example usage::" +msgstr "" + +#: ../Doc/c-api/module.rst:439 +msgid "" "Add an integer constant to *module* as *name*. This convenience function " "can be used from the module's initialization function. Return ``-1`` on " "error, ``0`` on success." msgstr "" -#: ../Doc/c-api/module.rst:431 +#: ../Doc/c-api/module.rst:446 msgid "" "Add a string constant to *module* as *name*. This convenience function can " "be used from the module's initialization function. The string *value* must " "be *NULL*-terminated. Return ``-1`` on error, ``0`` on success." msgstr "" -#: ../Doc/c-api/module.rst:438 +#: ../Doc/c-api/module.rst:453 msgid "" "Add an int constant to *module*. The name and the value are taken from " "*macro*. For example ``PyModule_AddIntMacro(module, AF_INET)`` adds the int " @@ -501,29 +513,29 @@ msgid "" "error, ``0`` on success." msgstr "" -#: ../Doc/c-api/module.rst:446 +#: ../Doc/c-api/module.rst:461 msgid "Add a string constant to *module*." msgstr "" -#: ../Doc/c-api/module.rst:450 +#: ../Doc/c-api/module.rst:465 msgid "Module lookup" msgstr "" -#: ../Doc/c-api/module.rst:452 +#: ../Doc/c-api/module.rst:467 msgid "" "Single-phase initialization creates singleton modules that can be looked up " "in the context of the current interpreter. This allows the module object to " "be retrieved later with only a reference to the module definition." msgstr "" -#: ../Doc/c-api/module.rst:456 +#: ../Doc/c-api/module.rst:471 msgid "" "These functions will not work on modules created using multi-phase " "initialization, since multiple such modules can be created from a single " "definition." msgstr "" -#: ../Doc/c-api/module.rst:461 +#: ../Doc/c-api/module.rst:476 msgid "" "Returns the module object that was created from *def* for the current " "interpreter. This method requires that the module object has been attached " @@ -532,18 +544,18 @@ msgid "" "to the interpreter state yet, it returns *NULL*." msgstr "" -#: ../Doc/c-api/module.rst:468 +#: ../Doc/c-api/module.rst:483 msgid "" "Attaches the module object passed to the function to the interpreter state. " "This allows the module object to be accessible via :c:func:" "`PyState_FindModule`." msgstr "" -#: ../Doc/c-api/module.rst:471 +#: ../Doc/c-api/module.rst:486 msgid "Only effective on modules created using single-phase initialization." msgstr "" -#: ../Doc/c-api/module.rst:477 +#: ../Doc/c-api/module.rst:492 msgid "" "Removes the module object created from *def* from the interpreter state." msgstr "" diff --git a/c-api/sequence.po b/c-api/sequence.po index 31bce7d9a..35a134534 100644 --- a/c-api/sequence.po +++ b/c-api/sequence.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-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -140,14 +140,26 @@ msgstr "" #: ../Doc/c-api/sequence.rst:133 msgid "" -"Return the sequence or iterable *o* as a list, unless it is already a tuple " -"or list, in which case *o* is returned. Use :c:func:" -"`PySequence_Fast_GET_ITEM` to access the members of the result. Returns " -"*NULL* on failure. If the object is not a sequence or iterable, raises :exc:" -"`TypeError` with *m* as the message text." +"Return the sequence or iterable *o* as an object usable by the other " +"``PySequence_Fast*`` family of functions. If the object is not a sequence or " +"iterable, raises :exc:`TypeError` with *m* as the message text. Returns " +"*NULL* on failure." msgstr "" -#: ../Doc/c-api/sequence.rst:141 +#: ../Doc/c-api/sequence.rst:138 +msgid "" +"The ``PySequence_Fast*`` functions are thus named because they assume *o* is " +"a :c:type:`PyTupleObject` or a :c:type:`PyListObject` and access the data " +"fields of *o* directly." +msgstr "" + +#: ../Doc/c-api/sequence.rst:142 +msgid "" +"As a CPython implementation detail, if *o* is already a sequence or list, it " +"will be returned." +msgstr "" + +#: ../Doc/c-api/sequence.rst:148 msgid "" "Returns the length of *o*, assuming that *o* was returned by :c:func:" "`PySequence_Fast` and that *o* is not *NULL*. The size can also be gotten " @@ -156,28 +168,28 @@ msgid "" "tuple." msgstr "" -#: ../Doc/c-api/sequence.rst:150 +#: ../Doc/c-api/sequence.rst:157 msgid "" "Return the *i*\\ th element of *o*, assuming that *o* was returned by :c:" "func:`PySequence_Fast`, *o* is not *NULL*, and that *i* is within bounds." msgstr "" -#: ../Doc/c-api/sequence.rst:156 +#: ../Doc/c-api/sequence.rst:163 msgid "" "Return the underlying array of PyObject pointers. Assumes that *o* was " "returned by :c:func:`PySequence_Fast` and *o* is not *NULL*." msgstr "" -#: ../Doc/c-api/sequence.rst:159 +#: ../Doc/c-api/sequence.rst:166 msgid "" "Note, if a list gets resized, the reallocation may relocate the items array. " "So, only use the underlying array pointer in contexts where the sequence " "cannot change." msgstr "" -#: ../Doc/c-api/sequence.rst:166 +#: ../Doc/c-api/sequence.rst:173 msgid "" -"Return the *i*\\ th element of *o* or *NULL* on failure. Macro form of :c:" +"Return the *i*\\ th element of *o* or *NULL* on failure. Faster form of :c:" "func:`PySequence_GetItem` but without checking that :c:func:" "`PySequence_Check` on *o* is true and without adjustment for negative " "indices." diff --git a/c-api/type.po b/c-api/type.po index 45780089e..56ef77867 100644 --- a/c-api/type.po +++ b/c-api/type.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-02-15 00:33+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -136,74 +136,72 @@ msgid "" msgstr "" #: ../Doc/c-api/type.rst:121 -msgid "Creates and returns a heap type object from the *spec*." +msgid "" +"Creates and returns a heap type object from the *spec* (:const:" +"`Py_TPFLAGS_HEAPTYPE`)." msgstr "" -#: ../Doc/c-api/type.rst:123 +#: ../Doc/c-api/type.rst:124 msgid "" "If *bases* is a tuple, the created heap type contains all types contained in " "it as base types." msgstr "" -#: ../Doc/c-api/type.rst:126 +#: ../Doc/c-api/type.rst:127 msgid "" "If *bases* is *NULL*, the *Py_tp_base* slot is used instead. If that also is " "*NULL*, the new type derives from :class:`object`." msgstr "" -#: ../Doc/c-api/type.rst:129 +#: ../Doc/c-api/type.rst:130 msgid "This function calls :c:func:`PyType_Ready` on the new type." msgstr "" -#: ../Doc/c-api/type.rst:135 +#: ../Doc/c-api/type.rst:136 msgid "Equivalent to ``PyType_FromSpecWithBases(spec, NULL)``." msgstr "" -#: ../Doc/c-api/type.rst:139 +#: ../Doc/c-api/type.rst:140 msgid "Structure defining a type's behavior." msgstr "" -#: ../Doc/c-api/type.rst:143 +#: ../Doc/c-api/type.rst:144 msgid "Name of the type, used to set :c:member:`PyTypeObject.tp_name`." msgstr "" -#: ../Doc/c-api/type.rst:147 -msgid "Type docstring, used to set :c:member:`PyTypeObject.tp_doc`." -msgstr "" - -#: ../Doc/c-api/type.rst:152 +#: ../Doc/c-api/type.rst:149 msgid "" "Size of the instance in bytes, used to set :c:member:`PyTypeObject." "tp_basicsize` and :c:member:`PyTypeObject.tp_itemsize`." msgstr "" -#: ../Doc/c-api/type.rst:158 +#: ../Doc/c-api/type.rst:155 msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`." msgstr "" -#: ../Doc/c-api/type.rst:160 +#: ../Doc/c-api/type.rst:157 msgid "" "If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:" "`PyType_FromSpecWithBases` sets it automatically." msgstr "" -#: ../Doc/c-api/type.rst:165 +#: ../Doc/c-api/type.rst:162 msgid "" "Array of :c:type:`PyType_Slot` structures. Terminated by the special slot " "value ``{0, NULL}``." msgstr "" -#: ../Doc/c-api/type.rst:170 +#: ../Doc/c-api/type.rst:167 msgid "" "Structure defining optional functionality of a type, containing a slot ID " "and a value pointer." msgstr "" -#: ../Doc/c-api/type.rst:175 +#: ../Doc/c-api/type.rst:172 msgid "A slot ID." msgstr "" -#: ../Doc/c-api/type.rst:177 +#: ../Doc/c-api/type.rst:174 msgid "" "Slot IDs are named like the field names of the structures :c:type:" "`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:" @@ -211,76 +209,76 @@ msgid "" "prefix. For example, use:" msgstr "" -#: ../Doc/c-api/type.rst:183 +#: ../Doc/c-api/type.rst:180 msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`" msgstr "" -#: ../Doc/c-api/type.rst:184 +#: ../Doc/c-api/type.rst:181 msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`" msgstr "" -#: ../Doc/c-api/type.rst:185 +#: ../Doc/c-api/type.rst:182 msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`" msgstr "" -#: ../Doc/c-api/type.rst:187 +#: ../Doc/c-api/type.rst:184 msgid "" "The following fields cannot be set using *PyType_Spec* and *PyType_Slot*:" msgstr "" -#: ../Doc/c-api/type.rst:189 +#: ../Doc/c-api/type.rst:186 msgid ":c:member:`~PyTypeObject.tp_dict`" msgstr "" -#: ../Doc/c-api/type.rst:190 +#: ../Doc/c-api/type.rst:187 msgid ":c:member:`~PyTypeObject.tp_mro`" msgstr "" -#: ../Doc/c-api/type.rst:191 +#: ../Doc/c-api/type.rst:188 msgid ":c:member:`~PyTypeObject.tp_cache`" msgstr "" -#: ../Doc/c-api/type.rst:192 +#: ../Doc/c-api/type.rst:189 msgid ":c:member:`~PyTypeObject.tp_subclasses`" msgstr "" -#: ../Doc/c-api/type.rst:193 +#: ../Doc/c-api/type.rst:190 msgid ":c:member:`~PyTypeObject.tp_weaklist`" msgstr "" -#: ../Doc/c-api/type.rst:194 +#: ../Doc/c-api/type.rst:191 msgid ":c:member:`~PyTypeObject.tp_print`" msgstr "" -#: ../Doc/c-api/type.rst:195 +#: ../Doc/c-api/type.rst:192 msgid ":c:member:`~PyTypeObject.tp_weaklistoffset`" msgstr "" -#: ../Doc/c-api/type.rst:196 +#: ../Doc/c-api/type.rst:193 msgid ":c:member:`~PyTypeObject.tp_dictoffset`" msgstr "" -#: ../Doc/c-api/type.rst:197 +#: ../Doc/c-api/type.rst:194 msgid ":c:member:`~PyBufferProcs.bf_getbuffer`" msgstr "" -#: ../Doc/c-api/type.rst:198 +#: ../Doc/c-api/type.rst:195 msgid ":c:member:`~PyBufferProcs.bf_releasebuffer`" msgstr "" -#: ../Doc/c-api/type.rst:200 +#: ../Doc/c-api/type.rst:197 msgid "" "Setting :c:data:`Py_tp_bases` may be problematic on some platforms. To avoid " "issues, use the *bases* argument of :py:func:`PyType_FromSpecWithBases` " "instead." msgstr "" -#: ../Doc/c-api/type.rst:206 +#: ../Doc/c-api/type.rst:203 msgid "" "The desired value of the slot. In most cases, this is a pointer to a " "function." msgstr "" -#: ../Doc/c-api/type.rst:209 +#: ../Doc/c-api/type.rst:206 msgid "May not be *NULL*." msgstr "" diff --git a/c-api/typeobj.po b/c-api/typeobj.po index ec603de54..a5d4844d0 100644 --- a/c-api/typeobj.po +++ b/c-api/typeobj.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -41,8 +41,8 @@ msgstr "" #: ../Doc/c-api/typeobj.rst:23 msgid "" -"In addition to the following quick reference, the :ref:`examples` section " -"provides at-a-glance insight into the meaning and use of :c:type:" +"In addition to the following quick reference, the :ref:`typedef-examples` " +"section provides at-a-glance insight into the meaning and use of :c:type:" "`PyTypeObject`." msgstr "" @@ -1166,32 +1166,32 @@ msgstr "" #: ../Doc/c-api/typeobj.rst:502 ../Doc/c-api/typeobj.rst:515 #: ../Doc/c-api/typeobj.rst:538 ../Doc/c-api/typeobj.rst:551 #: ../Doc/c-api/typeobj.rst:593 ../Doc/c-api/typeobj.rst:636 -#: ../Doc/c-api/typeobj.rst:667 ../Doc/c-api/typeobj.rst:723 -#: ../Doc/c-api/typeobj.rst:742 ../Doc/c-api/typeobj.rst:759 -#: ../Doc/c-api/typeobj.rst:777 ../Doc/c-api/typeobj.rst:801 -#: ../Doc/c-api/typeobj.rst:818 ../Doc/c-api/typeobj.rst:830 -#: ../Doc/c-api/typeobj.rst:842 ../Doc/c-api/typeobj.rst:875 -#: ../Doc/c-api/typeobj.rst:893 ../Doc/c-api/typeobj.rst:913 -#: ../Doc/c-api/typeobj.rst:934 ../Doc/c-api/typeobj.rst:960 -#: ../Doc/c-api/typeobj.rst:979 ../Doc/c-api/typeobj.rst:995 -#: ../Doc/c-api/typeobj.rst:1031 ../Doc/c-api/typeobj.rst:1042 -#: ../Doc/c-api/typeobj.rst:1052 ../Doc/c-api/typeobj.rst:1062 -#: ../Doc/c-api/typeobj.rst:1076 ../Doc/c-api/typeobj.rst:1095 -#: ../Doc/c-api/typeobj.rst:1118 ../Doc/c-api/typeobj.rst:1163 -#: ../Doc/c-api/typeobj.rst:1187 ../Doc/c-api/typeobj.rst:1229 -#: ../Doc/c-api/typeobj.rst:1290 ../Doc/c-api/typeobj.rst:1355 -#: ../Doc/c-api/typeobj.rst:1385 ../Doc/c-api/typeobj.rst:1417 -#: ../Doc/c-api/typeobj.rst:1440 ../Doc/c-api/typeobj.rst:1453 -#: ../Doc/c-api/typeobj.rst:1468 ../Doc/c-api/typeobj.rst:1482 -#: ../Doc/c-api/typeobj.rst:1512 ../Doc/c-api/typeobj.rst:1532 -#: ../Doc/c-api/typeobj.rst:1558 ../Doc/c-api/typeobj.rst:1576 -#: ../Doc/c-api/typeobj.rst:1616 ../Doc/c-api/typeobj.rst:1667 -#: ../Doc/c-api/typeobj.rst:1684 ../Doc/c-api/typeobj.rst:1722 -#: ../Doc/c-api/typeobj.rst:1743 ../Doc/c-api/typeobj.rst:1775 -#: ../Doc/c-api/typeobj.rst:1792 ../Doc/c-api/typeobj.rst:1803 -#: ../Doc/c-api/typeobj.rst:1813 ../Doc/c-api/typeobj.rst:1822 -#: ../Doc/c-api/typeobj.rst:1832 ../Doc/c-api/typeobj.rst:1846 -#: ../Doc/c-api/typeobj.rst:1884 +#: ../Doc/c-api/typeobj.rst:682 ../Doc/c-api/typeobj.rst:738 +#: ../Doc/c-api/typeobj.rst:757 ../Doc/c-api/typeobj.rst:774 +#: ../Doc/c-api/typeobj.rst:792 ../Doc/c-api/typeobj.rst:816 +#: ../Doc/c-api/typeobj.rst:833 ../Doc/c-api/typeobj.rst:845 +#: ../Doc/c-api/typeobj.rst:857 ../Doc/c-api/typeobj.rst:890 +#: ../Doc/c-api/typeobj.rst:908 ../Doc/c-api/typeobj.rst:928 +#: ../Doc/c-api/typeobj.rst:949 ../Doc/c-api/typeobj.rst:975 +#: ../Doc/c-api/typeobj.rst:994 ../Doc/c-api/typeobj.rst:1010 +#: ../Doc/c-api/typeobj.rst:1047 ../Doc/c-api/typeobj.rst:1058 +#: ../Doc/c-api/typeobj.rst:1068 ../Doc/c-api/typeobj.rst:1078 +#: ../Doc/c-api/typeobj.rst:1092 ../Doc/c-api/typeobj.rst:1111 +#: ../Doc/c-api/typeobj.rst:1134 ../Doc/c-api/typeobj.rst:1179 +#: ../Doc/c-api/typeobj.rst:1203 ../Doc/c-api/typeobj.rst:1245 +#: ../Doc/c-api/typeobj.rst:1306 ../Doc/c-api/typeobj.rst:1365 +#: ../Doc/c-api/typeobj.rst:1395 ../Doc/c-api/typeobj.rst:1427 +#: ../Doc/c-api/typeobj.rst:1450 ../Doc/c-api/typeobj.rst:1463 +#: ../Doc/c-api/typeobj.rst:1478 ../Doc/c-api/typeobj.rst:1492 +#: ../Doc/c-api/typeobj.rst:1522 ../Doc/c-api/typeobj.rst:1542 +#: ../Doc/c-api/typeobj.rst:1568 ../Doc/c-api/typeobj.rst:1586 +#: ../Doc/c-api/typeobj.rst:1626 ../Doc/c-api/typeobj.rst:1677 +#: ../Doc/c-api/typeobj.rst:1694 ../Doc/c-api/typeobj.rst:1732 +#: ../Doc/c-api/typeobj.rst:1753 ../Doc/c-api/typeobj.rst:1785 +#: ../Doc/c-api/typeobj.rst:1802 ../Doc/c-api/typeobj.rst:1813 +#: ../Doc/c-api/typeobj.rst:1823 ../Doc/c-api/typeobj.rst:1832 +#: ../Doc/c-api/typeobj.rst:1842 ../Doc/c-api/typeobj.rst:1856 +#: ../Doc/c-api/typeobj.rst:1894 msgid "**Inheritance:**" msgstr "" @@ -1233,12 +1233,12 @@ msgid "" "will not change this field if it is non-zero." msgstr "" -#: ../Doc/c-api/typeobj.rst:540 ../Doc/c-api/typeobj.rst:669 -#: ../Doc/c-api/typeobj.rst:803 ../Doc/c-api/typeobj.rst:895 -#: ../Doc/c-api/typeobj.rst:915 ../Doc/c-api/typeobj.rst:1419 -#: ../Doc/c-api/typeobj.rst:1442 ../Doc/c-api/typeobj.rst:1560 -#: ../Doc/c-api/typeobj.rst:1578 ../Doc/c-api/typeobj.rst:1669 -#: ../Doc/c-api/typeobj.rst:1777 ../Doc/c-api/typeobj.rst:1886 +#: ../Doc/c-api/typeobj.rst:540 ../Doc/c-api/typeobj.rst:684 +#: ../Doc/c-api/typeobj.rst:818 ../Doc/c-api/typeobj.rst:910 +#: ../Doc/c-api/typeobj.rst:930 ../Doc/c-api/typeobj.rst:1429 +#: ../Doc/c-api/typeobj.rst:1452 ../Doc/c-api/typeobj.rst:1570 +#: ../Doc/c-api/typeobj.rst:1588 ../Doc/c-api/typeobj.rst:1679 +#: ../Doc/c-api/typeobj.rst:1787 ../Doc/c-api/typeobj.rst:1896 msgid "This field is inherited by subtypes." msgstr "" @@ -1390,25 +1390,32 @@ msgid "" "destructor function should free all references which the instance owns, free " "all memory buffers owned by the instance (using the freeing function " "corresponding to the allocation function used to allocate the buffer), and " -"finally (as its last action) call the type's :c:member:`~PyTypeObject." -"tp_free` function. If the type is not subtypable (doesn't have the :const:" -"`Py_TPFLAGS_BASETYPE` flag bit set), it is permissible to call the object " -"deallocator directly instead of via :c:member:`~PyTypeObject.tp_free`. The " -"object deallocator should be the one used to allocate the instance; this is " -"normally :c:func:`PyObject_Del` if the instance was allocated using :c:func:" -"`PyObject_New` or :c:func:`PyObject_VarNew`, or :c:func:`PyObject_GC_Del` if " -"the instance was allocated using :c:func:`PyObject_GC_New` or :c:func:" -"`PyObject_GC_NewVar`." +"call the type's :c:member:`~PyTypeObject.tp_free` function. If the type is " +"not subtypable (doesn't have the :const:`Py_TPFLAGS_BASETYPE` flag bit set), " +"it is permissible to call the object deallocator directly instead of via :c:" +"member:`~PyTypeObject.tp_free`. The object deallocator should be the one " +"used to allocate the instance; this is normally :c:func:`PyObject_Del` if " +"the instance was allocated using :c:func:`PyObject_New` or :c:func:" +"`PyObject_VarNew`, or :c:func:`PyObject_GC_Del` if the instance was " +"allocated using :c:func:`PyObject_GC_New` or :c:func:`PyObject_GC_NewVar`." msgstr "" -#: ../Doc/c-api/typeobj.rst:674 +#: ../Doc/c-api/typeobj.rst:667 +msgid "" +"Finally, if the type is heap allocated (:const:`Py_TPFLAGS_HEAPTYPE`), the " +"deallocator should decrement the reference count for its type object after " +"calling the type deallocator. In order to avoid dangling pointers, the " +"recommended way to achieve this is:" +msgstr "" + +#: ../Doc/c-api/typeobj.rst:689 msgid "" "An optional offset to a per-instance function that implements calling the " "object using the *vectorcall* protocol, a more efficient alternative of the " "simpler :c:member:`~PyTypeObject.tp_call`." msgstr "" -#: ../Doc/c-api/typeobj.rst:678 +#: ../Doc/c-api/typeobj.rst:693 msgid "" "This field is only used if the flag :const:`_Py_TPFLAGS_HAVE_VECTORCALL` is " "set. If so, this must be a positive integer containing the offset in the " @@ -1416,14 +1423,14 @@ msgid "" "for :c:func:`_PyObject_Vectorcall`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:685 +#: ../Doc/c-api/typeobj.rst:700 msgid "" "The *vectorcallfunc* pointer may be zero, in which case the instance behaves " "as if :const:`_Py_TPFLAGS_HAVE_VECTORCALL` was not set: calling the instance " "falls back to :c:member:`~PyTypeObject.tp_call`." msgstr "" -#: ../Doc/c-api/typeobj.rst:689 +#: ../Doc/c-api/typeobj.rst:704 msgid "" "Any class that sets ``_Py_TPFLAGS_HAVE_VECTORCALL`` must also set :c:member:" "`~PyTypeObject.tp_call` and make sure its behaviour is consistent with the " @@ -1431,13 +1438,13 @@ msgid "" "``PyVectorcall_Call``:" msgstr "" -#: ../Doc/c-api/typeobj.rst:696 +#: ../Doc/c-api/typeobj.rst:711 msgid "" "Call *callable*'s *vectorcallfunc* with positional and keyword arguments " "given in a tuple and dict, respectively." msgstr "" -#: ../Doc/c-api/typeobj.rst:699 +#: ../Doc/c-api/typeobj.rst:714 msgid "" "This function is intended to be used in the ``tp_call`` slot. It does not " "fall back to ``tp_call`` and it currently does not check the " @@ -1445,7 +1452,7 @@ msgid "" "func:`PyObject_Call ` functions instead." msgstr "" -#: ../Doc/c-api/typeobj.rst:707 +#: ../Doc/c-api/typeobj.rst:722 msgid "" "It is not recommended for :ref:`heap types ` to implement the " "vectorcall protocol. When a user sets ``__call__`` in Python code, only " @@ -1453,20 +1460,20 @@ msgid "" "function." msgstr "" -#: ../Doc/c-api/typeobj.rst:714 +#: ../Doc/c-api/typeobj.rst:729 msgid "" "The semantics of the ``tp_vectorcall_offset`` slot are provisional and " "expected to be finalized in Python 3.9. If you use vectorcall, plan for " "updating your code for Python 3.9." msgstr "" -#: ../Doc/c-api/typeobj.rst:720 +#: ../Doc/c-api/typeobj.rst:735 msgid "" "This slot was used for print formatting in Python 2.x. In Python 3.0 to 3.7, " "it was reserved and named ``tp_print``." msgstr "" -#: ../Doc/c-api/typeobj.rst:725 +#: ../Doc/c-api/typeobj.rst:740 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_call`: a subtype inherits :c:member:`~PyTypeObject.tp_vectorcall_offset` " @@ -1474,17 +1481,17 @@ msgid "" "NULL." msgstr "" -#: ../Doc/c-api/typeobj.rst:730 +#: ../Doc/c-api/typeobj.rst:745 msgid "" "Note that `heap types`_ (including subclasses defined in Python) do not " "inherit the :const:`_Py_TPFLAGS_HAVE_VECTORCALL` flag." msgstr "" -#: ../Doc/c-api/typeobj.rst:736 +#: ../Doc/c-api/typeobj.rst:751 msgid "An optional pointer to the get-attribute-string function." msgstr "" -#: ../Doc/c-api/typeobj.rst:738 +#: ../Doc/c-api/typeobj.rst:753 msgid "" "This field is deprecated. When it is defined, it should point to a function " "that acts the same as the :c:member:`~PyTypeObject.tp_getattro` function, " @@ -1492,11 +1499,11 @@ msgid "" "attribute name." msgstr "" -#: ../Doc/c-api/typeobj.rst:744 ../Doc/c-api/typeobj.rst:936 +#: ../Doc/c-api/typeobj.rst:759 ../Doc/c-api/typeobj.rst:951 msgid "Group: :attr:`tp_getattr`, :attr:`tp_getattro`" msgstr "" -#: ../Doc/c-api/typeobj.rst:746 +#: ../Doc/c-api/typeobj.rst:761 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_getattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " @@ -1505,12 +1512,12 @@ msgid "" "tp_getattro` are both *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:753 ../Doc/c-api/typeobj.rst:949 +#: ../Doc/c-api/typeobj.rst:768 ../Doc/c-api/typeobj.rst:964 msgid "" "An optional pointer to the function for setting and deleting attributes." msgstr "" -#: ../Doc/c-api/typeobj.rst:755 +#: ../Doc/c-api/typeobj.rst:770 msgid "" "This field is deprecated. When it is defined, it should point to a function " "that acts the same as the :c:member:`~PyTypeObject.tp_setattro` function, " @@ -1518,11 +1525,11 @@ msgid "" "attribute name." msgstr "" -#: ../Doc/c-api/typeobj.rst:761 ../Doc/c-api/typeobj.rst:962 +#: ../Doc/c-api/typeobj.rst:776 ../Doc/c-api/typeobj.rst:977 msgid "Group: :attr:`tp_setattr`, :attr:`tp_setattro`" msgstr "" -#: ../Doc/c-api/typeobj.rst:763 +#: ../Doc/c-api/typeobj.rst:778 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_setattro`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " @@ -1531,34 +1538,34 @@ msgid "" "tp_setattro` are both *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:770 +#: ../Doc/c-api/typeobj.rst:785 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement :term:`awaitable` and :term:`asynchronous iterator` " "protocols at the C-level. See :ref:`async-structs` for details." msgstr "" -#: ../Doc/c-api/typeobj.rst:774 +#: ../Doc/c-api/typeobj.rst:789 msgid "Formerly known as ``tp_compare`` and ``tp_reserved``." msgstr "" -#: ../Doc/c-api/typeobj.rst:779 +#: ../Doc/c-api/typeobj.rst:794 msgid "" "The :c:member:`~PyTypeObject.tp_as_async` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: ../Doc/c-api/typeobj.rst:787 +#: ../Doc/c-api/typeobj.rst:802 msgid "" "An optional pointer to a function that implements the built-in function :" "func:`repr`." msgstr "" -#: ../Doc/c-api/typeobj.rst:790 +#: ../Doc/c-api/typeobj.rst:805 msgid "The signature is the same as for :c:func:`PyObject_Repr`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:794 +#: ../Doc/c-api/typeobj.rst:809 msgid "" "The function must return a string or a Unicode object. Ideally, this " "function should return a string that, when passed to :func:`eval`, given a " @@ -1567,87 +1574,87 @@ msgid "" "``'>'`` from which both the type and the value of the object can be deduced." msgstr "" -#: ../Doc/c-api/typeobj.rst:805 ../Doc/c-api/typeobj.rst:917 -#: ../Doc/c-api/typeobj.rst:942 ../Doc/c-api/typeobj.rst:968 -#: ../Doc/c-api/typeobj.rst:1010 ../Doc/c-api/typeobj.rst:1364 -#: ../Doc/c-api/typeobj.rst:1516 ../Doc/c-api/typeobj.rst:1537 -#: ../Doc/c-api/typeobj.rst:1635 ../Doc/c-api/typeobj.rst:1671 -#: ../Doc/c-api/typeobj.rst:1689 ../Doc/c-api/typeobj.rst:1727 -#: ../Doc/c-api/typeobj.rst:1748 ../Doc/c-api/typeobj.rst:1779 +#: ../Doc/c-api/typeobj.rst:820 ../Doc/c-api/typeobj.rst:932 +#: ../Doc/c-api/typeobj.rst:957 ../Doc/c-api/typeobj.rst:983 +#: ../Doc/c-api/typeobj.rst:1025 ../Doc/c-api/typeobj.rst:1374 +#: ../Doc/c-api/typeobj.rst:1526 ../Doc/c-api/typeobj.rst:1547 +#: ../Doc/c-api/typeobj.rst:1645 ../Doc/c-api/typeobj.rst:1681 +#: ../Doc/c-api/typeobj.rst:1699 ../Doc/c-api/typeobj.rst:1737 +#: ../Doc/c-api/typeobj.rst:1758 ../Doc/c-api/typeobj.rst:1789 msgid "**Default:**" msgstr "" -#: ../Doc/c-api/typeobj.rst:807 +#: ../Doc/c-api/typeobj.rst:822 msgid "" "When this field is not set, a string of the form ``<%s object at %p>`` is " "returned, where ``%s`` is replaced by the type name, and ``%p`` by the " "object's memory address." msgstr "" -#: ../Doc/c-api/typeobj.rst:814 +#: ../Doc/c-api/typeobj.rst:829 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the number protocol. These fields are documented " "in :ref:`number-structs`." msgstr "" -#: ../Doc/c-api/typeobj.rst:820 +#: ../Doc/c-api/typeobj.rst:835 msgid "" "The :c:member:`~PyTypeObject.tp_as_number` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: ../Doc/c-api/typeobj.rst:826 +#: ../Doc/c-api/typeobj.rst:841 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the sequence protocol. These fields are documented " "in :ref:`sequence-structs`." msgstr "" -#: ../Doc/c-api/typeobj.rst:832 +#: ../Doc/c-api/typeobj.rst:847 msgid "" "The :c:member:`~PyTypeObject.tp_as_sequence` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: ../Doc/c-api/typeobj.rst:838 +#: ../Doc/c-api/typeobj.rst:853 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the mapping protocol. These fields are documented " "in :ref:`mapping-structs`." msgstr "" -#: ../Doc/c-api/typeobj.rst:844 +#: ../Doc/c-api/typeobj.rst:859 msgid "" "The :c:member:`~PyTypeObject.tp_as_mapping` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: ../Doc/c-api/typeobj.rst:852 +#: ../Doc/c-api/typeobj.rst:867 msgid "" "An optional pointer to a function that implements the built-in function :" "func:`hash`." msgstr "" -#: ../Doc/c-api/typeobj.rst:855 +#: ../Doc/c-api/typeobj.rst:870 msgid "The signature is the same as for :c:func:`PyObject_Hash`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:859 +#: ../Doc/c-api/typeobj.rst:874 msgid "" "The value ``-1`` should not be returned as a normal return value; when an " "error occurs during the computation of the hash value, the function should " "set an exception and return ``-1``." msgstr "" -#: ../Doc/c-api/typeobj.rst:863 +#: ../Doc/c-api/typeobj.rst:878 msgid "" "When this field is not set (*and* :attr:`tp_richcompare` is not set), an " "attempt to take the hash of the object raises :exc:`TypeError`. This is the " "same as setting it to :c:func:`PyObject_HashNotImplemented`." msgstr "" -#: ../Doc/c-api/typeobj.rst:867 +#: ../Doc/c-api/typeobj.rst:882 msgid "" "This field can be set explicitly to :c:func:`PyObject_HashNotImplemented` to " "block inheritance of the hash method from a parent type. This is interpreted " @@ -1658,11 +1665,11 @@ msgid "" "`PyObject_HashNotImplemented`." msgstr "" -#: ../Doc/c-api/typeobj.rst:877 ../Doc/c-api/typeobj.rst:1357 +#: ../Doc/c-api/typeobj.rst:892 ../Doc/c-api/typeobj.rst:1367 msgid "Group: :attr:`tp_hash`, :attr:`tp_richcompare`" msgstr "" -#: ../Doc/c-api/typeobj.rst:879 +#: ../Doc/c-api/typeobj.rst:894 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_richcompare`: a subtype inherits both of :c:member:`~PyTypeObject." @@ -1671,14 +1678,14 @@ msgid "" "are both *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:887 +#: ../Doc/c-api/typeobj.rst:902 msgid "" "An optional pointer to a function that implements calling the object. This " "should be *NULL* if the object is not callable. The signature is the same " "as for :c:func:`PyObject_Call`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:900 +#: ../Doc/c-api/typeobj.rst:915 msgid "" "An optional pointer to a function that implements the built-in operation :" "func:`str`. (Note that :class:`str` is a type now, and :func:`str` calls " @@ -1687,11 +1694,11 @@ msgid "" "this handler.)" msgstr "" -#: ../Doc/c-api/typeobj.rst:905 +#: ../Doc/c-api/typeobj.rst:920 msgid "The signature is the same as for :c:func:`PyObject_Str`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:909 +#: ../Doc/c-api/typeobj.rst:924 msgid "" "The function must return a string or a Unicode object. It should be a " "\"friendly\" string representation of the object, as this is the " @@ -1699,28 +1706,28 @@ msgid "" "function." msgstr "" -#: ../Doc/c-api/typeobj.rst:919 +#: ../Doc/c-api/typeobj.rst:934 msgid "" "When this field is not set, :c:func:`PyObject_Repr` is called to return a " "string representation." msgstr "" -#: ../Doc/c-api/typeobj.rst:925 +#: ../Doc/c-api/typeobj.rst:940 msgid "An optional pointer to the get-attribute function." msgstr "" -#: ../Doc/c-api/typeobj.rst:927 +#: ../Doc/c-api/typeobj.rst:942 msgid "The signature is the same as for :c:func:`PyObject_GetAttr`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:931 +#: ../Doc/c-api/typeobj.rst:946 msgid "" "It is usually convenient to set this field to :c:func:" "`PyObject_GenericGetAttr`, which implements the normal way of looking for " "object attributes." msgstr "" -#: ../Doc/c-api/typeobj.rst:938 +#: ../Doc/c-api/typeobj.rst:953 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_getattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_getattr` " @@ -1729,15 +1736,15 @@ msgid "" "tp_getattro` are both *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:944 +#: ../Doc/c-api/typeobj.rst:959 msgid ":c:type:`PyBaseObject_Type` uses :c:func:`PyObject_GenericGetAttr`." msgstr "" -#: ../Doc/c-api/typeobj.rst:951 +#: ../Doc/c-api/typeobj.rst:966 msgid "The signature is the same as for :c:func:`PyObject_SetAttr`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:955 +#: ../Doc/c-api/typeobj.rst:970 msgid "" "In addition, setting *value* to *NULL* to delete an attribute must be " "supported. It is usually convenient to set this field to :c:func:" @@ -1745,7 +1752,7 @@ msgid "" "attributes." msgstr "" -#: ../Doc/c-api/typeobj.rst:964 +#: ../Doc/c-api/typeobj.rst:979 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_setattr`: a subtype inherits both :c:member:`~PyTypeObject.tp_setattr` " @@ -1754,24 +1761,24 @@ msgid "" "tp_setattro` are both *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:970 +#: ../Doc/c-api/typeobj.rst:985 msgid ":c:type:`PyBaseObject_Type` uses :c:func:`PyObject_GenericSetAttr`." msgstr "" -#: ../Doc/c-api/typeobj.rst:975 +#: ../Doc/c-api/typeobj.rst:990 msgid "" "Pointer to an additional structure that contains fields relevant only to " "objects which implement the buffer interface. These fields are documented " "in :ref:`buffer-structs`." msgstr "" -#: ../Doc/c-api/typeobj.rst:981 +#: ../Doc/c-api/typeobj.rst:996 msgid "" "The :c:member:`~PyTypeObject.tp_as_buffer` field is not inherited, but the " "contained fields are inherited individually." msgstr "" -#: ../Doc/c-api/typeobj.rst:987 +#: ../Doc/c-api/typeobj.rst:1002 msgid "" "This field is a bit mask of various flags. Some flags indicate variant " "semantics for certain situations; others are used to indicate that certain " @@ -1783,7 +1790,7 @@ msgid "" "accessed and must be considered to have a zero or *NULL* value instead." msgstr "" -#: ../Doc/c-api/typeobj.rst:997 +#: ../Doc/c-api/typeobj.rst:1012 msgid "" "Inheritance of this field is complicated. Most flag bits are inherited " "individually, i.e. if the base type has a flag bit set, the subtype inherits " @@ -1798,17 +1805,17 @@ msgid "" "the subtype exist and have *NULL* values." msgstr "" -#: ../Doc/c-api/typeobj.rst:1012 +#: ../Doc/c-api/typeobj.rst:1027 msgid "" ":c:type:`PyBaseObject_Type` uses ``Py_TPFLAGS_DEFAULT | " "Py_TPFLAGS_BASETYPE``." msgstr "" -#: ../Doc/c-api/typeobj.rst:1015 +#: ../Doc/c-api/typeobj.rst:1030 msgid "**Bit Masks:**" msgstr "" -#: ../Doc/c-api/typeobj.rst:1017 +#: ../Doc/c-api/typeobj.rst:1032 msgid "" "The following bit masks are currently defined; these can be ORed together " "using the ``|`` operator to form the value of the :c:member:`~PyTypeObject." @@ -1817,42 +1824,43 @@ msgid "" "zero." msgstr "" -#: ../Doc/c-api/typeobj.rst:1024 +#: ../Doc/c-api/typeobj.rst:1039 msgid "" -"This bit is set when the type object itself is allocated on the heap. In " -"this case, the :attr:`ob_type` field of its instances is considered a " -"reference to the type, and the type object is INCREF'ed when a new instance " -"is created, and DECREF'ed when an instance is destroyed (this does not apply " -"to instances of subtypes; only the type referenced by the instance's ob_type " +"This bit is set when the type object itself is allocated on the heap, for " +"example, types created dynamically using :c:func:`PyType_FromSpec`. In this " +"case, the :attr:`ob_type` field of its instances is considered a reference " +"to the type, and the type object is INCREF'ed when a new instance is " +"created, and DECREF'ed when an instance is destroyed (this does not apply to " +"instances of subtypes; only the type referenced by the instance's ob_type " "gets INCREF'ed or DECREF'ed)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1033 ../Doc/c-api/typeobj.rst:1044 -#: ../Doc/c-api/typeobj.rst:1054 ../Doc/c-api/typeobj.rst:1064 -#: ../Doc/c-api/typeobj.rst:1097 +#: ../Doc/c-api/typeobj.rst:1049 ../Doc/c-api/typeobj.rst:1060 +#: ../Doc/c-api/typeobj.rst:1070 ../Doc/c-api/typeobj.rst:1080 +#: ../Doc/c-api/typeobj.rst:1113 msgid "???" msgstr "" -#: ../Doc/c-api/typeobj.rst:1038 +#: ../Doc/c-api/typeobj.rst:1054 msgid "" "This bit is set when the type can be used as the base type of another type. " "If this bit is clear, the type cannot be subtyped (similar to a \"final\" " "class in Java)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1049 +#: ../Doc/c-api/typeobj.rst:1065 msgid "" "This bit is set when the type object has been fully initialized by :c:func:" "`PyType_Ready`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1059 +#: ../Doc/c-api/typeobj.rst:1075 msgid "" "This bit is set while :c:func:`PyType_Ready` is in the process of " "initializing the type object." msgstr "" -#: ../Doc/c-api/typeobj.rst:1069 +#: ../Doc/c-api/typeobj.rst:1085 msgid "" "This bit is set when the object supports garbage collection. If this bit is " "set, instances must be created using :c:func:`PyObject_GC_New` and destroyed " @@ -1862,13 +1870,13 @@ msgid "" "tp_clear` are present in the type object." msgstr "" -#: ../Doc/c-api/typeobj.rst:1078 ../Doc/c-api/typeobj.rst:1231 -#: ../Doc/c-api/typeobj.rst:1292 +#: ../Doc/c-api/typeobj.rst:1094 ../Doc/c-api/typeobj.rst:1247 +#: ../Doc/c-api/typeobj.rst:1308 msgid "" "Group: :const:`Py_TPFLAGS_HAVE_GC`, :attr:`tp_traverse`, :attr:`tp_clear`" msgstr "" -#: ../Doc/c-api/typeobj.rst:1080 +#: ../Doc/c-api/typeobj.rst:1096 msgid "" "The :const:`Py_TPFLAGS_HAVE_GC` flag bit is inherited together with the :" "attr:`tp_traverse` and :attr:`tp_clear` fields, i.e. if the :const:" @@ -1877,7 +1885,7 @@ msgid "" "*NULL* values." msgstr "" -#: ../Doc/c-api/typeobj.rst:1090 +#: ../Doc/c-api/typeobj.rst:1106 msgid "" "This is a bitmask of all the bits that pertain to the existence of certain " "fields in the type object and its extension structures. Currently, it " @@ -1885,40 +1893,40 @@ msgid "" "const:`Py_TPFLAGS_HAVE_VERSION_TAG`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1102 +#: ../Doc/c-api/typeobj.rst:1118 msgid "This bit indicates that objects behave like unbound methods." msgstr "" -#: ../Doc/c-api/typeobj.rst:1104 +#: ../Doc/c-api/typeobj.rst:1120 msgid "If this flag is set for ``type(meth)``, then:" msgstr "" -#: ../Doc/c-api/typeobj.rst:1106 +#: ../Doc/c-api/typeobj.rst:1122 msgid "" "``meth.__get__(obj, cls)(*args, **kwds)`` (with ``obj`` not None) must be " "equivalent to ``meth(obj, *args, **kwds)``." msgstr "" -#: ../Doc/c-api/typeobj.rst:1109 +#: ../Doc/c-api/typeobj.rst:1125 msgid "" "``meth.__get__(None, cls)(*args, **kwds)`` must be equivalent to " "``meth(*args, **kwds)``." msgstr "" -#: ../Doc/c-api/typeobj.rst:1112 +#: ../Doc/c-api/typeobj.rst:1128 msgid "" "This flag enables an optimization for typical method calls like ``obj." "meth()``: it avoids creating a temporary \"bound method\" object for ``obj." "meth``." msgstr "" -#: ../Doc/c-api/typeobj.rst:1120 +#: ../Doc/c-api/typeobj.rst:1136 msgid "" "This flag is never inherited by heap types. For extension types, it is " "inherited whenever :c:member:`~PyTypeObject.tp_descr_get` is inherited." msgstr "" -#: ../Doc/c-api/typeobj.rst:1137 +#: ../Doc/c-api/typeobj.rst:1153 msgid "" "These flags are used by functions such as :c:func:`PyLong_Check` to quickly " "determine if a type is a subclass of a built-in type; such specific checks " @@ -1928,25 +1936,25 @@ msgid "" "behave differently depending on what kind of check is used." msgstr "" -#: ../Doc/c-api/typeobj.rst:1148 +#: ../Doc/c-api/typeobj.rst:1164 msgid "" "This bit is set when the :c:member:`~PyTypeObject.tp_finalize` slot is " "present in the type structure." msgstr "" -#: ../Doc/c-api/typeobj.rst:1153 +#: ../Doc/c-api/typeobj.rst:1169 msgid "" "This flag isn't necessary anymore, as the interpreter assumes the :c:member:" "`~PyTypeObject.tp_finalize` slot is always present in the type structure." msgstr "" -#: ../Doc/c-api/typeobj.rst:1160 +#: ../Doc/c-api/typeobj.rst:1176 msgid "" "This bit is set when the class implements the vectorcall protocol. See :c:" "member:`~PyTypeObject.tp_vectorcall_offset` for details." msgstr "" -#: ../Doc/c-api/typeobj.rst:1165 +#: ../Doc/c-api/typeobj.rst:1181 msgid "" "This bit is set on *static* subtypes if ``tp_flags`` is not overridden: a " "subtype inherits ``_Py_TPFLAGS_HAVE_VECTORCALL`` from its base type when the " @@ -1954,42 +1962,42 @@ msgid "" "``Py_TPFLAGS_HEAPTYPE`` is not set." msgstr "" -#: ../Doc/c-api/typeobj.rst:1170 +#: ../Doc/c-api/typeobj.rst:1186 msgid "`Heap types`_ do not inherit ``_Py_TPFLAGS_HAVE_VECTORCALL``." msgstr "" -#: ../Doc/c-api/typeobj.rst:1174 +#: ../Doc/c-api/typeobj.rst:1190 msgid "" "This flag is provisional and expected to become public in Python 3.9, with a " "different name and, possibly, changed semantics. If you use vectorcall, plan " "for updating your code for Python 3.9." msgstr "" -#: ../Doc/c-api/typeobj.rst:1183 +#: ../Doc/c-api/typeobj.rst:1199 msgid "" "An optional pointer to a NUL-terminated C string giving the docstring for " "this type object. This is exposed as the :attr:`__doc__` attribute on the " "type and instances of the type." msgstr "" -#: ../Doc/c-api/typeobj.rst:1189 +#: ../Doc/c-api/typeobj.rst:1205 msgid "This field is *not* inherited by subtypes." msgstr "" -#: ../Doc/c-api/typeobj.rst:1194 +#: ../Doc/c-api/typeobj.rst:1210 msgid "" "An optional pointer to a traversal function for the garbage collector. This " "is only used if the :const:`Py_TPFLAGS_HAVE_GC` flag bit is set. The " "signature is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1199 ../Doc/c-api/typeobj.rst:1287 +#: ../Doc/c-api/typeobj.rst:1215 ../Doc/c-api/typeobj.rst:1303 msgid "" "More information about Python's garbage collection scheme can be found in " "section :ref:`supporting-cycle-detection`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1202 +#: ../Doc/c-api/typeobj.rst:1218 msgid "" "The :c:member:`~PyTypeObject.tp_traverse` pointer is used by the garbage " "collector to detect reference cycles. A typical implementation of a :c:" @@ -1999,7 +2007,7 @@ msgid "" "module::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1217 +#: ../Doc/c-api/typeobj.rst:1233 msgid "" "Note that :c:func:`Py_VISIT` is called only on those members that can " "participate in reference cycles. Although there is also a ``self->key`` " @@ -2007,21 +2015,21 @@ msgid "" "part of a reference cycle." msgstr "" -#: ../Doc/c-api/typeobj.rst:1221 +#: ../Doc/c-api/typeobj.rst:1237 msgid "" "On the other hand, even if you know a member can never be part of a cycle, " "as a debugging aid you may want to visit it anyway just so the :mod:`gc` " "module's :func:`~gc.get_referents` function will include it." msgstr "" -#: ../Doc/c-api/typeobj.rst:1225 +#: ../Doc/c-api/typeobj.rst:1241 msgid "" "Note that :c:func:`Py_VISIT` requires the *visit* and *arg* parameters to :c:" "func:`local_traverse` to have these specific names; don't name them just " "anything." msgstr "" -#: ../Doc/c-api/typeobj.rst:1233 +#: ../Doc/c-api/typeobj.rst:1249 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_clear` and the :const:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :c:" @@ -2029,14 +2037,14 @@ msgid "" "are all inherited from the base type if they are all zero in the subtype." msgstr "" -#: ../Doc/c-api/typeobj.rst:1241 +#: ../Doc/c-api/typeobj.rst:1257 msgid "" "An optional pointer to a clear function for the garbage collector. This is " "only used if the :const:`Py_TPFLAGS_HAVE_GC` flag bit is set. The signature " "is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1246 +#: ../Doc/c-api/typeobj.rst:1262 msgid "" "The :c:member:`~PyTypeObject.tp_clear` member function is used to break " "reference cycles in cyclic garbage detected by the garbage collector. Taken " @@ -2051,7 +2059,7 @@ msgid "" "good reason to avoid implementing :c:member:`~PyTypeObject.tp_clear`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1256 +#: ../Doc/c-api/typeobj.rst:1272 msgid "" "Implementations of :c:member:`~PyTypeObject.tp_clear` should drop the " "instance's references to those of its members that may be Python objects, " @@ -2059,7 +2067,7 @@ msgid "" "example::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1270 +#: ../Doc/c-api/typeobj.rst:1286 msgid "" "The :c:func:`Py_CLEAR` macro should be used, because clearing references is " "delicate: the reference to the contained object must not be decremented " @@ -2074,7 +2082,7 @@ msgid "" "a safe order." msgstr "" -#: ../Doc/c-api/typeobj.rst:1281 +#: ../Doc/c-api/typeobj.rst:1297 msgid "" "Because the goal of :c:member:`~PyTypeObject.tp_clear` functions is to break " "reference cycles, it's not necessary to clear contained objects like Python " @@ -2084,7 +2092,7 @@ msgid "" "invoke :c:member:`~PyTypeObject.tp_clear`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1294 +#: ../Doc/c-api/typeobj.rst:1310 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_traverse` and the :const:`Py_TPFLAGS_HAVE_GC` flag bit: the flag bit, :c:" @@ -2092,18 +2100,18 @@ msgid "" "are all inherited from the base type if they are all zero in the subtype." msgstr "" -#: ../Doc/c-api/typeobj.rst:1302 +#: ../Doc/c-api/typeobj.rst:1318 msgid "" "An optional pointer to the rich comparison function, whose signature is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1306 +#: ../Doc/c-api/typeobj.rst:1322 msgid "" "The first parameter is guaranteed to be an instance of the type that is " "defined by :c:type:`PyTypeObject`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1309 +#: ../Doc/c-api/typeobj.rst:1325 msgid "" "The function should return the result of the comparison (usually ``Py_True`` " "or ``Py_False``). If the comparison is undefined, it must return " @@ -2111,81 +2119,74 @@ msgid "" "set an exception condition." msgstr "" -#: ../Doc/c-api/typeobj.rst:1316 -msgid "" -"If you want to implement a type for which only a limited set of comparisons " -"makes sense (e.g. ``==`` and ``!=``, but not ``<`` and friends), directly " -"raise :exc:`TypeError` in the rich comparison function." -msgstr "" - -#: ../Doc/c-api/typeobj.rst:1320 +#: ../Doc/c-api/typeobj.rst:1330 msgid "" "The following constants are defined to be used as the third argument for :c:" "member:`~PyTypeObject.tp_richcompare` and for :c:func:`PyObject_RichCompare`:" msgstr "" -#: ../Doc/c-api/typeobj.rst:1324 +#: ../Doc/c-api/typeobj.rst:1334 msgid "Constant" msgstr "Constante" -#: ../Doc/c-api/typeobj.rst:1324 +#: ../Doc/c-api/typeobj.rst:1334 msgid "Comparison" msgstr "Comparaison" -#: ../Doc/c-api/typeobj.rst:1326 +#: ../Doc/c-api/typeobj.rst:1336 msgid ":const:`Py_LT`" msgstr "" -#: ../Doc/c-api/typeobj.rst:1326 +#: ../Doc/c-api/typeobj.rst:1336 msgid "``<``" msgstr "``<``" -#: ../Doc/c-api/typeobj.rst:1328 +#: ../Doc/c-api/typeobj.rst:1338 msgid ":const:`Py_LE`" msgstr "" -#: ../Doc/c-api/typeobj.rst:1328 +#: ../Doc/c-api/typeobj.rst:1338 msgid "``<=``" msgstr "``<=``" -#: ../Doc/c-api/typeobj.rst:1330 +#: ../Doc/c-api/typeobj.rst:1340 msgid ":const:`Py_EQ`" msgstr "" -#: ../Doc/c-api/typeobj.rst:1330 +#: ../Doc/c-api/typeobj.rst:1340 msgid "``==``" msgstr "``==``" -#: ../Doc/c-api/typeobj.rst:1332 +#: ../Doc/c-api/typeobj.rst:1342 msgid ":const:`Py_NE`" msgstr "" -#: ../Doc/c-api/typeobj.rst:1332 +#: ../Doc/c-api/typeobj.rst:1342 msgid "``!=``" msgstr "``!=``" -#: ../Doc/c-api/typeobj.rst:1334 +#: ../Doc/c-api/typeobj.rst:1344 msgid ":const:`Py_GT`" msgstr "" -#: ../Doc/c-api/typeobj.rst:1334 +#: ../Doc/c-api/typeobj.rst:1344 msgid "``>``" msgstr "``>``" -#: ../Doc/c-api/typeobj.rst:1336 +#: ../Doc/c-api/typeobj.rst:1346 msgid ":const:`Py_GE`" msgstr "" -#: ../Doc/c-api/typeobj.rst:1336 +#: ../Doc/c-api/typeobj.rst:1346 msgid "``>=``" msgstr "``>=``" -#: ../Doc/c-api/typeobj.rst:1339 +#: ../Doc/c-api/typeobj.rst:1349 msgid "" "The following macro is defined to ease writing rich comparison functions:" msgstr "" -#: ../Doc/c-api/typeobj.rst:1343 +#: ../Doc/c-api/typeobj.rst:1353 msgid "" "Return ``Py_True`` or ``Py_False`` from the function, depending on the " "result of a comparison. VAL_A and VAL_B must be orderable by C comparison " @@ -2193,15 +2194,15 @@ msgid "" "specifies the requested operation, as for :c:func:`PyObject_RichCompare`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1349 +#: ../Doc/c-api/typeobj.rst:1359 msgid "The return value's reference count is properly incremented." msgstr "" -#: ../Doc/c-api/typeobj.rst:1351 +#: ../Doc/c-api/typeobj.rst:1361 msgid "On error, sets an exception and returns *NULL* from the function." msgstr "" -#: ../Doc/c-api/typeobj.rst:1359 +#: ../Doc/c-api/typeobj.rst:1369 msgid "" "This field is inherited by subtypes together with :c:member:`~PyTypeObject." "tp_hash`: a subtype inherits :c:member:`~PyTypeObject.tp_richcompare` and :c:" @@ -2209,7 +2210,7 @@ msgid "" "tp_richcompare` and :c:member:`~PyTypeObject.tp_hash` are both *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:1366 +#: ../Doc/c-api/typeobj.rst:1376 msgid "" ":c:type:`PyBaseObject_Type` provides a :attr:`tp_richcompare` " "implementation, which may be inherited. However, if only :attr:`tp_hash` is " @@ -2217,7 +2218,7 @@ msgid "" "will not be able to participate in any comparisons." msgstr "" -#: ../Doc/c-api/typeobj.rst:1375 +#: ../Doc/c-api/typeobj.rst:1385 msgid "" "If the instances of this type are weakly referenceable, this field is " "greater than zero and contains the offset in the instance structure of the " @@ -2227,13 +2228,13 @@ msgid "" "`PyObject\\*` which is initialized to *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:1382 +#: ../Doc/c-api/typeobj.rst:1392 msgid "" "Do not confuse this field with :c:member:`~PyTypeObject.tp_weaklist`; that " "is the list head for weak references to the type object itself." msgstr "" -#: ../Doc/c-api/typeobj.rst:1387 +#: ../Doc/c-api/typeobj.rst:1397 msgid "" "This field is inherited by subtypes, but see the rules listed below. A " "subtype may override this offset; this means that the subtype uses a " @@ -2242,7 +2243,7 @@ msgid "" "not be a problem." msgstr "" -#: ../Doc/c-api/typeobj.rst:1392 +#: ../Doc/c-api/typeobj.rst:1402 msgid "" "When a type defined by a class statement has no :attr:`~object.__slots__` " "declaration, and none of its base types are weakly referenceable, the type " @@ -2251,7 +2252,7 @@ msgid "" "tp_weaklistoffset` of that slot's offset." msgstr "" -#: ../Doc/c-api/typeobj.rst:1397 +#: ../Doc/c-api/typeobj.rst:1407 msgid "" "When a type's :attr:`__slots__` declaration contains a slot named :attr:" "`__weakref__`, that slot becomes the weak reference list head for instances " @@ -2259,31 +2260,31 @@ msgid "" "`~PyTypeObject.tp_weaklistoffset`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1402 +#: ../Doc/c-api/typeobj.rst:1412 msgid "" "When a type's :attr:`__slots__` declaration does not contain a slot named :" "attr:`__weakref__`, the type inherits its :c:member:`~PyTypeObject." "tp_weaklistoffset` from its base type." msgstr "" -#: ../Doc/c-api/typeobj.rst:1409 +#: ../Doc/c-api/typeobj.rst:1419 msgid "" "An optional pointer to a function that returns an iterator for the object. " "Its presence normally signals that the instances of this type are iterable " "(although sequences may be iterable without this function)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1413 +#: ../Doc/c-api/typeobj.rst:1423 msgid "This function has the same signature as :c:func:`PyObject_GetIter`::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1424 +#: ../Doc/c-api/typeobj.rst:1434 msgid "" "An optional pointer to a function that returns the next item in an iterator. " "The signature is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1429 +#: ../Doc/c-api/typeobj.rst:1439 msgid "" "When the iterator is exhausted, it must return *NULL*; a :exc:" "`StopIteration` exception may or may not be set. When another error occurs, " @@ -2291,74 +2292,74 @@ msgid "" "type are iterators." msgstr "" -#: ../Doc/c-api/typeobj.rst:1434 +#: ../Doc/c-api/typeobj.rst:1444 msgid "" "Iterator types should also define the :c:member:`~PyTypeObject.tp_iter` " "function, and that function should return the iterator instance itself (not " "a new iterator instance)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1438 +#: ../Doc/c-api/typeobj.rst:1448 msgid "This function has the same signature as :c:func:`PyIter_Next`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1447 +#: ../Doc/c-api/typeobj.rst:1457 msgid "" "An optional pointer to a static *NULL*-terminated array of :c:type:" "`PyMethodDef` structures, declaring regular methods of this type." msgstr "" -#: ../Doc/c-api/typeobj.rst:1450 +#: ../Doc/c-api/typeobj.rst:1460 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a method descriptor." msgstr "" -#: ../Doc/c-api/typeobj.rst:1455 +#: ../Doc/c-api/typeobj.rst:1465 msgid "" "This field is not inherited by subtypes (methods are inherited through a " "different mechanism)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1461 +#: ../Doc/c-api/typeobj.rst:1471 msgid "" "An optional pointer to a static *NULL*-terminated array of :c:type:" "`PyMemberDef` structures, declaring regular data members (fields or slots) " "of instances of this type." msgstr "" -#: ../Doc/c-api/typeobj.rst:1465 +#: ../Doc/c-api/typeobj.rst:1475 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a member descriptor." msgstr "" -#: ../Doc/c-api/typeobj.rst:1470 +#: ../Doc/c-api/typeobj.rst:1480 msgid "" "This field is not inherited by subtypes (members are inherited through a " "different mechanism)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1476 +#: ../Doc/c-api/typeobj.rst:1486 msgid "" "An optional pointer to a static *NULL*-terminated array of :c:type:" "`PyGetSetDef` structures, declaring computed attributes of instances of this " "type." msgstr "" -#: ../Doc/c-api/typeobj.rst:1479 +#: ../Doc/c-api/typeobj.rst:1489 msgid "" "For each entry in the array, an entry is added to the type's dictionary " "(see :c:member:`~PyTypeObject.tp_dict` below) containing a getset descriptor." msgstr "" -#: ../Doc/c-api/typeobj.rst:1484 +#: ../Doc/c-api/typeobj.rst:1494 msgid "" "This field is not inherited by subtypes (computed attributes are inherited " "through a different mechanism)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1490 +#: ../Doc/c-api/typeobj.rst:1500 msgid "" "An optional pointer to a base type from which type properties are " "inherited. At this level, only single inheritance is supported; multiple " @@ -2366,7 +2367,7 @@ msgid "" "metatype." msgstr "" -#: ../Doc/c-api/typeobj.rst:1498 +#: ../Doc/c-api/typeobj.rst:1508 msgid "" "Slot initialization is subject to the rules of initializing globals. C99 " "requires the initializers to be \"address constants\". Function designators " @@ -2374,7 +2375,7 @@ msgid "" "valid C99 address constants." msgstr "" -#: ../Doc/c-api/typeobj.rst:1503 +#: ../Doc/c-api/typeobj.rst:1513 msgid "" "However, the unary '&' operator applied to a non-static variable like :c:" "func:`PyBaseObject_Type` is not required to produce an address constant. " @@ -2382,27 +2383,27 @@ msgid "" "strictly standard conforming in this particular behavior." msgstr "" -#: ../Doc/c-api/typeobj.rst:1509 +#: ../Doc/c-api/typeobj.rst:1519 msgid "" "Consequently, :c:member:`~PyTypeObject.tp_base` should be set in the " "extension module's init function." msgstr "" -#: ../Doc/c-api/typeobj.rst:1514 +#: ../Doc/c-api/typeobj.rst:1524 msgid "This field is not inherited by subtypes (obviously)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1518 +#: ../Doc/c-api/typeobj.rst:1528 msgid "" "This field defaults to ``&PyBaseObject_Type`` (which to Python programmers " "is known as the type :class:`object`)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1524 +#: ../Doc/c-api/typeobj.rst:1534 msgid "The type's dictionary is stored here by :c:func:`PyType_Ready`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1526 +#: ../Doc/c-api/typeobj.rst:1536 msgid "" "This field should normally be initialized to *NULL* before PyType_Ready is " "called; it may also be initialized to a dictionary containing initial " @@ -2411,45 +2412,45 @@ msgid "" "they don't correspond to overloaded operations (like :meth:`__add__`)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1534 +#: ../Doc/c-api/typeobj.rst:1544 msgid "" "This field is not inherited by subtypes (though the attributes defined in " "here are inherited through a different mechanism)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1539 +#: ../Doc/c-api/typeobj.rst:1549 msgid "" "If this field is *NULL*, :c:func:`PyType_Ready` will assign a new dictionary " "to it." msgstr "" -#: ../Doc/c-api/typeobj.rst:1544 +#: ../Doc/c-api/typeobj.rst:1554 msgid "" "It is not safe to use :c:func:`PyDict_SetItem` on or otherwise modify :c:" "member:`~PyTypeObject.tp_dict` with the dictionary C-API." msgstr "" -#: ../Doc/c-api/typeobj.rst:1550 +#: ../Doc/c-api/typeobj.rst:1560 msgid "An optional pointer to a \"descriptor get\" function." msgstr "" -#: ../Doc/c-api/typeobj.rst:1552 ../Doc/c-api/typeobj.rst:1568 -#: ../Doc/c-api/typeobj.rst:1650 ../Doc/c-api/typeobj.rst:1680 -#: ../Doc/c-api/typeobj.rst:1704 +#: ../Doc/c-api/typeobj.rst:1562 ../Doc/c-api/typeobj.rst:1578 +#: ../Doc/c-api/typeobj.rst:1660 ../Doc/c-api/typeobj.rst:1690 +#: ../Doc/c-api/typeobj.rst:1714 msgid "The function signature is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1565 +#: ../Doc/c-api/typeobj.rst:1575 msgid "" "An optional pointer to a function for setting and deleting a descriptor's " "value." msgstr "" -#: ../Doc/c-api/typeobj.rst:1572 +#: ../Doc/c-api/typeobj.rst:1582 msgid "The *value* argument is set to *NULL* to delete the value." msgstr "" -#: ../Doc/c-api/typeobj.rst:1583 +#: ../Doc/c-api/typeobj.rst:1593 msgid "" "If the instances of this type have a dictionary containing instance " "variables, this field is non-zero and contains the offset in the instances " @@ -2457,13 +2458,13 @@ msgid "" "func:`PyObject_GenericGetAttr`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1588 +#: ../Doc/c-api/typeobj.rst:1598 msgid "" "Do not confuse this field with :c:member:`~PyTypeObject.tp_dict`; that is " "the dictionary for attributes of the type object itself." msgstr "" -#: ../Doc/c-api/typeobj.rst:1591 +#: ../Doc/c-api/typeobj.rst:1601 msgid "" "If the value of this field is greater than zero, it specifies the offset " "from the start of the instance structure. If the value is less than zero, " @@ -2479,13 +2480,13 @@ msgid "" "the very end of the structure." msgstr "" -#: ../Doc/c-api/typeobj.rst:1603 +#: ../Doc/c-api/typeobj.rst:1613 msgid "" "The real dictionary offset in an instance can be computed from a negative :c:" "member:`~PyTypeObject.tp_dictoffset` as follows::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1610 +#: ../Doc/c-api/typeobj.rst:1620 msgid "" "where :c:member:`~PyTypeObject.tp_basicsize`, :c:member:`~PyTypeObject." "tp_itemsize` and :c:member:`~PyTypeObject.tp_dictoffset` are taken from the " @@ -2495,7 +2496,7 @@ msgid "" "it is done for you by :c:func:`_PyObject_GetDictPtr`.)" msgstr "" -#: ../Doc/c-api/typeobj.rst:1618 +#: ../Doc/c-api/typeobj.rst:1628 msgid "" "This field is inherited by subtypes, but see the rules listed below. A " "subtype may override this offset; this means that the subtype instances " @@ -2504,7 +2505,7 @@ msgid "" "should not be a problem." msgstr "" -#: ../Doc/c-api/typeobj.rst:1623 +#: ../Doc/c-api/typeobj.rst:1633 msgid "" "When a type defined by a class statement has no :attr:`~object.__slots__` " "declaration, and none of its base types has an instance variable dictionary, " @@ -2512,14 +2513,14 @@ msgid "" "`~PyTypeObject.tp_dictoffset` is set to that slot's offset." msgstr "" -#: ../Doc/c-api/typeobj.rst:1628 +#: ../Doc/c-api/typeobj.rst:1638 msgid "" "When a type defined by a class statement has a :attr:`__slots__` " "declaration, the type inherits its :c:member:`~PyTypeObject.tp_dictoffset` " "from its base type." msgstr "" -#: ../Doc/c-api/typeobj.rst:1631 +#: ../Doc/c-api/typeobj.rst:1641 msgid "" "(Adding a slot named :attr:`~object.__dict__` to the :attr:`__slots__` " "declaration does not have the expected effect, it just causes confusion. " @@ -2527,17 +2528,17 @@ msgid "" "though.)" msgstr "" -#: ../Doc/c-api/typeobj.rst:1637 +#: ../Doc/c-api/typeobj.rst:1647 msgid "" "This slot has no default. For static types, if the field is *NULL* then no :" "attr:`__dict__` gets created for instances." msgstr "" -#: ../Doc/c-api/typeobj.rst:1643 +#: ../Doc/c-api/typeobj.rst:1653 msgid "An optional pointer to an instance initialization function." msgstr "" -#: ../Doc/c-api/typeobj.rst:1645 +#: ../Doc/c-api/typeobj.rst:1655 msgid "" "This function corresponds to the :meth:`__init__` method of classes. Like :" "meth:`__init__`, it is possible to create an instance without calling :meth:" @@ -2545,14 +2546,14 @@ msgid "" "meth:`__init__` method again." msgstr "" -#: ../Doc/c-api/typeobj.rst:1654 +#: ../Doc/c-api/typeobj.rst:1664 msgid "" "The self argument is the instance to be initialized; the *args* and *kwds* " "arguments represent positional and keyword arguments of the call to :meth:" "`__init__`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1658 +#: ../Doc/c-api/typeobj.rst:1668 msgid "" "The :c:member:`~PyTypeObject.tp_init` function, if not *NULL*, is called " "when an instance is created normally by calling its type, after the type's :" @@ -2564,42 +2565,42 @@ msgid "" "subtype's :c:member:`~PyTypeObject.tp_init` is called." msgstr "" -#: ../Doc/c-api/typeobj.rst:1665 +#: ../Doc/c-api/typeobj.rst:1675 msgid "Returns ``0`` on success, ``-1`` and sets an exception on error." msgstr "" -#: ../Doc/c-api/typeobj.rst:1673 +#: ../Doc/c-api/typeobj.rst:1683 msgid "For static types this field does not have a default." msgstr "" -#: ../Doc/c-api/typeobj.rst:1678 +#: ../Doc/c-api/typeobj.rst:1688 msgid "An optional pointer to an instance allocation function." msgstr "" -#: ../Doc/c-api/typeobj.rst:1686 +#: ../Doc/c-api/typeobj.rst:1696 msgid "" "This field is inherited by static subtypes, but not by dynamic subtypes " "(subtypes created by a class statement)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1691 +#: ../Doc/c-api/typeobj.rst:1701 msgid "" "For dynamic subtypes, this field is always set to :c:func:" "`PyType_GenericAlloc`, to force a standard heap allocation strategy." msgstr "" -#: ../Doc/c-api/typeobj.rst:1695 +#: ../Doc/c-api/typeobj.rst:1705 msgid "" "For static subtypes, :c:type:`PyBaseObject_Type` uses :c:func:" "`PyType_GenericAlloc`. That is the recommended value for all statically " "defined types." msgstr "" -#: ../Doc/c-api/typeobj.rst:1702 +#: ../Doc/c-api/typeobj.rst:1712 msgid "An optional pointer to an instance creation function." msgstr "" -#: ../Doc/c-api/typeobj.rst:1708 +#: ../Doc/c-api/typeobj.rst:1718 msgid "" "The subtype argument is the type of the object being created; the *args* and " "*kwds* arguments represent positional and keyword arguments of the call to " @@ -2608,7 +2609,7 @@ msgid "" "(but not an unrelated type)." msgstr "" -#: ../Doc/c-api/typeobj.rst:1714 +#: ../Doc/c-api/typeobj.rst:1724 msgid "" "The :c:member:`~PyTypeObject.tp_new` function should call ``subtype-" ">tp_alloc(subtype, nitems)`` to allocate space for the object, and then do " @@ -2620,14 +2621,14 @@ msgid "" "be deferred to :c:member:`~PyTypeObject.tp_init`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1724 +#: ../Doc/c-api/typeobj.rst:1734 msgid "" "This field is inherited by subtypes, except it is not inherited by static " "types whose :c:member:`~PyTypeObject.tp_base` is *NULL* or " "``&PyBaseObject_Type``." msgstr "" -#: ../Doc/c-api/typeobj.rst:1729 +#: ../Doc/c-api/typeobj.rst:1739 msgid "" "For static types this field has no default. This means if the slot is " "defined as *NULL*, the type cannot be called to create new instances; " @@ -2635,39 +2636,39 @@ msgid "" "function." msgstr "" -#: ../Doc/c-api/typeobj.rst:1737 +#: ../Doc/c-api/typeobj.rst:1747 msgid "" "An optional pointer to an instance deallocation function. Its signature is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1741 +#: ../Doc/c-api/typeobj.rst:1751 msgid "" "An initializer that is compatible with this signature is :c:func:" "`PyObject_Free`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1745 +#: ../Doc/c-api/typeobj.rst:1755 msgid "" "This field is inherited by static subtypes, but not by dynamic subtypes " "(subtypes created by a class statement)" msgstr "" -#: ../Doc/c-api/typeobj.rst:1750 +#: ../Doc/c-api/typeobj.rst:1760 msgid "" "In dynamic subtypes, this field is set to a deallocator suitable to match :c:" "func:`PyType_GenericAlloc` and the value of the :const:`Py_TPFLAGS_HAVE_GC` " "flag bit." msgstr "" -#: ../Doc/c-api/typeobj.rst:1754 +#: ../Doc/c-api/typeobj.rst:1764 msgid "For static subtypes, :c:type:`PyBaseObject_Type` uses PyObject_Del." msgstr "" -#: ../Doc/c-api/typeobj.rst:1759 +#: ../Doc/c-api/typeobj.rst:1769 msgid "An optional pointer to a function called by the garbage collector." msgstr "" -#: ../Doc/c-api/typeobj.rst:1761 +#: ../Doc/c-api/typeobj.rst:1771 msgid "" "The garbage collector needs to know whether a particular object is " "collectible or not. Normally, it is sufficient to look at the object's " @@ -2679,76 +2680,76 @@ msgid "" "instance. The signature is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1771 +#: ../Doc/c-api/typeobj.rst:1781 msgid "" "(The only example of this are types themselves. The metatype, :c:data:" "`PyType_Type`, defines this function to distinguish between statically and " "dynamically allocated types.)" msgstr "" -#: ../Doc/c-api/typeobj.rst:1781 +#: ../Doc/c-api/typeobj.rst:1791 msgid "" "This slot has no default. If this field is *NULL*, :const:" "`Py_TPFLAGS_HAVE_GC` is used as the functional equivalent." msgstr "" -#: ../Doc/c-api/typeobj.rst:1787 +#: ../Doc/c-api/typeobj.rst:1797 msgid "Tuple of base types." msgstr "" -#: ../Doc/c-api/typeobj.rst:1789 +#: ../Doc/c-api/typeobj.rst:1799 msgid "" "This is set for types created by a class statement. It should be *NULL* for " "statically defined types." msgstr "" -#: ../Doc/c-api/typeobj.rst:1794 ../Doc/c-api/typeobj.rst:1815 -#: ../Doc/c-api/typeobj.rst:1824 ../Doc/c-api/typeobj.rst:1834 -#: ../Doc/c-api/typeobj.rst:1848 +#: ../Doc/c-api/typeobj.rst:1804 ../Doc/c-api/typeobj.rst:1825 +#: ../Doc/c-api/typeobj.rst:1834 ../Doc/c-api/typeobj.rst:1844 +#: ../Doc/c-api/typeobj.rst:1858 msgid "This field is not inherited." msgstr "" -#: ../Doc/c-api/typeobj.rst:1799 +#: ../Doc/c-api/typeobj.rst:1809 msgid "" "Tuple containing the expanded set of base types, starting with the type " "itself and ending with :class:`object`, in Method Resolution Order." msgstr "" -#: ../Doc/c-api/typeobj.rst:1805 +#: ../Doc/c-api/typeobj.rst:1815 msgid "" "This field is not inherited; it is calculated fresh by :c:func:" "`PyType_Ready`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1811 +#: ../Doc/c-api/typeobj.rst:1821 msgid "Unused. Internal use only." msgstr "" -#: ../Doc/c-api/typeobj.rst:1820 +#: ../Doc/c-api/typeobj.rst:1830 msgid "List of weak references to subclasses. Internal use only." msgstr "" -#: ../Doc/c-api/typeobj.rst:1829 +#: ../Doc/c-api/typeobj.rst:1839 msgid "" "Weak reference list head, for weak references to this type object. Not " "inherited. Internal use only." msgstr "" -#: ../Doc/c-api/typeobj.rst:1839 +#: ../Doc/c-api/typeobj.rst:1849 msgid "" "This field is deprecated. Use :c:member:`~PyTypeObject.tp_finalize` instead." msgstr "" -#: ../Doc/c-api/typeobj.rst:1844 +#: ../Doc/c-api/typeobj.rst:1854 msgid "Used to index into the method cache. Internal use only." msgstr "" -#: ../Doc/c-api/typeobj.rst:1853 +#: ../Doc/c-api/typeobj.rst:1863 msgid "" "An optional pointer to an instance finalization function. Its signature is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1857 +#: ../Doc/c-api/typeobj.rst:1867 msgid "" "If :c:member:`~PyTypeObject.tp_finalize` is set, the interpreter calls it " "once when finalizing an instance. It is called either from the garbage " @@ -2758,24 +2759,24 @@ msgid "" "object in a sane state." msgstr "" -#: ../Doc/c-api/typeobj.rst:1864 +#: ../Doc/c-api/typeobj.rst:1874 msgid "" ":c:member:`~PyTypeObject.tp_finalize` should not mutate the current " "exception status; therefore, a recommended way to write a non-trivial " "finalizer is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:1881 +#: ../Doc/c-api/typeobj.rst:1891 msgid "" "For this field to be taken into account (even through inheritance), you must " "also set the :const:`Py_TPFLAGS_HAVE_FINALIZE` flags bit." msgstr "" -#: ../Doc/c-api/typeobj.rst:1890 +#: ../Doc/c-api/typeobj.rst:1900 msgid "\"Safe object finalization\" (:pep:`442`)" msgstr "" -#: ../Doc/c-api/typeobj.rst:1893 +#: ../Doc/c-api/typeobj.rst:1903 msgid "" "The remaining fields are only defined if the feature test macro :const:" "`COUNT_ALLOCS` is defined, and are for internal use only. They are " @@ -2783,31 +2784,31 @@ msgid "" "subtypes." msgstr "" -#: ../Doc/c-api/typeobj.rst:1900 +#: ../Doc/c-api/typeobj.rst:1910 msgid "Number of allocations." msgstr "" -#: ../Doc/c-api/typeobj.rst:1904 +#: ../Doc/c-api/typeobj.rst:1914 msgid "Number of frees." msgstr "" -#: ../Doc/c-api/typeobj.rst:1908 +#: ../Doc/c-api/typeobj.rst:1918 msgid "Maximum simultaneously allocated objects." msgstr "" -#: ../Doc/c-api/typeobj.rst:1912 +#: ../Doc/c-api/typeobj.rst:1922 msgid "" "Pointer to the previous type object with a non-zero :c:member:`~PyTypeObject." "tp_allocs` field." msgstr "" -#: ../Doc/c-api/typeobj.rst:1916 +#: ../Doc/c-api/typeobj.rst:1926 msgid "" "Pointer to the next type object with a non-zero :c:member:`~PyTypeObject." "tp_allocs` field." msgstr "" -#: ../Doc/c-api/typeobj.rst:1918 +#: ../Doc/c-api/typeobj.rst:1928 msgid "" "Also, note that, in a garbage collected Python, :c:member:`~PyTypeObject." "tp_dealloc` may be called from any Python thread, not just the thread which " @@ -2820,77 +2821,77 @@ msgid "" "which called tp_dealloc will not violate any assumptions of the library." msgstr "" -#: ../Doc/c-api/typeobj.rst:1932 +#: ../Doc/c-api/typeobj.rst:1942 msgid "Heap Types" msgstr "" -#: ../Doc/c-api/typeobj.rst:1934 +#: ../Doc/c-api/typeobj.rst:1944 msgid "" "Traditionally, types defined in C code are *static*, that is, a static :c:" "type:`PyTypeObject` structure is defined directly in code and initialized " "using :c:func:`PyType_Ready`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1938 +#: ../Doc/c-api/typeobj.rst:1948 msgid "" "This results in types that are limited relative to types defined in Python:" msgstr "" -#: ../Doc/c-api/typeobj.rst:1940 +#: ../Doc/c-api/typeobj.rst:1950 msgid "" "Static types are limited to one base, i.e. they cannot use multiple " "inheritance." msgstr "" -#: ../Doc/c-api/typeobj.rst:1942 +#: ../Doc/c-api/typeobj.rst:1952 msgid "" "Static type objects (but not necessarily their instances) are immutable. It " "is not possible to add or modify the type object's attributes from Python." msgstr "" -#: ../Doc/c-api/typeobj.rst:1944 +#: ../Doc/c-api/typeobj.rst:1954 msgid "" "Static type objects are shared across :ref:`sub-interpreters `, so they should not include any subinterpreter-" "specific state." msgstr "" -#: ../Doc/c-api/typeobj.rst:1948 +#: ../Doc/c-api/typeobj.rst:1958 msgid "" "Also, since *PyTypeObject* is not part of the :ref:`stable ABI `, " "any extension modules using static types must be compiled for a specific " "Python minor version." msgstr "" -#: ../Doc/c-api/typeobj.rst:1952 +#: ../Doc/c-api/typeobj.rst:1962 msgid "" "An alternative to static types is *heap-allocated types*, or *heap types* " "for short, which correspond closely to classes created by Python's ``class`` " "statement." msgstr "" -#: ../Doc/c-api/typeobj.rst:1956 +#: ../Doc/c-api/typeobj.rst:1966 msgid "" "This is done by filling a :c:type:`PyType_Spec` structure and calling :c:" "func:`PyType_FromSpecWithBases`." msgstr "" -#: ../Doc/c-api/typeobj.rst:1963 +#: ../Doc/c-api/typeobj.rst:1973 msgid "Number Object Structures" msgstr "" -#: ../Doc/c-api/typeobj.rst:1970 +#: ../Doc/c-api/typeobj.rst:1980 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the number protocol. Each function is used by the function of " "similar name documented in the :ref:`number` section." msgstr "" -#: ../Doc/c-api/typeobj.rst:1976 ../Doc/c-api/typeobj.rst:2300 +#: ../Doc/c-api/typeobj.rst:1986 ../Doc/c-api/typeobj.rst:2310 msgid "Here is the structure definition::" msgstr "" -#: ../Doc/c-api/typeobj.rst:2023 +#: ../Doc/c-api/typeobj.rst:2033 msgid "" "Binary and ternary functions must check the type of all their operands, and " "implement the necessary conversions (at least one of the operands is an " @@ -2900,30 +2901,30 @@ msgid "" "set an exception." msgstr "" -#: ../Doc/c-api/typeobj.rst:2032 +#: ../Doc/c-api/typeobj.rst:2042 msgid "" "The :c:data:`nb_reserved` field should always be *NULL*. It was previously " "called :c:data:`nb_long`, and was renamed in Python 3.0.1." msgstr "" -#: ../Doc/c-api/typeobj.rst:2077 +#: ../Doc/c-api/typeobj.rst:2087 msgid "Mapping Object Structures" msgstr "" -#: ../Doc/c-api/typeobj.rst:2084 +#: ../Doc/c-api/typeobj.rst:2094 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the mapping protocol. It has three members:" msgstr "" -#: ../Doc/c-api/typeobj.rst:2089 +#: ../Doc/c-api/typeobj.rst:2099 msgid "" "This function is used by :c:func:`PyMapping_Size` and :c:func:" "`PyObject_Size`, and has the same signature. This slot may be set to *NULL* " "if the object has no defined length." msgstr "" -#: ../Doc/c-api/typeobj.rst:2095 +#: ../Doc/c-api/typeobj.rst:2105 msgid "" "This function is used by :c:func:`PyObject_GetItem` and :c:func:" "`PySequence_GetSlice`, and has the same signature as :c:func:`!" @@ -2931,7 +2932,7 @@ msgid "" "`PyMapping_Check` function to return ``1``, it can be *NULL* otherwise." msgstr "" -#: ../Doc/c-api/typeobj.rst:2103 +#: ../Doc/c-api/typeobj.rst:2113 msgid "" "This function is used by :c:func:`PyObject_SetItem`, :c:func:" "`PyObject_DelItem`, :c:func:`PyObject_SetSlice` and :c:func:" @@ -2941,17 +2942,17 @@ msgid "" "deletion." msgstr "" -#: ../Doc/c-api/typeobj.rst:2114 +#: ../Doc/c-api/typeobj.rst:2124 msgid "Sequence Object Structures" msgstr "" -#: ../Doc/c-api/typeobj.rst:2121 +#: ../Doc/c-api/typeobj.rst:2131 msgid "" "This structure holds pointers to the functions which an object uses to " "implement the sequence protocol." msgstr "" -#: ../Doc/c-api/typeobj.rst:2126 +#: ../Doc/c-api/typeobj.rst:2136 msgid "" "This function is used by :c:func:`PySequence_Size` and :c:func:" "`PyObject_Size`, and has the same signature. It is also used for handling " @@ -2959,21 +2960,21 @@ msgid "" "member:`~PySequenceMethods.sq_ass_item` slots." msgstr "" -#: ../Doc/c-api/typeobj.rst:2133 +#: ../Doc/c-api/typeobj.rst:2143 msgid "" "This function is used by :c:func:`PySequence_Concat` and has the same " "signature. It is also used by the ``+`` operator, after trying the numeric " "addition via the :c:member:`~PyNumberMethods.nb_add` slot." msgstr "" -#: ../Doc/c-api/typeobj.rst:2139 +#: ../Doc/c-api/typeobj.rst:2149 msgid "" "This function is used by :c:func:`PySequence_Repeat` and has the same " "signature. It is also used by the ``*`` operator, after trying numeric " "multiplication via the :c:member:`~PyNumberMethods.nb_multiply` slot." msgstr "" -#: ../Doc/c-api/typeobj.rst:2145 +#: ../Doc/c-api/typeobj.rst:2155 msgid "" "This function is used by :c:func:`PySequence_GetItem` and has the same " "signature. It is also used by :c:func:`PyObject_GetItem`, after trying the " @@ -2982,7 +2983,7 @@ msgid "" "``1``, it can be *NULL* otherwise." msgstr "" -#: ../Doc/c-api/typeobj.rst:2151 +#: ../Doc/c-api/typeobj.rst:2161 msgid "" "Negative indexes are handled as follows: if the :attr:`sq_length` slot is " "filled, it is called and the sequence length is used to compute a positive " @@ -2990,7 +2991,7 @@ msgid "" "the index is passed as is to the function." msgstr "" -#: ../Doc/c-api/typeobj.rst:2158 +#: ../Doc/c-api/typeobj.rst:2168 msgid "" "This function is used by :c:func:`PySequence_SetItem` and has the same " "signature. It is also used by :c:func:`PyObject_SetItem` and :c:func:" @@ -2999,14 +3000,14 @@ msgid "" "*NULL* if the object does not support item assignment and deletion." msgstr "" -#: ../Doc/c-api/typeobj.rst:2167 +#: ../Doc/c-api/typeobj.rst:2177 msgid "" "This function may be used by :c:func:`PySequence_Contains` and has the same " "signature. This slot may be left to *NULL*, in this case :c:func:`!" "PySequence_Contains` simply traverses the sequence until it finds a match." msgstr "" -#: ../Doc/c-api/typeobj.rst:2174 +#: ../Doc/c-api/typeobj.rst:2184 msgid "" "This function is used by :c:func:`PySequence_InPlaceConcat` and has the same " "signature. It should modify its first operand, and return it. This slot " @@ -3016,7 +3017,7 @@ msgid "" "`~PyNumberMethods.nb_inplace_add` slot." msgstr "" -#: ../Doc/c-api/typeobj.rst:2183 +#: ../Doc/c-api/typeobj.rst:2193 msgid "" "This function is used by :c:func:`PySequence_InPlaceRepeat` and has the same " "signature. It should modify its first operand, and return it. This slot " @@ -3026,72 +3027,72 @@ msgid "" "member:`~PyNumberMethods.nb_inplace_multiply` slot." msgstr "" -#: ../Doc/c-api/typeobj.rst:2194 +#: ../Doc/c-api/typeobj.rst:2204 msgid "Buffer Object Structures" msgstr "" -#: ../Doc/c-api/typeobj.rst:2202 +#: ../Doc/c-api/typeobj.rst:2212 msgid "" "This structure holds pointers to the functions required by the :ref:`Buffer " "protocol `. The protocol defines how an exporter object can " "expose its internal data to consumer objects." msgstr "" -#: ../Doc/c-api/typeobj.rst:2208 ../Doc/c-api/typeobj.rst:2257 -#: ../Doc/c-api/typeobj.rst:2310 ../Doc/c-api/typeobj.rst:2321 -#: ../Doc/c-api/typeobj.rst:2332 +#: ../Doc/c-api/typeobj.rst:2218 ../Doc/c-api/typeobj.rst:2267 +#: ../Doc/c-api/typeobj.rst:2320 ../Doc/c-api/typeobj.rst:2331 +#: ../Doc/c-api/typeobj.rst:2342 msgid "The signature of this function is::" msgstr "" -#: ../Doc/c-api/typeobj.rst:2212 +#: ../Doc/c-api/typeobj.rst:2222 msgid "" "Handle a request to *exporter* to fill in *view* as specified by *flags*. " "Except for point (3), an implementation of this function MUST take these " "steps:" msgstr "" -#: ../Doc/c-api/typeobj.rst:2216 +#: ../Doc/c-api/typeobj.rst:2226 msgid "" "Check if the request can be met. If not, raise :c:data:`PyExc_BufferError`, " "set :c:data:`view->obj` to *NULL* and return ``-1``." msgstr "" -#: ../Doc/c-api/typeobj.rst:2219 +#: ../Doc/c-api/typeobj.rst:2229 msgid "Fill in the requested fields." msgstr "" -#: ../Doc/c-api/typeobj.rst:2221 +#: ../Doc/c-api/typeobj.rst:2231 msgid "Increment an internal counter for the number of exports." msgstr "" -#: ../Doc/c-api/typeobj.rst:2223 +#: ../Doc/c-api/typeobj.rst:2233 msgid "" "Set :c:data:`view->obj` to *exporter* and increment :c:data:`view->obj`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2225 +#: ../Doc/c-api/typeobj.rst:2235 msgid "Return ``0``." msgstr "" -#: ../Doc/c-api/typeobj.rst:2227 +#: ../Doc/c-api/typeobj.rst:2237 msgid "" "If *exporter* is part of a chain or tree of buffer providers, two main " "schemes can be used:" msgstr "" -#: ../Doc/c-api/typeobj.rst:2230 +#: ../Doc/c-api/typeobj.rst:2240 msgid "" "Re-export: Each member of the tree acts as the exporting object and sets :c:" "data:`view->obj` to a new reference to itself." msgstr "" -#: ../Doc/c-api/typeobj.rst:2233 +#: ../Doc/c-api/typeobj.rst:2243 msgid "" "Redirect: The buffer request is redirected to the root object of the tree. " "Here, :c:data:`view->obj` will be a new reference to the root object." msgstr "" -#: ../Doc/c-api/typeobj.rst:2237 +#: ../Doc/c-api/typeobj.rst:2247 msgid "" "The individual fields of *view* are described in section :ref:`Buffer " "structure `, the rules how an exporter must react to " @@ -3099,7 +3100,7 @@ msgid "" "types>`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2242 +#: ../Doc/c-api/typeobj.rst:2252 msgid "" "All memory pointed to in the :c:type:`Py_buffer` structure belongs to the " "exporter and must remain valid until there are no consumers left. :c:member:" @@ -3108,19 +3109,19 @@ msgid "" "internal` are read-only for the consumer." msgstr "" -#: ../Doc/c-api/typeobj.rst:2249 +#: ../Doc/c-api/typeobj.rst:2259 msgid "" ":c:func:`PyBuffer_FillInfo` provides an easy way of exposing a simple bytes " "buffer while dealing correctly with all request types." msgstr "" -#: ../Doc/c-api/typeobj.rst:2252 +#: ../Doc/c-api/typeobj.rst:2262 msgid "" ":c:func:`PyObject_GetBuffer` is the interface for the consumer that wraps " "this function." msgstr "" -#: ../Doc/c-api/typeobj.rst:2261 +#: ../Doc/c-api/typeobj.rst:2271 msgid "" "Handle a request to release the resources of the buffer. If no resources " "need to be released, :c:member:`PyBufferProcs.bf_releasebuffer` may be " @@ -3128,15 +3129,15 @@ msgid "" "these optional steps:" msgstr "" -#: ../Doc/c-api/typeobj.rst:2266 +#: ../Doc/c-api/typeobj.rst:2276 msgid "Decrement an internal counter for the number of exports." msgstr "" -#: ../Doc/c-api/typeobj.rst:2268 +#: ../Doc/c-api/typeobj.rst:2278 msgid "If the counter is ``0``, free all memory associated with *view*." msgstr "" -#: ../Doc/c-api/typeobj.rst:2270 +#: ../Doc/c-api/typeobj.rst:2280 msgid "" "The exporter MUST use the :c:member:`~Py_buffer.internal` field to keep " "track of buffer-specific resources. This field is guaranteed to remain " @@ -3144,62 +3145,62 @@ msgid "" "*view* argument." msgstr "" -#: ../Doc/c-api/typeobj.rst:2276 +#: ../Doc/c-api/typeobj.rst:2286 msgid "" "This function MUST NOT decrement :c:data:`view->obj`, since that is done " "automatically in :c:func:`PyBuffer_Release` (this scheme is useful for " "breaking reference cycles)." msgstr "" -#: ../Doc/c-api/typeobj.rst:2281 +#: ../Doc/c-api/typeobj.rst:2291 msgid "" ":c:func:`PyBuffer_Release` is the interface for the consumer that wraps this " "function." msgstr "" -#: ../Doc/c-api/typeobj.rst:2289 +#: ../Doc/c-api/typeobj.rst:2299 msgid "Async Object Structures" msgstr "" -#: ../Doc/c-api/typeobj.rst:2297 +#: ../Doc/c-api/typeobj.rst:2307 msgid "" "This structure holds pointers to the functions required to implement :term:" "`awaitable` and :term:`asynchronous iterator` objects." msgstr "" -#: ../Doc/c-api/typeobj.rst:2314 +#: ../Doc/c-api/typeobj.rst:2324 msgid "" "The returned object must be an iterator, i.e. :c:func:`PyIter_Check` must " "return ``1`` for it." msgstr "" -#: ../Doc/c-api/typeobj.rst:2317 +#: ../Doc/c-api/typeobj.rst:2327 msgid "" "This slot may be set to *NULL* if an object is not an :term:`awaitable`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2325 +#: ../Doc/c-api/typeobj.rst:2335 msgid "" "Must return an :term:`awaitable` object. See :meth:`__anext__` for details." msgstr "" -#: ../Doc/c-api/typeobj.rst:2327 +#: ../Doc/c-api/typeobj.rst:2337 msgid "" "This slot may be set to *NULL* if an object does not implement asynchronous " "iteration protocol." msgstr "" -#: ../Doc/c-api/typeobj.rst:2336 +#: ../Doc/c-api/typeobj.rst:2346 msgid "" "Must return an :term:`awaitable` object. See :meth:`__anext__` for details. " "This slot may be set to *NULL*." msgstr "" -#: ../Doc/c-api/typeobj.rst:2343 +#: ../Doc/c-api/typeobj.rst:2353 msgid "Slot Type typedefs" msgstr "" -#: ../Doc/c-api/typeobj.rst:2347 +#: ../Doc/c-api/typeobj.rst:2357 msgid "" "The purpose of this function is to separate memory allocation from memory " "initialization. It should return a pointer to a block of memory of adequate " @@ -3213,86 +3214,86 @@ msgid "" "member:`~PyTypeObject.tp_basicsize`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2357 +#: ../Doc/c-api/typeobj.rst:2367 msgid "" "This function should not do any other instance initialization, not even to " "allocate additional memory; that should be done by :c:member:`~PyTypeObject." "tp_new`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2364 +#: ../Doc/c-api/typeobj.rst:2374 msgid "See :c:member:`~PyTypeObject.tp_vectorcall_offset`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2366 +#: ../Doc/c-api/typeobj.rst:2376 msgid "" "Arguments to ``vectorcallfunc`` are the same as for :c:func:" "`_PyObject_Vectorcall`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2372 +#: ../Doc/c-api/typeobj.rst:2382 msgid "See :c:member:`~PyTypeObject.tp_free`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2376 +#: ../Doc/c-api/typeobj.rst:2386 msgid "See :c:member:`~PyTypeObject.tp_new`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2380 +#: ../Doc/c-api/typeobj.rst:2390 msgid "See :c:member:`~PyTypeObject.tp_init`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2384 +#: ../Doc/c-api/typeobj.rst:2394 msgid "See :c:member:`~PyTypeObject.tp_repr`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2388 ../Doc/c-api/typeobj.rst:2397 +#: ../Doc/c-api/typeobj.rst:2398 ../Doc/c-api/typeobj.rst:2407 msgid "Return the value of the named attribute for the object." msgstr "" -#: ../Doc/c-api/typeobj.rst:2392 ../Doc/c-api/typeobj.rst:2403 +#: ../Doc/c-api/typeobj.rst:2402 ../Doc/c-api/typeobj.rst:2413 msgid "" "Set the value of the named attribute for the object. The value argument is " "set to *NULL* to delete the attribute." msgstr "" -#: ../Doc/c-api/typeobj.rst:2399 +#: ../Doc/c-api/typeobj.rst:2409 msgid "See :c:member:`~PyTypeObject.tp_getattro`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2406 +#: ../Doc/c-api/typeobj.rst:2416 msgid "See :c:member:`~PyTypeObject.tp_setattro`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2410 +#: ../Doc/c-api/typeobj.rst:2420 msgid "See :c:member:`~PyTypeObject.tp_descrget`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2414 +#: ../Doc/c-api/typeobj.rst:2424 msgid "See :c:member:`~PyTypeObject.tp_descrset`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2418 +#: ../Doc/c-api/typeobj.rst:2428 msgid "See :c:member:`~PyTypeObject.tp_hash`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2422 +#: ../Doc/c-api/typeobj.rst:2432 msgid "See :c:member:`~PyTypeObject.tp_richcompare`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2426 +#: ../Doc/c-api/typeobj.rst:2436 msgid "See :c:member:`~PyTypeObject.tp_iter`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2430 +#: ../Doc/c-api/typeobj.rst:2440 msgid "See :c:member:`~PyTypeObject.tp_iternext`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2456 +#: ../Doc/c-api/typeobj.rst:2466 msgid "Examples" msgstr "Exemples" -#: ../Doc/c-api/typeobj.rst:2458 +#: ../Doc/c-api/typeobj.rst:2468 msgid "" "The following are simple examples of Python type definitions. They include " "common usage you may encounter. Some demonstrate tricky corner cases. For " @@ -3300,30 +3301,30 @@ msgid "" "and :ref:`new-types-topics`." msgstr "" -#: ../Doc/c-api/typeobj.rst:2463 +#: ../Doc/c-api/typeobj.rst:2473 msgid "A basic static type::" msgstr "" -#: ../Doc/c-api/typeobj.rst:2480 +#: ../Doc/c-api/typeobj.rst:2490 msgid "" "You may also find older code (especially in the CPython code base) with a " "more verbose initializer::" msgstr "" -#: ../Doc/c-api/typeobj.rst:2524 +#: ../Doc/c-api/typeobj.rst:2534 msgid "A type that supports weakrefs, instance dicts, and hashing::" msgstr "" -#: ../Doc/c-api/typeobj.rst:2551 +#: ../Doc/c-api/typeobj.rst:2561 msgid "" "A str subclass that cannot be subclassed and cannot be called to create " "instances (e.g. uses a separate factory func)::" msgstr "" -#: ../Doc/c-api/typeobj.rst:2570 +#: ../Doc/c-api/typeobj.rst:2580 msgid "The simplest static type (with fixed-length instances)::" msgstr "" -#: ../Doc/c-api/typeobj.rst:2581 +#: ../Doc/c-api/typeobj.rst:2591 msgid "The simplest static type (with variable-length instances)::" msgstr "" diff --git a/distutils/apiref.po b/distutils/apiref.po index aaf6be869..ab66e4b69 100644 --- a/distutils/apiref.po +++ b/distutils/apiref.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-04-11 18:00+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -20,8 +20,7 @@ msgid "API Reference" msgstr "Référence de l'API" #: ../Doc/distutils/apiref.rst:11 -msgid "" -"`New and changed setup.py arguments in setuptools `_" +msgid "`New and changed setup.py arguments in setuptools`_" msgstr "" #: ../Doc/distutils/apiref.rst:10 diff --git a/distutils/examples.po b/distutils/examples.po index 2e683c807..67851d422 100644 --- a/distutils/examples.po +++ b/distutils/examples.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -15,7 +15,8 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: ../Doc/distutils/examples.rst:5 -msgid "Examples" +#, fuzzy +msgid "Distutils Examples" msgstr "Exemples" #: ../Doc/distutils/_setuptools_disclaimer.rst:3 diff --git a/extending/extending.po b/extending/extending.po index b67b71508..ef5ce2c67 100644 --- a/extending/extending.po +++ b/extending/extending.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-05-23 16:48+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-19 21:54+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -430,16 +430,16 @@ msgstr "" "cela, déclarez simplement une variable statique au début de votre fichier ::" #: ../Doc/extending/extending.rst:211 +#, fuzzy msgid "" "and initialize it in your module's initialization function (:c:func:" -"`PyInit_spam`) with an exception object (leaving out the error checking for " -"now)::" +"`PyInit_spam`) with an exception object::" msgstr "" "et initialisez-la dans la fonction d'initialisation de votre module (:c:func:" "`PyInit_spam`) avec un objet exception (Passons, pour le moment, la " "vérification des codes d'erreur) ::" -#: ../Doc/extending/extending.rst:229 +#: ../Doc/extending/extending.rst:235 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 " @@ -451,7 +451,7 @@ msgstr "" "`Exception` (à moins qu'une autre classe ne lui soit fournie à la place de " "*NULL*), voir :ref:`bltin-exceptions`." -#: ../Doc/extending/extending.rst:234 +#: ../Doc/extending/extending.rst:240 msgid "" "Note also that the :c:data:`SpamError` variable retains a reference to the " "newly created exception class; this is intentional! Since the exception " @@ -469,7 +469,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:241 +#: ../Doc/extending/extending.rst:247 msgid "" "We discuss the use of ``PyMODINIT_FUNC`` as a function return type later in " "this sample." @@ -477,7 +477,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:244 +#: ../Doc/extending/extending.rst:250 msgid "" "The :exc:`spam.error` exception can be raised in your extension module using " "a call to :c:func:`PyErr_SetString` as shown below::" @@ -485,11 +485,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:267 +#: ../Doc/extending/extending.rst:273 msgid "Back to the Example" msgstr "Retour vers l'exemple" -#: ../Doc/extending/extending.rst:269 +#: ../Doc/extending/extending.rst:275 msgid "" "Going back to our example function, you should now be able to understand " "this statement::" @@ -497,7 +497,7 @@ msgstr "" "En revenant vers notre fonction exemple, vous devriez maintenant être " "capable de comprendre cette affirmation ::" -#: ../Doc/extending/extending.rst:275 +#: ../Doc/extending/extending.rst:281 msgid "" "It returns *NULL* (the error indicator for functions returning object " "pointers) if an error is detected in the argument list, relying on the " @@ -516,7 +516,7 @@ msgstr "" "la variable :c:data:`command` doit être clairement déclarée comme ``const " "char *command``)." -#: ../Doc/extending/extending.rst:283 +#: ../Doc/extending/extending.rst:289 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`::" @@ -525,7 +525,7 @@ msgstr "" "en lui passant la chaîne que nous venons d'obtenir à partir de :c:func:" "`PyArg_ParseTuple` ::" -#: ../Doc/extending/extending.rst:288 +#: ../Doc/extending/extending.rst:294 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`. ::" @@ -534,7 +534,7 @@ msgstr "" "comme un objet Python. Cela est effectué par l'utilisation de la fonction :c:" "func:`PyLong_FromLong`. ::" -#: ../Doc/extending/extending.rst:293 +#: ../Doc/extending/extending.rst:299 msgid "" "In this case, it will return an integer object. (Yes, even integers are " "objects on the heap in Python!)" @@ -542,7 +542,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:296 +#: ../Doc/extending/extending.rst:302 msgid "" "If you have a C function that returns no useful argument (a function " "returning :c:type:`void`), the corresponding Python function must return " @@ -554,7 +554,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:304 +#: ../Doc/extending/extending.rst:310 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" @@ -565,17 +565,17 @@ msgstr "" "qu'une erreur est survenue, dans la plupart des situations, comme nous " "l'avons vu." -#: ../Doc/extending/extending.rst:312 +#: ../Doc/extending/extending.rst:318 msgid "The Module's Method Table and Initialization Function" msgstr "" -#: ../Doc/extending/extending.rst:314 +#: ../Doc/extending/extending.rst:320 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:325 +#: ../Doc/extending/extending.rst:331 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 " @@ -584,14 +584,14 @@ msgid "" "is used." msgstr "" -#: ../Doc/extending/extending.rst:330 +#: ../Doc/extending/extending.rst:336 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:334 +#: ../Doc/extending/extending.rst:340 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 " @@ -600,12 +600,12 @@ msgid "" "to such a function." msgstr "" -#: ../Doc/extending/extending.rst:340 +#: ../Doc/extending/extending.rst:346 msgid "" "The method table must be referenced in the module definition structure::" msgstr "" -#: ../Doc/extending/extending.rst:351 +#: ../Doc/extending/extending.rst:357 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:" @@ -613,14 +613,14 @@ msgid "" "only non-\\ ``static`` item defined in the module file::" msgstr "" -#: ../Doc/extending/extending.rst:362 +#: ../Doc/extending/extending.rst:368 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:366 +#: ../Doc/extending/extending.rst:372 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 " @@ -634,7 +634,7 @@ msgid "" "gets inserted into ``sys.modules``." msgstr "" -#: ../Doc/extending/extending.rst:377 +#: ../Doc/extending/extending.rst:383 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` " @@ -642,7 +642,7 @@ msgid "" "`PyImport_AppendInittab`, optionally followed by an import of the module::" msgstr "" -#: ../Doc/extending/extending.rst:413 +#: ../Doc/extending/extending.rst:419 msgid "" "Removing entries from ``sys.modules`` or importing compiled modules into " "multiple interpreters within a process (or following a :c:func:`fork` " @@ -651,14 +651,14 @@ msgid "" "initializing internal data structures." msgstr "" -#: ../Doc/extending/extending.rst:419 +#: ../Doc/extending/extending.rst:425 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:425 +#: ../Doc/extending/extending.rst:431 msgid "" "Unlike our ``spam`` example, ``xxmodule`` uses *multi-phase initialization* " "(new in Python 3.5), where a PyModuleDef structure is returned from " @@ -666,11 +666,11 @@ msgid "" "For details on multi-phase initialization, see :PEP:`489`." msgstr "" -#: ../Doc/extending/extending.rst:434 +#: ../Doc/extending/extending.rst:440 msgid "Compilation and Linkage" msgstr "" -#: ../Doc/extending/extending.rst:436 +#: ../Doc/extending/extending.rst:442 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 " @@ -680,7 +680,7 @@ msgid "" "Windows (chapter :ref:`building-on-windows`) for more information about this." msgstr "" -#: ../Doc/extending/extending.rst:443 +#: ../Doc/extending/extending.rst:449 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 " @@ -690,7 +690,7 @@ msgid "" "line to the file :file:`Modules/Setup.local` describing your file:" msgstr "" -#: ../Doc/extending/extending.rst:454 +#: ../Doc/extending/extending.rst:460 msgid "" "and rebuild the interpreter by running :program:`make` in the toplevel " "directory. You can also run :program:`make` in the :file:`Modules/` " @@ -699,17 +699,17 @@ msgid "" "the :file:`Setup` file.)" msgstr "" -#: ../Doc/extending/extending.rst:460 +#: ../Doc/extending/extending.rst:466 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:471 +#: ../Doc/extending/extending.rst:477 msgid "Calling Python Functions from C" msgstr "" -#: ../Doc/extending/extending.rst:473 +#: ../Doc/extending/extending.rst:479 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 " @@ -720,7 +720,7 @@ msgid "" "uses are also imaginable." msgstr "" -#: ../Doc/extending/extending.rst:481 +#: ../Doc/extending/extending.rst:487 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 " @@ -729,7 +729,7 @@ msgid "" "line option in :file:`Modules/main.c` from the Python source code.)" msgstr "" -#: ../Doc/extending/extending.rst:487 +#: ../Doc/extending/extending.rst:493 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 " @@ -739,7 +739,7 @@ msgid "" "function might be part of a module definition::" msgstr "" -#: ../Doc/extending/extending.rst:517 +#: ../Doc/extending/extending.rst:523 msgid "" "This function must be registered with the interpreter using the :const:" "`METH_VARARGS` flag; this is described in section :ref:`methodtable`. The :" @@ -747,7 +747,7 @@ msgid "" "section :ref:`parsetuple`." msgstr "" -#: ../Doc/extending/extending.rst:522 +#: ../Doc/extending/extending.rst:528 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* " @@ -755,7 +755,7 @@ msgid "" "info on them in section :ref:`refcounts`." msgstr "" -#: ../Doc/extending/extending.rst:529 +#: ../Doc/extending/extending.rst:535 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 " @@ -767,7 +767,7 @@ msgid "" "or more format codes between parentheses. For example::" msgstr "" -#: ../Doc/extending/extending.rst:549 +#: ../Doc/extending/extending.rst:555 msgid "" ":c:func:`PyObject_CallObject` returns a Python object pointer: this is the " "return value of the Python function. :c:func:`PyObject_CallObject` is " @@ -776,7 +776,7 @@ msgid "" "`Py_DECREF`\\ -ed immediately after the :c:func:`PyObject_CallObject` call." msgstr "" -#: ../Doc/extending/extending.rst:556 +#: ../Doc/extending/extending.rst:562 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 " @@ -785,7 +785,7 @@ msgid "" "not interested in its value." msgstr "" -#: ../Doc/extending/extending.rst:562 +#: ../Doc/extending/extending.rst:568 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 " @@ -796,7 +796,7 @@ msgid "" "should be cleared by calling :c:func:`PyErr_Clear`. For example::" msgstr "" -#: ../Doc/extending/extending.rst:575 +#: ../Doc/extending/extending.rst:581 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 " @@ -808,7 +808,7 @@ msgid "" "you want to pass an integral event code, you might use the following code::" msgstr "" -#: ../Doc/extending/extending.rst:594 +#: ../Doc/extending/extending.rst:600 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 " @@ -816,22 +816,22 @@ msgid "" "checked." msgstr "" -#: ../Doc/extending/extending.rst:598 +#: ../Doc/extending/extending.rst:604 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:616 +#: ../Doc/extending/extending.rst:622 msgid "Extracting Parameters in Extension Functions" msgstr "" -#: ../Doc/extending/extending.rst:620 +#: ../Doc/extending/extending.rst:626 msgid "The :c:func:`PyArg_ParseTuple` function is declared as follows::" msgstr "" -#: ../Doc/extending/extending.rst:624 +#: ../Doc/extending/extending.rst:630 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, " @@ -840,7 +840,7 @@ msgid "" "whose type is determined by the format string." msgstr "" -#: ../Doc/extending/extending.rst:630 +#: ../Doc/extending/extending.rst:636 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 " @@ -848,7 +848,7 @@ msgid "" "probably crash or at least overwrite random bits in memory. So be careful!" msgstr "" -#: ../Doc/extending/extending.rst:635 +#: ../Doc/extending/extending.rst:641 msgid "" "Note that any Python object references which are provided to the caller are " "*borrowed* references; do not decrement their reference count!" @@ -857,20 +857,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:638 +#: ../Doc/extending/extending.rst:644 msgid "Some example calls::" msgstr "" -#: ../Doc/extending/extending.rst:708 +#: ../Doc/extending/extending.rst:714 msgid "Keyword Parameters for Extension Functions" msgstr "" -#: ../Doc/extending/extending.rst:712 +#: ../Doc/extending/extending.rst:718 msgid "" "The :c:func:`PyArg_ParseTupleAndKeywords` function is declared as follows::" msgstr "" -#: ../Doc/extending/extending.rst:717 +#: ../Doc/extending/extending.rst:723 msgid "" "The *arg* and *format* parameters are identical to those of the :c:func:" "`PyArg_ParseTuple` function. The *kwdict* parameter is the dictionary of " @@ -881,30 +881,30 @@ msgid "" "returns true, otherwise it returns false and raises an appropriate exception." msgstr "" -#: ../Doc/extending/extending.rst:727 +#: ../Doc/extending/extending.rst:733 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:733 +#: ../Doc/extending/extending.rst:739 msgid "" "Here is an example module which uses keywords, based on an example by Geoff " "Philbrick (philbrick@hks.com)::" msgstr "" -#: ../Doc/extending/extending.rst:788 +#: ../Doc/extending/extending.rst:794 msgid "Building Arbitrary Values" msgstr "" -#: ../Doc/extending/extending.rst:790 +#: ../Doc/extending/extending.rst:796 msgid "" "This function is the counterpart to :c:func:`PyArg_ParseTuple`. It is " "declared as follows::" msgstr "" -#: ../Doc/extending/extending.rst:795 +#: ../Doc/extending/extending.rst:801 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, " @@ -912,7 +912,7 @@ msgid "" "object, suitable for returning from a C function called from Python." msgstr "" -#: ../Doc/extending/extending.rst:800 +#: ../Doc/extending/extending.rst:806 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 " @@ -924,16 +924,16 @@ msgid "" "parenthesize the format string." msgstr "" -#: ../Doc/extending/extending.rst:808 +#: ../Doc/extending/extending.rst:814 msgid "" "Examples (to the left the call, to the right the resulting Python value):" msgstr "" -#: ../Doc/extending/extending.rst:834 +#: ../Doc/extending/extending.rst:840 msgid "Reference Counts" msgstr "" -#: ../Doc/extending/extending.rst:836 +#: ../Doc/extending/extending.rst:842 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 " @@ -942,7 +942,7 @@ msgid "" "restrict the following discussion to the C case." msgstr "" -#: ../Doc/extending/extending.rst:842 +#: ../Doc/extending/extending.rst:848 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:" @@ -957,7 +957,7 @@ msgid "" "crashes." msgstr "" -#: ../Doc/extending/extending.rst:853 +#: ../Doc/extending/extending.rst:859 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, " @@ -974,7 +974,7 @@ msgid "" "of errors." msgstr "" -#: ../Doc/extending/extending.rst:866 +#: ../Doc/extending/extending.rst:872 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. " @@ -985,7 +985,7 @@ msgid "" "reference to the object has been deleted and the object is freed." msgstr "" -#: ../Doc/extending/extending.rst:874 +#: ../Doc/extending/extending.rst:880 msgid "" "An alternative strategy is called :dfn:`automatic garbage collection`. " "(Sometimes, reference counting is also referred to as a garbage collection " @@ -1001,7 +1001,7 @@ msgid "" "with reference counts." msgstr "" -#: ../Doc/extending/extending.rst:886 +#: ../Doc/extending/extending.rst:892 msgid "" "While Python uses the traditional reference counting implementation, it also " "offers a cycle detector that works to detect reference cycles. This allows " @@ -1015,7 +1015,7 @@ msgid "" "though there are no further references to the cycle itself." msgstr "" -#: ../Doc/extending/extending.rst:897 +#: ../Doc/extending/extending.rst:903 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." @@ -1027,11 +1027,11 @@ msgid "" "detector is disabled in this way, the :mod:`gc` module will not be available." msgstr "" -#: ../Doc/extending/extending.rst:911 +#: ../Doc/extending/extending.rst:917 msgid "Reference Counting in Python" msgstr "" -#: ../Doc/extending/extending.rst:913 +#: ../Doc/extending/extending.rst:919 msgid "" "There are two macros, ``Py_INCREF(x)`` and ``Py_DECREF(x)``, which handle " "the incrementing and decrementing of the reference count. :c:func:" @@ -1042,7 +1042,7 @@ msgid "" "object." msgstr "" -#: ../Doc/extending/extending.rst:920 +#: ../Doc/extending/extending.rst:926 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 " @@ -1055,7 +1055,7 @@ msgid "" "reference creates a memory leak." msgstr "" -#: ../Doc/extending/extending.rst:929 +#: ../Doc/extending/extending.rst:935 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 " @@ -1064,7 +1064,7 @@ msgid "" "risks using freed memory and should be avoided completely [#]_." msgstr "" -#: ../Doc/extending/extending.rst:935 +#: ../Doc/extending/extending.rst:941 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 " @@ -1075,7 +1075,7 @@ msgid "" "borrowed has in fact disposed of it." msgstr "" -#: ../Doc/extending/extending.rst:943 +#: ../Doc/extending/extending.rst:949 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 " @@ -1084,18 +1084,18 @@ msgid "" "properly, as well as the previous owner)." msgstr "" -#: ../Doc/extending/extending.rst:953 +#: ../Doc/extending/extending.rst:959 msgid "Ownership Rules" msgstr "" -#: ../Doc/extending/extending.rst:955 +#: ../Doc/extending/extending.rst:961 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:959 +#: ../Doc/extending/extending.rst:965 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 " @@ -1106,7 +1106,7 @@ msgid "" "reference to a cached item." msgstr "" -#: ../Doc/extending/extending.rst:967 +#: ../Doc/extending/extending.rst:973 msgid "" "Many functions that extract objects from other objects also transfer " "ownership with the reference, for instance :c:func:" @@ -1117,14 +1117,14 @@ msgid "" "list or dictionary." msgstr "" -#: ../Doc/extending/extending.rst:974 +#: ../Doc/extending/extending.rst:980 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:978 +#: ../Doc/extending/extending.rst:984 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 " @@ -1135,7 +1135,7 @@ msgid "" "don't take over ownership --- they are \"normal.\")" msgstr "" -#: ../Doc/extending/extending.rst:986 +#: ../Doc/extending/extending.rst:992 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 " @@ -1144,18 +1144,18 @@ msgid "" "turned into an owned reference by calling :c:func:`Py_INCREF`." msgstr "" -#: ../Doc/extending/extending.rst:992 +#: ../Doc/extending/extending.rst:998 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:1000 +#: ../Doc/extending/extending.rst:1006 msgid "Thin Ice" msgstr "" -#: ../Doc/extending/extending.rst:1002 +#: ../Doc/extending/extending.rst:1008 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 " @@ -1163,21 +1163,21 @@ msgid "" "dispose of it." msgstr "" -#: ../Doc/extending/extending.rst:1006 +#: ../Doc/extending/extending.rst:1012 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:1018 +#: ../Doc/extending/extending.rst:1024 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:1022 +#: ../Doc/extending/extending.rst:1028 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 " @@ -1187,7 +1187,7 @@ msgid "" "count of 1, disposing of it will call its :meth:`__del__` method." msgstr "" -#: ../Doc/extending/extending.rst:1029 +#: ../Doc/extending/extending.rst:1035 msgid "" "Since it is written in Python, the :meth:`__del__` method can execute " "arbitrary Python code. Could it perhaps do something to invalidate the " @@ -1198,20 +1198,20 @@ msgid "" "associated with it, thereby invalidating ``item``." msgstr "" -#: ../Doc/extending/extending.rst:1037 +#: ../Doc/extending/extending.rst:1043 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:1051 +#: ../Doc/extending/extending.rst:1057 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:1055 +#: ../Doc/extending/extending.rst:1061 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 " @@ -1224,11 +1224,11 @@ msgid "" "previous one::" msgstr "" -#: ../Doc/extending/extending.rst:1078 +#: ../Doc/extending/extending.rst:1084 msgid "NULL Pointers" msgstr "" -#: ../Doc/extending/extending.rst:1080 +#: ../Doc/extending/extending.rst:1086 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 " @@ -1240,21 +1240,21 @@ msgid "" "slowly." msgstr "" -#: ../Doc/extending/extending.rst:1088 +#: ../Doc/extending/extending.rst:1094 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:1092 +#: ../Doc/extending/extending.rst:1098 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:1096 +#: ../Doc/extending/extending.rst:1102 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 " @@ -1263,24 +1263,24 @@ msgid "" "variants with *NULL* checking." msgstr "" -#: ../Doc/extending/extending.rst:1102 +#: ../Doc/extending/extending.rst:1108 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:1106 +#: ../Doc/extending/extending.rst:1112 msgid "" "It is a severe error to ever let a *NULL* pointer \"escape\" to the Python " "user." msgstr "" -#: ../Doc/extending/extending.rst:1117 +#: ../Doc/extending/extending.rst:1123 msgid "Writing Extensions in C++" msgstr "" -#: ../Doc/extending/extending.rst:1119 +#: ../Doc/extending/extending.rst:1125 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 " @@ -1293,11 +1293,11 @@ msgid "" "(all recent C++ compilers define this symbol)." msgstr "" -#: ../Doc/extending/extending.rst:1133 +#: ../Doc/extending/extending.rst:1139 msgid "Providing a C API for an Extension Module" msgstr "" -#: ../Doc/extending/extending.rst:1138 +#: ../Doc/extending/extending.rst:1144 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 " @@ -1308,7 +1308,7 @@ msgid "" "functions for direct manipulation from other extension modules." msgstr "" -#: ../Doc/extending/extending.rst:1146 +#: ../Doc/extending/extending.rst:1152 msgid "" "At first sight this seems easy: just write the functions (without declaring " "them ``static``, of course), provide an appropriate header file, and " @@ -1324,7 +1324,7 @@ msgid "" "call might not have been loaded yet!" msgstr "" -#: ../Doc/extending/extending.rst:1158 +#: ../Doc/extending/extending.rst:1164 msgid "" "Portability therefore requires not to make any assumptions about symbol " "visibility. This means that all symbols in extension modules should be " @@ -1334,7 +1334,7 @@ msgid "" "accessible from other extension modules must be exported in a different way." msgstr "" -#: ../Doc/extending/extending.rst:1165 +#: ../Doc/extending/extending.rst:1171 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 " @@ -1346,7 +1346,7 @@ msgid "" "the Capsule." msgstr "" -#: ../Doc/extending/extending.rst:1173 +#: ../Doc/extending/extending.rst:1179 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 " @@ -1356,7 +1356,7 @@ msgid "" "client modules." msgstr "" -#: ../Doc/extending/extending.rst:1179 +#: ../Doc/extending/extending.rst:1185 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 " @@ -1366,13 +1366,13 @@ msgid "" "from another." msgstr "" -#: ../Doc/extending/extending.rst:1186 +#: ../Doc/extending/extending.rst:1192 msgid "" "In particular, Capsules used to expose C APIs should be given a name " "following this convention::" msgstr "" -#: ../Doc/extending/extending.rst:1191 +#: ../Doc/extending/extending.rst:1197 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 " @@ -1380,7 +1380,7 @@ msgid "" "the Capsule they load contains the correct C API." msgstr "" -#: ../Doc/extending/extending.rst:1196 +#: ../Doc/extending/extending.rst:1202 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 " @@ -1391,7 +1391,7 @@ msgid "" "modules only have to call this macro before accessing the C API." msgstr "" -#: ../Doc/extending/extending.rst:1204 +#: ../Doc/extending/extending.rst:1210 msgid "" "The exporting module is a modification of the :mod:`spam` module from " "section :ref:`extending-simpleexample`. The function :func:`spam.system` " @@ -1401,25 +1401,25 @@ msgid "" "function :c:func:`PySpam_System` is also exported to other extension modules." msgstr "" -#: ../Doc/extending/extending.rst:1211 +#: ../Doc/extending/extending.rst:1217 msgid "" "The function :c:func:`PySpam_System` is a plain C function, declared " "``static`` like everything else::" msgstr "" -#: ../Doc/extending/extending.rst:1220 +#: ../Doc/extending/extending.rst:1226 msgid "The function :c:func:`spam_system` is modified in a trivial way::" msgstr "" -#: ../Doc/extending/extending.rst:1234 +#: ../Doc/extending/extending.rst:1240 msgid "In the beginning of the module, right after the line ::" msgstr "" -#: ../Doc/extending/extending.rst:1238 +#: ../Doc/extending/extending.rst:1244 msgid "two more lines must be added::" msgstr "" -#: ../Doc/extending/extending.rst:1243 +#: ../Doc/extending/extending.rst:1249 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 " @@ -1427,33 +1427,33 @@ msgid "" "array::" msgstr "" -#: ../Doc/extending/extending.rst:1269 +#: ../Doc/extending/extending.rst:1279 msgid "" "Note that ``PySpam_API`` is declared ``static``; otherwise the pointer array " "would disappear when :func:`PyInit_spam` terminates!" msgstr "" -#: ../Doc/extending/extending.rst:1272 +#: ../Doc/extending/extending.rst:1282 msgid "" "The bulk of the work is in the header file :file:`spammodule.h`, which looks " "like this::" msgstr "" -#: ../Doc/extending/extending.rst:1323 +#: ../Doc/extending/extending.rst:1333 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:1341 +#: ../Doc/extending/extending.rst:1351 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:1345 +#: ../Doc/extending/extending.rst:1355 msgid "" "Finally it should be mentioned that Capsules offer additional functionality, " "which is especially useful for memory allocation and deallocation of the " @@ -1463,30 +1463,30 @@ msgid "" "in the Python source code distribution)." msgstr "" -#: ../Doc/extending/extending.rst:1353 +#: ../Doc/extending/extending.rst:1363 msgid "Footnotes" msgstr "Notes" -#: ../Doc/extending/extending.rst:1354 +#: ../Doc/extending/extending.rst:1364 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:1357 +#: ../Doc/extending/extending.rst:1367 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:1360 +#: ../Doc/extending/extending.rst:1370 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:1364 +#: ../Doc/extending/extending.rst:1374 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 8b3684702..dcbea1cd2 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: 2019-05-23 16:48+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-06-17 10:15+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -219,40 +219,40 @@ msgid "" "set to *NULL*. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:184 +#: ../Doc/extending/newtypes_tutorial.rst:189 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:192 +#: ../Doc/extending/newtypes_tutorial.rst:197 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:201 +#: ../Doc/extending/newtypes_tutorial.rst:206 msgid "in a file called :file:`setup.py`; then typing" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:207 +#: ../Doc/extending/newtypes_tutorial.rst:212 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:211 +#: ../Doc/extending/newtypes_tutorial.rst:216 msgid "That wasn't so hard, was it?" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:213 +#: ../Doc/extending/newtypes_tutorial.rst:218 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:217 +#: ../Doc/extending/newtypes_tutorial.rst:222 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:225 +#: ../Doc/extending/newtypes_tutorial.rst:230 msgid "Adding data and methods to the Basic example" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:227 +#: ../Doc/extending/newtypes_tutorial.rst:232 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:234 +#: ../Doc/extending/newtypes_tutorial.rst:239 msgid "This version of the module has a number of changes." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:236 +#: ../Doc/extending/newtypes_tutorial.rst:241 msgid "We've added an extra include::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:240 +#: ../Doc/extending/newtypes_tutorial.rst:245 msgid "" "This include provides declarations that we use to handle attributes, as " "described a bit later." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:243 +#: ../Doc/extending/newtypes_tutorial.rst:248 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:247 +#: ../Doc/extending/newtypes_tutorial.rst:252 msgid "The object structure is updated accordingly::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:256 +#: ../Doc/extending/newtypes_tutorial.rst:261 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:267 +#: ../Doc/extending/newtypes_tutorial.rst:272 msgid "which is assigned to the :c:member:`~PyTypeObject.tp_dealloc` member::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:271 +#: ../Doc/extending/newtypes_tutorial.rst:276 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:280 +#: ../Doc/extending/newtypes_tutorial.rst:285 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:286 +#: ../Doc/extending/newtypes_tutorial.rst:291 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:310 +#: ../Doc/extending/newtypes_tutorial.rst:315 msgid "and install it in the :c:member:`~PyTypeObject.tp_new` member::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:314 +#: ../Doc/extending/newtypes_tutorial.rst:319 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:322 +#: ../Doc/extending/newtypes_tutorial.rst:327 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:330 +#: ../Doc/extending/newtypes_tutorial.rst:335 msgid "" "``tp_new`` shouldn't call ``tp_init`` explicitly, as the interpreter will do " "it itself." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:333 +#: ../Doc/extending/newtypes_tutorial.rst:338 msgid "" "The ``tp_new`` implementation calls the :c:member:`~PyTypeObject.tp_alloc` " "slot to allocate memory::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:338 +#: ../Doc/extending/newtypes_tutorial.rst:343 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:342 +#: ../Doc/extending/newtypes_tutorial.rst:347 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:348 +#: ../Doc/extending/newtypes_tutorial.rst:353 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:358 +#: ../Doc/extending/newtypes_tutorial.rst:363 msgid "" "We also define an initialization function which accepts arguments to provide " "initial values for our instance::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:387 +#: ../Doc/extending/newtypes_tutorial.rst:392 msgid "by filling the :c:member:`~PyTypeObject.tp_init` slot. ::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:391 +#: ../Doc/extending/newtypes_tutorial.rst:396 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:396 +#: ../Doc/extending/newtypes_tutorial.rst:401 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:410 +#: ../Doc/extending/newtypes_tutorial.rst:415 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:417 +#: ../Doc/extending/newtypes_tutorial.rst:422 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:421 +#: ../Doc/extending/newtypes_tutorial.rst:426 msgid "when we absolutely know that the reference count is greater than 1;" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:423 +#: ../Doc/extending/newtypes_tutorial.rst:428 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:426 +#: ../Doc/extending/newtypes_tutorial.rst:431 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:429 +#: ../Doc/extending/newtypes_tutorial.rst:434 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:442 +#: ../Doc/extending/newtypes_tutorial.rst:447 msgid "" "and put the definitions in the :c:member:`~PyTypeObject.tp_members` slot::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:446 +#: ../Doc/extending/newtypes_tutorial.rst:451 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:450 +#: ../Doc/extending/newtypes_tutorial.rst:455 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:457 +#: ../Doc/extending/newtypes_tutorial.rst:462 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:474 +#: ../Doc/extending/newtypes_tutorial.rst:479 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:486 +#: ../Doc/extending/newtypes_tutorial.rst:491 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:492 +#: ../Doc/extending/newtypes_tutorial.rst:497 msgid "" "Now that we've defined the method, we need to create an array of method " "definitions::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:502 +#: ../Doc/extending/newtypes_tutorial.rst:507 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:505 +#: ../Doc/extending/newtypes_tutorial.rst:510 msgid "and assign it to the :c:member:`~PyTypeObject.tp_methods` slot::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:509 +#: ../Doc/extending/newtypes_tutorial.rst:514 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:516 +#: ../Doc/extending/newtypes_tutorial.rst:521 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:520 +#: ../Doc/extending/newtypes_tutorial.rst:525 msgid "Finally, we update our :file:`setup.py` file to build the new module:" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:533 +#: ../Doc/extending/newtypes_tutorial.rst:538 msgid "Providing finer control over data attributes" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:535 +#: ../Doc/extending/newtypes_tutorial.rst:540 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:544 +#: ../Doc/extending/newtypes_tutorial.rst:549 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:575 +#: ../Doc/extending/newtypes_tutorial.rst:580 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:581 +#: ../Doc/extending/newtypes_tutorial.rst:586 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:586 +#: ../Doc/extending/newtypes_tutorial.rst:591 msgid "We create an array of :c:type:`PyGetSetDef` structures::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:596 +#: ../Doc/extending/newtypes_tutorial.rst:601 msgid "and register it in the :c:member:`~PyTypeObject.tp_getset` slot::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:600 +#: ../Doc/extending/newtypes_tutorial.rst:605 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:603 +#: ../Doc/extending/newtypes_tutorial.rst:608 msgid "We also remove the member definitions for these attributes::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:611 +#: ../Doc/extending/newtypes_tutorial.rst:616 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:640 +#: ../Doc/extending/newtypes_tutorial.rst:645 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:647 +#: ../Doc/extending/newtypes_tutorial.rst:652 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:653 +#: ../Doc/extending/newtypes_tutorial.rst:658 msgid "Supporting cyclic garbage collection" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:655 +#: ../Doc/extending/newtypes_tutorial.rst:660 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:665 +#: ../Doc/extending/newtypes_tutorial.rst:670 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:670 +#: ../Doc/extending/newtypes_tutorial.rst:675 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:684 +#: ../Doc/extending/newtypes_tutorial.rst:689 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:691 +#: ../Doc/extending/newtypes_tutorial.rst:696 msgid "" "First, the traversal method lets the cyclic GC know about subobjects that " "could participate in cycles::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:711 +#: ../Doc/extending/newtypes_tutorial.rst:716 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:717 +#: ../Doc/extending/newtypes_tutorial.rst:722 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:730 +#: ../Doc/extending/newtypes_tutorial.rst:735 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:733 +#: ../Doc/extending/newtypes_tutorial.rst:738 msgid "" "Second, we need to provide a method for clearing any subobjects that can " "participate in cycles::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:744 +#: ../Doc/extending/newtypes_tutorial.rst:749 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:752 +#: ../Doc/extending/newtypes_tutorial.rst:757 msgid "You could emulate :c:func:`Py_CLEAR` by writing::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:759 +#: ../Doc/extending/newtypes_tutorial.rst:764 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:763 +#: ../Doc/extending/newtypes_tutorial.rst:768 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:778 +#: ../Doc/extending/newtypes_tutorial.rst:783 msgid "" "Finally, we add the :const:`Py_TPFLAGS_HAVE_GC` flag to the class flags::" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:782 +#: ../Doc/extending/newtypes_tutorial.rst:787 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:788 +#: ../Doc/extending/newtypes_tutorial.rst:793 msgid "Subclassing other types" msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:790 +#: ../Doc/extending/newtypes_tutorial.rst:795 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:795 +#: ../Doc/extending/newtypes_tutorial.rst:800 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:815 +#: ../Doc/extending/newtypes_tutorial.rst:820 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:823 +#: ../Doc/extending/newtypes_tutorial.rst:828 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:827 +#: ../Doc/extending/newtypes_tutorial.rst:832 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:839 +#: ../Doc/extending/newtypes_tutorial.rst:844 msgid "" "We see above how to call through to the :attr:`__init__` method of the base " "type." msgstr "" -#: ../Doc/extending/newtypes_tutorial.rst:842 +#: ../Doc/extending/newtypes_tutorial.rst:847 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:848 +#: ../Doc/extending/newtypes_tutorial.rst:853 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:871 +#: ../Doc/extending/newtypes_tutorial.rst:881 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:877 +#: ../Doc/extending/newtypes_tutorial.rst:887 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:882 +#: ../Doc/extending/newtypes_tutorial.rst:892 msgid "Footnotes" msgstr "Notes" -#: ../Doc/extending/newtypes_tutorial.rst:883 +#: ../Doc/extending/newtypes_tutorial.rst:893 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:886 +#: ../Doc/extending/newtypes_tutorial.rst:896 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:889 +#: ../Doc/extending/newtypes_tutorial.rst:899 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:895 +#: ../Doc/extending/newtypes_tutorial.rst:905 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/design.po b/faq/design.po index 0f8c51e83..f828e1e9f 100644 --- a/faq/design.po +++ b/faq/design.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-10-09 17:54+0200\n" "PO-Revision-Date: 2019-03-21 21:04+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -310,94 +310,20 @@ msgid "Why can't I use an assignment in an expression?" msgstr "Pourquoi ne puis-je pas utiliser d'assignation dans une expression ?" #: ../Doc/faq/design.rst:152 -msgid "" -"Many people used to C or Perl complain that they want to use this C idiom:" +msgid "Starting in Python 3.8, you can!" msgstr "" -"De nombreuses personnes habituées à C ou Perl se plaignent de vouloir " -"utiliser cet idiome C :" - -#: ../Doc/faq/design.rst:160 -msgid "where in Python you're forced to write this::" -msgstr "où en Python vous êtes forcé à écrire ceci ::" -#: ../Doc/faq/design.rst:168 +#: ../Doc/faq/design.rst:154 msgid "" -"The reason for not allowing assignment in Python expressions is a common, " -"hard-to-find bug in those other languages, caused by this construct:" +"Assignment expressions using the walrus operator `:=` assign a variable in " +"an expression::" msgstr "" -"La raison pour ne pas autoriser l'assignation dans les expressions en Python " -"est un bug fréquent, et difficile à trouver dans ces autres langages, causé " -"par cette construction :" -#: ../Doc/faq/design.rst:180 -msgid "" -"The error is a simple typo: ``x = 0``, which assigns 0 to the variable " -"``x``, was written while the comparison ``x == 0`` is certainly what was " -"intended." -msgstr "" -"Cette erreur est une simple coquille : ``x = 0``, qui assigne 0 à la " -"variable ``x``, a été écrit alors que la comparaison ``x == 0`` est " -"certainement ce qui était souhaité." - -#: ../Doc/faq/design.rst:183 -msgid "" -"Many alternatives have been proposed. Most are hacks that save some typing " -"but use arbitrary or cryptic syntax or keywords, and fail the simple " -"criterion for language change proposals: it should intuitively suggest the " -"proper meaning to a human reader who has not yet been introduced to the " -"construct." -msgstr "" -"De nombreuses alternatives ont été proposées. La plupart économisaient " -"quelques touches mais utilisaient des mots clefs ou des syntaxes arbitraires " -"ou cryptiques, et manquaient à la règle que toute proposition de changement " -"de langage devrait respecter : elle doit intuitivement suggérer la bonne " -"signification au lecteur qui n'a pas encore été introduit à cette syntaxe." - -#: ../Doc/faq/design.rst:188 -msgid "" -"An interesting phenomenon is that most experienced Python programmers " -"recognize the ``while True`` idiom and don't seem to be missing the " -"assignment in expression construct much; it's only newcomers who express a " -"strong desire to add this to the language." -msgstr "" -"Un phénomène intéressant est que la plupart des programmeurs Python " -"expérimentés reconnaissent l'idiome ``while True`` et ne semblent pas " -"manquer l'assignation dans la construction de l'expression; seuls les " -"nouveaux-venus expriment un fort désir d'ajouter ceci au langage." - -#: ../Doc/faq/design.rst:193 -msgid "" -"There's an alternative way of spelling this that seems attractive but is " -"generally less robust than the \"while True\" solution::" -msgstr "" -"Il y a une manière alternative de faire ça qui semble attrayante mais elle " -"est généralement moins robuste que la solution ``while True`` ::" - -#: ../Doc/faq/design.rst:201 -msgid "" -"The problem with this is that if you change your mind about exactly how you " -"get the next line (e.g. you want to change it into ``sys.stdin.readline()``) " -"you have to remember to change two places in your program -- the second " -"occurrence is hidden at the bottom of the loop." -msgstr "" -"Le problème avec ceci est que si vous changez d'avis sur la manière dont " -"vous allez récupérer la prochaine ligne (ex : vous voulez changer en ``sys." -"stdin.readline()``) vous devez vous souvenir de le changer à deux endroits " -"dans votre programme -- la deuxième occurrence est cachée en bas de la " -"boucle." - -#: ../Doc/faq/design.rst:206 -msgid "" -"The best approach is to use iterators, making it possible to loop through " -"objects using the ``for`` statement. For example, :term:`file objects ` support the iterator protocol, so you can write simply::" +#: ../Doc/faq/design.rst:160 +msgid "See :pep:`572` for more information." msgstr "" -"La meilleur approche est d'utiliser les itérateurs, rendant possible de " -"parcourir des objets en utilisant l'instruction ``for``. Par exemple, les :" -"term:`objets fichiers ` gèrent le protocole d'itération, donc " -"vous pouvez simplement écrire ::" -#: ../Doc/faq/design.rst:216 +#: ../Doc/faq/design.rst:165 msgid "" "Why does Python use methods for some functionality (e.g. list.index()) but " "functions for other (e.g. len(list))?" @@ -405,11 +331,11 @@ msgstr "" "Pourquoi Python utilise des méthodes pour certaines fonctionnalités (ex : " "``list.index()``) mais des fonctions pour d'autres (ex : ``len(list)``) ?" -#: ../Doc/faq/design.rst:218 +#: ../Doc/faq/design.rst:167 msgid "As Guido said:" msgstr "Comme l'a dit Guido :" -#: ../Doc/faq/design.rst:220 +#: ../Doc/faq/design.rst:169 msgid "" "(a) For some operations, prefix notation just reads better than postfix -- " "prefix (and infix!) operations have a long tradition in mathematics which " @@ -424,7 +350,7 @@ msgstr "" "laquelle nous réécrivons une formule comme x*(a+b) en x*a + x*b à la " "lourdeur de faire la même chose avec une notation orientée objet brute." -#: ../Doc/faq/design.rst:227 +#: ../Doc/faq/design.rst:176 msgid "" "(b) When I read code that says len(x) I *know* that it is asking for the " "length of something. This tells me two things: the result is an integer, and " @@ -445,18 +371,18 @@ msgstr "" "``key()``, ou quand un objet qui n'est pas un fichier implémente une méthode " "``write()``." -#: ../Doc/faq/design.rst:254 +#: ../Doc/faq/design.rst:203 msgid "https://mail.python.org/pipermail/python-3000/2006-November/004643.html" msgstr "" "https://mail.python.org/pipermail/python-3000/2006-November/004643.html" -#: ../Doc/faq/design.rst:240 +#: ../Doc/faq/design.rst:189 msgid "Why is join() a string method instead of a list or tuple method?" msgstr "" "Pourquoi ``join()`` est une méthode de chaîne plutôt qu'une de liste ou de " "tuple ?" -#: ../Doc/faq/design.rst:242 +#: ../Doc/faq/design.rst:191 msgid "" "Strings became much more like other standard types starting in Python 1.6, " "when methods were added which give the same functionality that has always " @@ -471,15 +397,15 @@ msgstr "" "largement acceptées, mais celle qui semble rendre certains programmeurs " "inconfortables est ::" -#: ../Doc/faq/design.rst:250 +#: ../Doc/faq/design.rst:199 msgid "which gives the result::" msgstr "qui donne le résultat ::" -#: ../Doc/faq/design.rst:254 +#: ../Doc/faq/design.rst:203 msgid "There are two common arguments against this usage." msgstr "Il y a deux arguments fréquents contre cet usage." -#: ../Doc/faq/design.rst:256 +#: ../Doc/faq/design.rst:205 msgid "" "The first runs along the lines of: \"It looks really ugly using a method of " "a string literal (string constant)\", to which the answer is that it might, " @@ -493,7 +419,7 @@ msgstr "" "fixe. Si la méthode est autorisée sur des noms liés à des chaînes, il n'y a " "pas de raison logique à les rendre indisponibles sur des chaînes littérales." -#: ../Doc/faq/design.rst:262 +#: ../Doc/faq/design.rst:211 msgid "" "The second objection is typically cast as: \"I am really telling a sequence " "to join its members together with a string constant\". Sadly, you aren't. " @@ -506,7 +432,7 @@ msgstr "" "semble être bien moins difficile d'avoir :meth:`~str.split` en tant que " "méthode de chaîne, puisque dans ce cas il est facile de voir que ::" -#: ../Doc/faq/design.rst:269 +#: ../Doc/faq/design.rst:218 msgid "" "is an instruction to a string literal to return the substrings delimited by " "the given separator (or, by default, arbitrary runs of white space)." @@ -515,7 +441,7 @@ msgstr "" "délimitées par le séparateur fournit (ou, par défaut, les espaces, ou " "groupes d'espaces)." -#: ../Doc/faq/design.rst:272 +#: ../Doc/faq/design.rst:221 msgid "" ":meth:`~str.join` is a string method because in using it you are telling the " "separator string to iterate over a sequence of strings and insert itself " @@ -531,11 +457,11 @@ msgstr "" "même. Des méthodes similaires existent pour des objets ``bytes`` et " "``bytearray``." -#: ../Doc/faq/design.rst:280 +#: ../Doc/faq/design.rst:229 msgid "How fast are exceptions?" msgstr "À quel point les exceptions sont-elles rapides ?" -#: ../Doc/faq/design.rst:282 +#: ../Doc/faq/design.rst:231 msgid "" "A try/except block is extremely efficient if no exceptions are raised. " "Actually catching an exception is expensive. In versions of Python prior to " @@ -546,7 +472,7 @@ msgstr "" "coûteux. Dans les versions de précédant Python 2.0, il était courant " "d'utiliser cette pratique ::" -#: ../Doc/faq/design.rst:292 +#: ../Doc/faq/design.rst:241 msgid "" "This only made sense when you expected the dict to have the key almost all " "the time. If that wasn't the case, you coded it like this::" @@ -555,7 +481,7 @@ msgstr "" "clé presque tout le temps. Si ce n'était pas le cas, vous l'auriez codé " "comme suit ::" -#: ../Doc/faq/design.rst:300 +#: ../Doc/faq/design.rst:249 msgid "" "For this specific case, you could also use ``value = dict.setdefault(key, " "getvalue(key))``, but only if the ``getvalue()`` call is cheap enough " @@ -565,13 +491,13 @@ msgstr "" "getvalue(key))``, mais seulement si l'appel à ``getvalue()`` est " "suffisamment peu coûteux car il est évalué dans tous les cas." -#: ../Doc/faq/design.rst:306 +#: ../Doc/faq/design.rst:255 msgid "Why isn't there a switch or case statement in Python?" msgstr "" "Pourquoi n'y a-t-il pas une instruction *switch* ou une structure similaire " "à *switch / case* en Python ?" -#: ../Doc/faq/design.rst:308 +#: ../Doc/faq/design.rst:257 msgid "" "You can do this easily enough with a sequence of ``if... elif... elif... " "else``. There have been some proposals for switch statement syntax, but " @@ -583,7 +509,7 @@ msgstr "" "l'instruction ``switch``, mais il n'y a pas (encore) de consensus sur le cas " "des intervalles. Voir la :pep:`275` pour tous les détails et l'état actuel." -#: ../Doc/faq/design.rst:313 +#: ../Doc/faq/design.rst:262 msgid "" "For cases where you need to choose from a very large number of " "possibilities, you can create a dictionary mapping case values to functions " @@ -593,7 +519,7 @@ msgstr "" "possibilités, vous pouvez créer un dictionnaire faisant correspondre des " "valeurs à des fonctions à appeler. Par exemple ::" -#: ../Doc/faq/design.rst:327 +#: ../Doc/faq/design.rst:276 msgid "" "For calling methods on objects, you can simplify yet further by using the :" "func:`getattr` built-in to retrieve methods with a particular name::" @@ -602,7 +528,7 @@ msgstr "" "en utilisant la fonction native :func:`getattr` pour récupérer les méthodes " "avec un nom donné ::" -#: ../Doc/faq/design.rst:339 +#: ../Doc/faq/design.rst:288 msgid "" "It's suggested that you use a prefix for the method names, such as " "``visit_`` in this example. Without such a prefix, if values are coming " @@ -614,7 +540,7 @@ msgstr "" "proviennent d'une source non fiable, un attaquant serait en mesure d'appeler " "n'importe quelle méthode sur votre objet." -#: ../Doc/faq/design.rst:345 +#: ../Doc/faq/design.rst:294 msgid "" "Can't you emulate threads in the interpreter instead of relying on an OS-" "specific thread implementation?" @@ -622,7 +548,7 @@ msgstr "" "Est-il possible d'émuler des fils d'exécution dans l'interpréteur plutôt que " "se baser sur les implémentations spécifique aux OS ?" -#: ../Doc/faq/design.rst:347 +#: ../Doc/faq/design.rst:296 msgid "" "Answer 1: Unfortunately, the interpreter pushes at least one C stack frame " "for each Python stack frame. Also, extensions can call back into Python at " @@ -635,7 +561,7 @@ msgstr "" "conséquent, une implémentation complète des fils d'exécution nécessiterai un " "support complet en C." -#: ../Doc/faq/design.rst:352 +#: ../Doc/faq/design.rst:301 msgid "" "Answer 2: Fortunately, there is `Stackless Python `_, which has a completely redesigned " @@ -645,12 +571,12 @@ msgstr "" "stackless-dev/stackless/wiki>`_, qui a complètement ré-architecturé la " "boucle principale de l'interpréteur afin de ne pas utiliser la pile C." -#: ../Doc/faq/design.rst:357 +#: ../Doc/faq/design.rst:306 msgid "Why can't lambda expressions contain statements?" msgstr "" "Pourquoi les expressions lambda ne peuvent pas contenir d'instructions ?" -#: ../Doc/faq/design.rst:359 +#: ../Doc/faq/design.rst:308 msgid "" "Python lambda expressions cannot contain statements because Python's " "syntactic framework can't handle statements nested inside expressions. " @@ -666,7 +592,7 @@ msgstr "" "Python sont seulement une notation concise si vous êtes trop paresseux pour " "définir une fonction." -#: ../Doc/faq/design.rst:365 +#: ../Doc/faq/design.rst:314 msgid "" "Functions are already first class objects in Python, and can be declared in " "a local scope. Therefore the only advantage of using a lambda instead of a " @@ -682,12 +608,12 @@ msgstr "" "variable locale à laquelle est affecté l'objet fonction (qui est exactement " "le même type d'objet qui donne une expression lambda) !" -#: ../Doc/faq/design.rst:373 +#: ../Doc/faq/design.rst:322 msgid "Can Python be compiled to machine code, C or some other language?" msgstr "" "Python peut-il être compilé en code machine, en C ou dans un autre langage ?" -#: ../Doc/faq/design.rst:375 +#: ../Doc/faq/design.rst:324 msgid "" "`Cython `_ compiles a modified version of Python with " "optional annotations into C extensions. `Nuitka `_ " @@ -701,11 +627,11 @@ msgstr "" "langage Python entièrement. Pour compiler en Java, vous pouvez regarder `VOC " "`_." -#: ../Doc/faq/design.rst:383 +#: ../Doc/faq/design.rst:332 msgid "How does Python manage memory?" msgstr "Comment Python gère la mémoire ?" -#: ../Doc/faq/design.rst:385 +#: ../Doc/faq/design.rst:334 msgid "" "The details of Python memory management depend on the implementation. The " "standard implementation of Python, :term:`CPython`, uses reference counting " @@ -724,7 +650,7 @@ msgstr "" "module :mod:`gc` fournit des fonctions pour lancer le ramasse-miettes, " "d'obtenir des statistiques de débogage et ajuster ses paramètres." -#: ../Doc/faq/design.rst:393 +#: ../Doc/faq/design.rst:342 msgid "" "Other implementations (such as `Jython `_ or `PyPy " "`_), however, can rely on a different mechanism such as " @@ -738,7 +664,7 @@ msgstr "" "subtils problèmes de portabilité si votre code Python dépend du comportement " "de l'implémentation du compteur de références." -#: ../Doc/faq/design.rst:399 +#: ../Doc/faq/design.rst:348 msgid "" "In some Python implementations, the following code (which is fine in " "CPython) will probably run out of file descriptors::" @@ -747,7 +673,7 @@ msgstr "" "parfaitement avec *CPython*) aurait probablement manqué de descripteurs de " "fichiers ::" -#: ../Doc/faq/design.rst:406 +#: ../Doc/faq/design.rst:355 msgid "" "Indeed, using CPython's reference counting and destructor scheme, each new " "assignment to *f* closes the previous file. With a traditional GC, however, " @@ -760,7 +686,7 @@ msgstr "" "(et fermés) à intervalles variables et possiblement avec de longs " "intervalles." -#: ../Doc/faq/design.rst:411 +#: ../Doc/faq/design.rst:360 msgid "" "If you want to write code that will work with any Python implementation, you " "should explicitly close the file or use the :keyword:`with` statement; this " @@ -771,12 +697,12 @@ msgstr "" "utiliser l'instruction :keyword:`with` ; ceci fonctionnera indépendamment du " "système de gestion de la mémoire ::" -#: ../Doc/faq/design.rst:421 +#: ../Doc/faq/design.rst:370 msgid "Why doesn't CPython use a more traditional garbage collection scheme?" msgstr "" "Pourquoi CPython n'utilise-il pas un ramasse-miette plus traditionnel ?" -#: ../Doc/faq/design.rst:423 +#: ../Doc/faq/design.rst:372 msgid "" "For one thing, this is not a C standard feature and hence it's not portable. " "(Yes, we know about the Boehm GC library. It has bits of assembler code for " @@ -791,7 +717,7 @@ msgstr "" "transparent, c'est loin d'être le cas, des correctifs sont nécessaires afin " "que Python fonctionne correctement avec.)" -#: ../Doc/faq/design.rst:429 +#: ../Doc/faq/design.rst:378 msgid "" "Traditional GC also becomes a problem when Python is embedded into other " "applications. While in a standalone Python it's fine to replace the " @@ -809,12 +735,12 @@ msgstr "" "fonctionne avec n'importe quelle implémentation correcte de ``malloc()`` et " "``free()``." -#: ../Doc/faq/design.rst:438 +#: ../Doc/faq/design.rst:387 msgid "Why isn't all memory freed when CPython exits?" msgstr "" "Pourquoi toute la mémoire n'est pas libérée lorsque *CPython* s'arrête ?" -#: ../Doc/faq/design.rst:440 +#: ../Doc/faq/design.rst:389 msgid "" "Objects referenced from the global namespaces of Python modules are not " "always deallocated when Python exits. This may happen if there are circular " @@ -831,7 +757,7 @@ msgstr "" "cependant, agressif sur le nettoyage de la mémoire en quittant et cherche à " "détruire chaque objet." -#: ../Doc/faq/design.rst:447 +#: ../Doc/faq/design.rst:396 msgid "" "If you want to force Python to delete certain things on deallocation use " "the :mod:`atexit` module to run a function that will force those deletions." @@ -840,12 +766,12 @@ msgstr "" "utilisez le module :mod:`texit` pour exécuter une fonction qui va forcer ces " "destructions." -#: ../Doc/faq/design.rst:452 +#: ../Doc/faq/design.rst:401 msgid "Why are there separate tuple and list data types?" msgstr "" "Pourquoi les *tuples* et les *list* sont deux types de données séparés ?" -#: ../Doc/faq/design.rst:454 +#: ../Doc/faq/design.rst:403 msgid "" "Lists and tuples, while similar in many respects, are generally used in " "fundamentally different ways. Tuples can be thought of as being similar to " @@ -862,7 +788,7 @@ msgstr "" "un repère cartésien est correctement représenté comme un *tuple* de deux ou " "trois nombres." -#: ../Doc/faq/design.rst:461 +#: ../Doc/faq/design.rst:410 msgid "" "Lists, on the other hand, are more like arrays in other languages. They " "tend to hold a varying number of objects all of which have the same type and " @@ -879,7 +805,7 @@ msgstr "" "problème que vous ajoutiez un ou deux fichiers supplémentaire dans le " "dossier." -#: ../Doc/faq/design.rst:468 +#: ../Doc/faq/design.rst:417 msgid "" "Tuples are immutable, meaning that once a tuple has been created, you can't " "replace any of its elements with a new value. Lists are mutable, meaning " @@ -894,11 +820,11 @@ msgstr "" "utilisés comme clés de dictionnaires, et donc de ``tuple`` et ``list`` seul " "des *tuples* peuvent être utilisés comme clés." -#: ../Doc/faq/design.rst:475 +#: ../Doc/faq/design.rst:424 msgid "How are lists implemented in CPython?" msgstr "Comment les listes sont-elles implémentées dans CPython ?" -#: ../Doc/faq/design.rst:477 +#: ../Doc/faq/design.rst:426 msgid "" "CPython's lists are really variable-length arrays, not Lisp-style linked " "lists. The implementation uses a contiguous array of references to other " @@ -911,7 +837,7 @@ msgstr "" "Elle conserve également un pointeur vers ce tableau et la longueur du " "tableau dans une structure de tête de liste." -#: ../Doc/faq/design.rst:481 +#: ../Doc/faq/design.rst:430 msgid "" "This makes indexing a list ``a[i]`` an operation whose cost is independent " "of the size of the list or the value of the index." @@ -919,7 +845,7 @@ msgstr "" "Cela rend l'indexation d'une liste ``a[i]`` une opération dont le coût est " "indépendant de la taille de la liste ou de la valeur de l'indice." -#: ../Doc/faq/design.rst:484 +#: ../Doc/faq/design.rst:433 msgid "" "When items are appended or inserted, the array of references is resized. " "Some cleverness is applied to improve the performance of appending items " @@ -932,11 +858,11 @@ msgstr "" "être étendu, un certain espace supplémentaire est alloué de sorte que pour " "la prochaine fois, ceci ne nécessite plus un redimensionnement effectif." -#: ../Doc/faq/design.rst:491 +#: ../Doc/faq/design.rst:440 msgid "How are dictionaries implemented in CPython?" msgstr "Comment les dictionnaires sont-ils implémentés dans CPython ?" -#: ../Doc/faq/design.rst:493 +#: ../Doc/faq/design.rst:442 msgid "" "CPython's dictionaries are implemented as resizable hash tables. Compared " "to B-trees, this gives better performance for lookup (the most common " @@ -948,7 +874,7 @@ msgstr "" "performances pour la recherche (l'opération la plus courante de loin) dans " "la plupart des circonstances, et leur implémentation est plus simple." -#: ../Doc/faq/design.rst:497 +#: ../Doc/faq/design.rst:446 msgid "" "Dictionaries work by computing a hash code for each key stored in the " "dictionary using the :func:`hash` built-in function. The hash code varies " @@ -973,11 +899,11 @@ msgstr "" "temps pour récupérer une clé est constant -- O(1), en notation grand O de " "Landau." -#: ../Doc/faq/design.rst:508 +#: ../Doc/faq/design.rst:457 msgid "Why must dictionary keys be immutable?" msgstr "Pourquoi les clés du dictionnaire sont immuables ?" -#: ../Doc/faq/design.rst:510 +#: ../Doc/faq/design.rst:459 msgid "" "The hash table implementation of dictionaries uses a hash value calculated " "from the key value to find the key. If the key were a mutable object, its " @@ -1000,7 +926,7 @@ msgstr "" "chercher l'ancienne valeur, elle serait également introuvable car la valeur " "de l'objet trouvé dans cet emplacement de hachage serait différente." -#: ../Doc/faq/design.rst:519 +#: ../Doc/faq/design.rst:468 msgid "" "If you want a dictionary indexed with a list, simply convert the list to a " "tuple first; the function ``tuple(L)`` creates a tuple with the same entries " @@ -1012,11 +938,11 @@ msgstr "" "*tuple* avec les mêmes entrées que la liste ``L``. Les *tuples* sont " "immuables et peuvent donc être utilisés comme clés du dictionnaire." -#: ../Doc/faq/design.rst:523 +#: ../Doc/faq/design.rst:472 msgid "Some unacceptable solutions that have been proposed:" msgstr "Certaines solutions insatisfaisantes qui ont été proposées :" -#: ../Doc/faq/design.rst:525 +#: ../Doc/faq/design.rst:474 msgid "" "Hash lists by their address (object ID). This doesn't work because if you " "construct a new list with the same value it won't be found; e.g.::" @@ -1025,7 +951,7 @@ msgstr "" "fonctionne pas parce que si vous créez une nouvelle liste avec la même " "valeur, elle ne sera pas retrouvée; par exemple ::" -#: ../Doc/faq/design.rst:531 +#: ../Doc/faq/design.rst:480 msgid "" "would raise a :exc:`KeyError` exception because the id of the ``[1, 2]`` " "used in the second line differs from that in the first line. In other " @@ -1037,7 +963,7 @@ msgstr "" "termes, les clés de dictionnaire doivent être comparées à l'aide du " "comparateur ``==`` et non à l'aide du mot clé :keyword:`is`." -#: ../Doc/faq/design.rst:535 +#: ../Doc/faq/design.rst:484 msgid "" "Make a copy when using a list as a key. This doesn't work because the list, " "being a mutable object, could contain a reference to itself, and then the " @@ -1048,7 +974,7 @@ msgstr "" "une référence à elle-même ou avoir une boucle infinie au niveau du code " "copié." -#: ../Doc/faq/design.rst:539 +#: ../Doc/faq/design.rst:488 msgid "" "Allow lists as keys but tell the user not to modify them. This would allow " "a class of hard-to-track bugs in programs when you forgot or modified a list " @@ -1061,7 +987,7 @@ msgstr "" "accident. Cela casse également un impératif important des dictionnaires : " "chaque valeur de ``d.keys()`` est utilisable comme clé du dictionnaire." -#: ../Doc/faq/design.rst:544 +#: ../Doc/faq/design.rst:493 msgid "" "Mark lists as read-only once they are used as a dictionary key. The problem " "is that it's not just the top-level object that could change its value; you " @@ -1079,7 +1005,7 @@ msgstr "" "encore une fois, les objets se faisant référence pourraient provoquer une " "boucle infinie." -#: ../Doc/faq/design.rst:550 +#: ../Doc/faq/design.rst:499 msgid "" "There is a trick to get around this if you need to, but use it at your own " "risk: You can wrap a mutable structure inside a class instance which has " @@ -1096,7 +1022,7 @@ msgstr "" "(ou une autre structure basée sur le hachage), restent fixes pendant que " "l'objet est dans le dictionnaire (ou une autre structure). ::" -#: ../Doc/faq/design.rst:574 +#: ../Doc/faq/design.rst:523 msgid "" "Note that the hash computation is complicated by the possibility that some " "members of the list may be unhashable and also by the possibility of " @@ -1106,7 +1032,7 @@ msgstr "" "certains membres de la liste peuvent être impossible à hacher et aussi par " "la possibilité de débordement arithmétique." -#: ../Doc/faq/design.rst:578 +#: ../Doc/faq/design.rst:527 msgid "" "Furthermore it must always be the case that if ``o1 == o2`` (ie ``o1." "__eq__(o2) is True``) then ``hash(o1) == hash(o2)`` (ie, ``o1.__hash__() == " @@ -1120,7 +1046,7 @@ msgstr "" "ne remplissez pas ces conditions, les dictionnaires et autres structures " "basées sur le hachage se comporteront mal." -#: ../Doc/faq/design.rst:583 +#: ../Doc/faq/design.rst:532 msgid "" "In the case of ListWrapper, whenever the wrapper object is in a dictionary " "the wrapped list must not change to avoid anomalies. Don't do this unless " @@ -1133,11 +1059,11 @@ msgstr "" "conséquences de ne pas satisfaire entièrement ces conditions. Vous avez été " "prévenus." -#: ../Doc/faq/design.rst:590 +#: ../Doc/faq/design.rst:539 msgid "Why doesn't list.sort() return the sorted list?" msgstr "Pourquoi ``list.sort()`` ne renvoie pas la liste triée ?" -#: ../Doc/faq/design.rst:592 +#: ../Doc/faq/design.rst:541 msgid "" "In situations where performance matters, making a copy of the list just to " "sort it would be wasteful. Therefore, :meth:`list.sort` sorts the list in " @@ -1153,7 +1079,7 @@ msgstr "" "accidentellement une liste lorsque vous avez besoin d’une copie triée, mais " "vous devrez également garder sous la main la version non triée." -#: ../Doc/faq/design.rst:598 +#: ../Doc/faq/design.rst:547 msgid "" "If you want to return a new list, use the built-in :func:`sorted` function " "instead. This function creates a new list from a provided iterable, sorts " @@ -1165,13 +1091,13 @@ msgstr "" "itérable fourni, la trie et la retourne. Par exemple, voici comment itérer " "sur les clefs d’un dictionnaire dans l’ordre trié ::" -#: ../Doc/faq/design.rst:608 +#: ../Doc/faq/design.rst:557 msgid "How do you specify and enforce an interface spec in Python?" msgstr "" "Comment spécifiez-vous et appliquez-vous une spécification d’interface en " "Python ?" -#: ../Doc/faq/design.rst:610 +#: ../Doc/faq/design.rst:559 msgid "" "An interface specification for a module as provided by languages such as C++ " "and Java describes the prototypes for the methods and functions of the " @@ -1183,7 +1109,7 @@ msgstr "" "module. Beaucoup estiment que la vérification au moment de la compilation " "des spécifications d'interface aide à la construction de grands programmes." -#: ../Doc/faq/design.rst:615 +#: ../Doc/faq/design.rst:564 msgid "" "Python 2.6 adds an :mod:`abc` module that lets you define Abstract Base " "Classes (ABCs). You can then use :func:`isinstance` and :func:`issubclass` " @@ -1200,7 +1126,7 @@ msgstr "" "Iterable`, :class:`~collections.abc.Container` et :class:`collections.abc." "MutableMapping`." -#: ../Doc/faq/design.rst:622 +#: ../Doc/faq/design.rst:571 msgid "" "For Python, many of the advantages of interface specifications can be " "obtained by an appropriate test discipline for components. There is also a " @@ -1211,7 +1137,7 @@ msgstr "" "existe aussi un outil, PyChecker, qui peut être utilisé pour trouver des " "problèmes d'héritage." -#: ../Doc/faq/design.rst:626 +#: ../Doc/faq/design.rst:575 msgid "" "A good test suite for a module can both provide a regression test and serve " "as a module interface specification and a set of examples. Many Python " @@ -1232,7 +1158,7 @@ msgstr "" "test tiers peuvent être utilisés pour construire des suites de tests " "exhaustives qui éprouvent chaque ligne de code dans un module." -#: ../Doc/faq/design.rst:634 +#: ../Doc/faq/design.rst:583 msgid "" "An appropriate testing discipline can help build large complex applications " "in Python as well as having interface specifications would. In fact, it can " @@ -1252,7 +1178,7 @@ msgstr "" "réellement le faire correctement, mais il est trivial de vérifier cette " "propriété dans une suite de tests." -#: ../Doc/faq/design.rst:642 +#: ../Doc/faq/design.rst:591 msgid "" "Writing test suites is very helpful, and you might want to design your code " "with an eye to making it easily tested. One increasingly popular technique, " @@ -1267,11 +1193,11 @@ msgstr "" "le code réel. Bien sûr, Python vous permet d'être laxiste et de ne pas " "écrire de test du tout." -#: ../Doc/faq/design.rst:650 +#: ../Doc/faq/design.rst:599 msgid "Why is there no goto?" msgstr "Pourquoi n'y a-t-il pas de ``goto`` en Python ?" -#: ../Doc/faq/design.rst:652 +#: ../Doc/faq/design.rst:601 msgid "" "You can use exceptions to provide a \"structured goto\" that even works " "across function calls. Many feel that exceptions can conveniently emulate " @@ -1284,7 +1210,7 @@ msgstr "" "utilisation raisonnable des constructions ``go`` ou ``goto`` en C, en " "Fortran ou autres langages de programmation. Par exemple ::" -#: ../Doc/faq/design.rst:667 +#: ../Doc/faq/design.rst:616 msgid "" "This doesn't allow you to jump into the middle of a loop, but that's usually " "considered an abuse of goto anyway. Use sparingly." @@ -1293,13 +1219,13 @@ msgstr "" "tous les cas cela est généralement considéré comme un abus de ``goto``. À " "Utiliser avec parcimonie." -#: ../Doc/faq/design.rst:672 +#: ../Doc/faq/design.rst:621 msgid "Why can't raw strings (r-strings) end with a backslash?" msgstr "" "Pourquoi les chaînes de caractères brutes (r-strings) ne peuvent-elles pas " "se terminer par un *backslash* ?" -#: ../Doc/faq/design.rst:674 +#: ../Doc/faq/design.rst:623 msgid "" "More precisely, they can't end with an odd number of backslashes: the " "unpaired backslash at the end escapes the closing quote character, leaving " @@ -1309,7 +1235,7 @@ msgstr "" "*backslashes* : le *backslash* non appairé à la fin échappe le caractère de " "guillemet final, laissant une chaîne non terminée." -#: ../Doc/faq/design.rst:678 +#: ../Doc/faq/design.rst:627 msgid "" "Raw strings were designed to ease creating input for processors (chiefly " "regular expression engines) that want to do their own backslash escape " @@ -1327,7 +1253,7 @@ msgstr "" "chaîne en l'échappant avec un *antislash*. Ces règles fonctionnent bien " "lorsque les chaînes brutes sont utilisées pour leur but premier." -#: ../Doc/faq/design.rst:685 +#: ../Doc/faq/design.rst:634 msgid "" "If you're trying to build Windows pathnames, note that all Windows system " "calls accept forward slashes too::" @@ -1336,20 +1262,20 @@ msgstr "" "les appels système Windows acceptent également les *slashes* \"classiques" "\" ::" -#: ../Doc/faq/design.rst:690 +#: ../Doc/faq/design.rst:639 msgid "" "If you're trying to build a pathname for a DOS command, try e.g. one of ::" msgstr "" "Si vous essayez de construire un chemin d'accès pour une commande DOS, " "essayez par exemple l'un de ceux-là ::" -#: ../Doc/faq/design.rst:698 +#: ../Doc/faq/design.rst:647 msgid "Why doesn't Python have a \"with\" statement for attribute assignments?" msgstr "" "Pourquoi la déclaration ``with`` pour les assignations d'attributs n'existe " "pas en Python ?" -#: ../Doc/faq/design.rst:700 +#: ../Doc/faq/design.rst:649 msgid "" "Python has a 'with' statement that wraps the execution of a block, calling " "code on the entrance and exit from the block. Some language have a " @@ -1359,11 +1285,11 @@ msgstr "" "appelant le code sur l'entrée et la sortie du bloc. Certains langages " "possèdent une construction qui ressemble à ceci ::" -#: ../Doc/faq/design.rst:708 +#: ../Doc/faq/design.rst:657 msgid "In Python, such a construct would be ambiguous." msgstr "En Python, une telle construction serait ambiguë." -#: ../Doc/faq/design.rst:710 +#: ../Doc/faq/design.rst:659 msgid "" "Other languages, such as Object Pascal, Delphi, and C++, use static types, " "so it's possible to know, in an unambiguous way, what member is being " @@ -1376,7 +1302,7 @@ msgstr "" "statique --le compilateur connaît *toujours* la portée de toutes les " "variables au moment de la compilation." -#: ../Doc/faq/design.rst:715 +#: ../Doc/faq/design.rst:664 msgid "" "Python uses dynamic types. It is impossible to know in advance which " "attribute will be referenced at runtime. Member attributes may be added or " @@ -1390,11 +1316,11 @@ msgstr "" "impossible de savoir, d'une simple lecture, quel attribut est référencé : " "s'il est local, global ou un attribut membre?" -#: ../Doc/faq/design.rst:721 +#: ../Doc/faq/design.rst:670 msgid "For instance, take the following incomplete snippet::" msgstr "Prenons par exemple l'extrait incomplet suivant ::" -#: ../Doc/faq/design.rst:727 +#: ../Doc/faq/design.rst:676 msgid "" "The snippet assumes that \"a\" must have a member attribute called \"x\". " "However, there is nothing in Python that tells the interpreter this. What " @@ -1408,7 +1334,7 @@ msgstr "" "\"x\" existe, sera-t-elle utilisée dans le bloc ``with`` ? Comme vous " "voyez, la nature dynamique du Python rend ces choix beaucoup plus difficiles." -#: ../Doc/faq/design.rst:733 +#: ../Doc/faq/design.rst:682 msgid "" "The primary benefit of \"with\" and similar language features (reduction of " "code volume) can, however, easily be achieved in Python by assignment. " @@ -1418,11 +1344,11 @@ msgstr "" "similaires (réduction du volume de code) peut, cependant, être facilement " "réalisé en Python par assignation. Au lieu de ::" -#: ../Doc/faq/design.rst:740 +#: ../Doc/faq/design.rst:689 msgid "write this::" msgstr "écrivez ceci ::" -#: ../Doc/faq/design.rst:747 +#: ../Doc/faq/design.rst:696 msgid "" "This also has the side-effect of increasing execution speed because name " "bindings are resolved at run-time in Python, and the second version only " @@ -1432,13 +1358,13 @@ msgstr "" "car les liaisons de noms sont résolues au moment de l'exécution en Python, " "et la deuxième version n'a besoin d'exécuter la résolution qu'une seule fois." -#: ../Doc/faq/design.rst:753 +#: ../Doc/faq/design.rst:702 msgid "Why are colons required for the if/while/def/class statements?" msgstr "" "Pourquoi les deux-points sont-ils nécessaires pour les déclarations ``if/" "while/def/class`` ?" -#: ../Doc/faq/design.rst:755 +#: ../Doc/faq/design.rst:704 msgid "" "The colon is required primarily to enhance readability (one of the results " "of the experimental ABC language). Consider this::" @@ -1446,11 +1372,11 @@ msgstr "" "Le deux-points est principalement nécessaires pour améliorer la lisibilité " "(l'un des résultats du langage expérimental ABC). Considérez ceci ::" -#: ../Doc/faq/design.rst:761 +#: ../Doc/faq/design.rst:710 msgid "versus ::" msgstr "versus ::" -#: ../Doc/faq/design.rst:766 +#: ../Doc/faq/design.rst:715 msgid "" "Notice how the second one is slightly easier to read. Notice further how a " "colon sets off the example in this FAQ answer; it's a standard usage in " @@ -1460,7 +1386,7 @@ msgstr "" "aussi comment un deux-points introduit l'exemple dans cette réponse à la " "FAQ ; c'est un usage standard en anglais." -#: ../Doc/faq/design.rst:769 +#: ../Doc/faq/design.rst:718 msgid "" "Another minor reason is that the colon makes it easier for editors with " "syntax highlighting; they can look for colons to decide when indentation " @@ -1472,12 +1398,12 @@ msgstr "" "pour décider quand l'indentation doit être augmentée au lieu d'avoir à faire " "une analyse plus élaborée du texte du programme." -#: ../Doc/faq/design.rst:775 +#: ../Doc/faq/design.rst:724 msgid "Why does Python allow commas at the end of lists and tuples?" msgstr "" "Pourquoi Python permet-il les virgules à la fin des listes et des tuples ?" -#: ../Doc/faq/design.rst:777 +#: ../Doc/faq/design.rst:726 msgid "" "Python lets you add a trailing comma at the end of lists, tuples, and " "dictionaries::" @@ -1485,11 +1411,11 @@ msgstr "" "Python vous permet d'ajouter une virgule à la fin des listes, des tuples et " "des dictionnaires ::" -#: ../Doc/faq/design.rst:788 +#: ../Doc/faq/design.rst:737 msgid "There are several reasons to allow this." msgstr "Il y a plusieurs raisons d'accepter cela." -#: ../Doc/faq/design.rst:790 +#: ../Doc/faq/design.rst:739 msgid "" "When you have a literal value for a list, tuple, or dictionary spread across " "multiple lines, it's easier to add more elements because you don't have to " @@ -1502,7 +1428,7 @@ msgstr "" "virgule à la ligne précédente. Les lignes peuvent aussi être réorganisées " "sans créer une erreur de syntaxe." -#: ../Doc/faq/design.rst:795 +#: ../Doc/faq/design.rst:744 msgid "" "Accidentally omitting the comma can lead to errors that are hard to " "diagnose. For example::" @@ -1510,7 +1436,7 @@ msgstr "" "L'omission accidentelle de la virgule peut entraîner des erreurs difficiles " "à diagnostiquer, par exemple ::" -#: ../Doc/faq/design.rst:805 +#: ../Doc/faq/design.rst:754 msgid "" "This list looks like it has four elements, but it actually contains three: " "\"fee\", \"fiefoo\" and \"fum\". Always adding the comma avoids this source " @@ -1520,9 +1446,89 @@ msgstr "" "trois : \"*fee*\", \"*fiefoo*\" et \"*fum*\". Toujours ajouter la virgule " "permet d'éviter cette source d'erreur." -#: ../Doc/faq/design.rst:808 +#: ../Doc/faq/design.rst:757 msgid "" "Allowing the trailing comma may also make programmatic code generation " "easier." msgstr "" "Permettre la virgule de fin peut également faciliter la génération de code." + +#~ msgid "" +#~ "Many people used to C or Perl complain that they want to use this C idiom:" +#~ msgstr "" +#~ "De nombreuses personnes habituées à C ou Perl se plaignent de vouloir " +#~ "utiliser cet idiome C :" + +#~ msgid "where in Python you're forced to write this::" +#~ msgstr "où en Python vous êtes forcé à écrire ceci ::" + +#~ msgid "" +#~ "The reason for not allowing assignment in Python expressions is a common, " +#~ "hard-to-find bug in those other languages, caused by this construct:" +#~ msgstr "" +#~ "La raison pour ne pas autoriser l'assignation dans les expressions en " +#~ "Python est un bug fréquent, et difficile à trouver dans ces autres " +#~ "langages, causé par cette construction :" + +#~ msgid "" +#~ "The error is a simple typo: ``x = 0``, which assigns 0 to the variable " +#~ "``x``, was written while the comparison ``x == 0`` is certainly what was " +#~ "intended." +#~ msgstr "" +#~ "Cette erreur est une simple coquille : ``x = 0``, qui assigne 0 à la " +#~ "variable ``x``, a été écrit alors que la comparaison ``x == 0`` est " +#~ "certainement ce qui était souhaité." + +#~ msgid "" +#~ "Many alternatives have been proposed. Most are hacks that save some " +#~ "typing but use arbitrary or cryptic syntax or keywords, and fail the " +#~ "simple criterion for language change proposals: it should intuitively " +#~ "suggest the proper meaning to a human reader who has not yet been " +#~ "introduced to the construct." +#~ msgstr "" +#~ "De nombreuses alternatives ont été proposées. La plupart économisaient " +#~ "quelques touches mais utilisaient des mots clefs ou des syntaxes " +#~ "arbitraires ou cryptiques, et manquaient à la règle que toute proposition " +#~ "de changement de langage devrait respecter : elle doit intuitivement " +#~ "suggérer la bonne signification au lecteur qui n'a pas encore été " +#~ "introduit à cette syntaxe." + +#~ msgid "" +#~ "An interesting phenomenon is that most experienced Python programmers " +#~ "recognize the ``while True`` idiom and don't seem to be missing the " +#~ "assignment in expression construct much; it's only newcomers who express " +#~ "a strong desire to add this to the language." +#~ msgstr "" +#~ "Un phénomène intéressant est que la plupart des programmeurs Python " +#~ "expérimentés reconnaissent l'idiome ``while True`` et ne semblent pas " +#~ "manquer l'assignation dans la construction de l'expression; seuls les " +#~ "nouveaux-venus expriment un fort désir d'ajouter ceci au langage." + +#~ msgid "" +#~ "There's an alternative way of spelling this that seems attractive but is " +#~ "generally less robust than the \"while True\" solution::" +#~ msgstr "" +#~ "Il y a une manière alternative de faire ça qui semble attrayante mais " +#~ "elle est généralement moins robuste que la solution ``while True`` ::" + +#~ msgid "" +#~ "The problem with this is that if you change your mind about exactly how " +#~ "you get the next line (e.g. you want to change it into ``sys.stdin." +#~ "readline()``) you have to remember to change two places in your program " +#~ "-- the second occurrence is hidden at the bottom of the loop." +#~ msgstr "" +#~ "Le problème avec ceci est que si vous changez d'avis sur la manière dont " +#~ "vous allez récupérer la prochaine ligne (ex : vous voulez changer en " +#~ "``sys.stdin.readline()``) vous devez vous souvenir de le changer à deux " +#~ "endroits dans votre programme -- la deuxième occurrence est cachée en bas " +#~ "de la boucle." + +#~ msgid "" +#~ "The best approach is to use iterators, making it possible to loop through " +#~ "objects using the ``for`` statement. For example, :term:`file objects " +#~ "` support the iterator protocol, so you can write simply::" +#~ msgstr "" +#~ "La meilleur approche est d'utiliser les itérateurs, rendant possible de " +#~ "parcourir des objets en utilisant l'instruction ``for``. Par exemple, " +#~ "les :term:`objets fichiers ` gèrent le protocole " +#~ "d'itération, donc vous pouvez simplement écrire ::" diff --git a/faq/programming.po b/faq/programming.po index 78fb6127b..69e47fafe 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-16 10:52+0200\n" "Last-Translator: Antoine Wecxsteen\n" "Language-Team: FRENCH \n" @@ -1206,12 +1206,13 @@ msgstr "" "fonction ?" #: ../Doc/faq/programming.rst:778 +#, fuzzy 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 " "an externally-usable name. Upon calling a function that accepts positional-" "only parameters, arguments are mapped to parameters based solely on their " -"position. For example, :func:`pow` is a function that accepts positional-" +"position. For example, :func:`divmod` is a function that accepts positional-" "only parameters. Its documentation looks like this::" msgstr "" "Une barre oblique dans la liste des arguments d'une fonction indique que les " @@ -1223,26 +1224,26 @@ msgstr "" "que des paramètres uniquement positionnels. Sa documentation est la " "suivante ::" -#: ../Doc/faq/programming.rst:794 +#: ../Doc/faq/programming.rst:791 #, fuzzy msgid "" -"The slash at the end of the parameter list means that all three parameters " -"are positional-only. Thus, calling :func:`pow` with keyword arguments would " +"The slash at the end of the parameter list means that both parameters are " +"positional-only. Thus, calling :func:`divmod` with keyword arguments would " "lead to an error::" msgstr "" "La barre oblique à la fin de la liste des paramètres signifie que les trois " "paramètres sont uniquement positionnels. Et donc, appeler :func:`pow` avec " "des arguments nommés provoque une erreur ::" -#: ../Doc/faq/programming.rst:805 +#: ../Doc/faq/programming.rst:802 msgid "Numbers and strings" msgstr "Nombres et chaînes de caractères" -#: ../Doc/faq/programming.rst:808 +#: ../Doc/faq/programming.rst:805 msgid "How do I specify hexadecimal and octal integers?" msgstr "Comment écrire des entiers hexadécimaux ou octaux ?" -#: ../Doc/faq/programming.rst:810 +#: ../Doc/faq/programming.rst:807 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 " @@ -1252,7 +1253,7 @@ msgstr "" "puis un \"o\" majuscule ou minuscule. Par exemple pour affecter la valeur " "octale \"10\" (8 en décimal) à la variable \"a\", tapez ::" -#: ../Doc/faq/programming.rst:818 +#: ../Doc/faq/programming.rst:815 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 " @@ -1263,11 +1264,11 @@ msgstr "" "peuvent être écrit en majuscules ou en minuscules. Par exemple, dans " "l'interpréteur Python ::" -#: ../Doc/faq/programming.rst:831 +#: ../Doc/faq/programming.rst:828 msgid "Why does -22 // 10 return -3?" msgstr "Pourquoi ``-22 // 10`` donne-t-il ``-3`` ?" -#: ../Doc/faq/programming.rst:833 +#: ../Doc/faq/programming.rst:830 msgid "" "It's primarily driven by the desire that ``i % j`` have the same sign as " "``j``. If you want that, and also want::" @@ -1275,7 +1276,7 @@ msgstr "" "Cela est principalement dû à la volonté que ``i % j`` ait le même signe que " "j. Si vous voulez en plus que ::" -#: ../Doc/faq/programming.rst:838 +#: ../Doc/faq/programming.rst:835 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 " @@ -1285,7 +1286,7 @@ msgstr "" "également que cette égalité soit vérifiée, et donc les compilateurs qui " "tronquent ``i // j`` ont besoin que ``i % j`` ait le même signe que ``i``." -#: ../Doc/faq/programming.rst:842 +#: ../Doc/faq/programming.rst:839 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 " @@ -1299,11 +1300,11 @@ msgstr "" "10h maintenant, qu'affichait-elle il y a 200 heures ? ``-190 % 12 == 2`` est " "utile ; ``-190 % 12 == -10`` est un bogue en puissance." -#: ../Doc/faq/programming.rst:850 +#: ../Doc/faq/programming.rst:847 msgid "How do I convert a string to a number?" msgstr "Comment convertir une chaîne de caractères en nombre ?" -#: ../Doc/faq/programming.rst:852 +#: ../Doc/faq/programming.rst:849 msgid "" "For integers, use the built-in :func:`int` type constructor, e.g. " "``int('144') == 144``. Similarly, :func:`float` converts to floating-point, " @@ -1313,7 +1314,7 @@ msgstr "" "``int('144') == 144``. De façon similaire, :func:`float` donne la valeur " "flottante, par exemple ``float('144') == 144.0``." -#: ../Doc/faq/programming.rst:856 +#: ../Doc/faq/programming.rst:853 msgid "" "By default, these interpret the number as decimal, so that ``int('0144') == " "144`` and ``int('0x144')`` raises :exc:`ValueError`. ``int(string, base)`` " @@ -1329,7 +1330,7 @@ msgstr "" "donnée est 0, le nombre est interprété selon les règles Python : un préfixe " "``0o`` indique de l'octal et ``0x`` indique de l'hexadécimal." -#: ../Doc/faq/programming.rst:862 +#: ../Doc/faq/programming.rst:859 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 " @@ -1345,7 +1346,7 @@ msgstr "" "pourrait passer ``__import__('os').system(\"rm -rf $HOME\")`` ce qui " "effacerait votre répertoire personnel." -#: ../Doc/faq/programming.rst:869 +#: ../Doc/faq/programming.rst:866 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 " @@ -1356,11 +1357,11 @@ msgstr "" "parce que Python ne permet pas les '0' en tête d'un nombre décimal (à " "l'exception du nombre '0')." -#: ../Doc/faq/programming.rst:875 +#: ../Doc/faq/programming.rst:872 msgid "How do I convert a number to a string?" msgstr "Comment convertir un nombre en chaîne de caractères ?" -#: ../Doc/faq/programming.rst:877 +#: ../Doc/faq/programming.rst:874 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, " @@ -1377,11 +1378,11 @@ msgstr "" "`formatstrings`, e.g. ``\"{:04d}\".format(144)`` produit ``'0144'`` et ``" "\"{:.3f}\".format(1.0/3.0)`` produit ``'0.333'``." -#: ../Doc/faq/programming.rst:886 +#: ../Doc/faq/programming.rst:883 msgid "How do I modify a string in place?" msgstr "Comment modifier une chaîne de caractères « sur place » ?" -#: ../Doc/faq/programming.rst:888 +#: ../Doc/faq/programming.rst:885 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 " @@ -1395,17 +1396,17 @@ msgstr "" "capable de modifier de la donnée Unicode « sur place », essayez d'utiliser " "un objet :class:`io.StringIO` ou le module :mod:`array` ::" -#: ../Doc/faq/programming.rst:918 +#: ../Doc/faq/programming.rst:915 msgid "How do I use strings to call functions/methods?" msgstr "" "Comment utiliser des chaînes de caractères pour appeler des fonctions/" "méthodes?" -#: ../Doc/faq/programming.rst:920 +#: ../Doc/faq/programming.rst:917 msgid "There are various techniques." msgstr "Il y a plusieurs façons de faire." -#: ../Doc/faq/programming.rst:922 +#: ../Doc/faq/programming.rst:919 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 " @@ -1418,11 +1419,11 @@ msgstr "" "fonctions. C'est aussi la façon principale d'imiter la construction \"case" "\" ::" -#: ../Doc/faq/programming.rst:937 +#: ../Doc/faq/programming.rst:934 msgid "Use the built-in function :func:`getattr`::" msgstr "Utiliser la fonction :func:`getattr` ::" -#: ../Doc/faq/programming.rst:942 +#: ../Doc/faq/programming.rst:939 msgid "" "Note that :func:`getattr` works on any object, including classes, class " "instances, modules, and so on." @@ -1430,19 +1431,19 @@ 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:945 +#: ../Doc/faq/programming.rst:942 msgid "This is used in several places in the standard library, like this::" msgstr "" "Ceci est utilisé à plusieurs reprises dans la bibliothèque standard, de " "cette façon ::" -#: ../Doc/faq/programming.rst:958 +#: ../Doc/faq/programming.rst:955 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 la " "fonction ::" -#: ../Doc/faq/programming.rst:971 +#: ../Doc/faq/programming.rst:968 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 " @@ -1453,7 +1454,7 @@ msgstr "" "pourrait passer une chaîne de caractères pouvant appeler n'importe quelle " "fonction." -#: ../Doc/faq/programming.rst:976 +#: ../Doc/faq/programming.rst:973 msgid "" "Is there an equivalent to Perl's chomp() for removing trailing newlines from " "strings?" @@ -1461,7 +1462,7 @@ msgstr "" "Existe-t-il un équivalent à la fonction ``chomp()`` de Perl, pour retirer " "les caractères de fin de ligne d'une chaîne de caractères ?" -#: ../Doc/faq/programming.rst:978 +#: ../Doc/faq/programming.rst:975 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 " @@ -1475,7 +1476,7 @@ msgstr "" "représente plus d'une ligne, avec plusieurs lignes vides, les marqueurs de " "fin de de ligne de chaque ligne vide seront retirés ::" -#: ../Doc/faq/programming.rst:990 +#: ../Doc/faq/programming.rst:987 msgid "" "Since this is typically only desired when reading text one line at a time, " "using ``S.rstrip()`` this way works well." @@ -1483,15 +1484,15 @@ msgstr "" "Vu que cela ne sert presque qu'à lire un texte ligne à ligne, utiliser ``S." "rstrip()`` de cette manière fonctionne correctement." -#: ../Doc/faq/programming.rst:995 +#: ../Doc/faq/programming.rst:992 msgid "Is there a scanf() or sscanf() equivalent?" msgstr "Existe-t-il un équivalent à ``scanf()`` ou ``sscanf()`` ?" -#: ../Doc/faq/programming.rst:997 +#: ../Doc/faq/programming.rst:994 msgid "Not as such." msgstr "Pas exactement." -#: ../Doc/faq/programming.rst:999 +#: ../Doc/faq/programming.rst:996 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 " @@ -1508,7 +1509,7 @@ msgstr "" "paramètre optionnel \"sep\" qui est utile si la ligne utilise autre chose " "que des espaces comme séparateurs." -#: ../Doc/faq/programming.rst:1005 +#: ../Doc/faq/programming.rst:1002 msgid "" "For more complicated input parsing, regular expressions are more powerful " "than C's :c:func:`sscanf` and better suited for the task." @@ -1517,24 +1518,24 @@ msgstr "" "puissantes que la fonction :c:func:`sscanf` de C et mieux adaptées à la " "tâche." -#: ../Doc/faq/programming.rst:1010 +#: ../Doc/faq/programming.rst:1007 msgid "What does 'UnicodeDecodeError' or 'UnicodeEncodeError' error mean?" msgstr "" "Que signifient les erreurs ``UnicodeDecodeError`` ou ``UnicodeEncodeError`` ?" -#: ../Doc/faq/programming.rst:1012 +#: ../Doc/faq/programming.rst:1009 msgid "See the :ref:`unicode-howto`." msgstr "Voir :ref:`unicode-howto`." -#: ../Doc/faq/programming.rst:1016 +#: ../Doc/faq/programming.rst:1013 msgid "Performance" msgstr "Performances" -#: ../Doc/faq/programming.rst:1019 +#: ../Doc/faq/programming.rst:1016 msgid "My program is too slow. How do I speed it up?" msgstr "Mon programme est trop lent. Comment l'accélérer ?" -#: ../Doc/faq/programming.rst:1021 +#: ../Doc/faq/programming.rst:1018 msgid "" "That's a tough one, in general. First, here are a list of things to " "remember before diving further:" @@ -1542,7 +1543,7 @@ msgstr "" "Question difficile en général. Il faut garder en tête les points suivants " "avant d'aller plus loin :" -#: ../Doc/faq/programming.rst:1024 +#: ../Doc/faq/programming.rst:1021 msgid "" "Performance characteristics vary across Python implementations. This FAQ " "focusses on :term:`CPython`." @@ -1550,7 +1551,7 @@ msgstr "" "Les performances varient en fonction des implémentations de Python. Cette " "FAQ ne traite que de :term:`CPython`." -#: ../Doc/faq/programming.rst:1026 +#: ../Doc/faq/programming.rst:1023 msgid "" "Behaviour can vary across operating systems, especially when talking about I/" "O or multi-threading." @@ -1559,7 +1560,7 @@ msgstr "" "tout particulièrement quand il s'agit d'entrée/sortie ou de fils d'exécution " "multiples." -#: ../Doc/faq/programming.rst:1028 +#: ../Doc/faq/programming.rst:1025 msgid "" "You should always find the hot spots in your program *before* attempting to " "optimize any code (see the :mod:`profile` module)." @@ -1568,7 +1569,7 @@ msgstr "" "programme *avant* d'essayer d'optimiser du code (voir le module :mod:" "`profile`)." -#: ../Doc/faq/programming.rst:1030 +#: ../Doc/faq/programming.rst:1027 msgid "" "Writing benchmark scripts will allow you to iterate quickly when searching " "for improvements (see the :mod:`timeit` module)." @@ -1576,7 +1577,7 @@ msgstr "" "Écrire des scripts d'évaluation de performances permet de progresser " "rapidement dans la recherche d'améliorations (voir le module :mod:`timeit`)." -#: ../Doc/faq/programming.rst:1032 +#: ../Doc/faq/programming.rst:1029 msgid "" "It is highly recommended to have good code coverage (through unit testing or " "any other technique) before potentially introducing regressions hidden in " @@ -1586,7 +1587,7 @@ msgstr "" "des tests unitaires ou autre) avant d'ajouter des erreurs dans des " "optimisations sophistiquées." -#: ../Doc/faq/programming.rst:1036 +#: ../Doc/faq/programming.rst:1033 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 " @@ -1596,7 +1597,7 @@ msgstr "" "Voici quelques principes généraux qui peuvent aider à atteindre des niveaux " "de performance satisfaisants :" -#: ../Doc/faq/programming.rst:1040 +#: ../Doc/faq/programming.rst:1037 msgid "" "Making your algorithms faster (or changing to faster ones) can yield much " "larger benefits than trying to sprinkle micro-optimization tricks all over " @@ -1606,7 +1607,7 @@ msgstr "" "produire de bien meilleurs résultats que d'optimiser ça et là de petites " "portions du code." -#: ../Doc/faq/programming.rst:1044 +#: ../Doc/faq/programming.rst:1041 msgid "" "Use the right data structures. Study documentation for the :ref:`bltin-" "types` and the :mod:`collections` module." @@ -1614,7 +1615,7 @@ msgstr "" "Utiliser les structures de données adaptées. Se référer à la documentation " "des :ref:`bltin-types` et du module :mod:`collections`." -#: ../Doc/faq/programming.rst:1047 +#: ../Doc/faq/programming.rst:1044 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 " @@ -1633,7 +1634,7 @@ msgstr "" "référer à la section :ref:`sortinghowto` pour des exemples d'utilisation " "courante)." -#: ../Doc/faq/programming.rst:1055 +#: ../Doc/faq/programming.rst:1052 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, " @@ -1647,7 +1648,7 @@ msgstr "" "éviter trop d'indirections, en particulier sous la forme de fonctions ou " "méthodes trop petites (qui nuisent aussi souvent à la clarté du code)." -#: ../Doc/faq/programming.rst:1061 +#: ../Doc/faq/programming.rst:1058 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 " @@ -1668,7 +1669,7 @@ msgstr "" "vous pouvez aussi :ref:`écrire un module d'extension en C` " "vous-même." -#: ../Doc/faq/programming.rst:1071 +#: ../Doc/faq/programming.rst:1068 msgid "" "The wiki page devoted to `performance tips `_." @@ -1676,13 +1677,13 @@ msgstr "" "La page wiki dédiée aux `astuces de performance `_." -#: ../Doc/faq/programming.rst:1077 +#: ../Doc/faq/programming.rst:1074 msgid "What is the most efficient way to concatenate many strings together?" msgstr "" "Quelle est la manière la plus efficace de concaténer un grand nombre de " "chaînes de caractères ?" -#: ../Doc/faq/programming.rst:1079 +#: ../Doc/faq/programming.rst:1076 msgid "" ":class:`str` and :class:`bytes` objects are immutable, therefore " "concatenating many strings together is inefficient as each concatenation " @@ -1695,7 +1696,7 @@ msgstr "" "général, la complexité est quadratique par rapport à la taille totale de la " "chaîne." -#: ../Doc/faq/programming.rst:1084 +#: ../Doc/faq/programming.rst:1081 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::" @@ -1704,13 +1705,13 @@ msgstr "" "recommandée consiste à toutes les mettre dans une liste et appeler la " "méthode :meth:`str.join` à la fin ::" -#: ../Doc/faq/programming.rst:1092 +#: ../Doc/faq/programming.rst:1089 msgid "(another reasonably efficient idiom is to use :class:`io.StringIO`)" msgstr "" "(une autre technique relativement efficace consiste à utiliser :class:`io." "StringIO`)" -#: ../Doc/faq/programming.rst:1094 +#: ../Doc/faq/programming.rst:1091 msgid "" "To accumulate many :class:`bytes` objects, the recommended idiom is to " "extend a :class:`bytearray` object using in-place concatenation (the ``+=`` " @@ -1720,15 +1721,15 @@ msgstr "" "recommandée consiste à étendre un objet :class:`bytearray` en utilisant la " "concaténation en-place (l'opérateur ``+=``) ::" -#: ../Doc/faq/programming.rst:1103 +#: ../Doc/faq/programming.rst:1100 msgid "Sequences (Tuples/Lists)" msgstr "Séquences (n-uplets / listes)" -#: ../Doc/faq/programming.rst:1106 +#: ../Doc/faq/programming.rst:1103 msgid "How do I convert between tuples and lists?" msgstr "Comment convertir les listes en n-uplets et inversement ?" -#: ../Doc/faq/programming.rst:1108 +#: ../Doc/faq/programming.rst:1105 msgid "" "The type constructor ``tuple(seq)`` converts any sequence (actually, any " "iterable) into a tuple with the same items in the same order." @@ -1737,7 +1738,7 @@ msgstr "" "précisément, tout itérable) en un n-uplet avec les mêmes éléments dans le " "même ordre." -#: ../Doc/faq/programming.rst:1111 +#: ../Doc/faq/programming.rst:1108 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 " @@ -1750,7 +1751,7 @@ msgstr "" "fonction économique à appeler quand vous ne savez pas si votre objet est " "déjà un n-uplet." -#: ../Doc/faq/programming.rst:1116 +#: ../Doc/faq/programming.rst:1113 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, " @@ -1763,11 +1764,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:1123 +#: ../Doc/faq/programming.rst:1120 msgid "What's a negative index?" msgstr "Qu'est-ce qu'un index négatif ?" -#: ../Doc/faq/programming.rst:1125 +#: ../Doc/faq/programming.rst:1122 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 " @@ -1781,7 +1782,7 @@ msgstr "" "dernier 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:1130 +#: ../Doc/faq/programming.rst:1127 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 " @@ -1792,18 +1793,18 @@ msgstr "" "caractère, ce qui est pratique pour retirer un caractère de fin de ligne à " "la fin d'une chaîne." -#: ../Doc/faq/programming.rst:1136 +#: ../Doc/faq/programming.rst:1133 msgid "How do I iterate over a sequence in reverse order?" msgstr "Comment itérer à rebours sur une séquence ?" -#: ../Doc/faq/programming.rst:1138 +#: ../Doc/faq/programming.rst:1135 msgid "" "Use the :func:`reversed` built-in function, which is new in Python 2.4::" msgstr "" "Utilisez la fonction native :func:`reversed`, qui a été introduite en Python " "2.4 ::" -#: ../Doc/faq/programming.rst:1143 +#: ../Doc/faq/programming.rst:1140 msgid "" "This won't touch your original sequence, but build a new copy with reversed " "order to iterate over." @@ -1811,25 +1812,25 @@ msgstr "" "Cela ne modifie pas la séquence initiale, mais construit à la place une " "copie en ordre inverse pour itérer dessus." -#: ../Doc/faq/programming.rst:1146 +#: ../Doc/faq/programming.rst:1143 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:1153 +#: ../Doc/faq/programming.rst:1150 msgid "How do you remove duplicates from a list?" msgstr "Comment retirer les doublons d'une liste ?" -#: ../Doc/faq/programming.rst:1155 +#: ../Doc/faq/programming.rst:1152 msgid "See the Python Cookbook for a long discussion of many ways to do this:" msgstr "" "Lisez le « livre de recettes » Python pour trouver une longue discussion sur " "les nombreuses approches possibles :" -#: ../Doc/faq/programming.rst:1157 +#: ../Doc/faq/programming.rst:1154 msgid "https://code.activestate.com/recipes/52560/" msgstr "https://code.activestate.com/recipes/52560/" -#: ../Doc/faq/programming.rst:1159 +#: ../Doc/faq/programming.rst:1156 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::" @@ -1838,7 +1839,7 @@ msgstr "" "celle-ci, puis parcourez-la d'un bout à l'autre, en supprimant les doublons " "trouvés en chemin ::" -#: ../Doc/faq/programming.rst:1171 +#: ../Doc/faq/programming.rst:1168 msgid "" "If all elements of the list may be used as set keys (i.e. they are all :term:" "`hashable`) this is often faster ::" @@ -1847,7 +1848,7 @@ msgstr "" "dictionnaire (c'est à dire, qu'elles sont toutes :term:`hachables " "`) ceci est souvent plus rapide ::" -#: ../Doc/faq/programming.rst:1176 +#: ../Doc/faq/programming.rst:1173 msgid "" "This converts the list into a set, thereby removing duplicates, and then " "back into a list." @@ -1855,15 +1856,15 @@ msgstr "" "Ceci convertit la liste en un ensemble, ce qui supprime automatiquement les " "doublons, puis la transforme à nouveau en liste." -#: ../Doc/faq/programming.rst:1181 +#: ../Doc/faq/programming.rst:1178 msgid "How do you make an array in Python?" msgstr "Comment construire un tableau en Python ?" -#: ../Doc/faq/programming.rst:1183 +#: ../Doc/faq/programming.rst:1180 msgid "Use a list::" msgstr "Utilisez une liste ::" -#: ../Doc/faq/programming.rst:1187 +#: ../Doc/faq/programming.rst:1184 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 " @@ -1873,7 +1874,7 @@ msgstr "" "principale différence est qu'une liste Python peut contenir des objets de " "différents types." -#: ../Doc/faq/programming.rst:1190 +#: ../Doc/faq/programming.rst:1187 msgid "" "The ``array`` module also provides methods for creating arrays of fixed " "types with compact representations, but they are slower to index than " @@ -1886,14 +1887,14 @@ msgstr "" "fournissent différentes structures de type tableaux, avec des " "caractéristiques différentes." -#: ../Doc/faq/programming.rst:1195 +#: ../Doc/faq/programming.rst:1192 msgid "" "To get Lisp-style linked lists, you can emulate cons cells using tuples::" msgstr "" "Pour obtenir des listes chaînées à la sauce Lisp, vous pouvez émuler les " "*cons cells* en utilisant des n-uplets ::" -#: ../Doc/faq/programming.rst:1199 +#: ../Doc/faq/programming.rst:1196 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 " @@ -1906,27 +1907,27 @@ msgstr "" "ceci que si vous êtes réellement sûr d'en avoir besoin, cette méthode est en " "général bien plus lente que les listes Python." -#: ../Doc/faq/programming.rst:1208 +#: ../Doc/faq/programming.rst:1205 msgid "How do I create a multidimensional list?" msgstr "Comment créer une liste à plusieurs dimensions ?" -#: ../Doc/faq/programming.rst:1210 +#: ../Doc/faq/programming.rst:1207 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:1214 +#: ../Doc/faq/programming.rst:1211 msgid "This looks correct if you print it:" msgstr "Elle semble correcte si on l'affiche :" -#: ../Doc/faq/programming.rst:1225 +#: ../Doc/faq/programming.rst:1222 msgid "But when you assign a value, it shows up in multiple places:" msgstr "" "Mais quand vous affectez une valeur, celle-ci apparaît à plusieurs " "endroits ::" -#: ../Doc/faq/programming.rst:1237 +#: ../Doc/faq/programming.rst:1234 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 " @@ -1939,7 +1940,7 @@ msgstr "" "dans une colonne apparaîtra donc dans toutes les colonnes, ce qui n'est très " "probablement pas ce que vous souhaitiez." -#: ../Doc/faq/programming.rst:1242 +#: ../Doc/faq/programming.rst:1239 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::" @@ -1947,7 +1948,7 @@ msgstr "" "L'approche suggérée est d'abord de créer une liste de la longueur désirée, " "puis de remplir tous les éléments avec une nouvelle chaîne ::" -#: ../Doc/faq/programming.rst:1249 +#: ../Doc/faq/programming.rst:1246 msgid "" "This generates a list containing 3 different lists of length two. You can " "also use a list comprehension::" @@ -1956,7 +1957,7 @@ msgstr "" "longueur deux. Vous pouvez aussi utiliser la syntaxe des listes en " "compréhension ::" -#: ../Doc/faq/programming.rst:1255 +#: ../Doc/faq/programming.rst:1252 msgid "" "Or, you can use an extension that provides a matrix datatype; `NumPy `_ is the best known." @@ -1964,22 +1965,22 @@ msgstr "" "Vous pouvez aussi utiliser une extension qui fournit un type matriciel " "natif ; `NumPy `_ est la plus répandue." -#: ../Doc/faq/programming.rst:1260 +#: ../Doc/faq/programming.rst:1257 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:1262 +#: ../Doc/faq/programming.rst:1259 msgid "Use a list comprehension::" msgstr "Utilisez une liste en compréhension ::" -#: ../Doc/faq/programming.rst:1269 +#: ../Doc/faq/programming.rst:1266 msgid "" "Why does a_tuple[i] += ['item'] raise an exception when the addition works?" msgstr "" "Pourquoi a_tuple[i] += ['item'] lève-t'il une exception alors que " "l'addition fonctionne ?" -#: ../Doc/faq/programming.rst:1271 +#: ../Doc/faq/programming.rst:1268 msgid "" "This is because of a combination of the fact that augmented assignment " "operators are *assignment* operators, and the difference between mutable and " @@ -1989,7 +1990,7 @@ msgstr "" "d'affectation incrémentaux sont des opérateurs d'*affectation* et à la " "différence entre les objets muables et immuables en Python." -#: ../Doc/faq/programming.rst:1275 +#: ../Doc/faq/programming.rst:1272 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 " @@ -1999,11 +2000,11 @@ msgstr "" "incrémentale sont appliqués aux élément d'un n-uplet qui pointe sur des " "objets muables, mais on prendra ``list`` et ``+=`` comme exemple." -#: ../Doc/faq/programming.rst:1279 +#: ../Doc/faq/programming.rst:1276 msgid "If you wrote::" msgstr "Si vous écrivez ::" -#: ../Doc/faq/programming.rst:1287 +#: ../Doc/faq/programming.rst:1284 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, " @@ -2017,7 +2018,7 @@ msgstr "" "l'élément ``0`` du n-uplet, on obtient une erreur car il est impossible de " "modifier la cible sur laquelle pointe un élément d'un n-uplet." -#: ../Doc/faq/programming.rst:1293 +#: ../Doc/faq/programming.rst:1290 msgid "" "Under the covers, what this augmented assignment statement is doing is " "approximately this::" @@ -2025,7 +2026,7 @@ msgstr "" "Sous le capot, une instruction d'affectation incrémentale fait à peu près " "ceci :" -#: ../Doc/faq/programming.rst:1302 +#: ../Doc/faq/programming.rst:1299 msgid "" "It is the assignment part of the operation that produces the error, since a " "tuple is immutable." @@ -2033,11 +2034,11 @@ msgstr "" "C'est la partie de l'affectation de l'opération qui génère l'erreur, vu " "qu'un n-uplet est immuable." -#: ../Doc/faq/programming.rst:1305 +#: ../Doc/faq/programming.rst:1302 msgid "When you write something like::" msgstr "Quand vous écrivez un code du style :" -#: ../Doc/faq/programming.rst:1313 +#: ../Doc/faq/programming.rst:1310 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::" @@ -2045,7 +2046,7 @@ msgstr "" "L'exception est un peu plus surprenante et, chose encore plus étrange, " "malgré l'erreur, l'ajout a fonctionné ::" -#: ../Doc/faq/programming.rst:1319 +#: ../Doc/faq/programming.rst:1316 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 " @@ -2062,11 +2063,11 @@ msgstr "" "renvoyer celle-ci. C'est pour cette raison que l'on dit que pour les listes, " "``+=`` est un \"raccourci\" pour ``list.extend``::" -#: ../Doc/faq/programming.rst:1331 +#: ../Doc/faq/programming.rst:1328 msgid "This is equivalent to::" msgstr "C’est équivalent à ::" -#: ../Doc/faq/programming.rst:1336 +#: ../Doc/faq/programming.rst:1333 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 " @@ -2078,13 +2079,13 @@ msgstr "" "change rien, puisque c'est un pointeur vers le même objet que sur lequel " "pointait ``a_list``, mais l'affectation a tout de même lieu." -#: ../Doc/faq/programming.rst:1341 +#: ../Doc/faq/programming.rst:1338 msgid "Thus, in our tuple example what is happening is equivalent to::" msgstr "" "Donc, dans notre exemple avec un n-uplet, il se passe quelque chose " "équivalent à ::" -#: ../Doc/faq/programming.rst:1349 +#: ../Doc/faq/programming.rst:1346 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, " @@ -2095,7 +2096,7 @@ msgstr "" "``result`` pointe sur le même objet que ``a_tuple[0]``, l'affectation finale " "échoue car les n-uplets ne sont pas muables." -#: ../Doc/faq/programming.rst:1355 +#: ../Doc/faq/programming.rst:1352 msgid "" "I want to do a complicated sort: can you do a Schwartzian Transform in " "Python?" @@ -2103,7 +2104,7 @@ msgstr "" "Je souhaite faire un classement compliqué : peut on faire une transformation " "de Schwartz en Python ?" -#: ../Doc/faq/programming.rst:1357 +#: ../Doc/faq/programming.rst:1354 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 " @@ -2115,11 +2116,11 @@ msgstr "" "chaque élément à sa \"valeur de tri\". En Python, ceci est géré par " "l'argument ``key`` de la méthode :meth:`list.sort` ::" -#: ../Doc/faq/programming.rst:1366 +#: ../Doc/faq/programming.rst:1363 msgid "How can I sort one list by values from another list?" msgstr "Comment ordonner une liste en fonction des valeurs d'une autre liste ?" -#: ../Doc/faq/programming.rst:1368 +#: ../Doc/faq/programming.rst:1365 msgid "" "Merge them into an iterator of tuples, sort the resulting list, and then " "pick out the element you want. ::" @@ -2127,11 +2128,11 @@ msgstr "" "Fusionnez-les dans un itérateur de n-uplets, ordonnez la liste obtenue, puis " "choisissez l'élément que vous voulez ::" -#: ../Doc/faq/programming.rst:1382 +#: ../Doc/faq/programming.rst:1379 msgid "An alternative for the last step is::" msgstr "Vous pouvez remplacer la dernière étape par ::" -#: ../Doc/faq/programming.rst:1387 +#: ../Doc/faq/programming.rst:1384 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 " @@ -2151,15 +2152,15 @@ msgstr "" "supplémentaire à un attribut et, enfin, parce que tous ces appels de " "fonctions réduisent la vitesse d'exécution." -#: ../Doc/faq/programming.rst:1397 +#: ../Doc/faq/programming.rst:1394 msgid "Objects" msgstr "Objets" -#: ../Doc/faq/programming.rst:1400 +#: ../Doc/faq/programming.rst:1397 msgid "What is a class?" msgstr "Qu'est-ce qu'une classe?" -#: ../Doc/faq/programming.rst:1402 +#: ../Doc/faq/programming.rst:1399 msgid "" "A class is the particular object type created by executing a class " "statement. Class objects are used as templates to create instance objects, " @@ -2171,7 +2172,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:1406 +#: ../Doc/faq/programming.rst:1403 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. " @@ -2189,11 +2190,11 @@ msgstr "" "``MaildirMailbox``, ``OutlookMailbox`` qui gèrent les plusieurs formats " "spécifiques de boîtes aux lettres." -#: ../Doc/faq/programming.rst:1415 +#: ../Doc/faq/programming.rst:1412 msgid "What is a method?" msgstr "Qu'est-ce qu'une méthode ?" -#: ../Doc/faq/programming.rst:1417 +#: ../Doc/faq/programming.rst:1414 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 " @@ -2203,11 +2204,11 @@ msgstr "" "générale sous la forme ``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:1427 +#: ../Doc/faq/programming.rst:1424 msgid "What is self?" msgstr "Qu'est-ce que self ?" -#: ../Doc/faq/programming.rst:1429 +#: ../Doc/faq/programming.rst:1426 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, " @@ -2220,11 +2221,11 @@ msgstr "" "est définie ; tout se passe comme si la méthode était appelée comme " "``meth(x, a, b, c)``." -#: ../Doc/faq/programming.rst:1434 +#: ../Doc/faq/programming.rst:1431 msgid "See also :ref:`why-self`." msgstr "Voir aussi :ref:`why-self`." -#: ../Doc/faq/programming.rst:1438 +#: ../Doc/faq/programming.rst:1435 msgid "" "How do I check if an object is an instance of a given class or of a subclass " "of it?" @@ -2232,7 +2233,7 @@ msgstr "" "Comment vérifier si un objet est une instance d'une classe donnée ou d'une " "sous-classe de celle-ci ?" -#: ../Doc/faq/programming.rst:1440 +#: ../Doc/faq/programming.rst:1437 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 " @@ -2247,7 +2248,7 @@ msgstr "" "l'un des types natifs de Python, par exemple ``isinstance(obj, str)`` ou " "``isinstance(obj, (int, float, complex))``." -#: ../Doc/faq/programming.rst:1446 +#: ../Doc/faq/programming.rst:1443 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 " @@ -2263,7 +2264,7 @@ msgstr "" "plutôt que de vérifier la classe de l'objet et de faire un traitement ad-" "hoc. Par exemple, si vous avez une fonction qui fait quelque chose ::" -#: ../Doc/faq/programming.rst:1460 +#: ../Doc/faq/programming.rst:1457 msgid "" "A better approach is to define a ``search()`` method on all the classes and " "just call it::" @@ -2271,11 +2272,11 @@ msgstr "" "Une meilleure approche est de définir une méthode ``search()`` dans toutes " "les classes et qu'il suffit d'appeler de la manière suivante ::" -#: ../Doc/faq/programming.rst:1475 +#: ../Doc/faq/programming.rst:1472 msgid "What is delegation?" msgstr "Qu'est-ce que la délégation ?" -#: ../Doc/faq/programming.rst:1477 +#: ../Doc/faq/programming.rst:1474 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 " @@ -2290,7 +2291,7 @@ msgstr "" "dans l'évolution et qui délègue toute autre méthode à la méthode " "correspondante de ``x``." -#: ../Doc/faq/programming.rst:1483 +#: ../Doc/faq/programming.rst:1480 msgid "" "Python programmers can easily implement delegation. For example, the " "following class implements a class that behaves like a file but converts all " @@ -2300,7 +2301,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:1498 +#: ../Doc/faq/programming.rst:1495 msgid "" "Here the ``UpperOut`` class redefines the ``write()`` method to convert the " "argument string to uppercase before calling the underlying ``self.__outfile." @@ -2316,7 +2317,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:1505 +#: ../Doc/faq/programming.rst:1502 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:" @@ -2330,7 +2331,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:1516 +#: ../Doc/faq/programming.rst:1513 msgid "" "Most :meth:`__setattr__` implementations must modify ``self.__dict__`` to " "store local state for self without causing an infinite recursion." @@ -2339,7 +2340,7 @@ msgstr "" "``self.__dict__`` pour stocker l'état locale de self sans provoquer une " "récursion infinie." -#: ../Doc/faq/programming.rst:1521 +#: ../Doc/faq/programming.rst:1518 msgid "" "How do I call a method defined in a base class from a derived class that " "overrides it?" @@ -2347,11 +2348,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:1523 +#: ../Doc/faq/programming.rst:1520 msgid "Use the built-in :func:`super` function::" msgstr "Utilisez la fonction native :func:`super` ::" -#: ../Doc/faq/programming.rst:1529 +#: ../Doc/faq/programming.rst:1526 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 " @@ -2366,13 +2367,13 @@ msgstr "" "arguments...)``. Ici, ``Base.meth`` est une méthode non liée, il faut donc " "fournir l'argument ``self``." -#: ../Doc/faq/programming.rst:1537 +#: ../Doc/faq/programming.rst:1534 msgid "How can I organize my code to make it easier to change the base class?" msgstr "" "Comment organiser un code pour permettre de changer la classe de base plus " "facilement ?" -#: ../Doc/faq/programming.rst:1539 +#: ../Doc/faq/programming.rst:1536 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. " @@ -2388,13 +2389,13 @@ msgstr "" "vous voulez déterminer dynamiquement (par exemple en fonction de la " "disponibilité des ressources) la classe de base à utiliser. Exemple ::" -#: ../Doc/faq/programming.rst:1554 +#: ../Doc/faq/programming.rst:1551 msgid "How do I create static class data and static class methods?" msgstr "" "Comment créer des données statiques de classe et des méthodes statiques de " "classe ?" -#: ../Doc/faq/programming.rst:1556 +#: ../Doc/faq/programming.rst:1553 msgid "" "Both static data and static methods (in the sense of C++ or Java) are " "supported in Python." @@ -2402,7 +2403,7 @@ msgstr "" "Les données statiques et les méthodes statiques (au sens C++ ou Java) sont " "prises en charge en Python." -#: ../Doc/faq/programming.rst:1559 +#: ../Doc/faq/programming.rst:1556 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::" @@ -2411,7 +2412,7 @@ msgstr "" "attribuer une nouvelle valeur à l'attribut, vous devez explicitement " "utiliser le nom de classe dans l'affectation ::" -#: ../Doc/faq/programming.rst:1571 +#: ../Doc/faq/programming.rst:1568 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 " @@ -2422,7 +2423,7 @@ msgstr "" "une classe sur le chemin de recherche de classe de base de ``c.__class__`` " "jusqu'à ``C``." -#: ../Doc/faq/programming.rst:1575 +#: ../Doc/faq/programming.rst:1572 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 " @@ -2435,11 +2436,11 @@ msgstr "" "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:1582 +#: ../Doc/faq/programming.rst:1579 msgid "Static methods are possible::" msgstr "Il est possible d'utiliser des méthodes statiques ::" -#: ../Doc/faq/programming.rst:1590 +#: ../Doc/faq/programming.rst:1587 msgid "" "However, a far more straightforward way to get the effect of a static method " "is via a simple module-level function::" @@ -2447,7 +2448,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:1596 +#: ../Doc/faq/programming.rst:1593 msgid "" "If your code is structured so as to define one class (or tightly related " "class hierarchy) per module, this supplies the desired encapsulation." @@ -2456,11 +2457,11 @@ msgstr "" "hiérarchie des classes connexes) par module, ceci fournira l'encapsulation " "souhaitée." -#: ../Doc/faq/programming.rst:1601 +#: ../Doc/faq/programming.rst:1598 msgid "How can I overload constructors (or methods) in Python?" msgstr "Comment surcharger les constructeurs (ou méthodes) en Python ?" -#: ../Doc/faq/programming.rst:1603 +#: ../Doc/faq/programming.rst:1600 msgid "" "This answer actually applies to all methods, but the question usually comes " "up first in the context of constructors." @@ -2468,11 +2469,11 @@ msgstr "" "Cette réponse s'applique en fait à toutes les méthodes, mais la question se " "pose généralement dans le contexte des constructeurs." -#: ../Doc/faq/programming.rst:1606 +#: ../Doc/faq/programming.rst:1603 msgid "In C++ you'd write" msgstr "In C++, on écrirait" -#: ../Doc/faq/programming.rst:1615 +#: ../Doc/faq/programming.rst:1612 msgid "" "In Python you have to write a single constructor that catches all cases " "using default arguments. For example::" @@ -2480,29 +2481,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:1625 +#: ../Doc/faq/programming.rst:1622 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:1627 +#: ../Doc/faq/programming.rst:1624 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:1632 +#: ../Doc/faq/programming.rst:1629 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:1636 +#: ../Doc/faq/programming.rst:1633 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:1638 +#: ../Doc/faq/programming.rst:1635 msgid "" "Variable names with double leading underscores are \"mangled\" to provide a " "simple but effective way to define class private variables. Any identifier " @@ -2518,7 +2519,7 @@ msgstr "" "remplacé par ``_classname__spam``, où ``classname`` est le nom de la classe " "en cours sans les éventuels tirets bas du début." -#: ../Doc/faq/programming.rst:1644 +#: ../Doc/faq/programming.rst:1641 msgid "" "This doesn't guarantee privacy: an outside user can still deliberately " "access the \"_classname__spam\" attribute, and private values are visible in " @@ -2530,17 +2531,17 @@ msgstr "" "privées sont visibles dans l'objet ``__dict__``. De nombreux programmeurs " "Python ne prennent jamais la peine d'utiliser des noms de variable privés." -#: ../Doc/faq/programming.rst:1651 +#: ../Doc/faq/programming.rst:1648 msgid "My class defines __del__ but it is not called when I delete the object." msgstr "" "Ma classe définit ``__del__`` mais elle n'est pas appelée lorsque je " "supprime l'objet." -#: ../Doc/faq/programming.rst:1653 +#: ../Doc/faq/programming.rst:1650 msgid "There are several possible reasons for this." msgstr "Il y a plusieurs explications possibles." -#: ../Doc/faq/programming.rst:1655 +#: ../Doc/faq/programming.rst:1652 msgid "" "The del statement does not necessarily call :meth:`__del__` -- it simply " "decrements the object's reference count, and if this reaches zero :meth:" @@ -2550,7 +2551,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:1659 +#: ../Doc/faq/programming.rst:1656 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 " @@ -2576,7 +2577,7 @@ msgstr "" "miettes avec la fonction :func:`gc.collect`, mais il existe certains cas où " "les objets ne seront jamais nettoyés." -#: ../Doc/faq/programming.rst:1670 +#: ../Doc/faq/programming.rst:1667 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. " @@ -2593,7 +2594,7 @@ msgstr "" "`__del__`devrait appeler la méthode ``close()`` et ``close()`` doit pouvoir " "être appelée plusieurs fois sur le même objet." -#: ../Doc/faq/programming.rst:1677 +#: ../Doc/faq/programming.rst:1674 msgid "" "Another way to avoid cyclical references is to use the :mod:`weakref` " "module, which allows you to point to objects without incrementing their " @@ -2606,7 +2607,7 @@ msgstr "" "d'arbres devraient utiliser des références faibles entre pères et fils (si " "nécessaire !)." -#: ../Doc/faq/programming.rst:1690 +#: ../Doc/faq/programming.rst:1687 msgid "" "Finally, if your :meth:`__del__` method raises an exception, a warning " "message is printed to :data:`sys.stderr`." @@ -2614,11 +2615,11 @@ msgstr "" "Enfin, si la méthode :meth:`__del__` lève une exception, un message " "d'avertissement s'affiche dans :data:`sys.stderr`." -#: ../Doc/faq/programming.rst:1695 +#: ../Doc/faq/programming.rst:1692 msgid "How do I get a list of all instances of a given class?" msgstr "Comment obtenir toutes les instances d'une classe ?" -#: ../Doc/faq/programming.rst:1697 +#: ../Doc/faq/programming.rst:1694 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 " @@ -2629,13 +2630,13 @@ msgstr "" "constructeur de la classe de façon à tenir un tel registre, en maintenant " "une liste de références faibles vers chaque instance." -#: ../Doc/faq/programming.rst:1703 +#: ../Doc/faq/programming.rst:1700 msgid "Why does the result of ``id()`` appear to be not unique?" msgstr "" "Pourquoi le résultat de ``id()`` peut-il être le même pour deux objets " "différents ?" -#: ../Doc/faq/programming.rst:1705 +#: ../Doc/faq/programming.rst:1702 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 " @@ -2649,7 +2650,7 @@ msgstr "" "à une adresse mémoire identique à celle d'un objet venant d'être supprimé. " "Comme l'illustre le code suivant :" -#: ../Doc/faq/programming.rst:1716 +#: ../Doc/faq/programming.rst:1713 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 " @@ -2661,15 +2662,15 @@ msgstr "" "objets dont on veut examiner les identifiants sont toujours en vie, créons " "une nouvelle référence à l'objet :" -#: ../Doc/faq/programming.rst:1729 +#: ../Doc/faq/programming.rst:1726 msgid "Modules" msgstr "Modules" -#: ../Doc/faq/programming.rst:1732 +#: ../Doc/faq/programming.rst:1729 msgid "How do I create a .pyc file?" msgstr "Comment créer des fichiers ``.pyc`` ?" -#: ../Doc/faq/programming.rst:1734 +#: ../Doc/faq/programming.rst:1731 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 " @@ -2687,7 +2688,7 @@ msgstr "" "centrale qui dépend du binaire ``python`` qui l'a créé (voir la :pep:`3147` " "pour de plus amples précisions)." -#: ../Doc/faq/programming.rst:1742 +#: ../Doc/faq/programming.rst:1739 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 " @@ -2702,7 +2703,7 @@ msgstr "" "utilisateur, mais que le code est exécuté en tant qu'un autre utilisateur, " "par exemple pour tester un serveur Web." -#: ../Doc/faq/programming.rst:1747 +#: ../Doc/faq/programming.rst:1744 msgid "" "Unless the :envvar:`PYTHONDONTWRITEBYTECODE` environment variable is set, " "creation of a .pyc file is automatic if you're importing a module and Python " @@ -2716,7 +2717,7 @@ msgstr "" "sous-répertoire, à moins que la variable d'environnement :envvar:" "`PYTHONDONTWRITEBYTECODE` soit définie." -#: ../Doc/faq/programming.rst:1752 +#: ../Doc/faq/programming.rst:1749 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." @@ -2732,7 +2733,7 @@ msgstr "" "console), un fichier ``.pyc`` est créé pour ``xyz`` mais pas pour ``foo`` " "car ``foo.py`` n'est pas importé." -#: ../Doc/faq/programming.rst:1759 +#: ../Doc/faq/programming.rst:1756 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:" @@ -2742,7 +2743,7 @@ msgstr "" "``.pyc`` pour un module qui n'est pas importé — il existe les modules :mod:" "`py_compile` et :mod:`compileall`." -#: ../Doc/faq/programming.rst:1763 +#: ../Doc/faq/programming.rst:1760 msgid "" "The :mod:`py_compile` module can manually compile any module. One way is to " "use the ``compile()`` function in that module interactively::" @@ -2751,7 +2752,7 @@ msgstr "" "manuellement. Il est ainsi possible d'appeler la fonction ``compile()`` de " "manière interactive :" -#: ../Doc/faq/programming.rst:1769 +#: ../Doc/faq/programming.rst:1766 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 " @@ -2761,7 +2762,7 @@ msgstr "" "de ``foo.py`` (le paramètre optionnel ``cfile`` permet de changer ce " "comportement)." -#: ../Doc/faq/programming.rst:1773 +#: ../Doc/faq/programming.rst:1770 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 " @@ -2773,11 +2774,11 @@ msgstr "" "en exécutant ``compileall.py`` avec le chemin du dossier contenant les " "fichiers Python à compiler ::" -#: ../Doc/faq/programming.rst:1782 +#: ../Doc/faq/programming.rst:1779 msgid "How do I find the current module name?" msgstr "Comment obtenir le nom du module actuel ?" -#: ../Doc/faq/programming.rst:1784 +#: ../Doc/faq/programming.rst:1781 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 " @@ -2792,62 +2793,62 @@ msgstr "" "interface en ligne de commande ou un test automatique. Ils n'exécutent cette " "portion du code qu'après avoir vérifié la valeur de ``__name__``::" -#: ../Doc/faq/programming.rst:1799 +#: ../Doc/faq/programming.rst:1796 msgid "How can I have modules that mutually import each other?" msgstr "Comment avoir des modules qui s'importent mutuellement ?" -#: ../Doc/faq/programming.rst:1801 +#: ../Doc/faq/programming.rst:1798 msgid "Suppose you have the following modules:" msgstr "Considérons les modules suivants :" -#: ../Doc/faq/programming.rst:1803 +#: ../Doc/faq/programming.rst:1800 msgid "foo.py::" msgstr "*foo.py* ::" -#: ../Doc/faq/programming.rst:1808 +#: ../Doc/faq/programming.rst:1805 msgid "bar.py::" msgstr "*bar.py* ::" -#: ../Doc/faq/programming.rst:1813 +#: ../Doc/faq/programming.rst:1810 msgid "The problem is that the interpreter will perform the following steps:" msgstr "Le problème réside dans les étapes que l'interpréteur va réaliser :" -#: ../Doc/faq/programming.rst:1815 +#: ../Doc/faq/programming.rst:1812 msgid "main imports foo" msgstr "*main* importe *foo*" -#: ../Doc/faq/programming.rst:1816 +#: ../Doc/faq/programming.rst:1813 msgid "Empty globals for foo are created" msgstr "Les variables globales (vides) de *foo* sont créées" -#: ../Doc/faq/programming.rst:1817 +#: ../Doc/faq/programming.rst:1814 msgid "foo is compiled and starts executing" msgstr "*foo* est compilé et commence à s'exécuter" -#: ../Doc/faq/programming.rst:1818 +#: ../Doc/faq/programming.rst:1815 msgid "foo imports bar" msgstr "*foo* importe *bar*" -#: ../Doc/faq/programming.rst:1819 +#: ../Doc/faq/programming.rst:1816 msgid "Empty globals for bar are created" msgstr "Les variables globales (vides) de *bar* sont créées" -#: ../Doc/faq/programming.rst:1820 +#: ../Doc/faq/programming.rst:1817 msgid "bar is compiled and starts executing" msgstr "*bar* est compilé et commence à s'exécuter" -#: ../Doc/faq/programming.rst:1821 +#: ../Doc/faq/programming.rst:1818 msgid "" "bar imports foo (which is a no-op since there already is a module named foo)" msgstr "" "*bar* importe *foo* (en réalité, rien ne passe car il y a déjà un module " "appelé *foo*)" -#: ../Doc/faq/programming.rst:1822 +#: ../Doc/faq/programming.rst:1819 msgid "bar.foo_var = foo.foo_var" msgstr "bar.foo_var = foo.foo_var" -#: ../Doc/faq/programming.rst:1824 +#: ../Doc/faq/programming.rst:1821 msgid "" "The last step fails, because Python isn't done with interpreting ``foo`` yet " "and the global symbol dictionary for ``foo`` is still empty." @@ -2855,7 +2856,7 @@ msgstr "" "La dernière étape échoue car Python n'a pas fini d'interpréter ``foo`` et le " "dictionnaire global des symboles de ``foo`` est encore vide." -#: ../Doc/faq/programming.rst:1827 +#: ../Doc/faq/programming.rst:1824 msgid "" "The same thing happens when you use ``import foo``, and then try to access " "``foo.foo_var`` in global code." @@ -2863,11 +2864,11 @@ msgstr "" "Le même phénomène arrive quand on utilise ``import foo``, et qu'on essaye " "ensuite d'accéder à ``foo.foo_var`` dans le code global." -#: ../Doc/faq/programming.rst:1830 +#: ../Doc/faq/programming.rst:1827 msgid "There are (at least) three possible workarounds for this problem." msgstr "Il y a (au moins) trois façons de contourner ce problème." -#: ../Doc/faq/programming.rst:1832 +#: ../Doc/faq/programming.rst:1829 msgid "" "Guido van Rossum recommends avoiding all uses of ``from import ..." "``, and placing all code inside functions. Initializations of global " @@ -2881,14 +2882,14 @@ msgstr "" "des fonctions natives. Ceci implique que tout ce qui est fourni par un " "module soit référencé par ``.``." -#: ../Doc/faq/programming.rst:1837 +#: ../Doc/faq/programming.rst:1834 msgid "" "Jim Roskind suggests performing steps in the following order in each module:" msgstr "" "Jim Roskind recommande d'effectuer les étapes suivantes dans cet ordre dans " "chaque module :" -#: ../Doc/faq/programming.rst:1839 +#: ../Doc/faq/programming.rst:1836 msgid "" "exports (globals, functions, and classes that don't need imported base " "classes)" @@ -2896,18 +2897,18 @@ msgstr "" "les exportations (variables globales, fonctions et les classes qui ne " "nécessitent d'importer des classes de base)" -#: ../Doc/faq/programming.rst:1841 +#: ../Doc/faq/programming.rst:1838 msgid "``import`` statements" msgstr "les instructions ``import``" -#: ../Doc/faq/programming.rst:1842 +#: ../Doc/faq/programming.rst:1839 msgid "" "active code (including globals that are initialized from imported values)." msgstr "" "le code (avec les variables globales qui sont initialisées à partir de " "valeurs importées)." -#: ../Doc/faq/programming.rst:1844 +#: ../Doc/faq/programming.rst:1841 msgid "" "van Rossum doesn't like this approach much because the imports appear in a " "strange place, but it does work." @@ -2915,7 +2916,7 @@ msgstr "" "van Rossum désapprouve cette approche car les importations se trouvent à un " "endroit bizarre, mais cela fonctionne." -#: ../Doc/faq/programming.rst:1847 +#: ../Doc/faq/programming.rst:1844 msgid "" "Matthias Urlichs recommends restructuring your code so that the recursive " "import is not necessary in the first place." @@ -2923,15 +2924,15 @@ msgstr "" "Matthias Urlichs conseille de restructurer le code pour éviter les " "importations récursives." -#: ../Doc/faq/programming.rst:1850 +#: ../Doc/faq/programming.rst:1847 msgid "These solutions are not mutually exclusive." msgstr "Ces solutions peuvent être combinées." -#: ../Doc/faq/programming.rst:1854 +#: ../Doc/faq/programming.rst:1851 msgid "__import__('x.y.z') returns ; how do I get z?" msgstr "__import__('x.y.z') renvoie ; comment accéder à z ?" -#: ../Doc/faq/programming.rst:1856 +#: ../Doc/faq/programming.rst:1853 msgid "" "Consider using the convenience function :func:`~importlib.import_module` " "from :mod:`importlib` instead::" @@ -2939,7 +2940,7 @@ msgstr "" "Utilisez plutôt la fonction :func:`~importlib.import_module` de :mod:" "`importlib` ::" -#: ../Doc/faq/programming.rst:1863 +#: ../Doc/faq/programming.rst:1860 msgid "" "When I edit an imported module and reimport it, the changes don't show up. " "Why does this happen?" @@ -2947,7 +2948,7 @@ msgstr "" "Quand j'édite un module et que je le réimporte, je ne vois pas les " "changements. Pourquoi ?" -#: ../Doc/faq/programming.rst:1865 +#: ../Doc/faq/programming.rst:1862 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 " @@ -2962,7 +2963,7 @@ msgstr "" "ré-analysé un très grand nombre de fois. Pour forcer la relecture d'un " "module, il faut faire ::" -#: ../Doc/faq/programming.rst:1875 +#: ../Doc/faq/programming.rst:1872 msgid "" "Warning: this technique is not 100% fool-proof. In particular, modules " "containing statements like ::" @@ -2970,7 +2971,7 @@ msgstr "" "Attention, cette technique ne marche pas systématiquement. En particulier, " "les modules qui contiennent des instructions comme ::" -#: ../Doc/faq/programming.rst:1880 +#: ../Doc/faq/programming.rst:1877 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 " @@ -2982,7 +2983,7 @@ msgstr "" "celle-ci ne sont *pas* mises à jour avec la nouvelle définition de la " "classe. Ceci peut conduire au comportement paradoxal suivant :" -#: ../Doc/faq/programming.rst:1893 +#: ../Doc/faq/programming.rst:1890 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 8ec40280a..891a89693 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-10-02 09:43+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -598,8 +598,9 @@ msgid "coroutine" msgstr "coroutine" #: ../Doc/glossary.rst:250 +#, fuzzy msgid "" -"Coroutines is a more generalized form of subroutines. Subroutines are " +"Coroutines are a more generalized form of subroutines. Subroutines are " "entered at one point and exited at another point. Coroutines can be " "entered, exited, and resumed at many different points. They can be " "implemented with the :keyword:`async def` statement. See also :pep:`492`." @@ -1517,7 +1518,7 @@ msgstr "" msgid "keyword argument" msgstr "argument nommé" -#: ../Doc/glossary.rst:639 ../Doc/glossary.rst:903 +#: ../Doc/glossary.rst:639 ../Doc/glossary.rst:914 msgid "See :term:`argument`." msgstr "Voir :term:`argument`." @@ -1791,25 +1792,27 @@ msgstr "n-uplet nommé" #: ../Doc/glossary.rst:742 msgid "" -"Any tuple-like class whose indexable elements are also accessible using " -"named attributes (for example, :func:`time.localtime` returns a tuple-like " -"object where the *year* is accessible either with an index such as ``t[0]`` " -"or with a named attribute like ``t.tm_year``)." +"The term \"named tuple\" applies to any type or class that inherits from " +"tuple and whose indexable elements are also accessible using named " +"attributes. The type or class may have other features as well." msgstr "" -"(*named-tuple* en anglais) Classe qui, comme un *n-uplet* (*tuple* en " -"anglais), a ses éléments accessibles par leur indice. Et en plus, les " -"éléments sont accessibles par leur nom. Par exemple, :func:`time.localtime` " -"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:747 +#: ../Doc/glossary.rst:746 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 " -"tuple can also be created with the factory function :func:`collections." -"namedtuple`. The latter approach automatically provides extra features such " -"as a self-documenting representation like ``Employee(name='jones', " -"title='programmer')``." +"Several built-in types are named tuples, including the values returned by :" +"func:`time.localtime` and :func:`os.stat`. Another example is :data:`sys." +"float_info`::" +msgstr "" + +#: ../Doc/glossary.rst:757 +#, fuzzy +msgid "" +"Some named tuples are built-in types (such as the above examples). " +"Alternatively, a named tuple can be created from a regular class definition " +"that inherits from :class:`tuple` and that defines named fields. Such a " +"class can be written by hand or it can be created with the factory function :" +"func:`collections.namedtuple`. The latter technique also adds some extra " +"methods that may not be found in hand-written or built-in named tuples." msgstr "" "Un *n-uplet nommé* peut être un type natif tel que :class:`time.struct_time` " "ou il peut être construit comme une simple classe. Un *n-uplet nommé* " @@ -1818,11 +1821,11 @@ msgstr "" "supplémentaires, tel qu'une représentation lisible comme " "``Employee(name='jones', title='programmer')``." -#: ../Doc/glossary.rst:753 +#: ../Doc/glossary.rst:764 msgid "namespace" msgstr "espace de nommage" -#: ../Doc/glossary.rst:755 +#: ../Doc/glossary.rst:766 msgid "" "The place where a variable is stored. Namespaces are implemented as " "dictionaries. There are the local, global and built-in namespaces as well " @@ -1846,11 +1849,11 @@ msgstr "" "implémentées respectivement dans les modules :mod:`random` et :mod:" "`itertools`." -#: ../Doc/glossary.rst:765 +#: ../Doc/glossary.rst:776 msgid "namespace package" msgstr "paquet-espace de nommage" -#: ../Doc/glossary.rst:767 +#: ../Doc/glossary.rst:778 msgid "" "A :pep:`420` :term:`package` which serves only as a container for " "subpackages. Namespace packages may have no physical representation, and " @@ -1862,15 +1865,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:772 +#: ../Doc/glossary.rst:783 msgid "See also :term:`module`." msgstr "Voir aussi :term:`module`." -#: ../Doc/glossary.rst:773 +#: ../Doc/glossary.rst:784 msgid "nested scope" msgstr "portée imbriquée" -#: ../Doc/glossary.rst:775 +#: ../Doc/glossary.rst:786 msgid "" "The ability to refer to a variable in an enclosing definition. For " "instance, a function defined inside another function can refer to variables " @@ -1888,11 +1891,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:782 +#: ../Doc/glossary.rst:793 msgid "new-style class" msgstr "nouvelle classe" -#: ../Doc/glossary.rst:784 +#: ../Doc/glossary.rst:795 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, " @@ -1905,11 +1908,11 @@ msgstr "" "__slots__`, les descripteurs, les propriétés, :meth:`__getattribute__`, les " "méthodes de classe et les méthodes statiques." -#: ../Doc/glossary.rst:788 +#: ../Doc/glossary.rst:799 msgid "object" msgstr "objet" -#: ../Doc/glossary.rst:790 +#: ../Doc/glossary.rst:801 msgid "" "Any data with state (attributes or value) and defined behavior (methods). " "Also the ultimate base class of any :term:`new-style class`." @@ -1919,11 +1922,11 @@ msgstr "" "l'ancêtre commun à absolument toutes les :term:`nouvelles classes `." -#: ../Doc/glossary.rst:793 +#: ../Doc/glossary.rst:804 msgid "package" msgstr "paquet" -#: ../Doc/glossary.rst:795 +#: ../Doc/glossary.rst:806 msgid "" "A Python :term:`module` which can contain submodules or recursively, " "subpackages. Technically, a package is a Python module with an ``__path__`` " @@ -1933,15 +1936,15 @@ msgstr "" "paquets. Techniquement, un paquet est un module qui possède un attribut " "``__path__``." -#: ../Doc/glossary.rst:799 +#: ../Doc/glossary.rst:810 msgid "See also :term:`regular package` and :term:`namespace package`." msgstr "Voir aussi :term:`paquet classique` et :term:`namespace package`." -#: ../Doc/glossary.rst:800 +#: ../Doc/glossary.rst:811 msgid "parameter" msgstr "paramètre" -#: ../Doc/glossary.rst:802 +#: ../Doc/glossary.rst:813 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 " @@ -1951,7 +1954,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:806 +#: ../Doc/glossary.rst:817 msgid "" ":dfn:`positional-or-keyword`: specifies an argument that can be passed " "either :term:`positionally ` or as a :term:`keyword argument " @@ -1963,7 +1966,7 @@ msgstr "" "C'est le type de paramètre par défaut. Par exemple, *foo* et *bar* dans " "l'exemple suivant ::" -#: ../Doc/glossary.rst:815 +#: ../Doc/glossary.rst:826 msgid "" ":dfn:`positional-only`: specifies an argument that can be supplied only by " "position. Python has no syntax for defining positional-only parameters. " @@ -1974,7 +1977,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:822 +#: ../Doc/glossary.rst:833 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-" @@ -1988,7 +1991,7 @@ msgstr "" "liste des paramètres avant eux. Par exemple, *kw_only1* et *kw_only2* dans " "le code suivant ::" -#: ../Doc/glossary.rst:830 +#: ../Doc/glossary.rst:841 msgid "" ":dfn:`var-positional`: specifies that an arbitrary sequence of positional " "arguments can be provided (in addition to any positional arguments already " @@ -2001,7 +2004,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:838 +#: ../Doc/glossary.rst:849 msgid "" ":dfn:`var-keyword`: specifies that arbitrarily many keyword arguments can be " "provided (in addition to any keyword arguments already accepted by other " @@ -2013,7 +2016,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:844 +#: ../Doc/glossary.rst:855 msgid "" "Parameters can specify both optional and required arguments, as well as " "default values for some optional arguments." @@ -2021,7 +2024,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:847 +#: ../Doc/glossary.rst:858 msgid "" "See also the :term:`argument` glossary entry, the FAQ question on :ref:`the " "difference between arguments and parameters `, " @@ -2033,11 +2036,11 @@ msgstr "" "parameter>` dans la FAQ, la classe :class:`inspect.Parameter`, la section :" "ref:`function` et la :pep:`362`." -#: ../Doc/glossary.rst:851 +#: ../Doc/glossary.rst:862 msgid "path entry" msgstr "entrée de chemin" -#: ../Doc/glossary.rst:853 +#: ../Doc/glossary.rst:864 msgid "" "A single location on the :term:`import path` which the :term:`path based " "finder` consults to find modules for importing." @@ -2046,11 +2049,11 @@ msgstr "" "path* en anglais, d'où le *path*) que le :term:`chercheur basé sur les " "chemins ` consulte pour trouver des modules à importer." -#: ../Doc/glossary.rst:855 +#: ../Doc/glossary.rst:866 msgid "path entry finder" msgstr "chercheur de chemins" -#: ../Doc/glossary.rst:857 +#: ../Doc/glossary.rst:868 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:" @@ -2061,7 +2064,7 @@ msgstr "" "path `) qui sait où trouver des modules lorsqu'on lui donne " "une :term:`entrée de path `." -#: ../Doc/glossary.rst:861 +#: ../Doc/glossary.rst:872 msgid "" "See :class:`importlib.abc.PathEntryFinder` for the methods that path entry " "finders implement." @@ -2069,11 +2072,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:863 +#: ../Doc/glossary.rst:874 msgid "path entry hook" msgstr "point d'entrée pour la recherche dans *path*" -#: ../Doc/glossary.rst:865 +#: ../Doc/glossary.rst:876 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 " @@ -2083,11 +2086,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:868 +#: ../Doc/glossary.rst:879 msgid "path based finder" msgstr "chercheur basé sur les chemins" -#: ../Doc/glossary.rst:870 +#: ../Doc/glossary.rst:881 msgid "" "One of the default :term:`meta path finders ` which " "searches an :term:`import path` for modules." @@ -2096,11 +2099,11 @@ msgstr "" "défaut qui cherche des modules dans un :term:`chemin des importations " "`." -#: ../Doc/glossary.rst:872 +#: ../Doc/glossary.rst:883 msgid "path-like object" msgstr "objet simili-chemin" -#: ../Doc/glossary.rst:874 +#: ../Doc/glossary.rst:885 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 " @@ -2120,11 +2123,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:882 +#: ../Doc/glossary.rst:893 msgid "PEP" msgstr "PEP" -#: ../Doc/glossary.rst:884 +#: ../Doc/glossary.rst:895 msgid "" "Python Enhancement Proposal. A PEP is a design document providing " "information to the Python community, or describing a new feature for Python " @@ -2137,7 +2140,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:890 +#: ../Doc/glossary.rst:901 msgid "" "PEPs are intended to be the primary mechanisms for proposing major new " "features, for collecting community input on an issue, and for documenting " @@ -2152,15 +2155,15 @@ msgstr "" "l’établissement d’un consensus au sein de la communauté et de documenter les " "opinions contradictoires." -#: ../Doc/glossary.rst:896 +#: ../Doc/glossary.rst:907 msgid "See :pep:`1`." msgstr "Voir :pep:`1`." -#: ../Doc/glossary.rst:897 +#: ../Doc/glossary.rst:908 msgid "portion" msgstr "portion" -#: ../Doc/glossary.rst:899 +#: ../Doc/glossary.rst:910 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`." @@ -2169,15 +2172,15 @@ msgstr "" "fichier zip) qui contribue à l'espace de nommage d'un paquet, tel que défini " "dans la :pep:`420`." -#: ../Doc/glossary.rst:901 +#: ../Doc/glossary.rst:912 msgid "positional argument" msgstr "argument positionnel" -#: ../Doc/glossary.rst:904 +#: ../Doc/glossary.rst:915 msgid "provisional API" msgstr "API provisoire" -#: ../Doc/glossary.rst:906 +#: ../Doc/glossary.rst:917 msgid "" "A provisional API is one which has been deliberately excluded from the " "standard library's backwards compatibility guarantees. While major changes " @@ -2196,7 +2199,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:915 +#: ../Doc/glossary.rst:926 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 " @@ -2207,7 +2210,7 @@ msgstr "" "possible sera fait pour tenter de résoudre les problème en conservant la " "rétrocompatibilité." -#: ../Doc/glossary.rst:919 +#: ../Doc/glossary.rst:930 msgid "" "This process allows the standard library to continue to evolve over time, " "without locking in problematic design errors for extended periods of time. " @@ -2217,19 +2220,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:922 +#: ../Doc/glossary.rst:933 msgid "provisional package" msgstr "paquet provisoire" -#: ../Doc/glossary.rst:924 +#: ../Doc/glossary.rst:935 msgid "See :term:`provisional API`." msgstr "Voir :term:`provisional API`." -#: ../Doc/glossary.rst:925 +#: ../Doc/glossary.rst:936 msgid "Python 3000" msgstr "Python 3000" -#: ../Doc/glossary.rst:927 +#: ../Doc/glossary.rst:938 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 " @@ -2238,11 +2241,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:930 +#: ../Doc/glossary.rst:941 msgid "Pythonic" msgstr "*Pythonique*" -#: ../Doc/glossary.rst:932 +#: ../Doc/glossary.rst:943 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 " @@ -2258,16 +2261,16 @@ msgstr "" "les gens qui ne sont pas habitués à Python utilisent parfois un compteur " "numérique à la place ::" -#: ../Doc/glossary.rst:942 +#: ../Doc/glossary.rst:953 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:946 +#: ../Doc/glossary.rst:957 msgid "qualified name" msgstr "nom qualifié" -#: ../Doc/glossary.rst:948 +#: ../Doc/glossary.rst:959 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 " @@ -2279,7 +2282,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:965 +#: ../Doc/glossary.rst:976 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." @@ -2290,11 +2293,11 @@ msgstr "" "par des points) vers le module, incluant tous les paquets parents. Par " "exemple : ``email.mime.text`` ::" -#: ../Doc/glossary.rst:972 +#: ../Doc/glossary.rst:983 msgid "reference count" msgstr "nombre de références" -#: ../Doc/glossary.rst:974 +#: ../Doc/glossary.rst:985 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 " @@ -2310,11 +2313,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:980 +#: ../Doc/glossary.rst:991 msgid "regular package" msgstr "paquet classique" -#: ../Doc/glossary.rst:982 +#: ../Doc/glossary.rst:993 msgid "" "A traditional :term:`package`, such as a directory containing an ``__init__." "py`` file." @@ -2322,15 +2325,15 @@ msgstr "" ":term:`paquet` traditionnel, tel qu'un dossier contenant un fichier " "``__init__.py``." -#: ../Doc/glossary.rst:985 +#: ../Doc/glossary.rst:996 msgid "See also :term:`namespace package`." msgstr "Voir aussi :term:`paquet-espace de nommage `." -#: ../Doc/glossary.rst:986 +#: ../Doc/glossary.rst:997 msgid "__slots__" msgstr "``__slots__``" -#: ../Doc/glossary.rst:988 +#: ../Doc/glossary.rst:999 msgid "" "A declaration inside a class that saves memory by pre-declaring space for " "instance attributes and eliminating instance dictionaries. Though popular, " @@ -2345,11 +2348,11 @@ msgstr "" "nombre d'instances dans une application devient un sujet critique pour la " "mémoire." -#: ../Doc/glossary.rst:993 +#: ../Doc/glossary.rst:1004 msgid "sequence" msgstr "séquence" -#: ../Doc/glossary.rst:995 +#: ../Doc/glossary.rst:1006 msgid "" "An :term:`iterable` which supports efficient element access using integer " "indices via the :meth:`__getitem__` special method and defines a :meth:" @@ -2368,7 +2371,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:1004 +#: ../Doc/glossary.rst:1015 msgid "" "The :class:`collections.abc.Sequence` abstract base class defines a much " "richer interface that goes beyond just :meth:`__getitem__` and :meth:" @@ -2382,11 +2385,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:1011 +#: ../Doc/glossary.rst:1022 msgid "single dispatch" msgstr "distribution simple" -#: ../Doc/glossary.rst:1013 +#: ../Doc/glossary.rst:1024 msgid "" "A form of :term:`generic function` dispatch where the implementation is " "chosen based on the type of a single argument." @@ -2395,11 +2398,11 @@ msgstr "" "générique>`, où l'implémentation est choisie en fonction du type d'un seul " "argument." -#: ../Doc/glossary.rst:1015 +#: ../Doc/glossary.rst:1026 msgid "slice" msgstr "tranche" -#: ../Doc/glossary.rst:1017 +#: ../Doc/glossary.rst:1028 msgid "" "An object usually containing a portion of a :term:`sequence`. A slice is " "created using the subscript notation, ``[]`` with colons between numbers " @@ -2412,11 +2415,11 @@ msgstr "" "``variable_name[1:3:5]``. Cette notation utilise des objets :class:`slice` " "en interne." -#: ../Doc/glossary.rst:1021 +#: ../Doc/glossary.rst:1032 msgid "special method" msgstr "méthode spéciale" -#: ../Doc/glossary.rst:1025 +#: ../Doc/glossary.rst:1036 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 " @@ -2428,11 +2431,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:1029 +#: ../Doc/glossary.rst:1040 msgid "statement" msgstr "instruction" -#: ../Doc/glossary.rst:1031 +#: ../Doc/glossary.rst:1042 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 :" @@ -2443,42 +2446,21 @@ msgstr "" "constructions basées sur un mot-clé, comme :keyword:`if`, :keyword:`while` " "ou :keyword:`for`." -#: ../Doc/glossary.rst:1034 -msgid "struct sequence" -msgstr "*struct sequence*" - -#: ../Doc/glossary.rst:1036 -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 " -"as an attribute. However, they do not have any of the named tuple methods " -"like :meth:`~collections.somenamedtuple._make` or :meth:`~collections." -"somenamedtuple._asdict`. Examples of struct sequences include :data:`sys." -"float_info` and the return value of :func:`os.stat`." -msgstr "" -"Un n-uplet (*tuple* en anglais) dont les éléments sont nommés. Les *struct " -"sequences* exposent une interface similaire au :term:`n-uplet nommé` car on " -"peut accéder à leurs éléments par un nom d'attribut ou par un indice. " -"Cependant, elles n'ont aucune des méthodes du *n-uplet nommé* : ni :meth:" -"`collections.somenamedtuple._make` ou :meth:`~collections.somenamedtuple." -"_asdict`. Par exemple :data:`sys.float_info` ou les valeurs données par :" -"func:`os.stat` sont des *struct sequence*." - -#: ../Doc/glossary.rst:1042 +#: ../Doc/glossary.rst:1045 msgid "text encoding" msgstr "encodage de texte" -#: ../Doc/glossary.rst:1044 +#: ../Doc/glossary.rst:1047 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:1045 +#: ../Doc/glossary.rst:1048 msgid "text file" msgstr "fichier texte" -#: ../Doc/glossary.rst:1047 +#: ../Doc/glossary.rst:1050 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:" @@ -2493,7 +2475,7 @@ msgstr "" "ou ``'w'``), :data:`sys.stdin`, :data:`sys.stdout` et les instances de :" "class:`io.StringIO`." -#: ../Doc/glossary.rst:1054 +#: ../Doc/glossary.rst:1057 msgid "" "See also :term:`binary file` for a file object able to read and write :term:" "`bytes-like objects `." @@ -2501,11 +2483,11 @@ msgstr "" "Voir aussi :term:`binary file` pour un objet fichier capable de lire et " "d'écrire :term:`bytes-like objects `." -#: ../Doc/glossary.rst:1056 +#: ../Doc/glossary.rst:1059 msgid "triple-quoted string" msgstr "chaîne entre triple guillemets" -#: ../Doc/glossary.rst:1058 +#: ../Doc/glossary.rst:1061 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 " @@ -2524,11 +2506,11 @@ msgstr "" "\\``. Elle est ainsi particulièrement utile pour les chaînes de " "documentation (*docstrings*)." -#: ../Doc/glossary.rst:1065 +#: ../Doc/glossary.rst:1068 msgid "type" msgstr "type" -#: ../Doc/glossary.rst:1067 +#: ../Doc/glossary.rst:1070 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." @@ -2538,15 +2520,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:1071 +#: ../Doc/glossary.rst:1074 msgid "type alias" msgstr "alias de type" -#: ../Doc/glossary.rst:1073 +#: ../Doc/glossary.rst:1076 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:1075 +#: ../Doc/glossary.rst:1078 msgid "" "Type aliases are useful for simplifying :term:`type hints `. For " "example::" @@ -2554,19 +2536,19 @@ msgstr "" "Les alias de types sont utiles pour simplifier les :term:`indications de " "types `. Par exemple ::" -#: ../Doc/glossary.rst:1084 +#: ../Doc/glossary.rst:1087 msgid "could be made more readable like this::" msgstr "pourrait être rendu plus lisible comme ceci ::" -#: ../Doc/glossary.rst:1093 ../Doc/glossary.rst:1107 +#: ../Doc/glossary.rst:1096 ../Doc/glossary.rst:1110 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:1094 +#: ../Doc/glossary.rst:1097 msgid "type hint" msgstr "indication de type" -#: ../Doc/glossary.rst:1096 +#: ../Doc/glossary.rst:1099 msgid "" "An :term:`annotation` that specifies the expected type for a variable, a " "class attribute, or a function parameter or return value." @@ -2574,7 +2556,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:1099 +#: ../Doc/glossary.rst:1102 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 " @@ -2585,7 +2567,7 @@ msgstr "" "statique et aident les IDE à compléter et à réusiner (*code refactoring* en " "anglais) le code." -#: ../Doc/glossary.rst:1103 +#: ../Doc/glossary.rst:1106 msgid "" "Type hints of global variables, class attributes, and functions, but not " "local variables, can be accessed using :func:`typing.get_type_hints`." @@ -2594,11 +2576,11 @@ msgstr "" "fonctions, mais pas de variables locales, peuvent être consultés en " "utilisant :func:`typing.get_type_hints`." -#: ../Doc/glossary.rst:1108 +#: ../Doc/glossary.rst:1111 msgid "universal newlines" msgstr "retours à la ligne universels" -#: ../Doc/glossary.rst:1110 +#: ../Doc/glossary.rst:1113 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 " @@ -2612,22 +2594,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:1115 +#: ../Doc/glossary.rst:1118 msgid "variable annotation" msgstr "annotation de variable" -#: ../Doc/glossary.rst:1117 +#: ../Doc/glossary.rst:1120 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:1119 +#: ../Doc/glossary.rst:1122 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:1124 +#: ../Doc/glossary.rst:1127 msgid "" "Variable annotations are usually used for :term:`type hints `: " "for example this variable is expected to take :class:`int` values::" @@ -2636,13 +2618,13 @@ msgstr "" "`indications de types ` : par exemple, cette variable devrait " "prendre des valeurs de type :class:`int` ::" -#: ../Doc/glossary.rst:1130 +#: ../Doc/glossary.rst:1133 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:1132 +#: ../Doc/glossary.rst:1135 msgid "" "See :term:`function annotation`, :pep:`484` and :pep:`526`, which describe " "this functionality." @@ -2650,11 +2632,11 @@ msgstr "" "Reportez-vous à :term:`function annotation`, à la :pep:` 484` et à la :pep:" "`526` qui décrivent cette fonctionnalité." -#: ../Doc/glossary.rst:1134 +#: ../Doc/glossary.rst:1137 msgid "virtual environment" msgstr "environnement virtuel" -#: ../Doc/glossary.rst:1136 +#: ../Doc/glossary.rst:1139 msgid "" "A cooperatively isolated runtime environment that allows Python users and " "applications to install and upgrade Python distribution packages without " @@ -2666,15 +2648,15 @@ msgstr "" "des paquets sans interférer avec d'autres applications Python fonctionnant " "sur le même système." -#: ../Doc/glossary.rst:1141 +#: ../Doc/glossary.rst:1144 msgid "See also :mod:`venv`." msgstr "Voir aussi :mod:`venv`." -#: ../Doc/glossary.rst:1142 +#: ../Doc/glossary.rst:1145 msgid "virtual machine" msgstr "machine virtuelle" -#: ../Doc/glossary.rst:1144 +#: ../Doc/glossary.rst:1147 msgid "" "A computer defined entirely in software. Python's virtual machine executes " "the :term:`bytecode` emitted by the bytecode compiler." @@ -2683,11 +2665,11 @@ msgstr "" "(*virtual machine*) de Python exécute le :term:`bytecode` produit par le " "compilateur de *bytecode*." -#: ../Doc/glossary.rst:1146 +#: ../Doc/glossary.rst:1149 msgid "Zen of Python" msgstr "Le zen de Python" -#: ../Doc/glossary.rst:1148 +#: ../Doc/glossary.rst:1151 msgid "" "Listing of Python design principles and philosophies that are helpful in " "understanding and using the language. The listing can be found by typing " @@ -2697,6 +2679,37 @@ msgstr "" "langage. Cette liste peut être obtenue en tapant \"``import this``\" dans " "une invite Python interactive." +#~ msgid "" +#~ "Any tuple-like class whose indexable elements are also accessible using " +#~ "named attributes (for example, :func:`time.localtime` returns a tuple-" +#~ "like object where the *year* is accessible either with an index such as " +#~ "``t[0]`` or with a named attribute like ``t.tm_year``)." +#~ msgstr "" +#~ "(*named-tuple* en anglais) Classe qui, comme un *n-uplet* (*tuple* en " +#~ "anglais), a ses éléments accessibles par leur indice. Et en plus, les " +#~ "éléments sont accessibles par leur nom. Par exemple, :func:`time." +#~ "localtime` donne un objet ressemblant à un *n-uplet*, dont *year* est " +#~ "accessible par son indice : ``t[0]`` ou par son nom : ``t.tm_year``)." + +#~ msgid "struct sequence" +#~ msgstr "*struct sequence*" + +#~ 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 as an attribute. However, they do not have any of the named tuple " +#~ "methods like :meth:`~collections.somenamedtuple._make` or :meth:" +#~ "`~collections.somenamedtuple._asdict`. Examples of struct sequences " +#~ "include :data:`sys.float_info` and the return value of :func:`os.stat`." +#~ msgstr "" +#~ "Un n-uplet (*tuple* en anglais) dont les éléments sont nommés. Les " +#~ "*struct sequences* exposent une interface similaire au :term:`n-uplet " +#~ "nommé` car on peut accéder à leurs éléments par un nom d'attribut ou par " +#~ "un indice. Cependant, elles n'ont aucune des méthodes du *n-uplet " +#~ "nommé* : ni :meth:`collections.somenamedtuple._make` ou :meth:" +#~ "`~collections.somenamedtuple._asdict`. Par exemple :data:`sys.float_info` " +#~ "ou les valeurs données par :func:`os.stat` sont des *struct sequence*." + #~ msgid "" #~ "An arbitrary metadata value associated with a function parameter or " #~ "return value. Its syntax is explained in section :ref:`function`. " diff --git a/library/argparse.po b/library/argparse.po index 96200c8cd..de8585863 100644 --- a/library/argparse.po +++ b/library/argparse.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-07-28 23:47+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -1334,7 +1334,7 @@ msgstr "" #: ../Doc/library/argparse.rst:1597 msgid "" "required_ - Whether or not a subcommand must be provided, by default " -"``False``." +"``False`` (added in 3.7)" msgstr "" #: ../Doc/library/argparse.rst:1600 @@ -1402,11 +1402,16 @@ msgid "" "argument to the :meth:`add_subparsers` call will work::" msgstr "" -#: ../Doc/library/argparse.rst:1756 +#: ../Doc/library/argparse.rst:1754 +#, fuzzy +msgid "New *required* keyword argument." +msgstr "Les arguments nommés ``encodings`` et ``errors``." + +#: ../Doc/library/argparse.rst:1759 msgid "FileType objects" msgstr "Objets ``FileType``" -#: ../Doc/library/argparse.rst:1760 +#: ../Doc/library/argparse.rst:1763 msgid "" "The :class:`FileType` factory creates objects that can be passed to the type " "argument of :meth:`ArgumentParser.add_argument`. Arguments that have :class:" @@ -1415,22 +1420,22 @@ msgid "" "the :func:`open` function for more details)::" msgstr "" -#: ../Doc/library/argparse.rst:1772 +#: ../Doc/library/argparse.rst:1775 msgid "" "FileType objects understand the pseudo-argument ``'-'`` and automatically " "convert this into ``sys.stdin`` for readable :class:`FileType` objects and " "``sys.stdout`` for writable :class:`FileType` objects::" msgstr "" -#: ../Doc/library/argparse.rst:1781 +#: ../Doc/library/argparse.rst:1784 msgid "The *encodings* and *errors* keyword arguments." msgstr "Les arguments nommés ``encodings`` et ``errors``." -#: ../Doc/library/argparse.rst:1786 +#: ../Doc/library/argparse.rst:1789 msgid "Argument groups" msgstr "Groupes d'arguments" -#: ../Doc/library/argparse.rst:1790 +#: ../Doc/library/argparse.rst:1793 msgid "" "By default, :class:`ArgumentParser` groups command-line arguments into " "\"positional arguments\" and \"optional arguments\" when displaying help " @@ -1439,7 +1444,7 @@ msgid "" "`add_argument_group` method::" msgstr "" -#: ../Doc/library/argparse.rst:1807 +#: ../Doc/library/argparse.rst:1810 msgid "" "The :meth:`add_argument_group` method returns an argument group object which " "has an :meth:`~ArgumentParser.add_argument` method just like a regular :" @@ -1450,42 +1455,42 @@ msgid "" "this display::" msgstr "" -#: ../Doc/library/argparse.rst:1833 +#: ../Doc/library/argparse.rst:1836 msgid "" "Note that any arguments not in your user-defined groups will end up back in " "the usual \"positional arguments\" and \"optional arguments\" sections." msgstr "" -#: ../Doc/library/argparse.rst:1838 +#: ../Doc/library/argparse.rst:1841 msgid "Mutual exclusion" msgstr "Exclusion mutuelle" -#: ../Doc/library/argparse.rst:1842 +#: ../Doc/library/argparse.rst:1845 msgid "" "Create a mutually exclusive group. :mod:`argparse` will make sure that only " "one of the arguments in the mutually exclusive group was present on the " "command line::" msgstr "" -#: ../Doc/library/argparse.rst:1858 +#: ../Doc/library/argparse.rst:1861 msgid "" "The :meth:`add_mutually_exclusive_group` method also accepts a *required* " "argument, to indicate that at least one of the mutually exclusive arguments " "is required::" msgstr "" -#: ../Doc/library/argparse.rst:1870 +#: ../Doc/library/argparse.rst:1873 msgid "" "Note that currently mutually exclusive argument groups do not support the " "*title* and *description* arguments of :meth:`~ArgumentParser." "add_argument_group`." msgstr "" -#: ../Doc/library/argparse.rst:1876 +#: ../Doc/library/argparse.rst:1879 msgid "Parser defaults" msgstr "Valeurs par défaut de l'analyseur" -#: ../Doc/library/argparse.rst:1880 +#: ../Doc/library/argparse.rst:1883 msgid "" "Most of the time, the attributes of the object returned by :meth:" "`parse_args` will be fully determined by inspecting the command-line " @@ -1494,72 +1499,72 @@ msgid "" "command line to be added::" msgstr "" -#: ../Doc/library/argparse.rst:1892 +#: ../Doc/library/argparse.rst:1895 msgid "" "Note that parser-level defaults always override argument-level defaults::" msgstr "" -#: ../Doc/library/argparse.rst:1900 +#: ../Doc/library/argparse.rst:1903 msgid "" "Parser-level defaults can be particularly useful when working with multiple " "parsers. See the :meth:`~ArgumentParser.add_subparsers` method for an " "example of this type." msgstr "" -#: ../Doc/library/argparse.rst:1906 +#: ../Doc/library/argparse.rst:1909 msgid "" "Get the default value for a namespace attribute, as set by either :meth:" "`~ArgumentParser.add_argument` or by :meth:`~ArgumentParser.set_defaults`::" msgstr "" -#: ../Doc/library/argparse.rst:1917 +#: ../Doc/library/argparse.rst:1920 msgid "Printing help" msgstr "Afficher l'aide" -#: ../Doc/library/argparse.rst:1919 +#: ../Doc/library/argparse.rst:1922 msgid "" "In most typical applications, :meth:`~ArgumentParser.parse_args` will take " "care of formatting and printing any usage or error messages. However, " "several formatting methods are available:" msgstr "" -#: ../Doc/library/argparse.rst:1925 +#: ../Doc/library/argparse.rst:1928 msgid "" "Print a brief description of how the :class:`ArgumentParser` should be " "invoked on the command line. If *file* is ``None``, :data:`sys.stdout` is " "assumed." msgstr "" -#: ../Doc/library/argparse.rst:1931 +#: ../Doc/library/argparse.rst:1934 msgid "" "Print a help message, including the program usage and information about the " "arguments registered with the :class:`ArgumentParser`. If *file* is " "``None``, :data:`sys.stdout` is assumed." msgstr "" -#: ../Doc/library/argparse.rst:1935 +#: ../Doc/library/argparse.rst:1938 msgid "" "There are also variants of these methods that simply return a string instead " "of printing it:" msgstr "" -#: ../Doc/library/argparse.rst:1940 +#: ../Doc/library/argparse.rst:1943 msgid "" "Return a string containing a brief description of how the :class:" "`ArgumentParser` should be invoked on the command line." msgstr "" -#: ../Doc/library/argparse.rst:1945 +#: ../Doc/library/argparse.rst:1948 msgid "" "Return a string containing a help message, including the program usage and " "information about the arguments registered with the :class:`ArgumentParser`." msgstr "" -#: ../Doc/library/argparse.rst:1950 +#: ../Doc/library/argparse.rst:1953 msgid "Partial parsing" msgstr "*Parsing* partiel" -#: ../Doc/library/argparse.rst:1954 +#: ../Doc/library/argparse.rst:1957 msgid "" "Sometimes a script may only parse a few of the command-line arguments, " "passing the remaining arguments on to another script or program. In these " @@ -1570,7 +1575,7 @@ msgid "" "remaining argument strings." msgstr "" -#: ../Doc/library/argparse.rst:1970 +#: ../Doc/library/argparse.rst:1973 msgid "" ":ref:`Prefix matching ` rules apply to :meth:" "`parse_known_args`. The parser may consume an option even if it's just a " @@ -1578,11 +1583,11 @@ msgid "" "arguments list." msgstr "" -#: ../Doc/library/argparse.rst:1977 +#: ../Doc/library/argparse.rst:1980 msgid "Customizing file parsing" msgstr "Personnaliser le *parsing* de fichiers" -#: ../Doc/library/argparse.rst:1981 +#: ../Doc/library/argparse.rst:1984 msgid "" "Arguments that are read from a file (see the *fromfile_prefix_chars* keyword " "argument to the :class:`ArgumentParser` constructor) are read one argument " @@ -1590,40 +1595,41 @@ msgid "" "reading." msgstr "" -#: ../Doc/library/argparse.rst:1986 +#: ../Doc/library/argparse.rst:1989 msgid "" "This method takes a single argument *arg_line* which is a string read from " "the argument file. It returns a list of arguments parsed from this string. " "The method is called once per line read from the argument file, in order." msgstr "" -#: ../Doc/library/argparse.rst:1990 +#: ../Doc/library/argparse.rst:1993 msgid "" "A useful override of this method is one that treats each space-separated " "word as an argument. The following example demonstrates how to do this::" msgstr "" -#: ../Doc/library/argparse.rst:1999 +#: ../Doc/library/argparse.rst:2002 msgid "Exiting methods" msgstr "" -#: ../Doc/library/argparse.rst:2003 +#: ../Doc/library/argparse.rst:2006 msgid "" "This method terminates the program, exiting with the specified *status* and, " -"if given, it prints a *message* before that." +"if given, it prints a *message* before that. The user can override this " +"method to handle these steps differently::" msgstr "" -#: ../Doc/library/argparse.rst:2008 +#: ../Doc/library/argparse.rst:2018 msgid "" "This method prints a usage message including the *message* to the standard " "error and terminates the program with a status code of 2." msgstr "" -#: ../Doc/library/argparse.rst:2013 +#: ../Doc/library/argparse.rst:2023 msgid "Intermixed parsing" msgstr "Analyse entremêlée" -#: ../Doc/library/argparse.rst:2018 +#: ../Doc/library/argparse.rst:2028 msgid "" "A number of Unix commands allow the user to intermix optional arguments with " "positional arguments. The :meth:`~ArgumentParser.parse_intermixed_args` " @@ -1631,7 +1637,7 @@ msgid "" "parsing style." msgstr "" -#: ../Doc/library/argparse.rst:2023 +#: ../Doc/library/argparse.rst:2033 msgid "" "These parsers do not support all the argparse features, and will raise " "exceptions if unsupported features are used. In particular, subparsers, " @@ -1639,7 +1645,7 @@ msgid "" "optionals and positionals are not supported." msgstr "" -#: ../Doc/library/argparse.rst:2028 +#: ../Doc/library/argparse.rst:2038 msgid "" "The following example shows the difference between :meth:`~ArgumentParser." "parse_known_args` and :meth:`~ArgumentParser.parse_intermixed_args`: the " @@ -1647,7 +1653,7 @@ msgid "" "collects all the positionals into ``rest``. ::" msgstr "" -#: ../Doc/library/argparse.rst:2043 +#: ../Doc/library/argparse.rst:2053 msgid "" ":meth:`~ArgumentParser.parse_known_intermixed_args` returns a two item tuple " "containing the populated namespace and the list of remaining argument " @@ -1655,11 +1661,11 @@ msgid "" "there are any remaining unparsed argument strings." msgstr "" -#: ../Doc/library/argparse.rst:2053 +#: ../Doc/library/argparse.rst:2063 msgid "Upgrading optparse code" msgstr "Mettre à jour du code ``optparse``" -#: ../Doc/library/argparse.rst:2055 +#: ../Doc/library/argparse.rst:2065 msgid "" "Originally, the :mod:`argparse` module had attempted to maintain " "compatibility with :mod:`optparse`. However, :mod:`optparse` was difficult " @@ -1670,47 +1676,47 @@ msgid "" "compatibility." msgstr "" -#: ../Doc/library/argparse.rst:2062 +#: ../Doc/library/argparse.rst:2072 msgid "" "The :mod:`argparse` module improves on the standard library :mod:`optparse` " "module in a number of ways including:" msgstr "" -#: ../Doc/library/argparse.rst:2065 +#: ../Doc/library/argparse.rst:2075 msgid "Handling positional arguments." msgstr "Gérer les arguments positionnels." -#: ../Doc/library/argparse.rst:2066 +#: ../Doc/library/argparse.rst:2076 msgid "Supporting sub-commands." msgstr "Gérer les sous commandes." -#: ../Doc/library/argparse.rst:2067 +#: ../Doc/library/argparse.rst:2077 msgid "Allowing alternative option prefixes like ``+`` and ``/``." msgstr "" -#: ../Doc/library/argparse.rst:2068 +#: ../Doc/library/argparse.rst:2078 msgid "Handling zero-or-more and one-or-more style arguments." msgstr "" -#: ../Doc/library/argparse.rst:2069 +#: ../Doc/library/argparse.rst:2079 msgid "Producing more informative usage messages." msgstr "Fournir des message d'aide plus complets." -#: ../Doc/library/argparse.rst:2070 +#: ../Doc/library/argparse.rst:2080 msgid "Providing a much simpler interface for custom ``type`` and ``action``." msgstr "" -#: ../Doc/library/argparse.rst:2072 +#: ../Doc/library/argparse.rst:2082 msgid "A partial upgrade path from :mod:`optparse` to :mod:`argparse`:" msgstr "" -#: ../Doc/library/argparse.rst:2074 +#: ../Doc/library/argparse.rst:2084 msgid "" "Replace all :meth:`optparse.OptionParser.add_option` calls with :meth:" "`ArgumentParser.add_argument` calls." msgstr "" -#: ../Doc/library/argparse.rst:2077 +#: ../Doc/library/argparse.rst:2087 msgid "" "Replace ``(options, args) = parser.parse_args()`` with ``args = parser." "parse_args()`` and add additional :meth:`ArgumentParser.add_argument` calls " @@ -1718,39 +1724,39 @@ msgid "" "``options``, now in the :mod:`argparse` context is called ``args``." msgstr "" -#: ../Doc/library/argparse.rst:2082 +#: ../Doc/library/argparse.rst:2092 msgid "" "Replace :meth:`optparse.OptionParser.disable_interspersed_args` by using :" "meth:`~ArgumentParser.parse_intermixed_args` instead of :meth:" "`~ArgumentParser.parse_args`." msgstr "" -#: ../Doc/library/argparse.rst:2086 +#: ../Doc/library/argparse.rst:2096 msgid "" "Replace callback actions and the ``callback_*`` keyword arguments with " "``type`` or ``action`` arguments." msgstr "" -#: ../Doc/library/argparse.rst:2089 +#: ../Doc/library/argparse.rst:2099 msgid "" "Replace string names for ``type`` keyword arguments with the corresponding " "type objects (e.g. int, float, complex, etc)." msgstr "" -#: ../Doc/library/argparse.rst:2092 +#: ../Doc/library/argparse.rst:2102 msgid "" "Replace :class:`optparse.Values` with :class:`Namespace` and :exc:`optparse." "OptionError` and :exc:`optparse.OptionValueError` with :exc:`ArgumentError`." msgstr "" -#: ../Doc/library/argparse.rst:2096 +#: ../Doc/library/argparse.rst:2106 msgid "" "Replace strings with implicit arguments such as ``%default`` or ``%prog`` " "with the standard Python syntax to use dictionaries to format strings, that " "is, ``%(default)s`` and ``%(prog)s``." msgstr "" -#: ../Doc/library/argparse.rst:2100 +#: ../Doc/library/argparse.rst:2110 msgid "" "Replace the OptionParser constructor ``version`` argument with a call to " "``parser.add_argument('--version', action='version', version='\n" "Language-Team: FRENCH \n" @@ -1909,18 +1909,18 @@ msgstr "" #: ../Doc/library/asyncio-eventloop.rst:1627 msgid "" "Another similar :ref:`example ` " -"using the high-level :func:`asyncio.connect` function and streams." +"using the high-level :func:`asyncio.open_connection` function and streams." msgstr "" -#: ../Doc/library/asyncio-eventloop.rst:1634 +#: ../Doc/library/asyncio-eventloop.rst:1635 msgid "Set signal handlers for SIGINT and SIGTERM" msgstr "Définit les gestionnaires de signaux pour *SIGINT* et *SIGTERM*" -#: ../Doc/library/asyncio-eventloop.rst:1636 +#: ../Doc/library/asyncio-eventloop.rst:1637 msgid "(This ``signals`` example only works on Unix.)" msgstr "(Cet exemple ne fonctionne que sur Unix.)" -#: ../Doc/library/asyncio-eventloop.rst:1638 +#: ../Doc/library/asyncio-eventloop.rst:1639 msgid "" "Register handlers for signals :py:data:`SIGINT` and :py:data:`SIGTERM` using " "the :meth:`loop.add_signal_handler` method::" diff --git a/library/asyncio-exceptions.po b/library/asyncio-exceptions.po index 13562feee..36750930b 100644 --- a/library/asyncio-exceptions.po +++ b/library/asyncio-exceptions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.7\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-11-29 16:06+0100\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -38,62 +38,56 @@ msgid "" msgstr "" #: ../Doc/library/asyncio-exceptions.rst:30 -msgid "" -"This exception is a subclass of :exc:`Exception`, so it can be accidentally " -"suppressed by an overly broad ``try..except`` block::" -msgstr "" - -#: ../Doc/library/asyncio-exceptions.rst:40 -msgid "Instead, the following pattern should be used::" +msgid ":exc:`CancelledError` is now a subclass of :class:`BaseException`." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:52 +#: ../Doc/library/asyncio-exceptions.rst:35 msgid "Invalid internal state of :class:`Task` or :class:`Future`." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:54 +#: ../Doc/library/asyncio-exceptions.rst:37 msgid "" "Can be raised in situations like setting a result value for a *Future* " "object that already has a result value set." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:60 +#: ../Doc/library/asyncio-exceptions.rst:43 msgid "" "The \"sendfile\" syscall is not available for the given socket or file type." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:63 +#: ../Doc/library/asyncio-exceptions.rst:46 msgid "A subclass of :exc:`RuntimeError`." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:68 +#: ../Doc/library/asyncio-exceptions.rst:51 msgid "The requested read operation did not complete fully." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:70 +#: ../Doc/library/asyncio-exceptions.rst:53 msgid "Raised by the :ref:`asyncio stream APIs`." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:72 +#: ../Doc/library/asyncio-exceptions.rst:55 msgid "This exception is a subclass of :exc:`EOFError`." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:76 +#: ../Doc/library/asyncio-exceptions.rst:59 msgid "The total number (:class:`int`) of expected bytes." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:80 +#: ../Doc/library/asyncio-exceptions.rst:63 msgid "A string of :class:`bytes` read before the end of stream was reached." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:85 +#: ../Doc/library/asyncio-exceptions.rst:68 msgid "Reached the buffer size limit while looking for a separator." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:87 +#: ../Doc/library/asyncio-exceptions.rst:70 msgid "Raised by the :ref:`asyncio stream APIs `." msgstr "" -#: ../Doc/library/asyncio-exceptions.rst:91 +#: ../Doc/library/asyncio-exceptions.rst:74 msgid "The total number of to be consumed bytes." msgstr "" diff --git a/library/asyncio-protocol.po b/library/asyncio-protocol.po index e36eb1aa1..9c496ba82 100644 --- a/library/asyncio-protocol.po +++ b/library/asyncio-protocol.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-18 22:29+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -962,27 +962,27 @@ msgid "" "data, and waits until the connection is closed::" msgstr "" -#: ../Doc/library/asyncio-protocol.rst:812 +#: ../Doc/library/asyncio-protocol.rst:811 msgid "" "The :ref:`TCP echo client using streams ` " -"example uses the high-level :func:`asyncio.connect` function." +"example uses the high-level :func:`asyncio.open_connection` function." msgstr "" -#: ../Doc/library/asyncio-protocol.rst:819 +#: ../Doc/library/asyncio-protocol.rst:818 msgid "UDP Echo Server" msgstr "Serveur de *ping* en UDP" -#: ../Doc/library/asyncio-protocol.rst:821 +#: ../Doc/library/asyncio-protocol.rst:820 msgid "" "A UDP echo server, using the :meth:`loop.create_datagram_endpoint` method, " "sends back received data::" msgstr "" -#: ../Doc/library/asyncio-protocol.rst:863 +#: ../Doc/library/asyncio-protocol.rst:862 msgid "UDP Echo Client" msgstr "Client de *ping* en UDP" -#: ../Doc/library/asyncio-protocol.rst:865 +#: ../Doc/library/asyncio-protocol.rst:864 msgid "" "A UDP echo client, using the :meth:`loop.create_datagram_endpoint` method, " "sends data and closes the transport when it receives the answer::" @@ -998,35 +998,35 @@ msgid "" "method with a protocol::" msgstr "" -#: ../Doc/library/asyncio-protocol.rst:974 +#: ../Doc/library/asyncio-protocol.rst:975 msgid "" "The :ref:`watch a file descriptor for read events " "` example uses the low-level :meth:`loop." "add_reader` method to register an FD." msgstr "" -#: ../Doc/library/asyncio-protocol.rst:978 +#: ../Doc/library/asyncio-protocol.rst:979 msgid "" "The :ref:`register an open socket to wait for data using streams " "` example uses high-level streams " -"created by the :func:`asyncio.connect` function in a coroutine." +"created by the :func:`open_connection` function in a coroutine." msgstr "" -#: ../Doc/library/asyncio-protocol.rst:985 +#: ../Doc/library/asyncio-protocol.rst:986 msgid "loop.subprocess_exec() and SubprocessProtocol" msgstr "" -#: ../Doc/library/asyncio-protocol.rst:987 +#: ../Doc/library/asyncio-protocol.rst:988 msgid "" "An example of a subprocess protocol used to get the output of a subprocess " "and to wait for the subprocess exit." msgstr "" -#: ../Doc/library/asyncio-protocol.rst:990 +#: ../Doc/library/asyncio-protocol.rst:991 msgid "The subprocess is created by th :meth:`loop.subprocess_exec` method::" msgstr "" -#: ../Doc/library/asyncio-protocol.rst:1036 +#: ../Doc/library/asyncio-protocol.rst:1037 msgid "" "See also the :ref:`same example ` " "written using high-level APIs." diff --git a/library/asyncio-queue.po b/library/asyncio-queue.po index 778176e72..6630a6908 100644 --- a/library/asyncio-queue.po +++ b/library/asyncio-queue.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-10-09 17:54+0200\n" "PO-Revision-Date: 2018-10-13 17:37+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -56,44 +56,48 @@ msgid "" "always known and can be returned by calling the :meth:`qsize` method." msgstr "" -#: ../Doc/library/asyncio-queue.rst:35 -msgid "This class is :ref:`not thread safe `." +#: ../Doc/library/asyncio-queue.rst:38 +msgid "The *loop* parameter." msgstr "" #: ../Doc/library/asyncio-queue.rst:39 +msgid "This class is :ref:`not thread safe `." +msgstr "" + +#: ../Doc/library/asyncio-queue.rst:43 msgid "Number of items allowed in the queue." msgstr "Nombre d'éléments autorisés dans la queue." -#: ../Doc/library/asyncio-queue.rst:43 +#: ../Doc/library/asyncio-queue.rst:47 msgid "Return ``True`` if the queue is empty, ``False`` otherwise." msgstr "Renvoie ``True`` si la queue est vide, ``False`` sinon." -#: ../Doc/library/asyncio-queue.rst:47 +#: ../Doc/library/asyncio-queue.rst:51 msgid "Return ``True`` if there are :attr:`maxsize` items in the queue." msgstr "" -#: ../Doc/library/asyncio-queue.rst:49 +#: ../Doc/library/asyncio-queue.rst:53 msgid "" "If the queue was initialized with ``maxsize=0`` (the default), then :meth:" "`full()` never returns ``True``." msgstr "" -#: ../Doc/library/asyncio-queue.rst:54 +#: ../Doc/library/asyncio-queue.rst:58 msgid "" "Remove and return an item from the queue. If queue is empty, wait until an " "item is available." msgstr "" -#: ../Doc/library/asyncio-queue.rst:59 +#: ../Doc/library/asyncio-queue.rst:63 msgid "" "Return an item if one is immediately available, else raise :exc:`QueueEmpty`." msgstr "" -#: ../Doc/library/asyncio-queue.rst:64 +#: ../Doc/library/asyncio-queue.rst:68 msgid "Block until all items in the queue have been received and processed." msgstr "" -#: ../Doc/library/asyncio-queue.rst:66 +#: ../Doc/library/asyncio-queue.rst:70 msgid "" "The count of unfinished tasks goes up whenever an item is added to the " "queue. The count goes down whenever a consumer coroutine calls :meth:" @@ -102,93 +106,93 @@ msgid "" "unblocks." msgstr "" -#: ../Doc/library/asyncio-queue.rst:74 +#: ../Doc/library/asyncio-queue.rst:78 msgid "" "Put an item into the queue. If the queue is full, wait until a free slot is " "available before adding the item." msgstr "" -#: ../Doc/library/asyncio-queue.rst:79 +#: ../Doc/library/asyncio-queue.rst:83 msgid "Put an item into the queue without blocking." msgstr "Ajoute un élément dans la queue sans bloquer." -#: ../Doc/library/asyncio-queue.rst:81 +#: ../Doc/library/asyncio-queue.rst:85 msgid "If no free slot is immediately available, raise :exc:`QueueFull`." msgstr "" -#: ../Doc/library/asyncio-queue.rst:85 +#: ../Doc/library/asyncio-queue.rst:89 msgid "Return the number of items in the queue." msgstr "Renvoie le nombre d'éléments dans la queue." -#: ../Doc/library/asyncio-queue.rst:89 +#: ../Doc/library/asyncio-queue.rst:93 msgid "Indicate that a formerly enqueued task is complete." msgstr "" -#: ../Doc/library/asyncio-queue.rst:91 +#: ../Doc/library/asyncio-queue.rst:95 msgid "" "Used by queue consumers. For each :meth:`~Queue.get` used to fetch a task, a " "subsequent call to :meth:`task_done` tells the queue that the processing on " "the task is complete." msgstr "" -#: ../Doc/library/asyncio-queue.rst:95 +#: ../Doc/library/asyncio-queue.rst:99 msgid "" "If a :meth:`join` is currently blocking, it will resume when all items have " "been processed (meaning that a :meth:`task_done` call was received for every " "item that had been :meth:`~Queue.put` into the queue)." msgstr "" -#: ../Doc/library/asyncio-queue.rst:100 +#: ../Doc/library/asyncio-queue.rst:104 msgid "" "Raises :exc:`ValueError` if called more times than there were items placed " "in the queue." msgstr "" -#: ../Doc/library/asyncio-queue.rst:105 +#: ../Doc/library/asyncio-queue.rst:109 msgid "Priority Queue" msgstr "File de priorité" -#: ../Doc/library/asyncio-queue.rst:109 +#: ../Doc/library/asyncio-queue.rst:113 msgid "" "A variant of :class:`Queue`; retrieves entries in priority order (lowest " "first)." msgstr "" -#: ../Doc/library/asyncio-queue.rst:112 +#: ../Doc/library/asyncio-queue.rst:116 msgid "Entries are typically tuples of the form ``(priority_number, data)``." msgstr "" -#: ../Doc/library/asyncio-queue.rst:117 +#: ../Doc/library/asyncio-queue.rst:121 msgid "LIFO Queue" msgstr "" -#: ../Doc/library/asyncio-queue.rst:121 +#: ../Doc/library/asyncio-queue.rst:125 msgid "" "A variant of :class:`Queue` that retrieves most recently added entries first " "(last in, first out)." msgstr "" -#: ../Doc/library/asyncio-queue.rst:126 +#: ../Doc/library/asyncio-queue.rst:130 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/library/asyncio-queue.rst:130 +#: ../Doc/library/asyncio-queue.rst:134 msgid "" "This exception is raised when the :meth:`~Queue.get_nowait` method is called " "on an empty queue." msgstr "" -#: ../Doc/library/asyncio-queue.rst:136 +#: ../Doc/library/asyncio-queue.rst:140 msgid "" "Exception raised when the :meth:`~Queue.put_nowait` method is called on a " "queue that has reached its *maxsize*." msgstr "" -#: ../Doc/library/asyncio-queue.rst:141 +#: ../Doc/library/asyncio-queue.rst:145 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/asyncio-queue.rst:145 +#: ../Doc/library/asyncio-queue.rst:149 msgid "" "Queues can be used to distribute workload between several concurrent tasks::" msgstr "" diff --git a/library/asyncio-stream.po b/library/asyncio-stream.po index 74c779df2..9c3c8daf9 100644 --- a/library/asyncio-stream.po +++ b/library/asyncio-stream.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-06 13:48+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -29,83 +29,59 @@ msgstr "" msgid "Here is an example of a TCP echo client written using asyncio streams::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:31 +#: ../Doc/library/asyncio-stream.rst:38 msgid "See also the `Examples`_ section below." msgstr "" -#: ../Doc/library/asyncio-stream.rst:35 +#: ../Doc/library/asyncio-stream.rst:42 msgid "Stream Functions" msgstr "" -#: ../Doc/library/asyncio-stream.rst:36 +#: ../Doc/library/asyncio-stream.rst:43 msgid "" "The following top-level asyncio functions can be used to create and work " "with streams:" msgstr "" -#: ../Doc/library/asyncio-stream.rst:46 -msgid "" -"Connect to TCP socket on *host* : *port* address and return a :class:" -"`Stream` object of mode :attr:`StreamMode.READWRITE`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:50 ../Doc/library/asyncio-stream.rst:164 -msgid "" -"*limit* determines the buffer size limit used by the returned :class:" -"`Stream` instance. By default the *limit* is set to 64 KiB." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:53 ../Doc/library/asyncio-stream.rst:84 -msgid "" -"The rest of the arguments are passed directly to :meth:`loop." -"create_connection`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:55 ../Doc/library/asyncio-stream.rst:169 -msgid "The function can be used with ``await`` to get a connected stream::" -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:59 ../Doc/library/asyncio-stream.rst:173 -msgid "The function can also be used as an async context manager::" -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:71 +#: ../Doc/library/asyncio-stream.rst:52 msgid "" "Establish a network connection and return a pair of ``(reader, writer)`` " "objects." msgstr "" -#: ../Doc/library/asyncio-stream.rst:74 +#: ../Doc/library/asyncio-stream.rst:55 msgid "" "The returned *reader* and *writer* objects are instances of :class:" "`StreamReader` and :class:`StreamWriter` classes." msgstr "" -#: ../Doc/library/asyncio-stream.rst:77 +#: ../Doc/library/asyncio-stream.rst:58 msgid "" "The *loop* argument is optional and can always be determined automatically " "when this function is awaited from a coroutine." msgstr "" -#: ../Doc/library/asyncio-stream.rst:80 ../Doc/library/asyncio-stream.rst:117 +#: ../Doc/library/asyncio-stream.rst:61 ../Doc/library/asyncio-stream.rst:94 msgid "" "*limit* determines the buffer size limit used by the returned :class:" "`StreamReader` instance. By default the *limit* is set to 64 KiB." msgstr "" -#: ../Doc/library/asyncio-stream.rst:89 ../Doc/library/asyncio-stream.rst:197 -msgid "The *ssl_handshake_timeout* parameter." +#: ../Doc/library/asyncio-stream.rst:65 +msgid "" +"The rest of the arguments are passed directly to :meth:`loop." +"create_connection`." msgstr "" -#: ../Doc/library/asyncio-stream.rst:93 -msgid "`open_connection()` is deprecated in favor of :func:`connect`." +#: ../Doc/library/asyncio-stream.rst:70 ../Doc/library/asyncio-stream.rst:123 +msgid "The *ssl_handshake_timeout* parameter." msgstr "" -#: ../Doc/library/asyncio-stream.rst:103 +#: ../Doc/library/asyncio-stream.rst:80 msgid "Start a socket server." msgstr "" -#: ../Doc/library/asyncio-stream.rst:105 +#: ../Doc/library/asyncio-stream.rst:82 msgid "" "The *client_connected_cb* callback is called whenever a new client " "connection is established. It receives a ``(reader, writer)`` pair as two " @@ -113,321 +89,143 @@ msgid "" "classes." msgstr "" -#: ../Doc/library/asyncio-stream.rst:110 ../Doc/library/asyncio-stream.rst:249 -#: ../Doc/library/asyncio-stream.rst:316 +#: ../Doc/library/asyncio-stream.rst:87 msgid "" "*client_connected_cb* can be a plain callable or a :ref:`coroutine function " "`; if it is a coroutine function, it will be automatically " "scheduled as a :class:`Task`." msgstr "" -#: ../Doc/library/asyncio-stream.rst:114 +#: ../Doc/library/asyncio-stream.rst:91 msgid "" "The *loop* argument is optional and can always be determined automatically " "when this method is awaited from a coroutine." msgstr "" -#: ../Doc/library/asyncio-stream.rst:121 ../Doc/library/asyncio-stream.rst:257 +#: ../Doc/library/asyncio-stream.rst:98 msgid "" "The rest of the arguments are passed directly to :meth:`loop.create_server`." msgstr "" -#: ../Doc/library/asyncio-stream.rst:126 ../Doc/library/asyncio-stream.rst:223 +#: ../Doc/library/asyncio-stream.rst:103 ../Doc/library/asyncio-stream.rst:145 msgid "The *ssl_handshake_timeout* and *start_serving* parameters." msgstr "" -#: ../Doc/library/asyncio-stream.rst:130 -msgid "`start_server()` is deprecated if favor of :class:`StreamServer`" -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:134 -msgid "" -"Takes a :term:`file-like object ` *pipe* to return a :class:" -"`Stream` object of the mode :attr:`StreamMode.READ` that has similar API of :" -"class:`StreamReader`. It can also be used as an async context manager." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:138 ../Doc/library/asyncio-stream.rst:149 -msgid "" -"*limit* determines the buffer size limit used by the returned :class:" -"`Stream` instance. By default the limit is set to 64 KiB." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:145 -msgid "" -"Takes a :term:`file-like object ` *pipe* to return a :class:" -"`Stream` object of the mode :attr:`StreamMode.WRITE` that has similar API " -"of :class:`StreamWriter`. It can also be used as an async context manager." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:155 +#: ../Doc/library/asyncio-stream.rst:107 msgid "Unix Sockets" msgstr "" -#: ../Doc/library/asyncio-stream.rst:160 -msgid "" -"Establish a Unix socket connection to socket with *path* address and return " -"an awaitable :class:`Stream` object of the mode :attr:`StreamMode.READWRITE` " -"that can be used as a reader and a writer." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:167 -msgid "" -"The rest of the arguments are passed directly to :meth:`loop." -"create_unix_connection`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:179 ../Doc/library/asyncio-stream.rst:194 -#: ../Doc/library/asyncio-stream.rst:220 ../Doc/library/asyncio-stream.rst:360 -msgid ":ref:`Availability `: Unix." -msgstr ":ref:`Disponibilité ` : Unix." - -#: ../Doc/library/asyncio-stream.rst:186 +#: ../Doc/library/asyncio-stream.rst:112 msgid "" "Establish a Unix socket connection and return a pair of ``(reader, writer)``." msgstr "" -#: ../Doc/library/asyncio-stream.rst:189 +#: ../Doc/library/asyncio-stream.rst:115 msgid "Similar to :func:`open_connection` but operates on Unix sockets." msgstr "" -#: ../Doc/library/asyncio-stream.rst:191 +#: ../Doc/library/asyncio-stream.rst:117 msgid "See also the documentation of :meth:`loop.create_unix_connection`." msgstr "" -#: ../Doc/library/asyncio-stream.rst:201 -msgid "The *path* parameter can now be a :term:`path-like object`" -msgstr "" +#: ../Doc/library/asyncio-stream.rst:120 ../Doc/library/asyncio-stream.rst:142 +msgid ":ref:`Availability `: Unix." +msgstr ":ref:`Disponibilité ` : Unix." -#: ../Doc/library/asyncio-stream.rst:205 -msgid "" -"``open_unix_connection()`` is deprecated if favor of :func:`connect_unix`." +#: ../Doc/library/asyncio-stream.rst:127 +msgid "The *path* parameter can now be a :term:`path-like object`" msgstr "" -#: ../Doc/library/asyncio-stream.rst:213 +#: ../Doc/library/asyncio-stream.rst:135 msgid "Start a Unix socket server." msgstr "" -#: ../Doc/library/asyncio-stream.rst:215 +#: ../Doc/library/asyncio-stream.rst:137 msgid "Similar to :func:`start_server` but works with Unix sockets." msgstr "" -#: ../Doc/library/asyncio-stream.rst:217 +#: ../Doc/library/asyncio-stream.rst:139 msgid "See also the documentation of :meth:`loop.create_unix_server`." msgstr "" -#: ../Doc/library/asyncio-stream.rst:227 +#: ../Doc/library/asyncio-stream.rst:149 msgid "The *path* parameter can now be a :term:`path-like object`." msgstr "" -#: ../Doc/library/asyncio-stream.rst:231 -msgid "" -"``start_unix_server()`` is deprecated in favor of :class:`UnixStreamServer`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:237 -msgid "StreamServer" -msgstr "StreamServer" - -#: ../Doc/library/asyncio-stream.rst:245 ../Doc/library/asyncio-stream.rst:312 -msgid "" -"The *client_connected_cb* callback is called whenever a new client " -"connection is established. It receives a :class:`Stream` object of the " -"mode :attr:`StreamMode.READWRITE`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:253 ../Doc/library/asyncio-stream.rst:320 -msgid "" -"*limit* determines the buffer size limit used by the returned :class:" -"`Stream` instance. By default the *limit* is set to 64 KiB." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:262 ../Doc/library/asyncio-stream.rst:329 -msgid "Binds to the given host and port to start the server." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:266 -msgid "" -"Start accepting connections until the coroutine is cancelled. Cancellation " -"of ``serve_forever`` task causes the server to be closed." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:270 -msgid "" -"This method can be called if the server is already accepting connections. " -"Only one ``serve_forever`` task can exist per one *Server* object." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:276 ../Doc/library/asyncio-stream.rst:333 -msgid "Returns ``True`` if the server is bound and currently serving." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:280 -msgid "" -"Bind the server to the given *host* and *port*. This method is automatically " -"called during ``__aenter__`` when :class:`StreamServer` is used as an async " -"context manager." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:286 ../Doc/library/asyncio-stream.rst:343 -msgid "Return ``True`` if the server is bound." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:290 ../Doc/library/asyncio-stream.rst:347 -msgid "Closes the connection and cancels all pending tasks." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:294 -msgid "" -"Closes the connection. This method is automatically called during " -"``__aexit__`` when :class:`StreamServer` is used as an async context manager." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:300 ../Doc/library/asyncio-stream.rst:357 -msgid "Returns a tuple of socket objects the server is bound to." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:306 -msgid "UnixStreamServer" -msgstr "UnixStreamServer" - -#: ../Doc/library/asyncio-stream.rst:324 -msgid "" -"The rest of the arguments are passed directly to :meth:`loop." -"create_unix_server`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:337 -msgid "" -"Bind the server to the given *host* and *port*. This method is automatically " -"called during ``__aenter__`` when :class:`UnixStreamServer` is used as an " -"async context manager." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:351 -msgid "" -"Closes the connection. This method is automatically called during " -"``__aexit__`` when :class:`UnixStreamServer` is used as an async context " -"manager." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:364 -msgid "Stream" -msgstr "Stream" - -#: ../Doc/library/asyncio-stream.rst:368 -msgid "" -"Represents a Stream object that provides APIs to read and write data to the " -"IO stream . It includes the API provided by :class:`StreamReader` and :class:" -"`StreamWriter`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:372 -msgid "" -"Do not instantiate *Stream* objects directly; use API like :func:`connect` " -"and :class:`StreamServer` instead." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:379 -msgid "StreamMode" -msgstr "StreamMode" - -#: ../Doc/library/asyncio-stream.rst:383 -msgid "" -"A subclass of :class:`enum.Flag` that defines a set of values that can be " -"used to determine the ``mode`` of :class:`Stream` objects." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:388 -msgid "" -"The stream object is readable and provides the API of :class:`StreamReader`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:392 -msgid "" -"The stream object is writeable and provides the API of :class:`StreamWriter`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:396 -msgid "" -"The stream object is readable and writeable and provides the API of both :" -"class:`StreamReader` and :class:`StreamWriter`." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:403 +#: ../Doc/library/asyncio-stream.rst:153 msgid "StreamReader" msgstr "StreamReader" -#: ../Doc/library/asyncio-stream.rst:407 +#: ../Doc/library/asyncio-stream.rst:157 msgid "" "Represents a reader object that provides APIs to read data from the IO " "stream." msgstr "" -#: ../Doc/library/asyncio-stream.rst:410 +#: ../Doc/library/asyncio-stream.rst:160 msgid "" "It is not recommended to instantiate *StreamReader* objects directly; use :" "func:`open_connection` and :func:`start_server` instead." msgstr "" -#: ../Doc/library/asyncio-stream.rst:416 +#: ../Doc/library/asyncio-stream.rst:166 msgid "" "Read up to *n* bytes. If *n* is not provided, or set to ``-1``, read until " "EOF and return all read bytes." msgstr "" -#: ../Doc/library/asyncio-stream.rst:419 +#: ../Doc/library/asyncio-stream.rst:169 msgid "" "If EOF was received and the internal buffer is empty, return an empty " "``bytes`` object." msgstr "" -#: ../Doc/library/asyncio-stream.rst:424 +#: ../Doc/library/asyncio-stream.rst:174 msgid "" "Read one line, where \"line\" is a sequence of bytes ending with ``\\n``." msgstr "" -#: ../Doc/library/asyncio-stream.rst:427 +#: ../Doc/library/asyncio-stream.rst:177 msgid "" "If EOF is received and ``\\n`` was not found, the method returns partially " "read data." msgstr "" -#: ../Doc/library/asyncio-stream.rst:430 +#: ../Doc/library/asyncio-stream.rst:180 msgid "" "If EOF is received and the internal buffer is empty, return an empty " "``bytes`` object." msgstr "" -#: ../Doc/library/asyncio-stream.rst:435 +#: ../Doc/library/asyncio-stream.rst:185 msgid "Read exactly *n* bytes." msgstr "" -#: ../Doc/library/asyncio-stream.rst:437 +#: ../Doc/library/asyncio-stream.rst:187 msgid "" "Raise an :exc:`IncompleteReadError` if EOF is reached before *n* can be " "read. Use the :attr:`IncompleteReadError.partial` attribute to get the " "partially read data." msgstr "" -#: ../Doc/library/asyncio-stream.rst:443 +#: ../Doc/library/asyncio-stream.rst:193 msgid "Read data from the stream until *separator* is found." msgstr "" -#: ../Doc/library/asyncio-stream.rst:445 +#: ../Doc/library/asyncio-stream.rst:195 msgid "" "On success, the data and separator will be removed from the internal buffer " "(consumed). Returned data will include the separator at the end." msgstr "" -#: ../Doc/library/asyncio-stream.rst:449 +#: ../Doc/library/asyncio-stream.rst:199 msgid "" "If the amount of data read exceeds the configured stream limit, a :exc:" "`LimitOverrunError` exception is raised, and the data is left in the " "internal buffer and can be read again." msgstr "" -#: ../Doc/library/asyncio-stream.rst:453 +#: ../Doc/library/asyncio-stream.rst:203 msgid "" "If EOF is reached before the complete separator is found, an :exc:" "`IncompleteReadError` exception is raised, and the internal buffer is " @@ -435,111 +233,77 @@ msgid "" "portion of the separator." msgstr "" -#: ../Doc/library/asyncio-stream.rst:462 +#: ../Doc/library/asyncio-stream.rst:212 msgid "Return ``True`` if the buffer is empty and :meth:`feed_eof` was called." msgstr "" -#: ../Doc/library/asyncio-stream.rst:467 +#: ../Doc/library/asyncio-stream.rst:217 msgid "StreamWriter" msgstr "StreamWriter" -#: ../Doc/library/asyncio-stream.rst:471 +#: ../Doc/library/asyncio-stream.rst:221 msgid "" "Represents a writer object that provides APIs to write data to the IO stream." msgstr "" -#: ../Doc/library/asyncio-stream.rst:474 +#: ../Doc/library/asyncio-stream.rst:224 msgid "" "It is not recommended to instantiate *StreamWriter* objects directly; use :" "func:`open_connection` and :func:`start_server` instead." msgstr "" -#: ../Doc/library/asyncio-stream.rst:480 +#: ../Doc/library/asyncio-stream.rst:230 msgid "" "The method attempts to write the *data* to the underlying socket " "immediately. If that fails, the data is queued in an internal write buffer " "until it can be sent." msgstr "" -#: ../Doc/library/asyncio-stream.rst:484 ../Doc/library/asyncio-stream.rst:507 -msgid "" -"Starting with Python 3.8, it is possible to directly await on the `write()` " -"method::" -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:489 ../Doc/library/asyncio-stream.rst:512 -msgid "" -"The ``await`` pauses the current coroutine until the data is written to the " -"socket." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:492 ../Doc/library/asyncio-stream.rst:515 -#: ../Doc/library/asyncio-stream.rst:535 -msgid "Below is an equivalent code that works with Python <= 3.7::" -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:497 -msgid "Support ``await stream.write(...)`` syntax." +#: ../Doc/library/asyncio-stream.rst:234 ../Doc/library/asyncio-stream.rst:246 +msgid "The method should be used along with the ``drain()`` method::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:502 +#: ../Doc/library/asyncio-stream.rst:241 msgid "" "The method writes a list (or any iterable) of bytes to the underlying socket " "immediately. If that fails, the data is queued in an internal write buffer " "until it can be sent." msgstr "" -#: ../Doc/library/asyncio-stream.rst:520 -msgid "Support ``await stream.writelines()`` syntax." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:525 +#: ../Doc/library/asyncio-stream.rst:253 msgid "The method closes the stream and the underlying socket." msgstr "" -#: ../Doc/library/asyncio-stream.rst:527 -msgid "" -"Starting with Python 3.8, it is possible to directly await on the `close()` " -"method::" -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:532 -msgid "" -"The ``await`` pauses the current coroutine until the stream and the " -"underlying socket are closed (and SSL shutdown is performed for a secure " -"connection)." -msgstr "" - -#: ../Doc/library/asyncio-stream.rst:540 -msgid "Support ``await stream.close()`` syntax." +#: ../Doc/library/asyncio-stream.rst:255 +msgid "The method should be used along with the ``wait_closed()`` method::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:545 +#: ../Doc/library/asyncio-stream.rst:262 msgid "" "Return *True* if the underlying transport supports the :meth:`write_eof` " "method, *False* otherwise." msgstr "" -#: ../Doc/library/asyncio-stream.rst:550 +#: ../Doc/library/asyncio-stream.rst:267 msgid "" "Close the write end of the stream after the buffered write data is flushed." msgstr "" -#: ../Doc/library/asyncio-stream.rst:555 +#: ../Doc/library/asyncio-stream.rst:272 msgid "Return the underlying asyncio transport." msgstr "" -#: ../Doc/library/asyncio-stream.rst:559 +#: ../Doc/library/asyncio-stream.rst:276 msgid "" "Access optional transport information; see :meth:`BaseTransport." "get_extra_info` for details." msgstr "" -#: ../Doc/library/asyncio-stream.rst:564 +#: ../Doc/library/asyncio-stream.rst:281 msgid "Wait until it is appropriate to resume writing to the stream. Example::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:570 +#: ../Doc/library/asyncio-stream.rst:287 msgid "" "This is a flow control method that interacts with the underlying IO write " "buffer. When the size of the buffer reaches the high watermark, *drain()* " @@ -548,96 +312,108 @@ msgid "" "`drain` returns immediately." msgstr "" -#: ../Doc/library/asyncio-stream.rst:579 +#: ../Doc/library/asyncio-stream.rst:296 msgid "" "Return ``True`` if the stream is closed or in the process of being closed." msgstr "" -#: ../Doc/library/asyncio-stream.rst:586 +#: ../Doc/library/asyncio-stream.rst:303 msgid "Wait until the stream is closed." msgstr "" -#: ../Doc/library/asyncio-stream.rst:588 +#: ../Doc/library/asyncio-stream.rst:305 msgid "" "Should be called after :meth:`close` to wait until the underlying connection " "is closed." msgstr "" -#: ../Doc/library/asyncio-stream.rst:595 +#: ../Doc/library/asyncio-stream.rst:312 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/asyncio-stream.rst:600 +#: ../Doc/library/asyncio-stream.rst:317 msgid "TCP echo client using streams" msgstr "" -#: ../Doc/library/asyncio-stream.rst:602 -msgid "TCP echo client using the :func:`asyncio.connect` function::" +#: ../Doc/library/asyncio-stream.rst:319 +msgid "TCP echo client using the :func:`asyncio.open_connection` function::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:619 +#: ../Doc/library/asyncio-stream.rst:341 msgid "" "The :ref:`TCP echo client protocol " "` example uses the low-level :meth:" "`loop.create_connection` method." msgstr "" -#: ../Doc/library/asyncio-stream.rst:626 +#: ../Doc/library/asyncio-stream.rst:348 msgid "TCP echo server using streams" msgstr "" -#: ../Doc/library/asyncio-stream.rst:628 -msgid "TCP echo server using the :class:`asyncio.StreamServer` class::" +#: ../Doc/library/asyncio-stream.rst:350 +msgid "TCP echo server using the :func:`asyncio.start_server` function::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:657 +#: ../Doc/library/asyncio-stream.rst:383 msgid "" "The :ref:`TCP echo server protocol " "` example uses the :meth:`loop." "create_server` method." msgstr "" -#: ../Doc/library/asyncio-stream.rst:662 +#: ../Doc/library/asyncio-stream.rst:388 msgid "Get HTTP headers" msgstr "Récupère les en-têtes HTTP" -#: ../Doc/library/asyncio-stream.rst:664 +#: ../Doc/library/asyncio-stream.rst:390 msgid "" "Simple example querying HTTP headers of the URL passed on the command line::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:696 +#: ../Doc/library/asyncio-stream.rst:428 msgid "Usage::" msgstr "Utilisation ::" -#: ../Doc/library/asyncio-stream.rst:700 +#: ../Doc/library/asyncio-stream.rst:432 msgid "or with HTTPS::" msgstr "ou avec HTTPS ::" -#: ../Doc/library/asyncio-stream.rst:708 +#: ../Doc/library/asyncio-stream.rst:440 msgid "Register an open socket to wait for data using streams" msgstr "" -#: ../Doc/library/asyncio-stream.rst:710 +#: ../Doc/library/asyncio-stream.rst:442 msgid "" -"Coroutine waiting until a socket receives data using the :func:`asyncio." -"connect` function::" +"Coroutine waiting until a socket receives data using the :func:" +"`open_connection` function::" msgstr "" -#: ../Doc/library/asyncio-stream.rst:742 +#: ../Doc/library/asyncio-stream.rst:476 msgid "" "The :ref:`register an open socket to wait for data using a protocol " "` example uses a low-level protocol and " "the :meth:`loop.create_connection` method." msgstr "" -#: ../Doc/library/asyncio-stream.rst:746 +#: ../Doc/library/asyncio-stream.rst:480 msgid "" "The :ref:`watch a file descriptor for read events " "` example uses the low-level :meth:`loop." "add_reader` method to watch a file descriptor." msgstr "" +#~ msgid "StreamServer" +#~ msgstr "StreamServer" + +#~ msgid "UnixStreamServer" +#~ msgstr "UnixStreamServer" + +#~ msgid "Stream" +#~ msgstr "Stream" + +#~ msgid "StreamMode" +#~ msgstr "StreamMode" + #~ msgid "This function is a :ref:`coroutine `." #~ msgstr "Cette fonction est une :ref:`coroutine `." diff --git a/library/asyncio-subprocess.po b/library/asyncio-subprocess.po index 896c498af..2be9e97cc 100644 --- a/library/asyncio-subprocess.po +++ b/library/asyncio-subprocess.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-10-15 00:37+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -55,7 +55,7 @@ msgid "Create a subprocess." msgstr "" #: ../Doc/library/asyncio-subprocess.rst:65 -#: ../Doc/library/asyncio-subprocess.rst:80 +#: ../Doc/library/asyncio-subprocess.rst:84 msgid "" "The *limit* argument sets the buffer limit for :class:`StreamReader` " "wrappers for :attr:`Process.stdout` and :attr:`Process.stderr` (if :attr:" @@ -63,7 +63,7 @@ msgid "" msgstr "" #: ../Doc/library/asyncio-subprocess.rst:69 -#: ../Doc/library/asyncio-subprocess.rst:84 +#: ../Doc/library/asyncio-subprocess.rst:88 msgid "Return a :class:`~asyncio.subprocess.Process` instance." msgstr "" @@ -72,16 +72,22 @@ msgid "" "See the documentation of :meth:`loop.subprocess_exec` for other parameters." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:78 +#: ../Doc/library/asyncio-subprocess.rst:76 +#: ../Doc/library/asyncio-subprocess.rst:104 +#, fuzzy +msgid "The *loop* parameter." +msgstr "Autres paramètres :" + +#: ../Doc/library/asyncio-subprocess.rst:82 msgid "Run the *cmd* shell command." msgstr "Exécute la commande *cmd* dans un *shell*." -#: ../Doc/library/asyncio-subprocess.rst:86 +#: ../Doc/library/asyncio-subprocess.rst:90 msgid "" "See the documentation of :meth:`loop.subprocess_shell` for other parameters." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:91 +#: ../Doc/library/asyncio-subprocess.rst:95 msgid "" "It is the application's responsibility to ensure that all whitespace and " "special characters are quoted appropriately to avoid `shell injection " @@ -91,7 +97,7 @@ msgid "" "be used to construct shell commands." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:100 +#: ../Doc/library/asyncio-subprocess.rst:108 msgid "" "The default asyncio event loop implementation on **Windows** does not " "support subprocesses. Subprocesses are available for Windows if a :class:" @@ -99,7 +105,7 @@ msgid "" "` for details." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:108 +#: ../Doc/library/asyncio-subprocess.rst:116 msgid "" "asyncio also has the following *low-level* APIs to work with subprocesses: :" "meth:`loop.subprocess_exec`, :meth:`loop.subprocess_shell`, :meth:`loop." @@ -108,22 +114,22 @@ msgid "" "Protocols `." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:116 +#: ../Doc/library/asyncio-subprocess.rst:124 msgid "Constants" msgstr "Constantes" -#: ../Doc/library/asyncio-subprocess.rst:120 +#: ../Doc/library/asyncio-subprocess.rst:128 msgid "Can be passed to the *stdin*, *stdout* or *stderr* parameters." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:122 +#: ../Doc/library/asyncio-subprocess.rst:130 msgid "" "If *PIPE* is passed to *stdin* argument, the :attr:`Process.stdin ` attribute will point to a :class:`StreamWriter` " "instance." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:126 +#: ../Doc/library/asyncio-subprocess.rst:134 msgid "" "If *PIPE* is passed to *stdout* or *stderr* arguments, the :attr:`Process." "stdout ` and :attr:`Process.stderr " @@ -131,24 +137,24 @@ msgid "" "`StreamReader` instances." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:133 +#: ../Doc/library/asyncio-subprocess.rst:141 msgid "" "Special value that can be used as the *stderr* argument and indicates that " "standard error should be redirected into standard output." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:138 +#: ../Doc/library/asyncio-subprocess.rst:146 msgid "" "Special value that can be used as the *stdin*, *stdout* or *stderr* argument " "to process creation functions. It indicates that the special file :data:`os." "devnull` will be used for the corresponding subprocess stream." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:144 +#: ../Doc/library/asyncio-subprocess.rst:152 msgid "Interacting with Subprocesses" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:146 +#: ../Doc/library/asyncio-subprocess.rst:154 msgid "" "Both :func:`create_subprocess_exec` and :func:`create_subprocess_shell` " "functions return instances of the *Process* class. *Process* is a high-" @@ -156,61 +162,61 @@ msgid "" "their completion." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:153 +#: ../Doc/library/asyncio-subprocess.rst:161 msgid "" "An object that wraps OS processes created by the :func:" "`create_subprocess_exec` and :func:`create_subprocess_shell` functions." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:157 +#: ../Doc/library/asyncio-subprocess.rst:165 msgid "" "This class is designed to have a similar API to the :class:`subprocess." "Popen` class, but there are some notable differences:" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:161 +#: ../Doc/library/asyncio-subprocess.rst:169 msgid "" "unlike Popen, Process instances do not have an equivalent to the :meth:" "`~subprocess.Popen.poll` method;" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:164 +#: ../Doc/library/asyncio-subprocess.rst:172 msgid "" "the :meth:`~asyncio.subprocess.Process.communicate` and :meth:`~asyncio." "subprocess.Process.wait` methods don't have a *timeout* parameter: use the :" "func:`wait_for` function;" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:168 +#: ../Doc/library/asyncio-subprocess.rst:176 msgid "" "the :meth:`Process.wait() ` method is " "asynchronous, whereas :meth:`subprocess.Popen.wait` method is implemented as " "a blocking busy loop;" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:172 +#: ../Doc/library/asyncio-subprocess.rst:180 msgid "the *universal_newlines* parameter is not supported." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:174 +#: ../Doc/library/asyncio-subprocess.rst:182 msgid "This class is :ref:`not thread safe `." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:176 +#: ../Doc/library/asyncio-subprocess.rst:184 msgid "" "See also the :ref:`Subprocess and Threads ` " "section." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:181 +#: ../Doc/library/asyncio-subprocess.rst:189 msgid "Wait for the child process to terminate." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:183 +#: ../Doc/library/asyncio-subprocess.rst:191 msgid "Set and return the :attr:`returncode` attribute." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:187 +#: ../Doc/library/asyncio-subprocess.rst:195 msgid "" "This method can deadlock when using ``stdout=PIPE`` or ``stderr=PIPE`` and " "the child process generates so much output that it blocks waiting for the OS " @@ -218,33 +224,33 @@ msgid "" "using pipes to avoid this condition." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:195 +#: ../Doc/library/asyncio-subprocess.rst:203 msgid "Interact with process:" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:197 +#: ../Doc/library/asyncio-subprocess.rst:205 msgid "send data to *stdin* (if *input* is not ``None``);" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:198 +#: ../Doc/library/asyncio-subprocess.rst:206 msgid "read data from *stdout* and *stderr*, until EOF is reached;" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:199 +#: ../Doc/library/asyncio-subprocess.rst:207 msgid "wait for process to terminate." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:201 +#: ../Doc/library/asyncio-subprocess.rst:209 msgid "" "The optional *input* argument is the data (:class:`bytes` object) that will " "be sent to the child process." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:204 +#: ../Doc/library/asyncio-subprocess.rst:212 msgid "Return a tuple ``(stdout_data, stderr_data)``." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:206 +#: ../Doc/library/asyncio-subprocess.rst:214 msgid "" "If either :exc:`BrokenPipeError` or :exc:`ConnectionResetError` exception is " "raised when writing *input* into *stdin*, the exception is ignored. This " @@ -252,7 +258,7 @@ msgid "" "*stdin*." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:211 +#: ../Doc/library/asyncio-subprocess.rst:219 msgid "" "If it is desired to send data to the process' *stdin*, the process needs to " "be created with ``stdin=PIPE``. Similarly, to get anything other than " @@ -260,7 +266,7 @@ msgid "" "``stdout=PIPE`` and/or ``stderr=PIPE`` arguments." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:217 +#: ../Doc/library/asyncio-subprocess.rst:225 msgid "" "Note, that the data read is buffered in memory, so do not use this method if " "the data size is large or unlimited." @@ -268,22 +274,22 @@ msgstr "" "Notez que 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/asyncio-subprocess.rst:222 +#: ../Doc/library/asyncio-subprocess.rst:230 msgid "Sends the signal *signal* to the child process." msgstr "Envoie le signal *signal* au sous-processus." -#: ../Doc/library/asyncio-subprocess.rst:226 +#: ../Doc/library/asyncio-subprocess.rst:234 msgid "" "On Windows, :py:data:`SIGTERM` is an alias for :meth:`terminate`. " "``CTRL_C_EVENT`` and ``CTRL_BREAK_EVENT`` can be sent to processes started " "with a *creationflags* parameter which includes ``CREATE_NEW_PROCESS_GROUP``." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:233 +#: ../Doc/library/asyncio-subprocess.rst:241 msgid "Stop the child process." msgstr "Arrête le sous-processus." -#: ../Doc/library/asyncio-subprocess.rst:235 +#: ../Doc/library/asyncio-subprocess.rst:243 msgid "" "On POSIX systems this method sends :py:data:`signal.SIGTERM` to the child " "process." @@ -291,44 +297,44 @@ msgstr "" "Sur les systèmes POSIX, cette méthode envoie un :py:data:`signal.SIGTERM` au " "sous-processus." -#: ../Doc/library/asyncio-subprocess.rst:238 +#: ../Doc/library/asyncio-subprocess.rst:246 msgid "" "On Windows the Win32 API function :c:func:`TerminateProcess` is called to " "stop the child process." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:243 +#: ../Doc/library/asyncio-subprocess.rst:251 msgid "Kill the child." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:245 +#: ../Doc/library/asyncio-subprocess.rst:253 msgid "" "On POSIX systems this method sends :py:data:`SIGKILL` to the child process." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:248 +#: ../Doc/library/asyncio-subprocess.rst:256 msgid "On Windows this method is an alias for :meth:`terminate`." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:252 +#: ../Doc/library/asyncio-subprocess.rst:260 msgid "" "Standard input stream (:class:`StreamWriter`) or ``None`` if the process was " "created with ``stdin=None``." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:257 +#: ../Doc/library/asyncio-subprocess.rst:265 msgid "" "Standard output stream (:class:`StreamReader`) or ``None`` if the process " "was created with ``stdout=None``." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:262 +#: ../Doc/library/asyncio-subprocess.rst:270 msgid "" "Standard error stream (:class:`StreamReader`) or ``None`` if the process was " "created with ``stderr=None``." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:267 +#: ../Doc/library/asyncio-subprocess.rst:275 msgid "" "Use the :meth:`communicate` method rather than :attr:`process.stdin.write() " "`, :attr:`await process.stdout.read() ` or :attr:`await " @@ -336,25 +342,25 @@ msgid "" "reading or writing and blocking the child process." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:276 +#: ../Doc/library/asyncio-subprocess.rst:284 msgid "Process identification number (PID)." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:278 +#: ../Doc/library/asyncio-subprocess.rst:286 msgid "" "Note that for processes created by the :func:`create_subprocess_shell` " "function, this attribute is the PID of the spawned shell." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:283 +#: ../Doc/library/asyncio-subprocess.rst:291 msgid "Return code of the process when it exits." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:285 +#: ../Doc/library/asyncio-subprocess.rst:293 msgid "A ``None`` value indicates that the process has not terminated yet." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:287 +#: ../Doc/library/asyncio-subprocess.rst:295 msgid "" "A negative value ``-N`` indicates that the child was terminated by signal " "``N`` (POSIX only)." @@ -362,69 +368,69 @@ msgstr "" "Une valeur négative ``-N`` indique que le sous-processus a été terminé par " "un signal ``N`` (seulement sur les systèmes *POSIX*)." -#: ../Doc/library/asyncio-subprocess.rst:294 +#: ../Doc/library/asyncio-subprocess.rst:302 msgid "Subprocess and Threads" msgstr "Sous-processus et fils d'exécution" -#: ../Doc/library/asyncio-subprocess.rst:296 +#: ../Doc/library/asyncio-subprocess.rst:304 msgid "" "Standard asyncio event loop supports running subprocesses from different " "threads by default." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:299 +#: ../Doc/library/asyncio-subprocess.rst:307 msgid "" "On Windows subprocesses are provided by :class:`ProactorEventLoop` only " "(default), :class:`SelectorEventLoop` has no subprocess support." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:302 +#: ../Doc/library/asyncio-subprocess.rst:310 msgid "" "On UNIX *child watchers* are used for subprocess finish waiting, see :ref:" "`asyncio-watchers` for more info." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:308 +#: ../Doc/library/asyncio-subprocess.rst:316 msgid "" "UNIX switched to use :class:`ThreadedChildWatcher` for spawning subprocesses " "from different threads without any limitation." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:311 +#: ../Doc/library/asyncio-subprocess.rst:319 msgid "" "Spawning a subprocess with *inactive* current child watcher raises :exc:" "`RuntimeError`." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:314 +#: ../Doc/library/asyncio-subprocess.rst:322 msgid "" "Note that alternative event loop implementations might have own limitations; " "please refer to their documentation." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:319 +#: ../Doc/library/asyncio-subprocess.rst:327 msgid "" "The :ref:`Concurrency and multithreading in asyncio ` section." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:324 +#: ../Doc/library/asyncio-subprocess.rst:332 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/asyncio-subprocess.rst:326 +#: ../Doc/library/asyncio-subprocess.rst:334 msgid "" "An example using the :class:`~asyncio.subprocess.Process` class to control a " "subprocess and the :class:`StreamReader` class to read from its standard " "output." msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:332 +#: ../Doc/library/asyncio-subprocess.rst:340 msgid "" "The subprocess is created by the :func:`create_subprocess_exec` function::" msgstr "" -#: ../Doc/library/asyncio-subprocess.rst:359 +#: ../Doc/library/asyncio-subprocess.rst:367 msgid "" "See also the :ref:`same example ` written " "using low-level APIs." @@ -444,9 +450,6 @@ msgstr "" #~ msgid "This function is a :ref:`coroutine `." #~ msgstr "Cette fonction est une :ref:`coroutine `." -#~ msgid "Other parameters:" -#~ msgstr "Autres paramètres :" - #~ msgid "This method is a :ref:`coroutine `." #~ msgstr "Cette méthode est une :ref:`coroutine `." diff --git a/library/asyncio-sync.po b/library/asyncio-sync.po index aadc9b9f7..bd28d8d1e 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: 2019-06-03 22:10+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-10-15 00:46+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -79,64 +79,70 @@ msgstr "" msgid "The preferred way to use a Lock is an :keyword:`async with` statement::" msgstr "" -#: ../Doc/library/asyncio-sync.rst:51 ../Doc/library/asyncio-sync.rst:185 -#: ../Doc/library/asyncio-sync.rst:281 +#: ../Doc/library/asyncio-sync.rst:51 ../Doc/library/asyncio-sync.rst:196 +#: ../Doc/library/asyncio-sync.rst:296 msgid "which is equivalent to::" msgstr "" -#: ../Doc/library/asyncio-sync.rst:64 +#: ../Doc/library/asyncio-sync.rst:64 ../Doc/library/asyncio-sync.rst:110 +#: ../Doc/library/asyncio-sync.rst:186 ../Doc/library/asyncio-sync.rst:286 +#: ../Doc/library/asyncio-sync.rst:341 +msgid "The *loop* parameter." +msgstr "" + +#: ../Doc/library/asyncio-sync.rst:67 msgid "Acquire the lock." msgstr "" -#: ../Doc/library/asyncio-sync.rst:66 +#: ../Doc/library/asyncio-sync.rst:69 msgid "" "This method waits until the lock is *unlocked*, sets it to *locked* and " "returns ``True``." msgstr "" -#: ../Doc/library/asyncio-sync.rst:69 +#: ../Doc/library/asyncio-sync.rst:72 msgid "" "When more than one coroutine is blocked in :meth:`acquire` waiting for the " "lock to be unlocked, only one coroutine eventually proceeds." msgstr "" -#: ../Doc/library/asyncio-sync.rst:73 +#: ../Doc/library/asyncio-sync.rst:76 msgid "" "Acquiring a lock is *fair*: the coroutine that proceeds will be the first " "coroutine that started waiting on the lock." msgstr "" -#: ../Doc/library/asyncio-sync.rst:78 +#: ../Doc/library/asyncio-sync.rst:81 msgid "Release the lock." msgstr "Libère un verrou." -#: ../Doc/library/asyncio-sync.rst:80 +#: ../Doc/library/asyncio-sync.rst:83 msgid "When the lock is *locked*, reset it to *unlocked* and return." msgstr "" -#: ../Doc/library/asyncio-sync.rst:82 +#: ../Doc/library/asyncio-sync.rst:85 msgid "If the lock is *unlocked*, a :exc:`RuntimeError` is raised." msgstr "" -#: ../Doc/library/asyncio-sync.rst:86 +#: ../Doc/library/asyncio-sync.rst:89 msgid "Return ``True`` if the lock is *locked*." msgstr "Donne ``True`` si le verrou est verrouillé." -#: ../Doc/library/asyncio-sync.rst:90 +#: ../Doc/library/asyncio-sync.rst:93 msgid "Event" msgstr "" -#: ../Doc/library/asyncio-sync.rst:94 +#: ../Doc/library/asyncio-sync.rst:97 msgid "An event object. Not thread-safe." msgstr "" -#: ../Doc/library/asyncio-sync.rst:96 +#: ../Doc/library/asyncio-sync.rst:99 msgid "" "An asyncio event can be used to notify multiple asyncio tasks that some " "event has happened." msgstr "" -#: ../Doc/library/asyncio-sync.rst:99 +#: ../Doc/library/asyncio-sync.rst:102 msgid "" "An Event object manages an internal flag that can be set to *true* with the :" "meth:`set` method and reset to *false* with the :meth:`clear` method. The :" @@ -144,57 +150,57 @@ msgid "" "to *false* initially." msgstr "" -#: ../Doc/library/asyncio-sync.rst:106 +#: ../Doc/library/asyncio-sync.rst:113 msgid "Example::" msgstr "Exemple ::" -#: ../Doc/library/asyncio-sync.rst:131 +#: ../Doc/library/asyncio-sync.rst:138 msgid "Wait until the event is set." msgstr "Attend que l'évènement ait une valeur." -#: ../Doc/library/asyncio-sync.rst:133 +#: ../Doc/library/asyncio-sync.rst:140 msgid "" "If the event is set, return ``True`` immediately. Otherwise block until " "another task calls :meth:`set`." msgstr "" -#: ../Doc/library/asyncio-sync.rst:138 +#: ../Doc/library/asyncio-sync.rst:145 msgid "Set the event." msgstr "" -#: ../Doc/library/asyncio-sync.rst:140 +#: ../Doc/library/asyncio-sync.rst:147 msgid "All tasks waiting for event to be set will be immediately awakened." msgstr "" -#: ../Doc/library/asyncio-sync.rst:145 +#: ../Doc/library/asyncio-sync.rst:152 msgid "Clear (unset) the event." msgstr "" -#: ../Doc/library/asyncio-sync.rst:147 +#: ../Doc/library/asyncio-sync.rst:154 msgid "" "Tasks awaiting on :meth:`wait` will now block until the :meth:`set` method " "is called again." msgstr "" -#: ../Doc/library/asyncio-sync.rst:152 +#: ../Doc/library/asyncio-sync.rst:159 msgid "Return ``True`` if the event is set." msgstr "Renvoie ``True`` si l'évènement a une valeur." -#: ../Doc/library/asyncio-sync.rst:156 +#: ../Doc/library/asyncio-sync.rst:163 msgid "Condition" msgstr "" -#: ../Doc/library/asyncio-sync.rst:160 +#: ../Doc/library/asyncio-sync.rst:167 msgid "A Condition object. Not thread-safe." msgstr "" -#: ../Doc/library/asyncio-sync.rst:162 +#: ../Doc/library/asyncio-sync.rst:169 msgid "" "An asyncio condition primitive can be used by a task to wait for some event " "to happen and then get exclusive access to a shared resource." msgstr "" -#: ../Doc/library/asyncio-sync.rst:166 +#: ../Doc/library/asyncio-sync.rst:173 msgid "" "In essence, a Condition object combines the functionality of an :class:" "`Event` and a :class:`Lock`. It is possible to have multiple Condition " @@ -203,96 +209,96 @@ msgid "" "that shared resource." msgstr "" -#: ../Doc/library/asyncio-sync.rst:172 +#: ../Doc/library/asyncio-sync.rst:179 msgid "" "The optional *lock* argument must be a :class:`Lock` object or ``None``. In " "the latter case a new Lock object is created automatically." msgstr "" -#: ../Doc/library/asyncio-sync.rst:176 +#: ../Doc/library/asyncio-sync.rst:187 msgid "" "The preferred way to use a Condition is an :keyword:`async with` statement::" msgstr "" -#: ../Doc/library/asyncio-sync.rst:198 +#: ../Doc/library/asyncio-sync.rst:209 msgid "Acquire the underlying lock." msgstr "" -#: ../Doc/library/asyncio-sync.rst:200 +#: ../Doc/library/asyncio-sync.rst:211 msgid "" "This method waits until the underlying lock is *unlocked*, sets it to " "*locked* and returns ``True``." msgstr "" -#: ../Doc/library/asyncio-sync.rst:205 +#: ../Doc/library/asyncio-sync.rst:216 msgid "" "Wake up at most *n* tasks (1 by default) waiting on this condition. The " "method is no-op if no tasks are waiting." msgstr "" -#: ../Doc/library/asyncio-sync.rst:208 ../Doc/library/asyncio-sync.rst:223 +#: ../Doc/library/asyncio-sync.rst:219 ../Doc/library/asyncio-sync.rst:234 msgid "" "The lock must be acquired before this method is called and released shortly " "after. If called with an *unlocked* lock a :exc:`RuntimeError` error is " "raised." msgstr "" -#: ../Doc/library/asyncio-sync.rst:214 +#: ../Doc/library/asyncio-sync.rst:225 msgid "Return ``True`` if the underlying lock is acquired." msgstr "" -#: ../Doc/library/asyncio-sync.rst:218 +#: ../Doc/library/asyncio-sync.rst:229 msgid "Wake up all tasks waiting on this condition." msgstr "" -#: ../Doc/library/asyncio-sync.rst:220 +#: ../Doc/library/asyncio-sync.rst:231 msgid "This method acts like :meth:`notify`, but wakes up all waiting tasks." msgstr "" -#: ../Doc/library/asyncio-sync.rst:229 +#: ../Doc/library/asyncio-sync.rst:240 msgid "Release the underlying lock." msgstr "Libère le verrou sous-jacent." -#: ../Doc/library/asyncio-sync.rst:231 +#: ../Doc/library/asyncio-sync.rst:242 msgid "When invoked on an unlocked lock, a :exc:`RuntimeError` is raised." msgstr "" -#: ../Doc/library/asyncio-sync.rst:236 +#: ../Doc/library/asyncio-sync.rst:247 msgid "Wait until notified." msgstr "Attends d'être notifié." -#: ../Doc/library/asyncio-sync.rst:238 +#: ../Doc/library/asyncio-sync.rst:249 msgid "" "If the calling task has not acquired the lock when this method is called, a :" "exc:`RuntimeError` is raised." msgstr "" -#: ../Doc/library/asyncio-sync.rst:241 +#: ../Doc/library/asyncio-sync.rst:252 msgid "" "This method releases the underlying lock, and then blocks until it is " "awakened by a :meth:`notify` or :meth:`notify_all` call. Once awakened, the " "Condition re-acquires its lock and this method returns ``True``." msgstr "" -#: ../Doc/library/asyncio-sync.rst:248 +#: ../Doc/library/asyncio-sync.rst:259 msgid "Wait until a predicate becomes *true*." msgstr "Attends jusqu'à ce qu'un prédicat devienne vrai." -#: ../Doc/library/asyncio-sync.rst:250 +#: ../Doc/library/asyncio-sync.rst:261 msgid "" "The predicate must be a callable which result will be interpreted as a " "boolean value. The final value is the return value." msgstr "" -#: ../Doc/library/asyncio-sync.rst:256 +#: ../Doc/library/asyncio-sync.rst:267 msgid "Semaphore" msgstr "Sémaphore" -#: ../Doc/library/asyncio-sync.rst:260 +#: ../Doc/library/asyncio-sync.rst:271 msgid "A Semaphore object. Not thread-safe." msgstr "" -#: ../Doc/library/asyncio-sync.rst:262 +#: ../Doc/library/asyncio-sync.rst:273 msgid "" "A semaphore manages an internal counter which is decremented by each :meth:" "`acquire` call and incremented by each :meth:`release` call. The counter can " @@ -300,61 +306,61 @@ msgid "" "waiting until some task calls :meth:`release`." msgstr "" -#: ../Doc/library/asyncio-sync.rst:268 +#: ../Doc/library/asyncio-sync.rst:279 msgid "" "The optional *value* argument gives the initial value for the internal " "counter (``1`` by default). If the given value is less than ``0`` a :exc:" "`ValueError` is raised." msgstr "" -#: ../Doc/library/asyncio-sync.rst:272 +#: ../Doc/library/asyncio-sync.rst:287 msgid "" "The preferred way to use a Semaphore is an :keyword:`async with` statement::" msgstr "" -#: ../Doc/library/asyncio-sync.rst:294 +#: ../Doc/library/asyncio-sync.rst:309 msgid "Acquire a semaphore." msgstr "" -#: ../Doc/library/asyncio-sync.rst:296 +#: ../Doc/library/asyncio-sync.rst:311 msgid "" "If the internal counter is greater than zero, decrement it by one and return " "``True`` immediately. If it is zero, wait until a :meth:`release` is called " "and return ``True``." msgstr "" -#: ../Doc/library/asyncio-sync.rst:302 +#: ../Doc/library/asyncio-sync.rst:317 msgid "Returns ``True`` if semaphore can not be acquired immediately." msgstr "" -#: ../Doc/library/asyncio-sync.rst:306 +#: ../Doc/library/asyncio-sync.rst:321 msgid "" "Release a semaphore, incrementing the internal counter by one. Can wake up a " "task waiting to acquire the semaphore." msgstr "" -#: ../Doc/library/asyncio-sync.rst:309 +#: ../Doc/library/asyncio-sync.rst:324 msgid "" "Unlike :class:`BoundedSemaphore`, :class:`Semaphore` allows making more " "``release()`` calls than ``acquire()`` calls." msgstr "" -#: ../Doc/library/asyncio-sync.rst:314 +#: ../Doc/library/asyncio-sync.rst:329 msgid "BoundedSemaphore" msgstr "BoundedSemaphore" -#: ../Doc/library/asyncio-sync.rst:318 +#: ../Doc/library/asyncio-sync.rst:333 msgid "A bounded semaphore object. Not thread-safe." msgstr "" -#: ../Doc/library/asyncio-sync.rst:320 +#: ../Doc/library/asyncio-sync.rst:335 msgid "" "Bounded Semaphore is a version of :class:`Semaphore` that raises a :exc:" "`ValueError` in :meth:`~Semaphore.release` if it increases the internal " "counter above the initial *value*." msgstr "" -#: ../Doc/library/asyncio-sync.rst:330 +#: ../Doc/library/asyncio-sync.rst:348 msgid "" "Acquiring a lock using ``await lock`` or ``yield from lock`` and/or :keyword:" "`with` statement (``with await lock``, ``with (yield from lock)``) is " diff --git a/library/asyncio-task.po b/library/asyncio-task.po index c56aceef6..5d5dd3611 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: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-05-23 20:05+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -230,6 +230,10 @@ msgid "Running an asyncio Program" msgstr "Exécution d'un programme *asyncio*" #: ../Doc/library/asyncio-task.rst:215 +msgid "Execute the :term:`coroutine` *coro* and return the result." +msgstr "" + +#: ../Doc/library/asyncio-task.rst:217 msgid "" "This function runs the passed coroutine, taking care of managing the asyncio " "event loop and *finalizing asynchronous generators*." @@ -237,7 +241,7 @@ msgstr "" "Cette fonction exécute la coroutine passée en argument. Elle gère la boucle " "d'événements *asyncio* et *finalise les générateurs asynchrones*." -#: ../Doc/library/asyncio-task.rst:219 +#: ../Doc/library/asyncio-task.rst:221 msgid "" "This function cannot be called when another asyncio event loop is running in " "the same thread." @@ -245,13 +249,13 @@ msgstr "" "Cette fonction ne peut pas être appelée si une autre boucle d'événement " "s'exécute dans le même fil d'exécution." -#: ../Doc/library/asyncio-task.rst:222 +#: ../Doc/library/asyncio-task.rst:224 msgid "If *debug* is ``True``, the event loop will be run in debug mode." msgstr "" "Si *debug* vaut ``True``, la boucle d'événement s'exécute en mode de " "débogage." -#: ../Doc/library/asyncio-task.rst:224 +#: ../Doc/library/asyncio-task.rst:226 msgid "" "This function always creates a new event loop and closes it at the end. It " "should be used as a main entry point for asyncio programs, and should " @@ -261,19 +265,16 @@ msgstr "" "fin. Elle doit être utilisée comme point d'entrée principal des programmes " "*asyncio* et ne doit être idéalement appelée qu'une seule fois." -#: ../Doc/library/asyncio-task.rst:228 -msgid "" -"**Important:** this function has been added to asyncio in Python 3.7 on a :" -"term:`provisional basis `." -msgstr "" -"**Important :** cette fonction a été ajoutée à *asyncio* dans Python 3.7 de :" -"term:`manière provisoire `." +#: ../Doc/library/asyncio-task.rst:230 ../Doc/library/asyncio-task.rst:350 +#: ../Doc/library/asyncio-task.rst:459 ../Doc/library/asyncio-task.rst:589 +msgid "Example::" +msgstr "Exemple ::" -#: ../Doc/library/asyncio-task.rst:234 +#: ../Doc/library/asyncio-task.rst:242 msgid "Creating Tasks" msgstr "Création de tâches" -#: ../Doc/library/asyncio-task.rst:238 +#: ../Doc/library/asyncio-task.rst:246 msgid "" "Wrap the *coro* :ref:`coroutine ` into a :class:`Task` and " "schedule its execution. Return the Task object." @@ -281,13 +282,13 @@ msgstr "" "Encapsule la :ref:`coroutine ` *coro* dans une tâche et la " "planifie pour exécution. Renvoie l'objet :class:`Task`." -#: ../Doc/library/asyncio-task.rst:241 +#: ../Doc/library/asyncio-task.rst:249 msgid "" "If *name* is not ``None``, it is set as the name of the task using :meth:" "`Task.set_name`." msgstr "" -#: ../Doc/library/asyncio-task.rst:244 +#: ../Doc/library/asyncio-task.rst:252 msgid "" "The task is executed in the loop returned by :func:`get_running_loop`, :exc:" "`RuntimeError` is raised if there is no running loop in current thread." @@ -296,7 +297,7 @@ msgstr "" "`get_running_loop` ; :exc:`RuntimeError` est levée s'il n'y a pas de boucle " "en cours d'exécution dans le fil actuel." -#: ../Doc/library/asyncio-task.rst:248 +#: ../Doc/library/asyncio-task.rst:256 msgid "" "This function has been **added in Python 3.7**. Prior to Python 3.7, the " "low-level :func:`asyncio.ensure_future` function can be used instead::" @@ -305,19 +306,19 @@ msgstr "" "antérieures à la 3.7, la fonction de bas-niveau :func:`asyncio." "ensure_future` peut-être utilisée ::" -#: ../Doc/library/asyncio-task.rst:265 ../Doc/library/asyncio-task.rst:694 +#: ../Doc/library/asyncio-task.rst:273 ../Doc/library/asyncio-task.rst:712 msgid "Added the ``name`` parameter." msgstr "" -#: ../Doc/library/asyncio-task.rst:270 +#: ../Doc/library/asyncio-task.rst:278 msgid "Sleeping" msgstr "Attente" -#: ../Doc/library/asyncio-task.rst:274 +#: ../Doc/library/asyncio-task.rst:282 msgid "Block for *delay* seconds." msgstr "Attend pendant *delay* secondes." -#: ../Doc/library/asyncio-task.rst:276 +#: ../Doc/library/asyncio-task.rst:284 msgid "" "If *result* is provided, it is returned to the caller when the coroutine " "completes." @@ -325,30 +326,32 @@ msgstr "" "Si *result* est spécifié, il est renvoyé à l'appelant quand la coroutine se " "termine." -#: ../Doc/library/asyncio-task.rst:279 +#: ../Doc/library/asyncio-task.rst:287 msgid "" "``sleep()`` always suspends the current task, allowing other tasks to run." msgstr "" "``sleep()`` suspend systématiquement la tâche courante, ce qui permet aux " "autres tâches de s'exécuter." -#: ../Doc/library/asyncio-task.rst:284 ../Doc/library/asyncio-task.rst:442 -#: ../Doc/library/asyncio-task.rst:496 +#: ../Doc/library/asyncio-task.rst:292 ../Doc/library/asyncio-task.rst:347 +#: ../Doc/library/asyncio-task.rst:426 ../Doc/library/asyncio-task.rst:456 +#: ../Doc/library/asyncio-task.rst:541 ../Doc/library/asyncio-task.rst:588 +#: ../Doc/library/asyncio-task.rst:717 msgid "The *loop* parameter." msgstr "" -#: ../Doc/library/asyncio-task.rst:287 +#: ../Doc/library/asyncio-task.rst:295 msgid "" "Example of coroutine displaying the current date every second for 5 seconds::" msgstr "" "Exemple d'une coroutine affichant la date toutes les secondes pendant 5 " "secondes ::" -#: ../Doc/library/asyncio-task.rst:306 +#: ../Doc/library/asyncio-task.rst:314 msgid "Running Tasks Concurrently" msgstr "Exécution de tâches de manière concurrente" -#: ../Doc/library/asyncio-task.rst:310 +#: ../Doc/library/asyncio-task.rst:318 msgid "" "Run :ref:`awaitable objects ` in the *aws* sequence " "*concurrently*." @@ -356,7 +359,7 @@ msgstr "" "Exécute les objets :ref:`awaitable ` de la séquence " "*aws*, *de manière concurrente*." -#: ../Doc/library/asyncio-task.rst:313 +#: ../Doc/library/asyncio-task.rst:321 msgid "" "If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " "Task." @@ -364,7 +367,7 @@ msgstr "" "Si un *awaitable* de *aws* est une coroutine, celui-ci est automatiquement " "planifié comme une tâche." -#: ../Doc/library/asyncio-task.rst:316 +#: ../Doc/library/asyncio-task.rst:324 msgid "" "If all awaitables are completed successfully, the result is an aggregate " "list of returned values. The order of result values corresponds to the " @@ -374,7 +377,7 @@ msgstr "" "des valeurs renvoyées. L'ordre de cette liste correspond à l'ordre des " "*awaitables* dans *aws*." -#: ../Doc/library/asyncio-task.rst:320 +#: ../Doc/library/asyncio-task.rst:328 msgid "" "If *return_exceptions* is ``False`` (default), the first raised exception is " "immediately propagated to the task that awaits on ``gather()``. Other " @@ -386,7 +389,7 @@ msgstr "" "``gather()``. Les autres *awaitables* dans la séquence *aws* **ne sont pas " "annulés** et poursuivent leur exécution." -#: ../Doc/library/asyncio-task.rst:325 +#: ../Doc/library/asyncio-task.rst:333 msgid "" "If *return_exceptions* is ``True``, exceptions are treated the same as " "successful results, and aggregated in the result list." @@ -395,7 +398,7 @@ msgstr "" "même manière que les exécutions normales, et incluses dans la liste des " "résultats." -#: ../Doc/library/asyncio-task.rst:328 +#: ../Doc/library/asyncio-task.rst:336 msgid "" "If ``gather()`` is *cancelled*, all submitted awaitables (that have not " "completed yet) are also *cancelled*." @@ -403,7 +406,7 @@ msgstr "" "Si ``gather()`` est *annulé*, tous les *awaitables* en cours (ceux qui n'ont " "pas encore fini de s'exécuter) sont également *annulés*." -#: ../Doc/library/asyncio-task.rst:331 +#: ../Doc/library/asyncio-task.rst:339 msgid "" "If any Task or Future from the *aws* sequence is *cancelled*, it is treated " "as if it raised :exc:`CancelledError` -- the ``gather()`` call is **not** " @@ -416,12 +419,7 @@ msgstr "" "l'annulation d'une tâche ou d'un futur entraîne l'annulation des autres " "tâches ou futurs." -#: ../Doc/library/asyncio-task.rst:339 ../Doc/library/asyncio-task.rst:445 -#: ../Doc/library/asyncio-task.rst:571 -msgid "Example::" -msgstr "Exemple ::" - -#: ../Doc/library/asyncio-task.rst:373 +#: ../Doc/library/asyncio-task.rst:384 msgid "" "If the *gather* itself is cancelled, the cancellation is propagated " "regardless of *return_exceptions*." @@ -429,11 +427,11 @@ msgstr "" "Si *gather* est lui-même annulé, l'annulation est propagée indépendamment de " "*return_exceptions*." -#: ../Doc/library/asyncio-task.rst:379 +#: ../Doc/library/asyncio-task.rst:390 msgid "Shielding From Cancellation" msgstr "Protection contre l'annulation" -#: ../Doc/library/asyncio-task.rst:383 +#: ../Doc/library/asyncio-task.rst:394 msgid "" "Protect an :ref:`awaitable object ` from being :meth:" "`cancelled `." @@ -441,21 +439,21 @@ msgstr "" "Empêche qu'un objet :ref:`awaitable ` puisse être :meth:" "`annulé `." -#: ../Doc/library/asyncio-task.rst:386 ../Doc/library/asyncio-task.rst:423 +#: ../Doc/library/asyncio-task.rst:397 ../Doc/library/asyncio-task.rst:437 msgid "If *aw* is a coroutine it is automatically scheduled as a Task." msgstr "" "Si *aw* est une coroutine, elle est planifiée automatiquement comme une " "tâche." -#: ../Doc/library/asyncio-task.rst:388 +#: ../Doc/library/asyncio-task.rst:399 msgid "The statement::" msgstr "L'instruction ::" -#: ../Doc/library/asyncio-task.rst:392 +#: ../Doc/library/asyncio-task.rst:403 msgid "is equivalent to::" msgstr "est équivalente à ::" -#: ../Doc/library/asyncio-task.rst:396 +#: ../Doc/library/asyncio-task.rst:407 msgid "" "*except* that if the coroutine containing it is cancelled, the Task running " "in ``something()`` is not cancelled. From the point of view of " @@ -469,7 +467,7 @@ msgstr "" "est bien annulé, donc l'expression *await* lève bien une :exc:" "`CancelledError`." -#: ../Doc/library/asyncio-task.rst:402 +#: ../Doc/library/asyncio-task.rst:413 msgid "" "If ``something()`` is cancelled by other means (i.e. from within itself) " "that would also cancel ``shield()``." @@ -477,7 +475,7 @@ msgstr "" "Si ``something()`` est annulée d'une autre façon (*i.e.* depuis elle-même) " "ceci annule également ``shield()``." -#: ../Doc/library/asyncio-task.rst:405 +#: ../Doc/library/asyncio-task.rst:416 msgid "" "If it is desired to completely ignore cancellation (not recommended) the " "``shield()`` function should be combined with a try/except clause, as " @@ -487,11 +485,11 @@ msgstr "" "``shield()`` peut être combinée à une clause *try* / *except*, comme dans le " "code ci-dessous ::" -#: ../Doc/library/asyncio-task.rst:416 +#: ../Doc/library/asyncio-task.rst:430 msgid "Timeouts" msgstr "Délais d'attente" -#: ../Doc/library/asyncio-task.rst:420 +#: ../Doc/library/asyncio-task.rst:434 msgid "" "Wait for the *aw* :ref:`awaitable ` to complete with a " "timeout." @@ -499,7 +497,7 @@ msgstr "" "Attend la fin de l':ref:`awaitable ` *aw* avec délai " "d'attente." -#: ../Doc/library/asyncio-task.rst:425 +#: ../Doc/library/asyncio-task.rst:439 msgid "" "*timeout* can either be ``None`` or a float or int number of seconds to wait " "for. If *timeout* is ``None``, block until the future completes." @@ -508,7 +506,7 @@ msgstr "" "décimal) d'attente. Si *timeout* vaut ``None``, la fonction s'interrompt " "jusqu'à ce que le futur s'achève." -#: ../Doc/library/asyncio-task.rst:429 +#: ../Doc/library/asyncio-task.rst:443 msgid "" "If a timeout occurs, it cancels the task and raises :exc:`asyncio." "TimeoutError`." @@ -516,7 +514,7 @@ msgstr "" "Si le délai d'attente maximal est dépassé, la tâche est annulée et " "l'exception :exc:`asyncio.TimeoutError` est levée." -#: ../Doc/library/asyncio-task.rst:432 +#: ../Doc/library/asyncio-task.rst:446 msgid "" "To avoid the task :meth:`cancellation `, wrap it in :func:" "`shield`." @@ -524,7 +522,7 @@ msgstr "" "Pour empêcher :meth:`l'annulation ` de la tâche, il est " "nécessaire de l'encapsuler dans une fonction :func:`shield`." -#: ../Doc/library/asyncio-task.rst:435 +#: ../Doc/library/asyncio-task.rst:449 msgid "" "The function will wait until the future is actually cancelled, so the total " "wait time may exceed the *timeout*." @@ -532,11 +530,11 @@ msgstr "" "Cette fonction attend que le futur soit réellement annulé, donc le temps " "d'attente total peut être supérieur à *timeout*." -#: ../Doc/library/asyncio-task.rst:438 +#: ../Doc/library/asyncio-task.rst:452 msgid "If the wait is cancelled, the future *aw* is also cancelled." msgstr "Si l'attente est annulée, le futur *aw* est également annulé." -#: ../Doc/library/asyncio-task.rst:465 +#: ../Doc/library/asyncio-task.rst:479 msgid "" "When *aw* is cancelled due to a timeout, ``wait_for`` waits for *aw* to be " "cancelled. Previously, it raised :exc:`asyncio.TimeoutError` immediately." @@ -545,11 +543,11 @@ msgstr "" "``wait_for`` attend que *aw* soit annulée. Auparavant, l'exception :exc:" "`asyncio.TimeoutError` était immédiatement levée." -#: ../Doc/library/asyncio-task.rst:472 +#: ../Doc/library/asyncio-task.rst:486 msgid "Waiting Primitives" msgstr "Primitives d'attente" -#: ../Doc/library/asyncio-task.rst:477 +#: ../Doc/library/asyncio-task.rst:491 msgid "" "Run :ref:`awaitable objects ` in the *aws* set " "concurrently and block until the condition specified by *return_when*." @@ -558,26 +556,15 @@ msgstr "" "*aws* de manière concurrente, et s'interrompt jusqu'à ce que la condition " "décrite dans *return_when* soit vraie." -#: ../Doc/library/asyncio-task.rst:483 -msgid "" -"If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " -"Task. Passing coroutines objects to ``wait()`` directly is deprecated as it " -"leads to :ref:`confusing behavior `." -msgstr "" -"Si un *awaitable* de *aws* est une coroutine, celle-ci est automatiquement " -"planifiée comme une tâche. Passer directement des objets coroutines à " -"``wait()`` est obsolète, car ceci conduisait :ref:`à un comportement portant " -"à confusion `." - -#: ../Doc/library/asyncio-task.rst:488 +#: ../Doc/library/asyncio-task.rst:495 msgid "Returns two sets of Tasks/Futures: ``(done, pending)``." msgstr "Renvoie deux ensembles de *Tasks* / *Futures* : ``(done, pending)``." -#: ../Doc/library/asyncio-task.rst:490 +#: ../Doc/library/asyncio-task.rst:497 msgid "Usage::" msgstr "Utilisation ::" -#: ../Doc/library/asyncio-task.rst:497 +#: ../Doc/library/asyncio-task.rst:501 msgid "" "*timeout* (a float or int), if specified, can be used to control the maximum " "number of seconds to wait before returning." @@ -585,7 +572,7 @@ msgstr "" "*timeout* (entier ou décimal), si précisé, peut-être utilisé pour contrôler " "le nombre maximal de secondes d'attente avant de se terminer." -#: ../Doc/library/asyncio-task.rst:500 +#: ../Doc/library/asyncio-task.rst:504 msgid "" "Note that this function does not raise :exc:`asyncio.TimeoutError`. Futures " "or Tasks that aren't done when the timeout occurs are simply returned in the " @@ -595,7 +582,7 @@ msgstr "" "tâches qui ne sont pas finis quand le délai d'attente maximal est dépassé " "sont tout simplement renvoyés dans le second ensemble." -#: ../Doc/library/asyncio-task.rst:504 +#: ../Doc/library/asyncio-task.rst:508 msgid "" "*return_when* indicates when this function should return. It must be one of " "the following constants:" @@ -603,28 +590,28 @@ msgstr "" "*return_when* indique quand la fonction doit se terminer. Il peut prendre " "les valeurs suivantes :" -#: ../Doc/library/asyncio-task.rst:510 +#: ../Doc/library/asyncio-task.rst:514 msgid "Constant" msgstr "Constante" -#: ../Doc/library/asyncio-task.rst:510 +#: ../Doc/library/asyncio-task.rst:514 msgid "Description" msgstr "Description" -#: ../Doc/library/asyncio-task.rst:512 +#: ../Doc/library/asyncio-task.rst:516 msgid ":const:`FIRST_COMPLETED`" msgstr ":const:`FIRST_COMPLETED`" -#: ../Doc/library/asyncio-task.rst:512 +#: ../Doc/library/asyncio-task.rst:516 msgid "The function will return when any future finishes or is cancelled." msgstr "" "La fonction se termine lorsque n'importe quel futur se termine ou est annulé." -#: ../Doc/library/asyncio-task.rst:515 +#: ../Doc/library/asyncio-task.rst:519 msgid ":const:`FIRST_EXCEPTION`" msgstr ":const:`FIRST_EXCEPTION`" -#: ../Doc/library/asyncio-task.rst:515 +#: ../Doc/library/asyncio-task.rst:519 msgid "" "The function will return when any future finishes by raising an exception. " "If no future raises an exception then it is equivalent to :const:" @@ -634,16 +621,16 @@ msgstr "" "exception. Si aucun *futur* ne lève d'exception, équivaut à :const:" "`ALL_COMPLETED`." -#: ../Doc/library/asyncio-task.rst:521 +#: ../Doc/library/asyncio-task.rst:525 msgid ":const:`ALL_COMPLETED`" msgstr ":const:`ALL_COMPLETED`" -#: ../Doc/library/asyncio-task.rst:521 +#: ../Doc/library/asyncio-task.rst:525 msgid "The function will return when all futures finish or are cancelled." msgstr "" "La fonction se termine lorsque les *futurs* sont tous finis ou annulés." -#: ../Doc/library/asyncio-task.rst:525 +#: ../Doc/library/asyncio-task.rst:529 msgid "" "Unlike :func:`~asyncio.wait_for`, ``wait()`` does not cancel the futures " "when a timeout occurs." @@ -651,7 +638,18 @@ msgstr "" "À la différence de :func:`~asyncio.wait_for`, ``wait()`` n'annule pas les " "futurs quand le délai d'attente est dépassé." -#: ../Doc/library/asyncio-task.rst:531 +#: ../Doc/library/asyncio-task.rst:534 +msgid "" +"If any awaitable in *aws* is a coroutine, it is automatically scheduled as a " +"Task. Passing coroutines objects to ``wait()`` directly is deprecated as it " +"leads to :ref:`confusing behavior `." +msgstr "" +"Si un *awaitable* de *aws* est une coroutine, celle-ci est automatiquement " +"planifiée comme une tâche. Passer directement des objets coroutines à " +"``wait()`` est obsolète, car ceci conduisait :ref:`à un comportement portant " +"à confusion `." + +#: ../Doc/library/asyncio-task.rst:546 msgid "" "``wait()`` schedules coroutines as Tasks automatically and later returns " "those implicitly created Task objects in ``(done, pending)`` sets. " @@ -661,15 +659,15 @@ msgstr "" "renvoie les objets *Task* ainsi créés dans les ensembles ``(done, " "pending)``. Le code suivant ne fonctionne donc pas comme voulu ::" -#: ../Doc/library/asyncio-task.rst:544 +#: ../Doc/library/asyncio-task.rst:559 msgid "Here is how the above snippet can be fixed::" msgstr "Voici comment corriger le morceau de code ci-dessus ::" -#: ../Doc/library/asyncio-task.rst:557 +#: ../Doc/library/asyncio-task.rst:572 msgid "Passing coroutine objects to ``wait()`` directly is deprecated." msgstr "Passer directement des objets coroutines à ``wait()`` est obsolète." -#: ../Doc/library/asyncio-task.rst:563 +#: ../Doc/library/asyncio-task.rst:578 msgid "" "Run :ref:`awaitable objects ` in the *aws* set " "concurrently. Return an iterator of :class:`Future` objects. Each Future " @@ -681,7 +679,7 @@ msgstr "" "`Future`. Chaque objet *futur* renvoyé représente le résultat le plus récent " "de l'ensemble des *awaitables* restants." -#: ../Doc/library/asyncio-task.rst:568 +#: ../Doc/library/asyncio-task.rst:583 msgid "" "Raises :exc:`asyncio.TimeoutError` if the timeout occurs before all Futures " "are done." @@ -689,18 +687,18 @@ msgstr "" "Lève une exception :exc:`asyncio.TimeoutError` si le délai d'attente est " "dépassé avant que tous les futurs ne soient achevés." -#: ../Doc/library/asyncio-task.rst:579 +#: ../Doc/library/asyncio-task.rst:597 msgid "Scheduling From Other Threads" msgstr "Planification depuis d'autres fils d'exécution" -#: ../Doc/library/asyncio-task.rst:583 +#: ../Doc/library/asyncio-task.rst:601 msgid "Submit a coroutine to the given event loop. Thread-safe." msgstr "" "Enregistre une coroutine dans la boucle d'exécution actuelle. Cette " "opération est compatible avec les programmes à multiples fils d'exécution " "(*thread-safe*)." -#: ../Doc/library/asyncio-task.rst:585 +#: ../Doc/library/asyncio-task.rst:603 msgid "" "Return a :class:`concurrent.futures.Future` to wait for the result from " "another OS thread." @@ -708,7 +706,7 @@ msgstr "" "Renvoie un :class:`concurrent.futures.Future` pour attendre le résultat d'un " "autre fil d'exécution du système d'exploitation." -#: ../Doc/library/asyncio-task.rst:588 +#: ../Doc/library/asyncio-task.rst:606 msgid "" "This function is meant to be called from a different OS thread than the one " "where the event loop is running. Example::" @@ -716,7 +714,7 @@ msgstr "" "Cette fonction est faite pour être appelée par un fil d'exécution distinct " "de celui dans laquelle la boucle d'événement s'exécute. Exemple ::" -#: ../Doc/library/asyncio-task.rst:600 +#: ../Doc/library/asyncio-task.rst:618 msgid "" "If an exception is raised in the coroutine, the returned Future will be " "notified. It can also be used to cancel the task in the event loop::" @@ -725,7 +723,7 @@ msgstr "" "averti. Elle peut également être utilisée pour annuler la tâche de la boucle " "d'événement ::" -#: ../Doc/library/asyncio-task.rst:614 +#: ../Doc/library/asyncio-task.rst:632 msgid "" "See the :ref:`concurrency and multithreading ` " "section of the documentation." @@ -733,7 +731,7 @@ msgstr "" "Voir la section :ref:`exécution concurrente et multi-fils d'exécution " "` de la documentation." -#: ../Doc/library/asyncio-task.rst:617 +#: ../Doc/library/asyncio-task.rst:635 msgid "" "Unlike other asyncio functions this function requires the *loop* argument to " "be passed explicitly." @@ -741,11 +739,11 @@ msgstr "" "À la différence des autres fonction d'*asyncio*, cette fonction requiert que " "*loop* soit passé de manière explicite." -#: ../Doc/library/asyncio-task.rst:624 +#: ../Doc/library/asyncio-task.rst:642 msgid "Introspection" msgstr "Introspection" -#: ../Doc/library/asyncio-task.rst:629 +#: ../Doc/library/asyncio-task.rst:647 msgid "" "Return the currently running :class:`Task` instance, or ``None`` if no task " "is running." @@ -753,7 +751,7 @@ msgstr "" "Renvoie l'instance de la :class:`Task` en cours d'exécution, ou ``None`` " "s'il n'y a pas de tâche en cours." -#: ../Doc/library/asyncio-task.rst:632 +#: ../Doc/library/asyncio-task.rst:650 msgid "" "If *loop* is ``None`` :func:`get_running_loop` is used to get the current " "loop." @@ -761,13 +759,13 @@ msgstr "" "Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer " "la boucle en cours d'exécution." -#: ../Doc/library/asyncio-task.rst:640 +#: ../Doc/library/asyncio-task.rst:658 msgid "Return a set of not yet finished :class:`Task` objects run by the loop." msgstr "" "Renvoie l'ensemble des :class:`Task` non terminés en cours d'exécution dans " "la boucle." -#: ../Doc/library/asyncio-task.rst:643 +#: ../Doc/library/asyncio-task.rst:661 msgid "" "If *loop* is ``None``, :func:`get_running_loop` is used for getting current " "loop." @@ -775,11 +773,11 @@ msgstr "" "Si *loop* vaut ``None``, :func:`get_running_loop` est appelée pour récupérer " "la boucle en cours d'exécution." -#: ../Doc/library/asyncio-task.rst:650 +#: ../Doc/library/asyncio-task.rst:668 msgid "Task Object" msgstr "Objets *Task*" -#: ../Doc/library/asyncio-task.rst:654 +#: ../Doc/library/asyncio-task.rst:672 msgid "" "A :class:`Future-like ` object that runs a Python :ref:`coroutine " "`. Not thread-safe." @@ -788,7 +786,7 @@ msgstr "" "`coroutine ` Python. Cet objet n'est pas utilisable dans des " "programmes à fils d'exécution multiples." -#: ../Doc/library/asyncio-task.rst:657 +#: ../Doc/library/asyncio-task.rst:675 msgid "" "Tasks are used to run coroutines in event loops. If a coroutine awaits on a " "Future, the Task suspends the execution of the coroutine and waits for the " @@ -800,7 +798,7 @@ msgstr "" "attend la fin de ce *futur*. Quand celui-ci est terminé, l'exécution de la " "coroutine encapsulée reprend." -#: ../Doc/library/asyncio-task.rst:663 +#: ../Doc/library/asyncio-task.rst:681 msgid "" "Event loops use cooperative scheduling: an event loop runs one Task at a " "time. While a Task awaits for the completion of a Future, the event loop " @@ -811,7 +809,7 @@ msgstr "" "futur, la boucle d'événement exécute d'autres tâches, des fonctions de " "rappel, ou effectue des opérations d'entrées-sorties." -#: ../Doc/library/asyncio-task.rst:668 +#: ../Doc/library/asyncio-task.rst:686 msgid "" "Use the high-level :func:`asyncio.create_task` function to create Tasks, or " "the low-level :meth:`loop.create_task` or :func:`ensure_future` functions. " @@ -822,7 +820,7 @@ msgstr "" "créer des tâches. Il est déconseillé d'instancier manuellement des objets " "*Task*." -#: ../Doc/library/asyncio-task.rst:673 +#: ../Doc/library/asyncio-task.rst:691 msgid "" "To cancel a running Task use the :meth:`cancel` method. Calling it will " "cause the Task to throw a :exc:`CancelledError` exception into the wrapped " @@ -834,7 +832,7 @@ msgstr "" "`CancelledError` dans la coroutine encapsulée. Si la coroutine attendait un " "*futur* au moment de l'annulation, celui-ci est annulé." -#: ../Doc/library/asyncio-task.rst:678 +#: ../Doc/library/asyncio-task.rst:696 msgid "" ":meth:`cancelled` can be used to check if the Task was cancelled. The method " "returns ``True`` if the wrapped coroutine did not suppress the :exc:" @@ -844,7 +842,7 @@ msgstr "" "Elle renvoie ``True`` si la coroutine encapsulée n'a pas ignoré l'exception :" "exc:`CancelledError` et a bien été annulée." -#: ../Doc/library/asyncio-task.rst:683 +#: ../Doc/library/asyncio-task.rst:701 msgid "" ":class:`asyncio.Task` inherits from :class:`Future` all of its APIs except :" "meth:`Future.set_result` and :meth:`Future.set_exception`." @@ -852,7 +850,7 @@ msgstr "" ":class:`asyncio.Task` hérite de :class:`Future`, de toute son API, à " "l'exception de :meth:`Future.set_result` et de :meth:`Future.set_exception`." -#: ../Doc/library/asyncio-task.rst:687 +#: ../Doc/library/asyncio-task.rst:705 msgid "" "Tasks support the :mod:`contextvars` module. When a Task is created it " "copies the current context and later runs its coroutine in the copied " @@ -862,15 +860,15 @@ msgstr "" "tâche effectue une copie du contexte actuel et exécutera ses coroutines dans " "cette copie." -#: ../Doc/library/asyncio-task.rst:691 +#: ../Doc/library/asyncio-task.rst:709 msgid "Added support for the :mod:`contextvars` module." msgstr "Ajout du support du module :mod:`contextvars`." -#: ../Doc/library/asyncio-task.rst:699 +#: ../Doc/library/asyncio-task.rst:720 msgid "Request the Task to be cancelled." msgstr "Demande l'annulation d'une tâche." -#: ../Doc/library/asyncio-task.rst:701 +#: ../Doc/library/asyncio-task.rst:722 msgid "" "This arranges for a :exc:`CancelledError` exception to be thrown into the " "wrapped coroutine on the next cycle of the event loop." @@ -879,7 +877,7 @@ msgstr "" "encapsulée. L'exception sera levée au prochain cycle de la boucle " "d'exécution." -#: ../Doc/library/asyncio-task.rst:704 +#: ../Doc/library/asyncio-task.rst:725 msgid "" "The coroutine then has a chance to clean up or even deny the request by " "suppressing the exception with a :keyword:`try` ... ... ``except " @@ -895,7 +893,7 @@ msgstr "" "annulée, bien qu'ignorer totalement une annulation ne soit ni une pratique " "courante, ni encouragé." -#: ../Doc/library/asyncio-task.rst:714 +#: ../Doc/library/asyncio-task.rst:735 msgid "" "The following example illustrates how coroutines can intercept the " "cancellation request::" @@ -903,11 +901,11 @@ msgstr "" "L'exemple ci-dessous illustre comment une coroutine peut intercepter une " "requête d'annulation ::" -#: ../Doc/library/asyncio-task.rst:753 +#: ../Doc/library/asyncio-task.rst:774 msgid "Return ``True`` if the Task is *cancelled*." msgstr "Renvoie ``True`` si la tâche est *annulée*." -#: ../Doc/library/asyncio-task.rst:755 +#: ../Doc/library/asyncio-task.rst:776 msgid "" "The Task is *cancelled* when the cancellation was requested with :meth:" "`cancel` and the wrapped coroutine propagated the :exc:`CancelledError` " @@ -917,11 +915,11 @@ msgstr "" "et la coroutine encapsulée a propagé l'exception :exc:`CancelledError` qui a " "été levée en son sein." -#: ../Doc/library/asyncio-task.rst:761 +#: ../Doc/library/asyncio-task.rst:782 msgid "Return ``True`` if the Task is *done*." msgstr "Renvoie ``True`` si la tâche est *achevée*." -#: ../Doc/library/asyncio-task.rst:763 +#: ../Doc/library/asyncio-task.rst:784 msgid "" "A Task is *done* when the wrapped coroutine either returned a value, raised " "an exception, or the Task was cancelled." @@ -929,11 +927,11 @@ msgstr "" "Une tâche est dite *achevée* quand la coroutine encapsulée a soit renvoyé " "une valeur, soit levé une exception, ou que la tâche a été annulée." -#: ../Doc/library/asyncio-task.rst:768 +#: ../Doc/library/asyncio-task.rst:789 msgid "Return the result of the Task." msgstr "Renvoie le résultat de la tâche." -#: ../Doc/library/asyncio-task.rst:770 +#: ../Doc/library/asyncio-task.rst:791 msgid "" "If the Task is *done*, the result of the wrapped coroutine is returned (or " "if the coroutine raised an exception, that exception is re-raised.)" @@ -942,7 +940,7 @@ msgstr "" "renvoyé (sinon, dans le cas où la coroutine a levé une exception, cette " "exception est de nouveau levée)." -#: ../Doc/library/asyncio-task.rst:774 ../Doc/library/asyncio-task.rst:788 +#: ../Doc/library/asyncio-task.rst:795 ../Doc/library/asyncio-task.rst:809 msgid "" "If the Task has been *cancelled*, this method raises a :exc:`CancelledError` " "exception." @@ -950,7 +948,7 @@ msgstr "" "Si la tâche a été *annulée*, cette méthode lève une exception :exc:" "`CancelledError`." -#: ../Doc/library/asyncio-task.rst:777 +#: ../Doc/library/asyncio-task.rst:798 msgid "" "If the Task's result isn't yet available, this method raises a :exc:" "`InvalidStateError` exception." @@ -958,11 +956,11 @@ msgstr "" "Si le résultat de la tâche n'est pas encore disponible, cette méthode lève " "une exception :exc:`InvalidStateError`." -#: ../Doc/library/asyncio-task.rst:782 +#: ../Doc/library/asyncio-task.rst:803 msgid "Return the exception of the Task." msgstr "Renvoie l'exception de la tâche." -#: ../Doc/library/asyncio-task.rst:784 +#: ../Doc/library/asyncio-task.rst:805 msgid "" "If the wrapped coroutine raised an exception that exception is returned. If " "the wrapped coroutine returned normally this method returns ``None``." @@ -970,7 +968,7 @@ msgstr "" "Si la coroutine encapsulée lève une exception, cette exception est renvoyée. " "Si la coroutine s'est exécutée normalement, cette méthode renvoie ``None``." -#: ../Doc/library/asyncio-task.rst:791 +#: ../Doc/library/asyncio-task.rst:812 msgid "" "If the Task isn't *done* yet, this method raises an :exc:`InvalidStateError` " "exception." @@ -978,30 +976,30 @@ msgstr "" "Si la tâche n'est pas encore *achevée*, cette méthode lève une exception :" "exc:`InvalidStateError`." -#: ../Doc/library/asyncio-task.rst:796 +#: ../Doc/library/asyncio-task.rst:817 msgid "Add a callback to be run when the Task is *done*." msgstr "" "Ajoute une fonction de rappel qui sera exécutée quand la tâche sera " "*achevée*." -#: ../Doc/library/asyncio-task.rst:798 ../Doc/library/asyncio-task.rst:807 +#: ../Doc/library/asyncio-task.rst:819 ../Doc/library/asyncio-task.rst:828 msgid "This method should only be used in low-level callback-based code." msgstr "" "Cette méthode ne doit être utilisée que dans du code basé sur les fonctions " "de rappel de bas-niveau." -#: ../Doc/library/asyncio-task.rst:800 +#: ../Doc/library/asyncio-task.rst:821 msgid "" "See the documentation of :meth:`Future.add_done_callback` for more details." msgstr "" "Se référer à la documentation de :meth:`Future.add_done_callback` pour plus " "de détails." -#: ../Doc/library/asyncio-task.rst:805 +#: ../Doc/library/asyncio-task.rst:826 msgid "Remove *callback* from the callbacks list." msgstr "Retire *callback* de la liste de fonctions de rappel." -#: ../Doc/library/asyncio-task.rst:809 +#: ../Doc/library/asyncio-task.rst:830 msgid "" "See the documentation of :meth:`Future.remove_done_callback` for more " "details." @@ -1009,11 +1007,11 @@ msgstr "" "Se référer à la documentation de :meth:`Future.remove_done_callback` pour " "plus de détails." -#: ../Doc/library/asyncio-task.rst:814 +#: ../Doc/library/asyncio-task.rst:835 msgid "Return the list of stack frames for this Task." msgstr "Renvoie une liste représentant la pile d'appels de la tâche." -#: ../Doc/library/asyncio-task.rst:816 +#: ../Doc/library/asyncio-task.rst:837 msgid "" "If the wrapped coroutine is not done, this returns the stack where it is " "suspended. If the coroutine has completed successfully or was cancelled, " @@ -1026,15 +1024,15 @@ msgstr "" "renvoie une liste vide. Si la coroutine a été terminée par une exception, " "ceci renvoie la pile d'erreurs." -#: ../Doc/library/asyncio-task.rst:822 +#: ../Doc/library/asyncio-task.rst:843 msgid "The frames are always ordered from oldest to newest." msgstr "La pile est toujours affichée de l'appelant à l'appelé." -#: ../Doc/library/asyncio-task.rst:824 +#: ../Doc/library/asyncio-task.rst:845 msgid "Only one stack frame is returned for a suspended coroutine." msgstr "Une seule ligne est renvoyée si la coroutine est suspendue." -#: ../Doc/library/asyncio-task.rst:826 +#: ../Doc/library/asyncio-task.rst:847 msgid "" "The optional *limit* argument sets the maximum number of frames to return; " "by default all available frames are returned. The ordering of the returned " @@ -1048,11 +1046,11 @@ msgstr "" "renvoyés, si la pile est une pile d'erreurs, ce sont les appels les plus " "anciens qui le sont (dans un souci de cohérence avec le module *traceback*)." -#: ../Doc/library/asyncio-task.rst:835 +#: ../Doc/library/asyncio-task.rst:856 msgid "Print the stack or traceback for this Task." msgstr "Affiche la pile d'appels ou d'erreurs de la tâche." -#: ../Doc/library/asyncio-task.rst:837 +#: ../Doc/library/asyncio-task.rst:858 msgid "" "This produces output similar to that of the traceback module for the frames " "retrieved by :meth:`get_stack`." @@ -1060,11 +1058,11 @@ msgstr "" "Le format de sortie des appels produits par :meth:`get_stack` est similaire " "à celui du module *traceback*. " -#: ../Doc/library/asyncio-task.rst:840 +#: ../Doc/library/asyncio-task.rst:861 msgid "The *limit* argument is passed to :meth:`get_stack` directly." msgstr "Le paramètre *limit* est directement passé à :meth:`get_stack`." -#: ../Doc/library/asyncio-task.rst:842 +#: ../Doc/library/asyncio-task.rst:863 msgid "" "The *file* argument is an I/O stream to which the output is written; by " "default output is written to :data:`sys.stderr`." @@ -1072,43 +1070,43 @@ msgstr "" "Le paramètre *file* est un flux d'entrées-sorties sur lequel le résultat est " "écrit ; par défaut, :data:`sys.stderr`." -#: ../Doc/library/asyncio-task.rst:847 +#: ../Doc/library/asyncio-task.rst:868 #, fuzzy msgid "Return the coroutine object wrapped by the :class:`Task`." msgstr "Renvoie l'exception de la tâche." -#: ../Doc/library/asyncio-task.rst:853 +#: ../Doc/library/asyncio-task.rst:874 #, fuzzy msgid "Return the name of the Task." msgstr "Renvoie le résultat de la tâche." -#: ../Doc/library/asyncio-task.rst:855 +#: ../Doc/library/asyncio-task.rst:876 msgid "" "If no name has been explicitly assigned to the Task, the default asyncio " "Task implementation generates a default name during instantiation." msgstr "" -#: ../Doc/library/asyncio-task.rst:863 +#: ../Doc/library/asyncio-task.rst:884 #, fuzzy msgid "Set the name of the Task." msgstr "Renvoie le résultat de la tâche." -#: ../Doc/library/asyncio-task.rst:865 +#: ../Doc/library/asyncio-task.rst:886 msgid "" "The *value* argument can be any object, which is then converted to a string." msgstr "" -#: ../Doc/library/asyncio-task.rst:868 +#: ../Doc/library/asyncio-task.rst:889 msgid "" "In the default Task implementation, the name will be visible in the :func:" "`repr` output of a task object." msgstr "" -#: ../Doc/library/asyncio-task.rst:875 +#: ../Doc/library/asyncio-task.rst:896 msgid "Return a set of all tasks for an event loop." msgstr "Renvoie l'ensemble des tâches d'une boucle d'évènements." -#: ../Doc/library/asyncio-task.rst:877 +#: ../Doc/library/asyncio-task.rst:898 msgid "" "By default all tasks for the current event loop are returned. If *loop* is " "``None``, the :func:`get_event_loop` function is used to get the current " @@ -1118,7 +1116,7 @@ msgstr "" "renvoyées. Si *loop* vaut ``None``, la fonction :func:`get_event_loop` est " "appelée pour récupérer la boucle d'exécution actuelle." -#: ../Doc/library/asyncio-task.rst:883 +#: ../Doc/library/asyncio-task.rst:904 #, fuzzy msgid "" "Do not call this as a task method. Use the :func:`asyncio.all_tasks` " @@ -1127,11 +1125,11 @@ msgstr "" "Cette méthode est **obsolète** et sera supprimée en Python 3.9. Utilisez la " "fonction :func:`asyncio.all_tasks` à la place." -#: ../Doc/library/asyncio-task.rst:888 +#: ../Doc/library/asyncio-task.rst:909 msgid "Return the currently running task or ``None``." msgstr "Renvoie la tâche en cours d'exécution ou ``None``." -#: ../Doc/library/asyncio-task.rst:890 +#: ../Doc/library/asyncio-task.rst:911 msgid "" "If *loop* is ``None``, the :func:`get_event_loop` function is used to get " "the current loop." @@ -1139,7 +1137,7 @@ msgstr "" "Si *loop* vaut ``None``, la fonction :func:`get_event_loop` est utilisée " "pour récupérer la boucle d'exécution actuelle." -#: ../Doc/library/asyncio-task.rst:895 +#: ../Doc/library/asyncio-task.rst:916 #, fuzzy msgid "" "Do not call this as a task method. Use the :func:`asyncio.current_task` " @@ -1148,11 +1146,11 @@ msgstr "" "Cette méthode est **obsolète** et sera supprimée en Python 3.9. Utilisez la " "fonction :func:`asyncio.current_task` à la place." -#: ../Doc/library/asyncio-task.rst:902 +#: ../Doc/library/asyncio-task.rst:923 msgid "Generator-based Coroutines" msgstr "Coroutines basées sur des générateurs" -#: ../Doc/library/asyncio-task.rst:906 +#: ../Doc/library/asyncio-task.rst:927 msgid "" "Support for generator-based coroutines is **deprecated** and is scheduled " "for removal in Python 3.10." @@ -1160,7 +1158,7 @@ msgstr "" "Les coroutines basées sur des générateurs sont **obsolètes** et il est prévu " "de les supprimer en Python 3.10." -#: ../Doc/library/asyncio-task.rst:909 +#: ../Doc/library/asyncio-task.rst:930 msgid "" "Generator-based coroutines predate async/await syntax. They are Python " "generators that use ``yield from`` expressions to await on Futures and other " @@ -1170,7 +1168,7 @@ msgstr "" "*async* / *await*. Il existe des générateurs Python qui utilisent les " "expressions ``yield from`` pour attendre des *futurs* et autres coroutines." -#: ../Doc/library/asyncio-task.rst:913 +#: ../Doc/library/asyncio-task.rst:934 msgid "" "Generator-based coroutines should be decorated with :func:`@asyncio." "coroutine `, although this is not enforced." @@ -1179,11 +1177,11 @@ msgstr "" "`@asyncio.coroutine `, même si ce n'est pas vérifié par " "l'interpréteur." -#: ../Doc/library/asyncio-task.rst:920 +#: ../Doc/library/asyncio-task.rst:941 msgid "Decorator to mark generator-based coroutines." msgstr "Décorateur pour coroutines basées sur des générateurs." -#: ../Doc/library/asyncio-task.rst:922 +#: ../Doc/library/asyncio-task.rst:943 msgid "" "This decorator enables legacy generator-based coroutines to be compatible " "with async/await code::" @@ -1191,21 +1189,21 @@ msgstr "" "Ce décorateur rend compatibles les coroutines basées sur des générateurs " "avec le code *async* / *await* ::" -#: ../Doc/library/asyncio-task.rst:932 +#: ../Doc/library/asyncio-task.rst:953 msgid "This decorator should not be used for :keyword:`async def` coroutines." msgstr "" "Ce décorateur ne doit pas être utilisé avec des coroutines :keyword:`async " "def`." -#: ../Doc/library/asyncio-task.rst:937 +#: ../Doc/library/asyncio-task.rst:958 msgid "Use :keyword:`async def` instead." msgstr "" -#: ../Doc/library/asyncio-task.rst:941 +#: ../Doc/library/asyncio-task.rst:962 msgid "Return ``True`` if *obj* is a :ref:`coroutine object `." msgstr "Renvoie ``True`` si *obj* est un :ref:`objet coroutine `." -#: ../Doc/library/asyncio-task.rst:943 +#: ../Doc/library/asyncio-task.rst:964 msgid "" "This method is different from :func:`inspect.iscoroutine` because it returns " "``True`` for generator-based coroutines." @@ -1213,12 +1211,12 @@ msgstr "" "Cette méthode est différente de :func:`inspect.iscoroutine` car elle renvoie " "``True`` pour des coroutines basées sur des générateurs." -#: ../Doc/library/asyncio-task.rst:948 +#: ../Doc/library/asyncio-task.rst:969 msgid "Return ``True`` if *func* is a :ref:`coroutine function `." msgstr "" "Renvoie ``True`` si *func* est une :ref:`fonction coroutine `." -#: ../Doc/library/asyncio-task.rst:951 +#: ../Doc/library/asyncio-task.rst:972 msgid "" "This method is different from :func:`inspect.iscoroutinefunction` because it " "returns ``True`` for generator-based coroutine functions decorated with :" @@ -1228,6 +1226,13 @@ msgstr "" "renvoie ``True`` pour des coroutines basées sur des générateurs, décorées " "avec :func:`@coroutine `." +#~ msgid "" +#~ "**Important:** this function has been added to asyncio in Python 3.7 on " +#~ "a :term:`provisional basis `." +#~ msgstr "" +#~ "**Important :** cette fonction a été ajoutée à *asyncio* dans Python 3.7 " +#~ "de :term:`manière provisoire `." + #~ msgid "" #~ "The *loop* argument is deprecated and scheduled for removal in Python " #~ "3.10." diff --git a/library/codecs.po b/library/codecs.po index aec3d2643..96999e416 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: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-06 13:48+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -340,7 +340,7 @@ msgstr "" #: ../Doc/library/codecs.rst:293 msgid "" "To simplify and standardize error handling, codecs may implement different " -"error handling schemes by accepting the *errors* string argument. The " +"error handling schemes by accepting the *errors* string argument. The " "following string values are defined and implemented by all standard Python " "codecs:" msgstr "" @@ -351,7 +351,8 @@ msgid "Value" msgstr "Valeur" #: ../Doc/library/codecs.rst:301 ../Doc/library/codecs.rst:324 -#: ../Doc/library/codecs.rst:357 +#: ../Doc/library/codecs.rst:357 ../Doc/library/codecs.rst:1268 +#: ../Doc/library/codecs.rst:1335 ../Doc/library/codecs.rst:1390 msgid "Meaning" msgstr "Signification" @@ -361,7 +362,7 @@ msgstr "``'strict'``" #: ../Doc/library/codecs.rst:303 msgid "" -"Raise :exc:`UnicodeError` (or a subclass); this is the default. Implemented " +"Raise :exc:`UnicodeError` (or a subclass); this is the default. Implemented " "in :func:`strict_errors`." msgstr "" @@ -371,7 +372,7 @@ msgstr "``'ignore'``" #: ../Doc/library/codecs.rst:307 msgid "" -"Ignore the malformed data and continue without further notice. Implemented " +"Ignore the malformed data and continue without further notice. Implemented " "in :func:`ignore_errors`." msgstr "" @@ -389,7 +390,7 @@ msgstr "``'replace'``" msgid "" "Replace with a suitable replacement marker; Python will use the official ``U" "+FFFD`` REPLACEMENT CHARACTER for the built-in codecs on decoding, and '?' " -"on encoding. Implemented in :func:`replace_errors`." +"on encoding. Implemented in :func:`replace_errors`." msgstr "" #: ../Doc/library/codecs.rst:333 @@ -398,7 +399,7 @@ msgstr "``'xmlcharrefreplace'``" #: ../Doc/library/codecs.rst:333 msgid "" -"Replace with the appropriate XML character reference (only for encoding). " +"Replace with the appropriate XML character reference (only for encoding). " "Implemented in :func:`xmlcharrefreplace_errors`." msgstr "" @@ -418,7 +419,7 @@ msgstr "``'namereplace'``" #: ../Doc/library/codecs.rst:341 msgid "" -"Replace with ``\\N{...}`` escape sequences (only for encoding). Implemented " +"Replace with ``\\N{...}`` escape sequences (only for encoding). Implemented " "in :func:`namereplace_errors`." msgstr "" @@ -429,9 +430,9 @@ msgstr "``'surrogateescape'``" #: ../Doc/library/codecs.rst:345 msgid "" "On decoding, replace byte with individual surrogate code ranging from ``U" -"+DC80`` to ``U+DCFF``. This code will then be turned back into the same " -"byte when the ``'surrogateescape'`` error handler is used when encoding the " -"data. (See :pep:`383` for more.)" +"+DC80`` to ``U+DCFF``. This code will then be turned back into the same byte " +"when the ``'surrogateescape'`` error handler is used when encoding the data. " +"(See :pep:`383` for more.)" msgstr "" #: ../Doc/library/codecs.rst:354 @@ -453,7 +454,7 @@ msgstr "" #: ../Doc/library/codecs.rst:359 msgid "" -"Allow encoding and decoding of surrogate codes. These codecs normally treat " +"Allow encoding and decoding of surrogate codes. These codecs normally treat " "the presence of surrogates as an error." msgstr "" @@ -497,9 +498,9 @@ msgid "" "of the error. The error handler must either raise this or a different " "exception, or return a tuple with a replacement for the unencodable part of " "the input and a position where encoding should continue. The replacement may " -"be either :class:`str` or :class:`bytes`. If the replacement is bytes, the " +"be either :class:`str` or :class:`bytes`. If the replacement is bytes, the " "encoder will simply copy them into the output buffer. If the replacement is " -"a string, the encoder will encode the replacement. Encoding continues on " +"a string, the encoder will encode the replacement. Encoding continues on " "original input at the specified position. Negative position values will be " "treated as being relative to the end of the input string. If the resulting " "position is out of bound an :exc:`IndexError` will be raised." @@ -613,7 +614,7 @@ msgstr "" #: ../Doc/library/codecs.rst:486 msgid "" "Decodes the object *input* and returns a tuple (output object, length " -"consumed). For instance, for a :term:`text encoding`, decoding converts a " +"consumed). For instance, for a :term:`text encoding`, decoding converts a " "bytes object encoded using a particular character set encoding to a string " "object." msgstr "" @@ -718,7 +719,7 @@ msgid "" "implementation should make sure that ``0`` is the most common state. (States " "that are more complicated than integers can be converted into an integer by " "marshaling/pickling the state and encoding the bytes of the resulting string " -"into an integer)." +"into an integer.)" msgstr "" #: ../Doc/library/codecs.rst:576 @@ -947,7 +948,7 @@ msgid "" "The *size* argument indicates the approximate maximum number of encoded " "bytes or code points to read for decoding. The decoder can modify this " "setting as appropriate. The default value -1 indicates to read and decode as " -"much as possible. This parameter is intended to prevent having to decode " +"much as possible. This parameter is intended to prevent having to decode " "huge files in one step." msgstr "" @@ -988,7 +989,7 @@ msgstr "" #: ../Doc/library/codecs.rst:783 msgid "" -"Line-endings are implemented using the codec's decoder method and are " +"Line-endings are implemented using the codec's :meth:`decode` method and are " "included in the list entries if *keepends* is true." msgstr "" @@ -1004,7 +1005,7 @@ msgstr "" #: ../Doc/library/codecs.rst:794 msgid "" -"Note that no stream repositioning should take place. This method is " +"Note that no stream repositioning should take place. This method is " "primarily intended to be able to recover from decoding errors." msgstr "" @@ -1066,7 +1067,7 @@ msgstr "" #: ../Doc/library/codecs.rst:844 msgid "" -"You can use these objects to do transparent transcodings from e.g. Latin-1 " +"You can use these objects to do transparent transcodings, e.g., from Latin-1 " "to UTF-8 and back." msgstr "" @@ -1102,9 +1103,9 @@ msgstr "" #: ../Doc/library/codecs.rst:868 msgid "" "Strings are stored internally as sequences of code points in range ``0x0``--" -"``0x10FFFF``. (See :pep:`393` for more details about the implementation.) " +"``0x10FFFF``. (See :pep:`393` for more details about the implementation.) " "Once a string object is used outside of CPU and memory, endianness and how " -"these arrays are stored as bytes become an issue. As with other codecs, " +"these arrays are stored as bytes become an issue. As with other codecs, " "serialising a string into a sequence of bytes is known as *encoding*, and " "recreating the string from the sequence of bytes is known as *decoding*. " "There are a variety of different text serialisation codecs, which are " @@ -1260,7 +1261,7 @@ msgid "" "sequence, but as a signature that helps in guessing the encoding. On " "encoding the utf-8-sig codec will write ``0xef``, ``0xbb``, ``0xbf`` as the " "first three bytes to the file. On decoding ``utf-8-sig`` will skip those " -"three bytes if they appear as the first three bytes in the file. In UTF-8, " +"three bytes if they appear as the first three bytes in the file. In UTF-8, " "the use of the BOM is discouraged and should generally be avoided." msgstr "" @@ -1283,12 +1284,11 @@ msgstr "" #: ../Doc/library/codecs.rst:986 msgid "" "Some common encodings can bypass the codecs lookup machinery to improve " -"performance. These optimization opportunities are only recognized by " -"CPython for a limited set of (case insensitive) aliases: utf-8, utf8, " -"latin-1, latin1, iso-8859-1, iso8859-1, mbcs (Windows only), ascii, us-" -"ascii, utf-16, utf16, utf-32, utf32, and the same using underscores instead " -"of dashes. Using alternative aliases for these encodings may result in " -"slower execution." +"performance. These optimization opportunities are only recognized by CPython " +"for a limited set of (case insensitive) aliases: utf-8, utf8, latin-1, " +"latin1, iso-8859-1, iso8859-1, mbcs (Windows only), ascii, us-ascii, utf-16, " +"utf16, utf-32, utf32, and the same using underscores instead of dashes. " +"Using alternative aliases for these encodings may result in slower execution." msgstr "" #: ../Doc/library/codecs.rst:994 @@ -1421,8 +1421,8 @@ msgstr "*EBCDIC-CP-BE*, *EBCDIC-CP-CH*, *IBM500*" #: ../Doc/library/codecs.rst:1032 ../Doc/library/codecs.rst:1041 #: ../Doc/library/codecs.rst:1052 ../Doc/library/codecs.rst:1088 -#: ../Doc/library/codecs.rst:1095 ../Doc/library/codecs.rst:1176 -#: ../Doc/library/codecs.rst:1203 +#: ../Doc/library/codecs.rst:1095 ../Doc/library/codecs.rst:1148 +#: ../Doc/library/codecs.rst:1176 ../Doc/library/codecs.rst:1203 msgid "Western Europe" msgstr "Europe de l'ouest" @@ -1910,10 +1910,6 @@ msgstr "*latin_1*" msgid "iso-8859-1, iso8859-1, 8859, cp819, latin, latin1, L1" msgstr "*iso-8859-1*, *iso8859-1*, *8859*, *cp819*, *latin*, *latin1*, *L1*" -#: ../Doc/library/codecs.rst:1148 -msgid "West Europe" -msgstr "Europe de l'Ouest" - #: ../Doc/library/codecs.rst:1151 msgid "iso8859_2" msgstr "*iso8859_2*" @@ -2257,11 +2253,11 @@ msgstr "" #: ../Doc/library/codecs.rst:1251 msgid "" "A number of predefined codecs are specific to Python, so their codec names " -"have no meaning outside Python. These are listed in the tables below based " +"have no meaning outside Python. These are listed in the tables below based " "on the expected input and output types (note that while text encodings are " "the most common use case for codecs, the underlying codec infrastructure " -"supports arbitrary data transforms rather than just text encodings). For " -"asymmetric codecs, the stated purpose describes the encoding direction." +"supports arbitrary data transforms rather than just text encodings). For " +"asymmetric codecs, the stated meaning describes the encoding direction." msgstr "" #: ../Doc/library/codecs.rst:1259 @@ -2275,18 +2271,13 @@ msgid "" "text encodings." msgstr "" -#: ../Doc/library/codecs.rst:1268 ../Doc/library/codecs.rst:1335 -#: ../Doc/library/codecs.rst:1390 -msgid "Purpose" -msgstr "Objectif" - #: ../Doc/library/codecs.rst:1270 msgid "idna" msgstr "idna" #: ../Doc/library/codecs.rst:1270 msgid "" -"Implements :rfc:`3490`, see also :mod:`encodings.idna`. Only " +"Implement :rfc:`3490`, see also :mod:`encodings.idna`. Only " "``errors='strict'`` is supported." msgstr "" @@ -2299,7 +2290,8 @@ msgid "ansi, dbcs" msgstr "" #: ../Doc/library/codecs.rst:1276 -msgid "Windows only: Encode operand according to the ANSI codepage (CP_ACP)" +msgid "" +"Windows only: Encode the operand according to the ANSI codepage (CP_ACP)." msgstr "" #: ../Doc/library/codecs.rst:1280 @@ -2307,7 +2299,8 @@ msgid "oem" msgstr "" #: ../Doc/library/codecs.rst:1280 -msgid "Windows only: Encode operand according to the OEM codepage (CP_OEMCP)" +msgid "" +"Windows only: Encode the operand according to the OEM codepage (CP_OEMCP)." msgstr "" #: ../Doc/library/codecs.rst:1286 @@ -2315,7 +2308,7 @@ msgid "palmos" msgstr "palmos" #: ../Doc/library/codecs.rst:1286 -msgid "Encoding of PalmOS 3.5" +msgid "Encoding of PalmOS 3.5." msgstr "" #: ../Doc/library/codecs.rst:1288 @@ -2323,7 +2316,7 @@ msgid "punycode" msgstr "punycode" #: ../Doc/library/codecs.rst:1288 -msgid "Implements :rfc:`3492`. Stateful codecs are not supported." +msgid "Implement :rfc:`3492`. Stateful codecs are not supported." msgstr "" #: ../Doc/library/codecs.rst:1292 @@ -2354,7 +2347,7 @@ msgstr "unicode_escape" #: ../Doc/library/codecs.rst:1306 msgid "" "Encoding suitable as the contents of a Unicode literal in ASCII-encoded " -"Python source code, except that quotes are not escaped. Decodes from Latin-1 " +"Python source code, except that quotes are not escaped. Decode from Latin-1 " "source code. Beware that Python source code actually uses UTF-8 by default." msgstr "" @@ -2369,7 +2362,7 @@ msgstr "" #: ../Doc/library/codecs.rst:1327 msgid "" "The following codecs provide binary transforms: :term:`bytes-like object` " -"to :class:`bytes` mappings. They are not supported by :meth:`bytes.decode` " +"to :class:`bytes` mappings. They are not supported by :meth:`bytes.decode` " "(which only produces :class:`str` output)." msgstr "" @@ -2387,8 +2380,8 @@ msgstr "base64, base_64" #: ../Doc/library/codecs.rst:1337 msgid "" -"Convert operand to multiline MIME base64 (the result always includes a " -"trailing ``'\\n'``)" +"Convert the operand to multiline MIME base64 (the result always includes a " +"trailing ``'\\n'``)." msgstr "" #: ../Doc/library/codecs.rst:1342 @@ -2409,7 +2402,7 @@ msgid "bz2" msgstr "bz2" #: ../Doc/library/codecs.rst:1348 -msgid "Compress the operand using bz2" +msgid "Compress the operand using bz2." msgstr "" #: ../Doc/library/codecs.rst:1348 @@ -2425,7 +2418,8 @@ msgid "hex" msgstr "hex" #: ../Doc/library/codecs.rst:1351 -msgid "Convert operand to hexadecimal representation, with two digits per byte" +msgid "" +"Convert the operand to hexadecimal representation, with two digits per byte." msgstr "" #: ../Doc/library/codecs.rst:1351 @@ -2441,7 +2435,7 @@ msgid "quopri, quotedprintable, quoted_printable" msgstr "" #: ../Doc/library/codecs.rst:1356 -msgid "Convert operand to MIME quoted printable" +msgid "Convert the operand to MIME quoted printable." msgstr "" #: ../Doc/library/codecs.rst:1356 @@ -2457,7 +2451,7 @@ msgid "uu" msgstr "uu" #: ../Doc/library/codecs.rst:1360 -msgid "Convert the operand using uuencode" +msgid "Convert the operand using uuencode." msgstr "" #: ../Doc/library/codecs.rst:1360 @@ -2473,7 +2467,7 @@ msgid "zip, zlib" msgstr "zip, zlib" #: ../Doc/library/codecs.rst:1363 -msgid "Compress the operand using gzip" +msgid "Compress the operand using gzip." msgstr "" #: ../Doc/library/codecs.rst:1363 @@ -2502,7 +2496,7 @@ msgstr "" #: ../Doc/library/codecs.rst:1383 msgid "" "The following codec provides a text transform: a :class:`str` to :class:" -"`str` mapping. It is not supported by :meth:`str.encode` (which only " +"`str` mapping. It is not supported by :meth:`str.encode` (which only " "produces :class:`bytes` output)." msgstr "" @@ -2515,23 +2509,23 @@ msgid "rot13" msgstr "rot13" #: ../Doc/library/codecs.rst:1392 -msgid "Returns the Caesar-cypher encryption of the operand" +msgid "Return the Caesar-cypher encryption of the operand." msgstr "" -#: ../Doc/library/codecs.rst:1396 +#: ../Doc/library/codecs.rst:1397 msgid "Restoration of the ``rot_13`` text transform." msgstr "" -#: ../Doc/library/codecs.rst:1399 +#: ../Doc/library/codecs.rst:1400 msgid "Restoration of the ``rot13`` alias." msgstr "" -#: ../Doc/library/codecs.rst:1404 +#: ../Doc/library/codecs.rst:1405 msgid "" ":mod:`encodings.idna` --- Internationalized Domain Names in Applications" msgstr "" -#: ../Doc/library/codecs.rst:1410 +#: ../Doc/library/codecs.rst:1411 msgid "" "This module implements :rfc:`3490` (Internationalized Domain Names in " "Applications) and :rfc:`3492` (Nameprep: A Stringprep Profile for " @@ -2539,7 +2533,7 @@ msgid "" "encoding and :mod:`stringprep`." msgstr "" -#: ../Doc/library/codecs.rst:1415 +#: ../Doc/library/codecs.rst:1416 msgid "" "These RFCs together define a protocol to support non-ASCII characters in " "domain names. A domain name containing non-ASCII characters (such as ``www." @@ -2553,14 +2547,14 @@ msgid "" "presenting them to the user." msgstr "" -#: ../Doc/library/codecs.rst:1426 +#: ../Doc/library/codecs.rst:1427 msgid "" "Python supports this conversion in several ways: the ``idna`` codec " "performs conversion between Unicode and ACE, separating an input string into " "labels based on the separator characters defined in :rfc:`section 3.1 of RFC " "3490 <3490#section-3.1>` and converting each label to ACE as required, and " "conversely separating an input byte string into labels based on the ``.`` " -"separator and converting any ACE labels found into unicode. Furthermore, " +"separator and converting any ACE labels found into unicode. Furthermore, " "the :mod:`socket` module transparently converts Unicode host names to ACE, " "so that applications need not be concerned about converting host names " "themselves when they pass them to the socket module. On top of that, modules " @@ -2570,14 +2564,14 @@ msgid "" "sends that field at all)." msgstr "" -#: ../Doc/library/codecs.rst:1439 +#: ../Doc/library/codecs.rst:1440 msgid "" "When receiving host names from the wire (such as in reverse name lookup), no " -"automatic conversion to Unicode is performed: Applications wishing to " +"automatic conversion to Unicode is performed: applications wishing to " "present such host names to the user should decode them to Unicode." msgstr "" -#: ../Doc/library/codecs.rst:1443 +#: ../Doc/library/codecs.rst:1444 msgid "" "The module :mod:`encodings.idna` also implements the nameprep procedure, " "which performs certain normalizations on host names, to achieve case-" @@ -2585,57 +2579,63 @@ msgid "" "characters. The nameprep functions can be used directly if desired." msgstr "" -#: ../Doc/library/codecs.rst:1451 +#: ../Doc/library/codecs.rst:1452 msgid "" "Return the nameprepped version of *label*. The implementation currently " "assumes query strings, so ``AllowUnassigned`` is true." msgstr "" -#: ../Doc/library/codecs.rst:1457 +#: ../Doc/library/codecs.rst:1458 msgid "" "Convert a label to ASCII, as specified in :rfc:`3490`. ``UseSTD3ASCIIRules`` " "is assumed to be false." msgstr "" -#: ../Doc/library/codecs.rst:1463 +#: ../Doc/library/codecs.rst:1464 msgid "Convert a label to Unicode, as specified in :rfc:`3490`." msgstr "" -#: ../Doc/library/codecs.rst:1467 +#: ../Doc/library/codecs.rst:1468 msgid ":mod:`encodings.mbcs` --- Windows ANSI codepage" msgstr "" -#: ../Doc/library/codecs.rst:1472 -msgid "Encode operand according to the ANSI codepage (CP_ACP)." +#: ../Doc/library/codecs.rst:1473 +msgid "This module implements the ANSI codepage (CP_ACP)." msgstr "" -#: ../Doc/library/codecs.rst:1475 +#: ../Doc/library/codecs.rst:1476 msgid ":ref:`Availability `: Windows only." msgstr ":ref:`Disponibilité ` : Windows uniquement." -#: ../Doc/library/codecs.rst:1476 +#: ../Doc/library/codecs.rst:1477 msgid "Support any error handler." msgstr "" -#: ../Doc/library/codecs.rst:1479 +#: ../Doc/library/codecs.rst:1480 msgid "" "Before 3.2, the *errors* argument was ignored; ``'replace'`` was always used " "to encode, and ``'ignore'`` to decode." msgstr "" -#: ../Doc/library/codecs.rst:1485 +#: ../Doc/library/codecs.rst:1486 msgid ":mod:`encodings.utf_8_sig` --- UTF-8 codec with BOM signature" msgstr "" -#: ../Doc/library/codecs.rst:1491 +#: ../Doc/library/codecs.rst:1492 msgid "" -"This module implements a variant of the UTF-8 codec: On encoding a UTF-8 " +"This module implements a variant of the UTF-8 codec. On encoding, a UTF-8 " "encoded BOM will be prepended to the UTF-8 encoded bytes. For the stateful " -"encoder this is only done once (on the first write to the byte stream). For " -"decoding an optional UTF-8 encoded BOM at the start of the data will be " +"encoder this is only done once (on the first write to the byte stream). On " +"decoding, an optional UTF-8 encoded BOM at the start of the data will be " "skipped." msgstr "" +#~ msgid "West Europe" +#~ msgstr "Europe de l'Ouest" + +#~ msgid "Purpose" +#~ msgstr "Objectif" + #~ msgid "cp65001" #~ msgstr "*cp65001*" diff --git a/library/configparser.po b/library/configparser.po index 794b92cf0..3bca0aa1b 100644 --- a/library/configparser.po +++ b/library/configparser.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -204,7 +204,7 @@ msgid "" "can be provided on initialization." msgstr "" -#: ../Doc/library/configparser.rst:317 +#: ../Doc/library/configparser.rst:319 msgid "" "In the example above, :class:`ConfigParser` with *interpolation* set to " "``BasicInterpolation()`` would resolve ``%(home_dir)s`` to the value of " @@ -214,14 +214,14 @@ msgid "" "specific order in the configuration file." msgstr "" -#: ../Doc/library/configparser.rst:324 +#: ../Doc/library/configparser.rst:326 msgid "" "With ``interpolation`` set to ``None``, the parser would simply return ``" "%(my_dir)s/Pictures`` as the value of ``my_pictures`` and ``%(home_dir)s/" "lumberjack`` as the value of ``my_dir``." msgstr "" -#: ../Doc/library/configparser.rst:332 +#: ../Doc/library/configparser.rst:334 msgid "" "An alternative handler for interpolation which implements a more advanced " "syntax, used for instance in ``zc.buildout``. Extended interpolation is " @@ -231,21 +231,21 @@ msgid "" "possibly the default values from the special section)." msgstr "" -#: ../Doc/library/configparser.rst:339 +#: ../Doc/library/configparser.rst:341 msgid "" "For example, the configuration specified above with basic interpolation, " "would look like this with extended interpolation:" msgstr "" -#: ../Doc/library/configparser.rst:349 +#: ../Doc/library/configparser.rst:354 msgid "Values from other sections can be fetched as well:" msgstr "" -#: ../Doc/library/configparser.rst:371 +#: ../Doc/library/configparser.rst:376 msgid "Mapping Protocol Access" msgstr "" -#: ../Doc/library/configparser.rst:375 +#: ../Doc/library/configparser.rst:380 msgid "" "Mapping protocol access is a generic name for functionality that enables " "using custom objects as if they were dictionaries. In case of :mod:" @@ -253,7 +253,7 @@ msgid "" "``parser['section']['option']`` notation." msgstr "" -#: ../Doc/library/configparser.rst:380 +#: ../Doc/library/configparser.rst:385 msgid "" "``parser['section']`` in particular returns a proxy for the section's data " "in the parser. This means that the values are not copied but they are taken " @@ -262,7 +262,7 @@ msgid "" "original parser." msgstr "" -#: ../Doc/library/configparser.rst:386 +#: ../Doc/library/configparser.rst:391 msgid "" ":mod:`configparser` objects behave as close to actual dictionaries as " "possible. The mapping interface is complete and adheres to the :class:" @@ -270,7 +270,7 @@ msgid "" "that should be taken into account:" msgstr "" -#: ../Doc/library/configparser.rst:391 +#: ../Doc/library/configparser.rst:396 msgid "" "By default, all keys in sections are accessible in a case-insensitive manner " "[1]_. E.g. ``for option in parser[\"section\"]`` yields only " @@ -279,7 +279,7 @@ msgid "" "expressions return ``True``::" msgstr "" -#: ../Doc/library/configparser.rst:399 +#: ../Doc/library/configparser.rst:404 msgid "" "All sections include ``DEFAULTSECT`` values as well which means that ``." "clear()`` on a section may not leave the section visibly empty. This is " @@ -289,30 +289,30 @@ msgid "" "default value causes a :exc:`KeyError`." msgstr "" -#: ../Doc/library/configparser.rst:406 +#: ../Doc/library/configparser.rst:411 msgid "``DEFAULTSECT`` cannot be removed from the parser:" msgstr "" -#: ../Doc/library/configparser.rst:408 +#: ../Doc/library/configparser.rst:413 msgid "trying to delete it raises :exc:`ValueError`," msgstr "" -#: ../Doc/library/configparser.rst:410 +#: ../Doc/library/configparser.rst:415 msgid "``parser.clear()`` leaves it intact," msgstr "" -#: ../Doc/library/configparser.rst:412 +#: ../Doc/library/configparser.rst:417 msgid "``parser.popitem()`` never returns it." msgstr "" -#: ../Doc/library/configparser.rst:414 +#: ../Doc/library/configparser.rst:419 msgid "" "``parser.get(section, option, **kwargs)`` - the second argument is **not** a " "fallback value. Note however that the section-level ``get()`` methods are " "compatible both with the mapping protocol and the classic configparser API." msgstr "" -#: ../Doc/library/configparser.rst:418 +#: ../Doc/library/configparser.rst:423 msgid "" "``parser.items()`` is compatible with the mapping protocol (returns a list " "of *section_name*, *section_proxy* pairs including the DEFAULTSECT). " @@ -322,18 +322,18 @@ msgid "" "(unless ``raw=True`` is provided)." msgstr "" -#: ../Doc/library/configparser.rst:425 +#: ../Doc/library/configparser.rst:430 msgid "" "The mapping protocol is implemented on top of the existing legacy API so " "that subclasses overriding the original interface still should have mappings " "working as expected." msgstr "" -#: ../Doc/library/configparser.rst:431 +#: ../Doc/library/configparser.rst:436 msgid "Customizing Parser Behaviour" msgstr "" -#: ../Doc/library/configparser.rst:433 +#: ../Doc/library/configparser.rst:438 msgid "" "There are nearly as many INI format variants as there are applications using " "it. :mod:`configparser` goes a long way to provide support for the largest " @@ -342,17 +342,17 @@ msgid "" "customize some of the features." msgstr "" -#: ../Doc/library/configparser.rst:439 +#: ../Doc/library/configparser.rst:444 msgid "" "The most common way to change the way a specific config parser works is to " "use the :meth:`__init__` options:" msgstr "" -#: ../Doc/library/configparser.rst:442 +#: ../Doc/library/configparser.rst:447 msgid "*defaults*, default value: ``None``" msgstr "" -#: ../Doc/library/configparser.rst:444 +#: ../Doc/library/configparser.rst:449 msgid "" "This option accepts a dictionary of key-value pairs which will be initially " "put in the ``DEFAULT`` section. This makes for an elegant way to support " @@ -360,17 +360,17 @@ msgid "" "the documented default." msgstr "" -#: ../Doc/library/configparser.rst:449 +#: ../Doc/library/configparser.rst:454 msgid "" "Hint: if you want to specify default values for a specific section, use :" "meth:`read_dict` before you read the actual file." msgstr "" -#: ../Doc/library/configparser.rst:452 +#: ../Doc/library/configparser.rst:457 msgid "*dict_type*, default value: :class:`dict`" msgstr "" -#: ../Doc/library/configparser.rst:454 +#: ../Doc/library/configparser.rst:459 msgid "" "This option has a major impact on how the mapping protocol will behave and " "how the written configuration files look. With the standard dictionary, " @@ -378,24 +378,24 @@ msgid "" "goes for options within sections." msgstr "" -#: ../Doc/library/configparser.rst:459 +#: ../Doc/library/configparser.rst:464 msgid "" "An alternative dictionary type can be used for example to sort sections and " "options on write-back." msgstr "" -#: ../Doc/library/configparser.rst:462 +#: ../Doc/library/configparser.rst:467 msgid "" "Please note: there are ways to add a set of key-value pairs in a single " "operation. When you use a regular dictionary in those operations, the order " "of the keys will be ordered. For example:" msgstr "" -#: ../Doc/library/configparser.rst:484 +#: ../Doc/library/configparser.rst:489 msgid "*allow_no_value*, default value: ``False``" msgstr "" -#: ../Doc/library/configparser.rst:486 +#: ../Doc/library/configparser.rst:491 msgid "" "Some configuration files are known to include settings without values, but " "which otherwise conform to the syntax supported by :mod:`configparser`. The " @@ -403,32 +403,32 @@ msgid "" "such values should be accepted:" msgstr "" -#: ../Doc/library/configparser.rst:521 +#: ../Doc/library/configparser.rst:526 msgid "*delimiters*, default value: ``('=', ':')``" msgstr "" -#: ../Doc/library/configparser.rst:523 +#: ../Doc/library/configparser.rst:528 msgid "" "Delimiters are substrings that delimit keys from values within a section. " "The first occurrence of a delimiting substring on a line is considered a " "delimiter. This means values (but not keys) can contain the delimiters." msgstr "" -#: ../Doc/library/configparser.rst:527 +#: ../Doc/library/configparser.rst:532 msgid "" "See also the *space_around_delimiters* argument to :meth:`ConfigParser." "write`." msgstr "" -#: ../Doc/library/configparser.rst:530 +#: ../Doc/library/configparser.rst:535 msgid "*comment_prefixes*, default value: ``('#', ';')``" msgstr "" -#: ../Doc/library/configparser.rst:532 +#: ../Doc/library/configparser.rst:537 msgid "*inline_comment_prefixes*, default value: ``None``" msgstr "" -#: ../Doc/library/configparser.rst:534 +#: ../Doc/library/configparser.rst:539 msgid "" "Comment prefixes are strings that indicate the start of a valid comment " "within a config file. *comment_prefixes* are used only on otherwise empty " @@ -438,13 +438,13 @@ msgid "" "used as prefixes for whole line comments." msgstr "" -#: ../Doc/library/configparser.rst:541 +#: ../Doc/library/configparser.rst:546 msgid "" "In previous versions of :mod:`configparser` behaviour matched " "``comment_prefixes=('#',';')`` and ``inline_comment_prefixes=(';',)``." msgstr "" -#: ../Doc/library/configparser.rst:545 +#: ../Doc/library/configparser.rst:550 msgid "" "Please note that config parsers don't support escaping of comment prefixes " "so using *inline_comment_prefixes* may prevent users from specifying option " @@ -454,11 +454,11 @@ msgid "" "values is to interpolate the prefix, for example::" msgstr "" -#: ../Doc/library/configparser.rst:591 +#: ../Doc/library/configparser.rst:596 msgid "*strict*, default value: ``True``" msgstr "" -#: ../Doc/library/configparser.rst:593 +#: ../Doc/library/configparser.rst:598 msgid "" "When set to ``True``, the parser will not allow for any section or option " "duplicates while reading from a single source (using :meth:`read_file`, :" @@ -466,17 +466,17 @@ msgid "" "parsers in new applications." msgstr "" -#: ../Doc/library/configparser.rst:598 +#: ../Doc/library/configparser.rst:603 msgid "" "In previous versions of :mod:`configparser` behaviour matched " "``strict=False``." msgstr "" -#: ../Doc/library/configparser.rst:602 +#: ../Doc/library/configparser.rst:607 msgid "*empty_lines_in_values*, default value: ``True``" msgstr "" -#: ../Doc/library/configparser.rst:604 +#: ../Doc/library/configparser.rst:609 msgid "" "In config parsers, values can span multiple lines as long as they are " "indented more than the key that holds them. By default parsers also let " @@ -486,7 +486,7 @@ msgid "" "lose track of the file structure. Take for instance:" msgstr "" -#: ../Doc/library/configparser.rst:619 +#: ../Doc/library/configparser.rst:624 msgid "" "This can be especially problematic for the user to see if she's using a " "proportional font to edit the file. That is why when your application does " @@ -495,13 +495,13 @@ msgid "" "would produce two keys, ``key`` and ``this``." msgstr "" -#: ../Doc/library/configparser.rst:625 +#: ../Doc/library/configparser.rst:630 msgid "" "*default_section*, default value: ``configparser.DEFAULTSECT`` (that is: ``" "\"DEFAULT\"``)" msgstr "" -#: ../Doc/library/configparser.rst:628 +#: ../Doc/library/configparser.rst:633 msgid "" "The convention of allowing a special section of default values for other " "sections or interpolation purposes is a powerful concept of this library, " @@ -515,11 +515,11 @@ msgid "" "files from one format to another)." msgstr "" -#: ../Doc/library/configparser.rst:639 +#: ../Doc/library/configparser.rst:644 msgid "*interpolation*, default value: ``configparser.BasicInterpolation``" msgstr "" -#: ../Doc/library/configparser.rst:641 +#: ../Doc/library/configparser.rst:646 msgid "" "Interpolation behaviour may be customized by providing a custom handler " "through the *interpolation* argument. ``None`` can be used to turn off " @@ -529,11 +529,11 @@ msgid "" "`RawConfigParser` has a default value of ``None``." msgstr "" -#: ../Doc/library/configparser.rst:648 +#: ../Doc/library/configparser.rst:653 msgid "*converters*, default value: not set" msgstr "" -#: ../Doc/library/configparser.rst:650 +#: ../Doc/library/configparser.rst:655 msgid "" "Config parsers provide option value getters that perform type conversion. " "By default :meth:`~ConfigParser.getint`, :meth:`~ConfigParser.getfloat`, " @@ -547,7 +547,7 @@ msgid "" "``parser_instance['section'].getdecimal('key', 0)``." msgstr "" -#: ../Doc/library/configparser.rst:661 +#: ../Doc/library/configparser.rst:666 msgid "" "If the converter needs to access the state of the parser, it can be " "implemented as a method on a config parser subclass. If the name of this " @@ -555,14 +555,14 @@ msgid "" "the dict-compatible form (see the ``getdecimal()`` example above)." msgstr "" -#: ../Doc/library/configparser.rst:666 +#: ../Doc/library/configparser.rst:671 msgid "" "More advanced customization may be achieved by overriding default values of " "these parser attributes. The defaults are defined on the classes, so they " "may be overridden by subclasses or by attribute assignment." msgstr "" -#: ../Doc/library/configparser.rst:672 +#: ../Doc/library/configparser.rst:677 msgid "" "By default when using :meth:`~ConfigParser.getboolean`, config parsers " "consider the following values ``True``: ``'1'``, ``'yes'``, ``'true'``, " @@ -571,13 +571,13 @@ msgid "" "strings and their Boolean outcomes. For example:" msgstr "" -#: ../Doc/library/configparser.rst:690 +#: ../Doc/library/configparser.rst:695 msgid "" "Other typical Boolean pairs include ``accept``/``reject`` or ``enabled``/" "``disabled``." msgstr "" -#: ../Doc/library/configparser.rst:695 +#: ../Doc/library/configparser.rst:700 msgid "" "This method transforms option names on every read, get, or set operation. " "The default converts the name to lowercase. This also means that when a " @@ -585,14 +585,14 @@ msgid "" "method if that's unsuitable. For example:" msgstr "" -#: ../Doc/library/configparser.rst:725 +#: ../Doc/library/configparser.rst:730 msgid "" "The optionxform function transforms option names to a canonical form. This " "should be an idempotent function: if the name is already in canonical form, " "it should be returned unchanged." msgstr "" -#: ../Doc/library/configparser.rst:732 +#: ../Doc/library/configparser.rst:737 msgid "" "A compiled regular expression used to parse section headers. The default " "matches ``[section]`` to the name ``\"section\"``. Whitespace is considered " @@ -601,18 +601,18 @@ msgid "" "example:" msgstr "" -#: ../Doc/library/configparser.rst:760 +#: ../Doc/library/configparser.rst:765 msgid "" "While ConfigParser objects also use an ``OPTCRE`` attribute for recognizing " "option lines, it's not recommended to override it because that would " "interfere with constructor options *allow_no_value* and *delimiters*." msgstr "" -#: ../Doc/library/configparser.rst:766 +#: ../Doc/library/configparser.rst:771 msgid "Legacy API Examples" msgstr "" -#: ../Doc/library/configparser.rst:768 +#: ../Doc/library/configparser.rst:773 msgid "" "Mainly because of backwards compatibility concerns, :mod:`configparser` " "provides also a legacy API with explicit ``get``/``set`` methods. While " @@ -621,29 +621,29 @@ msgid "" "advanced, low-level and downright counterintuitive." msgstr "" -#: ../Doc/library/configparser.rst:774 +#: ../Doc/library/configparser.rst:779 msgid "An example of writing to a configuration file::" msgstr "" -#: ../Doc/library/configparser.rst:797 +#: ../Doc/library/configparser.rst:802 msgid "An example of reading the configuration file again::" msgstr "" -#: ../Doc/library/configparser.rst:815 +#: ../Doc/library/configparser.rst:820 msgid "To get interpolation, use :class:`ConfigParser`::" msgstr "" -#: ../Doc/library/configparser.rst:848 +#: ../Doc/library/configparser.rst:853 msgid "" "Default values are available in both types of ConfigParsers. They are used " "in interpolation if an option used is not defined elsewhere. ::" msgstr "" -#: ../Doc/library/configparser.rst:866 +#: ../Doc/library/configparser.rst:871 msgid "ConfigParser Objects" msgstr "" -#: ../Doc/library/configparser.rst:870 +#: ../Doc/library/configparser.rst:875 msgid "" "The main configuration parser. When *defaults* is given, it is initialized " "into the dictionary of intrinsic defaults. When *dict_type* is given, it " @@ -651,7 +651,7 @@ msgid "" "the options within a section, and for the default values." msgstr "" -#: ../Doc/library/configparser.rst:875 +#: ../Doc/library/configparser.rst:880 msgid "" "When *delimiters* is given, it is used as the set of substrings that divide " "keys from values. When *comment_prefixes* is given, it will be used as the " @@ -660,7 +660,7 @@ msgid "" "as the set of substrings that prefix comments in non-empty lines." msgstr "" -#: ../Doc/library/configparser.rst:881 +#: ../Doc/library/configparser.rst:886 msgid "" "When *strict* is ``True`` (the default), the parser won't allow for any " "section or option duplicates while reading from a single source (file, " @@ -673,7 +673,7 @@ msgid "" "without the trailing delimiter." msgstr "" -#: ../Doc/library/configparser.rst:891 +#: ../Doc/library/configparser.rst:896 msgid "" "When *default_section* is given, it specifies the name for the special " "section holding default values for other sections and interpolation purposes " @@ -681,7 +681,7 @@ msgid "" "on runtime using the ``default_section`` instance attribute." msgstr "" -#: ../Doc/library/configparser.rst:896 +#: ../Doc/library/configparser.rst:901 msgid "" "Interpolation behaviour may be customized by providing a custom handler " "through the *interpolation* argument. ``None`` can be used to turn off " @@ -690,7 +690,7 @@ msgid "" "`dedicated documentation section <#interpolation-of-values>`_." msgstr "" -#: ../Doc/library/configparser.rst:902 +#: ../Doc/library/configparser.rst:907 msgid "" "All option names used in interpolation will be passed through the :meth:" "`optionxform` method just like any other option name reference. For " @@ -699,7 +699,7 @@ msgid "" "%(BAR)s`` are equivalent." msgstr "" -#: ../Doc/library/configparser.rst:908 +#: ../Doc/library/configparser.rst:913 msgid "" "When *converters* is given, it should be a dictionary where each key " "represents the name of a type converter and each value is a callable " @@ -708,44 +708,44 @@ msgid "" "object and section proxies." msgstr "" -#: ../Doc/library/configparser.rst:914 +#: ../Doc/library/configparser.rst:919 msgid "The default *dict_type* is :class:`collections.OrderedDict`." msgstr "" -#: ../Doc/library/configparser.rst:917 +#: ../Doc/library/configparser.rst:922 msgid "" "*allow_no_value*, *delimiters*, *comment_prefixes*, *strict*, " "*empty_lines_in_values*, *default_section* and *interpolation* were added." msgstr "" -#: ../Doc/library/configparser.rst:922 +#: ../Doc/library/configparser.rst:927 msgid "The *converters* argument was added." msgstr "" -#: ../Doc/library/configparser.rst:925 +#: ../Doc/library/configparser.rst:930 msgid "" "The *defaults* argument is read with :meth:`read_dict()`, providing " "consistent behavior across the parser: non-string keys and values are " "implicitly converted to strings." msgstr "" -#: ../Doc/library/configparser.rst:930 ../Doc/library/configparser.rst:1208 +#: ../Doc/library/configparser.rst:935 ../Doc/library/configparser.rst:1213 msgid "" "The default *dict_type* is :class:`dict`, since it now preserves insertion " "order." msgstr "" -#: ../Doc/library/configparser.rst:936 +#: ../Doc/library/configparser.rst:941 msgid "Return a dictionary containing the instance-wide defaults." msgstr "" -#: ../Doc/library/configparser.rst:941 +#: ../Doc/library/configparser.rst:946 msgid "" "Return a list of the sections available; the *default section* is not " "included in the list." msgstr "" -#: ../Doc/library/configparser.rst:947 +#: ../Doc/library/configparser.rst:952 msgid "" "Add a section named *section* to the instance. If a section by the given " "name already exists, :exc:`DuplicateSectionError` is raised. If the " @@ -753,34 +753,34 @@ msgid "" "the section must be a string; if not, :exc:`TypeError` is raised." msgstr "" -#: ../Doc/library/configparser.rst:952 +#: ../Doc/library/configparser.rst:957 msgid "Non-string section names raise :exc:`TypeError`." msgstr "" -#: ../Doc/library/configparser.rst:958 +#: ../Doc/library/configparser.rst:963 msgid "" "Indicates whether the named *section* is present in the configuration. The " "*default section* is not acknowledged." msgstr "" -#: ../Doc/library/configparser.rst:964 +#: ../Doc/library/configparser.rst:969 msgid "Return a list of options available in the specified *section*." msgstr "" -#: ../Doc/library/configparser.rst:969 +#: ../Doc/library/configparser.rst:974 msgid "" "If the given *section* exists, and contains the given *option*, return :" "const:`True`; otherwise return :const:`False`. If the specified *section* " "is :const:`None` or an empty string, DEFAULT is assumed." msgstr "" -#: ../Doc/library/configparser.rst:976 +#: ../Doc/library/configparser.rst:981 msgid "" "Attempt to read and parse an iterable of filenames, returning a list of " "filenames which were successfully parsed." msgstr "" -#: ../Doc/library/configparser.rst:979 +#: ../Doc/library/configparser.rst:984 msgid "" "If *filenames* is a string, a :class:`bytes` object or a :term:`path-like " "object`, it is treated as a single filename. If a file named in *filenames* " @@ -791,7 +791,7 @@ msgid "" "be read." msgstr "" -#: ../Doc/library/configparser.rst:988 +#: ../Doc/library/configparser.rst:993 msgid "" "If none of the named files exist, the :class:`ConfigParser` instance will " "contain an empty dataset. An application which requires initial values to " @@ -799,49 +799,49 @@ msgid "" "`read_file` before calling :meth:`read` for any optional files::" msgstr "" -#: ../Doc/library/configparser.rst:1001 +#: ../Doc/library/configparser.rst:1006 msgid "" "The *encoding* parameter. Previously, all files were read using the default " "encoding for :func:`open`." msgstr "" -#: ../Doc/library/configparser.rst:1005 +#: ../Doc/library/configparser.rst:1010 msgid "The *filenames* parameter accepts a :term:`path-like object`." msgstr "" -#: ../Doc/library/configparser.rst:1008 +#: ../Doc/library/configparser.rst:1013 msgid "The *filenames* parameter accepts a :class:`bytes` object." msgstr "" -#: ../Doc/library/configparser.rst:1014 +#: ../Doc/library/configparser.rst:1019 msgid "" "Read and parse configuration data from *f* which must be an iterable " "yielding Unicode strings (for example files opened in text mode)." msgstr "" -#: ../Doc/library/configparser.rst:1017 +#: ../Doc/library/configparser.rst:1022 msgid "" "Optional argument *source* specifies the name of the file being read. If " "not given and *f* has a :attr:`name` attribute, that is used for *source*; " "the default is ``''``." msgstr "" -#: ../Doc/library/configparser.rst:1021 +#: ../Doc/library/configparser.rst:1026 msgid "Replaces :meth:`readfp`." msgstr "" -#: ../Doc/library/configparser.rst:1026 +#: ../Doc/library/configparser.rst:1031 msgid "Parse configuration data from a string." msgstr "" -#: ../Doc/library/configparser.rst:1028 +#: ../Doc/library/configparser.rst:1033 msgid "" "Optional argument *source* specifies a context-specific name of the string " "passed. If not given, ``''`` is used. This should commonly be a " "filesystem path or a URL." msgstr "" -#: ../Doc/library/configparser.rst:1037 +#: ../Doc/library/configparser.rst:1042 msgid "" "Load configuration from any object that provides a dict-like ``items()`` " "method. Keys are section names, values are dictionaries with keys and " @@ -850,17 +850,17 @@ msgid "" "automatically converted to strings." msgstr "" -#: ../Doc/library/configparser.rst:1043 +#: ../Doc/library/configparser.rst:1048 msgid "" "Optional argument *source* specifies a context-specific name of the " "dictionary passed. If not given, ```` is used." msgstr "" -#: ../Doc/library/configparser.rst:1046 +#: ../Doc/library/configparser.rst:1051 msgid "This method can be used to copy state between parsers." msgstr "" -#: ../Doc/library/configparser.rst:1053 +#: ../Doc/library/configparser.rst:1058 msgid "" "Get an *option* value for the named *section*. If *vars* is provided, it " "must be a dictionary. The *option* is looked up in *vars* (if provided), " @@ -869,35 +869,35 @@ msgid "" "provided as a *fallback* value." msgstr "" -#: ../Doc/library/configparser.rst:1059 +#: ../Doc/library/configparser.rst:1064 msgid "" "All the ``'%'`` interpolations are expanded in the return values, unless the " "*raw* argument is true. Values for interpolation keys are looked up in the " "same manner as the option." msgstr "" -#: ../Doc/library/configparser.rst:1063 +#: ../Doc/library/configparser.rst:1068 msgid "" "Arguments *raw*, *vars* and *fallback* are keyword only to protect users " "from trying to use the third argument as the *fallback* fallback (especially " "when using the mapping protocol)." msgstr "" -#: ../Doc/library/configparser.rst:1071 +#: ../Doc/library/configparser.rst:1076 msgid "" "A convenience method which coerces the *option* in the specified *section* " "to an integer. See :meth:`get` for explanation of *raw*, *vars* and " "*fallback*." msgstr "" -#: ../Doc/library/configparser.rst:1078 +#: ../Doc/library/configparser.rst:1083 msgid "" "A convenience method which coerces the *option* in the specified *section* " "to a floating point number. See :meth:`get` for explanation of *raw*, " "*vars* and *fallback*." msgstr "" -#: ../Doc/library/configparser.rst:1085 +#: ../Doc/library/configparser.rst:1090 msgid "" "A convenience method which coerces the *option* in the specified *section* " "to a Boolean value. Note that the accepted values for the option are " @@ -909,34 +909,34 @@ msgid "" "*fallback*." msgstr "" -#: ../Doc/library/configparser.rst:1098 +#: ../Doc/library/configparser.rst:1103 msgid "" "When *section* is not given, return a list of *section_name*, " "*section_proxy* pairs, including DEFAULTSECT." msgstr "" -#: ../Doc/library/configparser.rst:1101 +#: ../Doc/library/configparser.rst:1106 msgid "" "Otherwise, return a list of *name*, *value* pairs for the options in the " "given *section*. Optional arguments have the same meaning as for the :meth:" "`get` method." msgstr "" -#: ../Doc/library/configparser.rst:1105 +#: ../Doc/library/configparser.rst:1110 msgid "" "Items present in *vars* no longer appear in the result. The previous " "behaviour mixed actual parser options with variables provided for " "interpolation." msgstr "" -#: ../Doc/library/configparser.rst:1113 +#: ../Doc/library/configparser.rst:1118 msgid "" "If the given section exists, set the given option to the specified value; " "otherwise raise :exc:`NoSectionError`. *option* and *value* must be " "strings; if not, :exc:`TypeError` is raised." msgstr "" -#: ../Doc/library/configparser.rst:1120 +#: ../Doc/library/configparser.rst:1125 msgid "" "Write a representation of the configuration to the specified :term:`file " "object`, which must be opened in text mode (accepting strings). This " @@ -945,20 +945,20 @@ msgid "" "surrounded by spaces." msgstr "" -#: ../Doc/library/configparser.rst:1129 +#: ../Doc/library/configparser.rst:1134 msgid "" "Remove the specified *option* from the specified *section*. If the section " "does not exist, raise :exc:`NoSectionError`. If the option existed to be " "removed, return :const:`True`; otherwise return :const:`False`." msgstr "" -#: ../Doc/library/configparser.rst:1137 +#: ../Doc/library/configparser.rst:1142 msgid "" "Remove the specified *section* from the configuration. If the section in " "fact existed, return ``True``. Otherwise return ``False``." msgstr "" -#: ../Doc/library/configparser.rst:1143 +#: ../Doc/library/configparser.rst:1148 msgid "" "Transforms the option name *option* as found in an input file or as passed " "in by client code to the form that should be used in the internal " @@ -967,7 +967,7 @@ msgid "" "of this name on instances to affect this behavior." msgstr "" -#: ../Doc/library/configparser.rst:1149 +#: ../Doc/library/configparser.rst:1154 msgid "" "You don't need to subclass the parser to use this method, you can also set " "it on an instance, to a function that takes a string argument and returns a " @@ -975,46 +975,46 @@ msgid "" "sensitive::" msgstr "" -#: ../Doc/library/configparser.rst:1157 +#: ../Doc/library/configparser.rst:1162 msgid "" "Note that when reading configuration files, whitespace around the option " "names is stripped before :meth:`optionxform` is called." msgstr "" -#: ../Doc/library/configparser.rst:1163 +#: ../Doc/library/configparser.rst:1168 msgid "Use :meth:`read_file` instead." msgstr "" -#: ../Doc/library/configparser.rst:1166 +#: ../Doc/library/configparser.rst:1171 msgid "" ":meth:`readfp` now iterates on *fp* instead of calling ``fp.readline()``." msgstr "" -#: ../Doc/library/configparser.rst:1169 +#: ../Doc/library/configparser.rst:1174 msgid "" "For existing code calling :meth:`readfp` with arguments which don't support " "iteration, the following generator may be used as a wrapper around the file-" "like object::" msgstr "" -#: ../Doc/library/configparser.rst:1179 +#: ../Doc/library/configparser.rst:1184 msgid "" "Instead of ``parser.readfp(fp)`` use ``parser." "read_file(readline_generator(fp))``." msgstr "" -#: ../Doc/library/configparser.rst:1185 +#: ../Doc/library/configparser.rst:1190 msgid "" "The maximum depth for recursive interpolation for :meth:`get` when the *raw* " "parameter is false. This is relevant only when the default *interpolation* " "is used." msgstr "" -#: ../Doc/library/configparser.rst:1193 +#: ../Doc/library/configparser.rst:1198 msgid "RawConfigParser Objects" msgstr "" -#: ../Doc/library/configparser.rst:1203 +#: ../Doc/library/configparser.rst:1208 msgid "" "Legacy variant of the :class:`ConfigParser`. It has interpolation disabled " "by default and allows for non-string section names, option names, and values " @@ -1022,27 +1022,27 @@ msgid "" "``defaults=`` keyword argument handling." msgstr "" -#: ../Doc/library/configparser.rst:1213 +#: ../Doc/library/configparser.rst:1218 msgid "" "Consider using :class:`ConfigParser` instead which checks types of the " "values to be stored internally. If you don't want interpolation, you can " "use ``ConfigParser(interpolation=None)``." msgstr "" -#: ../Doc/library/configparser.rst:1220 +#: ../Doc/library/configparser.rst:1225 msgid "" "Add a section named *section* to the instance. If a section by the given " "name already exists, :exc:`DuplicateSectionError` is raised. If the " "*default section* name is passed, :exc:`ValueError` is raised." msgstr "" -#: ../Doc/library/configparser.rst:1224 +#: ../Doc/library/configparser.rst:1229 msgid "" "Type of *section* is not checked which lets users create non-string named " "sections. This behaviour is unsupported and may cause internal errors." msgstr "" -#: ../Doc/library/configparser.rst:1230 +#: ../Doc/library/configparser.rst:1235 msgid "" "If the given section exists, set the given option to the specified value; " "otherwise raise :exc:`NoSectionError`. While it is possible to use :class:" @@ -1052,7 +1052,7 @@ msgid "" "string values." msgstr "" -#: ../Doc/library/configparser.rst:1237 +#: ../Doc/library/configparser.rst:1242 msgid "" "This method lets users assign non-string values to keys internally. This " "behaviour is unsupported and will cause errors when attempting to write to a " @@ -1060,32 +1060,32 @@ msgid "" "not allow such assignments to take place." msgstr "" -#: ../Doc/library/configparser.rst:1244 +#: ../Doc/library/configparser.rst:1249 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/library/configparser.rst:1248 +#: ../Doc/library/configparser.rst:1253 msgid "Base class for all other :mod:`configparser` exceptions." msgstr "" -#: ../Doc/library/configparser.rst:1253 +#: ../Doc/library/configparser.rst:1258 msgid "Exception raised when a specified section is not found." msgstr "" -#: ../Doc/library/configparser.rst:1258 +#: ../Doc/library/configparser.rst:1263 msgid "" "Exception raised if :meth:`add_section` is called with the name of a section " "that is already present or in strict parsers when a section if found more " "than once in a single input file, string or dictionary." msgstr "" -#: ../Doc/library/configparser.rst:1262 +#: ../Doc/library/configparser.rst:1267 msgid "" "Optional ``source`` and ``lineno`` attributes and arguments to :meth:" "`__init__` were added." msgstr "" -#: ../Doc/library/configparser.rst:1269 +#: ../Doc/library/configparser.rst:1274 msgid "" "Exception raised by strict parsers if a single option appears twice during " "reading from a single file, string or dictionary. This catches misspellings " @@ -1093,58 +1093,58 @@ msgid "" "representing the same case-insensitive configuration key." msgstr "" -#: ../Doc/library/configparser.rst:1277 +#: ../Doc/library/configparser.rst:1282 msgid "" "Exception raised when a specified option is not found in the specified " "section." msgstr "" -#: ../Doc/library/configparser.rst:1283 +#: ../Doc/library/configparser.rst:1288 msgid "" "Base class for exceptions raised when problems occur performing string " "interpolation." msgstr "" -#: ../Doc/library/configparser.rst:1289 +#: ../Doc/library/configparser.rst:1294 msgid "" "Exception raised when string interpolation cannot be completed because the " "number of iterations exceeds :const:`MAX_INTERPOLATION_DEPTH`. Subclass of :" "exc:`InterpolationError`." msgstr "" -#: ../Doc/library/configparser.rst:1296 +#: ../Doc/library/configparser.rst:1301 msgid "" "Exception raised when an option referenced from a value does not exist. " "Subclass of :exc:`InterpolationError`." msgstr "" -#: ../Doc/library/configparser.rst:1302 +#: ../Doc/library/configparser.rst:1307 msgid "" "Exception raised when the source text into which substitutions are made does " "not conform to the required syntax. Subclass of :exc:`InterpolationError`." msgstr "" -#: ../Doc/library/configparser.rst:1308 +#: ../Doc/library/configparser.rst:1313 msgid "" "Exception raised when attempting to parse a file which has no section " "headers." msgstr "" -#: ../Doc/library/configparser.rst:1314 +#: ../Doc/library/configparser.rst:1319 msgid "Exception raised when errors occur attempting to parse a file." msgstr "" -#: ../Doc/library/configparser.rst:1316 +#: ../Doc/library/configparser.rst:1321 msgid "" "The ``filename`` attribute and :meth:`__init__` argument were renamed to " "``source`` for consistency." msgstr "" -#: ../Doc/library/configparser.rst:1322 +#: ../Doc/library/configparser.rst:1327 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/configparser.rst:1323 +#: ../Doc/library/configparser.rst:1328 msgid "" "Config parsers allow for heavy customization. If you are interested in " "changing the behaviour outlined by the footnote reference, consult the " diff --git a/library/curses.po b/library/curses.po index e0b4319ec..ace66f60b 100644 --- a/library/curses.po +++ b/library/curses.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-07-04 11:32+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -1429,8 +1429,8 @@ msgstr "" #: ../Doc/library/curses.rst:1286 msgid "" -"Some curses routines that return an integer, such as :func:`getch`, " -"return :const:`ERR` upon failure." +"Some curses routines that return an integer, such as :meth:`~window." +"getch`, return :const:`ERR` upon failure." msgstr "" #: ../Doc/library/curses.rst:1292 diff --git a/library/datatypes.po b/library/datatypes.po index 1f048bbdd..c5158bc3a 100644 --- a/library/datatypes.po +++ b/library/datatypes.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-10-09 17:54+0200\n" "PO-Revision-Date: 2018-09-28 11:37+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -19,27 +19,29 @@ msgid "Data Types" msgstr "Types de données" #: ../Doc/library/datatypes.rst:7 +#, fuzzy msgid "" "The modules described in this chapter provide a variety of specialized data " -"types such as dates and times, fixed-type arrays, heap queues, synchronized " -"queues, and sets." +"types such as dates and times, fixed-type arrays, heap queues, double-ended " +"queues, and enumerations." msgstr "" "Les modules documentés dans ce chapitre fournissent une gamme de types de " "données spécialisés tel que les dates et les heures, les listes à type " "prédéfini, les *heap queue*, les queues synchronisées, et les ensembles." #: ../Doc/library/datatypes.rst:11 +#, fuzzy msgid "" "Python also provides some built-in data types, in particular, :class:" "`dict`, :class:`list`, :class:`set` and :class:`frozenset`, and :class:" "`tuple`. The :class:`str` class is used to hold Unicode strings, and the :" -"class:`bytes` class is used to hold binary data." +"class:`bytes` and :class:`bytearray` classes are used to hold binary data." msgstr "" "Python fournit aussi quelques types natifs, typiquement :class:`dict`, :" "class:`list`, :class:`set`, :class:`frozenset`, et :class:`tuple`. La " "classe :class:`str` est utilisée pour stocker des chaînes Unicode, et la " "classe :class:`bytes` des données binaires." -#: ../Doc/library/datatypes.rst:16 +#: ../Doc/library/datatypes.rst:17 msgid "The following modules are documented in this chapter:" msgstr "Les modules suivants sont documentés dans ce chapitre :" diff --git a/library/datetime.po b/library/datetime.po index d7882022f..042c77526 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-08-21 00:28+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -24,12 +24,16 @@ msgid "**Source code:** :source:`Lib/datetime.py`" msgstr "**Code source :** :source:`Lib/datetime.py`" #: ../Doc/library/datetime.rst:17 +#, fuzzy +msgid "" +"The :mod:`datetime` module supplies classes for manipulating dates and times." +msgstr "Le module :mod:`datetime` exporte les constantes suivantes :" + +#: ../Doc/library/datetime.rst:19 +#, fuzzy msgid "" -"The :mod:`datetime` module supplies classes for manipulating dates and times " -"in both simple and complex ways. While date and time arithmetic is " -"supported, the focus of the implementation is on efficient attribute " -"extraction for output formatting and manipulation. For related " -"functionality, see also the :mod:`time` and :mod:`calendar` modules." +"While date and time arithmetic is supported, the focus of the implementation " +"is on efficient attribute extraction for output formatting and manipulation." msgstr "" "Le module :mod:`datetime` fournit des classes pour manipuler de façon simple " "ou plus complexe des dates et des heures. Bien que les calculs de date et " @@ -38,19 +42,48 @@ msgstr "" "pour l'affichage. Pour d'autres fonctionnalités associées, voir aussi les " "modules :mod:`time` et :mod:`calendar`." -#: ../Doc/library/datetime.rst:23 -msgid "There are two kinds of date and time objects: \"naive\" and \"aware\"." -msgstr "" -"Il y a deux sortes d'objets *date* et *time* : les \"naïfs\" et les \"avisés" -"\"." +#: ../Doc/library/datetime.rst:25 +msgid "Module :mod:`calendar`" +msgstr "Module :mod:`calendar`" #: ../Doc/library/datetime.rst:25 +msgid "General calendar related functions." +msgstr "Fonctions génériques associées au calendrier." + +#: ../Doc/library/datetime.rst:28 +msgid "Module :mod:`time`" +msgstr "Module :mod:`time`" + +#: ../Doc/library/datetime.rst:28 +msgid "Time access and conversions." +msgstr "Accès au données d'horaires et aux conversions associées." + +#: ../Doc/library/datetime.rst:30 +#, fuzzy +msgid "Package `dateutil `_" +msgstr "`dateutil.tz `_" + +#: ../Doc/library/datetime.rst:31 +msgid "Third-party library with expanded time zone and parsing support." +msgstr "" + +#: ../Doc/library/datetime.rst:36 +#, fuzzy +msgid "Aware and Naive Objects" +msgstr "Pour un objet avisé :" + +#: ../Doc/library/datetime.rst:38 +msgid "Date and time objects may be categorized as \"aware\" or \"naive.\"" +msgstr "" + +#: ../Doc/library/datetime.rst:40 +#, fuzzy msgid "" -"An aware object has sufficient knowledge of applicable algorithmic and " -"political time adjustments, such as time zone and daylight saving time " -"information, to locate itself relative to other aware objects. An aware " -"object is used to represent a specific moment in time that is not open to " -"interpretation [#]_." +"With sufficient knowledge of applicable algorithmic and political time " +"adjustments, such as time zone and daylight saving time information, an " +"**aware** object can locate itself relative to other aware objects. An aware " +"object represents a specific moment in time that is not open to " +"interpretation. [#]_" msgstr "" "Un objet avisé possède suffisamment de connaissance des règles à appliquer " "et des politiques d'ajustement de l'heure comme les informations sur les " @@ -58,15 +91,16 @@ msgstr "" "rapport à d'autres objets avisés. Un objet avisé est utilisé pour représenté " "un moment précis de l'histoire qui n'est pas ouvert à l'interprétation [#]_." -#: ../Doc/library/datetime.rst:31 +#: ../Doc/library/datetime.rst:46 +#, fuzzy msgid "" -"A naive object does not contain enough information to unambiguously locate " -"itself relative to other date/time objects. Whether a naive object " +"A **naive** object does not contain enough information to unambiguously " +"locate itself relative to other date/time objects. Whether a naive object " "represents Coordinated Universal Time (UTC), local time, or time in some " "other timezone is purely up to the program, just like it is up to the " -"program whether a particular number represents metres, miles, or mass. " -"Naive objects are easy to understand and to work with, at the cost of " -"ignoring some aspects of reality." +"program whether a particular number represents metres, miles, or mass. Naive " +"objects are easy to understand and to work with, at the cost of ignoring " +"some aspects of reality." msgstr "" "Un objet naïf ne comporte pas assez d'informations pour se situer sans " "ambiguïté par rapport à d'autres objets *date/time*. Le fait qu'un objet " @@ -76,21 +110,26 @@ msgstr "" "le programme. Les objets naïfs sont simples à comprendre et il est aisé de " "travailler avec, au prix de négliger certains aspects de la réalité." -#: ../Doc/library/datetime.rst:38 +#: ../Doc/library/datetime.rst:53 msgid "" "For applications requiring aware objects, :class:`.datetime` and :class:`." "time` objects have an optional time zone information attribute, :attr:`!" "tzinfo`, that can be set to an instance of a subclass of the abstract :class:" "`tzinfo` class. These :class:`tzinfo` objects capture information about the " -"offset from UTC time, the time zone name, and whether Daylight Saving Time " -"is in effect. Note that only one concrete :class:`tzinfo` class, the :class:" -"`timezone` class, is supplied by the :mod:`datetime` module. The :class:" -"`timezone` class can represent simple timezones with fixed offset from UTC, " -"such as UTC itself or North American EST and EDT timezones. Supporting " -"timezones at deeper levels of detail is up to the application. The rules " -"for time adjustment across the world are more political than rational, " -"change frequently, and there is no standard suitable for every application " -"aside from UTC." +"offset from UTC time, the time zone name, and whether daylight saving time " +"is in effect." +msgstr "" + +#: ../Doc/library/datetime.rst:59 +#, fuzzy +msgid "" +"Only one concrete :class:`tzinfo` class, the :class:`timezone` class, is " +"supplied by the :mod:`datetime` module. The :class:`timezone` class can " +"represent simple timezones with fixed offsets from UTC, such as UTC itself " +"or North American EST and EDT timezones. Supporting timezones at deeper " +"levels of detail is up to the application. The rules for time adjustment " +"across the world are more political than rational, change frequently, and " +"there is no standard suitable for every application aside from UTC." msgstr "" "Pour les applications qui nécessitent des objets avisés, les objets :class:`." "datetime` et :class:`.time` ont un attribut optionnel d'information sur le " @@ -107,11 +146,15 @@ msgstr "" "plus politiques que rationnelles, changent fréquemment, et il n'y a pas de " "standard qui vaille pour toute application, en dehors d'UTC." -#: ../Doc/library/datetime.rst:51 +#: ../Doc/library/datetime.rst:68 +msgid "Constants" +msgstr "" + +#: ../Doc/library/datetime.rst:70 msgid "The :mod:`datetime` module exports the following constants:" msgstr "Le module :mod:`datetime` exporte les constantes suivantes :" -#: ../Doc/library/datetime.rst:55 +#: ../Doc/library/datetime.rst:74 msgid "" "The smallest year number allowed in a :class:`date` or :class:`.datetime` " "object. :const:`MINYEAR` is ``1``." @@ -119,7 +162,7 @@ msgstr "" "Le numéro d'année le plus petit autorisé dans un objet :class:`date` ou :" "class:`datetime`. :const:`MINYEAR` vaut ``1``." -#: ../Doc/library/datetime.rst:61 +#: ../Doc/library/datetime.rst:80 msgid "" "The largest year number allowed in a :class:`date` or :class:`.datetime` " "object. :const:`MAXYEAR` is ``9999``." @@ -127,27 +170,11 @@ msgstr "" "Le numéro d'année le plus grand autorisé dans un objet :class:`date` ou :" "class:`datetime`. :const:`MAXYEAR` vaut ``9999``." -#: ../Doc/library/datetime.rst:68 -msgid "Module :mod:`calendar`" -msgstr "Module :mod:`calendar`" - -#: ../Doc/library/datetime.rst:68 -msgid "General calendar related functions." -msgstr "Fonctions génériques associées au calendrier." - -#: ../Doc/library/datetime.rst:70 -msgid "Module :mod:`time`" -msgstr "Module :mod:`time`" - -#: ../Doc/library/datetime.rst:71 -msgid "Time access and conversions." -msgstr "Accès au données d'horaires et aux conversions associées." - -#: ../Doc/library/datetime.rst:75 +#: ../Doc/library/datetime.rst:84 msgid "Available Types" msgstr "Types disponibles" -#: ../Doc/library/datetime.rst:80 +#: ../Doc/library/datetime.rst:89 msgid "" "An idealized naive date, assuming the current Gregorian calendar always was, " "and always will be, in effect. Attributes: :attr:`year`, :attr:`month`, and :" @@ -157,11 +184,12 @@ msgstr "" "toujours existé et qu'il existera toujours. Attributs : :attr:`year`, :attr:" "`month` et :attr:`day`." -#: ../Doc/library/datetime.rst:88 +#: ../Doc/library/datetime.rst:97 +#, fuzzy msgid "" "An idealized time, independent of any particular day, assuming that every " -"day has exactly 24\\*60\\*60 seconds (there is no notion of \"leap seconds\" " -"here). Attributes: :attr:`hour`, :attr:`minute`, :attr:`second`, :attr:" +"day has exactly 24\\*60\\*60 seconds. (There is no notion of \"leap seconds" +"\" here.) Attributes: :attr:`hour`, :attr:`minute`, :attr:`second`, :attr:" "`microsecond`, and :attr:`.tzinfo`." msgstr "" "Un temps idéalisé, indépendant d'une date particulière, en supposant qu'une " @@ -169,7 +197,7 @@ msgstr "" "notion de \"seconde bissextile\"). Attributs : :attr:`hour`, :attr:" "`minute`, :attr:`second`, :attr:`microsecond` et :attr:`tzinfo`." -#: ../Doc/library/datetime.rst:97 +#: ../Doc/library/datetime.rst:106 msgid "" "A combination of a date and a time. Attributes: :attr:`year`, :attr:" "`month`, :attr:`day`, :attr:`hour`, :attr:`minute`, :attr:`second`, :attr:" @@ -179,7 +207,7 @@ msgstr "" "`month`, :attr:`day`, :attr:`hour`, :attr:`minute`, :attr:`second`, :attr:" "`microsecond`, et :attr:`tzinfo`." -#: ../Doc/library/datetime.rst:105 +#: ../Doc/library/datetime.rst:114 msgid "" "A duration expressing the difference between two :class:`date`, :class:`." "time`, or :class:`.datetime` instances to microsecond resolution." @@ -187,9 +215,10 @@ msgstr "" "Une durée qui exprime la différence entre deux instances de :class:`date`, :" "class:`time` ou :class:`datetime` en microsecondes." -#: ../Doc/library/datetime.rst:112 +#: ../Doc/library/datetime.rst:121 +#, fuzzy msgid "" -"An abstract base class for time zone information objects. These are used by " +"An abstract base class for time zone information objects. These are used by " "the :class:`.datetime` and :class:`.time` classes to provide a customizable " "notion of time adjustment (for example, to account for time zone and/or " "daylight saving time)." @@ -200,7 +229,7 @@ msgstr "" "d'ajustement d'horaire (par exemple la prise en compte d'un fuseau horaire " "et/ou de l'heure d'été)." -#: ../Doc/library/datetime.rst:120 +#: ../Doc/library/datetime.rst:129 msgid "" "A class that implements the :class:`tzinfo` abstract base class as a fixed " "offset from the UTC." @@ -208,49 +237,96 @@ msgstr "" "Une classe qui implémente la classe de base abstraite :class:`tzinfo` en " "tant qu'offset fixe par rapport au temps UTC." -#: ../Doc/library/datetime.rst:126 +#: ../Doc/library/datetime.rst:134 ../Doc/library/datetime.rst:152 msgid "Objects of these types are immutable." msgstr "Les objets issus de ces types sont immuables." -#: ../Doc/library/datetime.rst:128 +#: ../Doc/library/datetime.rst:136 +msgid "Subclass relationships::" +msgstr "Relations entre les sous-classes ::" + +#: ../Doc/library/datetime.rst:147 +msgid "Common Properties" +msgstr "" + +#: ../Doc/library/datetime.rst:149 +msgid "" +"The :class:`date`, :class:`.datetime`, :class:`.time`, and :class:`timezone` " +"types share these common features:" +msgstr "" + +#: ../Doc/library/datetime.rst:153 +msgid "" +"Objects of these types are hashable, meaning that they can be used as " +"dictionary keys." +msgstr "" + +#: ../Doc/library/datetime.rst:155 +msgid "" +"Objects of these types support efficient pickling via the :mod:`pickle` " +"module." +msgstr "" + +#: ../Doc/library/datetime.rst:158 +msgid "Determining if an Object is Aware or Naive" +msgstr "" + +#: ../Doc/library/datetime.rst:160 msgid "Objects of the :class:`date` type are always naive." msgstr "Les objets de type :class:`date` sont toujours naïfs." -#: ../Doc/library/datetime.rst:130 +#: ../Doc/library/datetime.rst:162 +#, fuzzy msgid "" -"An object of type :class:`.time` or :class:`.datetime` may be naive or " -"aware. A :class:`.datetime` object *d* is aware if ``d.tzinfo`` is not " -"``None`` and ``d.tzinfo.utcoffset(d)`` does not return ``None``. If ``d." -"tzinfo`` is ``None``, or if ``d.tzinfo`` is not ``None`` but ``d.tzinfo." -"utcoffset(d)`` returns ``None``, *d* is naive. A :class:`.time` object *t* " -"is aware if ``t.tzinfo`` is not ``None`` and ``t.tzinfo.utcoffset(None)`` " -"does not return ``None``. Otherwise, *t* is naive." +"An object of type :class:`.time` or :class:`.datetime` may be aware or naive." +msgstr "Les objets de type :class:`date` sont toujours naïfs." + +#: ../Doc/library/datetime.rst:164 +msgid "A :class:`.datetime` object *d* is aware if both of the following hold:" +msgstr "" + +#: ../Doc/library/datetime.rst:166 +msgid "``d.tzinfo`` is not ``None``" +msgstr "" + +#: ../Doc/library/datetime.rst:167 +msgid "``d.tzinfo.utcoffset(d)`` does not return ``None``" +msgstr "" + +#: ../Doc/library/datetime.rst:169 +msgid "Otherwise, *d* is naive." +msgstr "" + +#: ../Doc/library/datetime.rst:171 +msgid "A :class:`.time` object *t* is aware if both of the following hold:" +msgstr "" + +#: ../Doc/library/datetime.rst:173 +msgid "``t.tzinfo`` is not ``None``" +msgstr "" + +#: ../Doc/library/datetime.rst:174 +msgid "``t.tzinfo.utcoffset(None)`` does not return ``None``." +msgstr "" + +#: ../Doc/library/datetime.rst:176 +msgid "Otherwise, *t* is naive." msgstr "" -"Un objet de type :class:`.time` ou :class:`.datetime` peut être naïf ou " -"avisé. Un objet :class:`.datetime` *d* est avisé si ``d.tzinfo`` ne vaut pas " -"``None`` et que ``d.tzinfo.utcoffset(d)`` ne renvoie pas ``None``. Si ``d." -"tzinfo`` vaut ``None`` ou que ``d.tzinfo`` ne vaut pas ``None`` mais que ``d." -"tzinfo.utcoffset(d)`` renvoie ``None``, alors *d* est naïf. Un objet :class:" -"`.time` *t* est avisé si ``t.tzinfo`` ne vaut pas ``None`` et que ``t.tzinfo." -"utcoffset(None)`` ne renvoie pas ``None``. Sinon, *t* est naïf." -#: ../Doc/library/datetime.rst:138 +#: ../Doc/library/datetime.rst:178 +#, fuzzy msgid "" -"The distinction between naive and aware doesn't apply to :class:`timedelta` " +"The distinction between aware and naive doesn't apply to :class:`timedelta` " "objects." msgstr "" "La distinction entre naïf et avisé ne s'applique pas aux objets de type :" "class:`timedelta`." -#: ../Doc/library/datetime.rst:141 -msgid "Subclass relationships::" -msgstr "Relations entre les sous-classes ::" - -#: ../Doc/library/datetime.rst:155 +#: ../Doc/library/datetime.rst:184 msgid ":class:`timedelta` Objects" msgstr "Objets :class:`timedelta`" -#: ../Doc/library/datetime.rst:157 +#: ../Doc/library/datetime.rst:186 msgid "" "A :class:`timedelta` object represents a duration, the difference between " "two dates or times." @@ -258,40 +334,42 @@ msgstr "" "Un objet :class:`timedelta` représente une durée, c'est-à-dire la différence " "entre deux dates ou heures." -#: ../Doc/library/datetime.rst:162 +#: ../Doc/library/datetime.rst:191 +#, fuzzy msgid "" -"All arguments are optional and default to ``0``. Arguments may be integers " +"All arguments are optional and default to ``0``. Arguments may be integers " "or floats, and may be positive or negative." msgstr "" "Tous les paramètres sont optionnels et ont ``0`` comme valeur par défaut. " "Les paramètres peuvent être des entiers ou des flottants et ils peuvent être " "positifs ou négatifs." -#: ../Doc/library/datetime.rst:165 +#: ../Doc/library/datetime.rst:194 +#, fuzzy msgid "" -"Only *days*, *seconds* and *microseconds* are stored internally. Arguments " +"Only *days*, *seconds* and *microseconds* are stored internally. Arguments " "are converted to those units:" msgstr "" "Seuls les *jours*, les *secondes* et les *microsecondes* sont stockés en " "interne. Tous les paramètres sont convertis dans ces unités :" -#: ../Doc/library/datetime.rst:168 +#: ../Doc/library/datetime.rst:197 msgid "A millisecond is converted to 1000 microseconds." msgstr "Une milliseconde est convertie en 1000 microsecondes." -#: ../Doc/library/datetime.rst:169 +#: ../Doc/library/datetime.rst:198 msgid "A minute is converted to 60 seconds." msgstr "Une minute est convertie en 60 secondes." -#: ../Doc/library/datetime.rst:170 +#: ../Doc/library/datetime.rst:199 msgid "An hour is converted to 3600 seconds." msgstr "Une heure est convertie en 3600 secondes." -#: ../Doc/library/datetime.rst:171 +#: ../Doc/library/datetime.rst:200 msgid "A week is converted to 7 days." msgstr "Une semaine est convertie en 7 jours." -#: ../Doc/library/datetime.rst:173 +#: ../Doc/library/datetime.rst:202 msgid "" "and days, seconds and microseconds are then normalized so that the " "representation is unique, with" @@ -299,24 +377,32 @@ msgstr "" "et ensuite les jours, secondes et microsecondes sont normalisés pour que la " "représentation soit unique avec" -#: ../Doc/library/datetime.rst:176 +#: ../Doc/library/datetime.rst:205 msgid "``0 <= microseconds < 1000000``" msgstr "``0 <= microseconds < 1000000``" -#: ../Doc/library/datetime.rst:177 +#: ../Doc/library/datetime.rst:206 msgid "``0 <= seconds < 3600*24`` (the number of seconds in one day)" msgstr "``0 <= secondes < 3600*24`` (le nombre de secondes dans une journée)" -#: ../Doc/library/datetime.rst:178 +#: ../Doc/library/datetime.rst:207 msgid "``-999999999 <= days <= 999999999``" msgstr "``-999999999 <= days <= 999999999``" -#: ../Doc/library/datetime.rst:180 +#: ../Doc/library/datetime.rst:209 +msgid "" +"The following example illustrates how any arguments besides *days*, " +"*seconds* and *microseconds* are \"merged\" and normalized into those three " +"resulting attributes::" +msgstr "" + +#: ../Doc/library/datetime.rst:227 +#, fuzzy msgid "" "If any argument is a float and there are fractional microseconds, the " "fractional microseconds left over from all arguments are combined and their " "sum is rounded to the nearest microsecond using round-half-to-even " -"tiebreaker. If no argument is a float, the conversion and normalization " +"tiebreaker. If no argument is a float, the conversion and normalization " "processes are exact (no information is lost)." msgstr "" "Si l'un des arguments est un flottant et qu'il y a des microsecondes " @@ -326,7 +412,7 @@ msgstr "" "flottant, les processus de conversion et de normalisation seront exacts (pas " "d'informations perdues)." -#: ../Doc/library/datetime.rst:187 +#: ../Doc/library/datetime.rst:234 msgid "" "If the normalized value of days lies outside the indicated range, :exc:" "`OverflowError` is raised." @@ -334,23 +420,26 @@ msgstr "" "Si la valeur normalisée des jours déborde de l'intervalle indiqué, une :exc:" "`OverflowError` est levée." -#: ../Doc/library/datetime.rst:190 +#: ../Doc/library/datetime.rst:237 +#, fuzzy msgid "" "Note that normalization of negative values may be surprising at first. For " -"example," +"example::" msgstr "" "Notez que la normalisation de valeurs négatives peut être surprenante au " "premier abord. Par exemple," -#: ../Doc/library/datetime.rst:199 -msgid "Class attributes are:" -msgstr "Les attributs de la classe sont :" +#: ../Doc/library/datetime.rst:246 ../Doc/library/datetime.rst:540 +#: ../Doc/library/datetime.rst:1045 ../Doc/library/datetime.rst:1663 +#: ../Doc/library/datetime.rst:2257 +msgid "Class attributes:" +msgstr "Attributs de la classe :" -#: ../Doc/library/datetime.rst:203 +#: ../Doc/library/datetime.rst:250 msgid "The most negative :class:`timedelta` object, ``timedelta(-999999999)``." msgstr "L'objet :class:`timedelta` le plus négatif, ``timedelta(-999999999)``." -#: ../Doc/library/datetime.rst:208 +#: ../Doc/library/datetime.rst:255 msgid "" "The most positive :class:`timedelta` object, ``timedelta(days=999999999, " "hours=23, minutes=59, seconds=59, microseconds=999999)``." @@ -358,7 +447,7 @@ msgstr "" "L'objet :class:`timedelta` le plus positif, ``timedelta(days=999999999, " "hours=23, minutes=59, seconds=59, microseconds=999999)``." -#: ../Doc/library/datetime.rst:214 +#: ../Doc/library/datetime.rst:261 msgid "" "The smallest possible difference between non-equal :class:`timedelta` " "objects, ``timedelta(microseconds=1)``." @@ -366,7 +455,7 @@ msgstr "" "La plus petite différence entre des objets :class:`timedelta` non égaux, " "``timedelta(microseconds=1)``." -#: ../Doc/library/datetime.rst:217 +#: ../Doc/library/datetime.rst:264 msgid "" "Note that, because of normalization, ``timedelta.max`` > ``-timedelta.min``. " "``-timedelta.max`` is not representable as a :class:`timedelta` object." @@ -375,63 +464,63 @@ msgstr "" "timedelta.min``. ``-timedelta.max`` n'est pas représentable sous la forme " "d'un objet :class:`timedelta`." -#: ../Doc/library/datetime.rst:220 ../Doc/library/datetime.rst:487 -#: ../Doc/library/datetime.rst:907 ../Doc/library/datetime.rst:1476 +#: ../Doc/library/datetime.rst:267 ../Doc/library/datetime.rst:558 +#: ../Doc/library/datetime.rst:1065 ../Doc/library/datetime.rst:1683 msgid "Instance attributes (read-only):" msgstr "Attributs de l'instance (en lecture seule) :" -#: ../Doc/library/datetime.rst:223 +#: ../Doc/library/datetime.rst:270 msgid "Attribute" msgstr "Attribut" -#: ../Doc/library/datetime.rst:223 +#: ../Doc/library/datetime.rst:270 msgid "Value" msgstr "Valeur" -#: ../Doc/library/datetime.rst:225 +#: ../Doc/library/datetime.rst:272 msgid "``days``" msgstr "``days``" -#: ../Doc/library/datetime.rst:225 +#: ../Doc/library/datetime.rst:272 msgid "Between -999999999 and 999999999 inclusive" msgstr "Entre -999999999 et 999999999 inclus" -#: ../Doc/library/datetime.rst:227 +#: ../Doc/library/datetime.rst:274 msgid "``seconds``" msgstr "``seconds``" -#: ../Doc/library/datetime.rst:227 +#: ../Doc/library/datetime.rst:274 msgid "Between 0 and 86399 inclusive" msgstr "Entre 0 et 86399 inclus" -#: ../Doc/library/datetime.rst:229 +#: ../Doc/library/datetime.rst:276 msgid "``microseconds``" msgstr "``microseconds``" -#: ../Doc/library/datetime.rst:229 +#: ../Doc/library/datetime.rst:276 msgid "Between 0 and 999999 inclusive" msgstr "Entre 0 et 999999 inclus" -#: ../Doc/library/datetime.rst:232 ../Doc/library/datetime.rst:504 -#: ../Doc/library/datetime.rst:960 ../Doc/library/datetime.rst:1515 +#: ../Doc/library/datetime.rst:279 ../Doc/library/datetime.rst:575 +#: ../Doc/library/datetime.rst:1118 msgid "Supported operations:" msgstr "Opérations gérées :" -#: ../Doc/library/datetime.rst:237 ../Doc/library/datetime.rst:507 -#: ../Doc/library/datetime.rst:963 +#: ../Doc/library/datetime.rst:284 ../Doc/library/datetime.rst:578 +#: ../Doc/library/datetime.rst:1121 msgid "Operation" msgstr "Opération" -#: ../Doc/library/datetime.rst:237 ../Doc/library/datetime.rst:507 -#: ../Doc/library/datetime.rst:963 +#: ../Doc/library/datetime.rst:284 ../Doc/library/datetime.rst:578 +#: ../Doc/library/datetime.rst:1121 msgid "Result" msgstr "Résultat" -#: ../Doc/library/datetime.rst:239 +#: ../Doc/library/datetime.rst:286 msgid "``t1 = t2 + t3``" msgstr "``t1 = t2 + t3``" -#: ../Doc/library/datetime.rst:239 +#: ../Doc/library/datetime.rst:286 msgid "" "Sum of *t2* and *t3*. Afterwards *t1*-*t2* == *t3* and *t1*-*t3* == *t2* are " "true. (1)" @@ -439,11 +528,11 @@ msgstr "" "Somme de *t2* et *t3*. Ensuite ``t1 - t2 == t3`` et ``t1 - t3 == t2`` sont " "des expressions vraies. (1)" -#: ../Doc/library/datetime.rst:242 +#: ../Doc/library/datetime.rst:289 msgid "``t1 = t2 - t3``" msgstr "``t1 = t2 - t3``" -#: ../Doc/library/datetime.rst:242 +#: ../Doc/library/datetime.rst:289 msgid "" "Difference of *t2* and *t3*. Afterwards *t1* == *t2* - *t3* and *t2* == *t1* " "+ *t3* are true. (1)(6)" @@ -451,11 +540,11 @@ msgstr "" "Différence entre *t2* et *t3*. Ensuite ``t1 == t2 - t3`` et ``t2 == t1 + " "t3`` sont des expressions vraies. (1)(6)" -#: ../Doc/library/datetime.rst:246 +#: ../Doc/library/datetime.rst:293 msgid "``t1 = t2 * i or t1 = i * t2``" msgstr "``t1 = t2 * i or t1 = i * t2``" -#: ../Doc/library/datetime.rst:246 +#: ../Doc/library/datetime.rst:293 msgid "" "Delta multiplied by an integer. Afterwards *t1* // i == *t2* is true, " "provided ``i != 0``." @@ -463,15 +552,15 @@ msgstr "" "Delta multiplié par un entier. Ensuite *t1* // i == *t2* est vrai, en " "admettant que ``i != 0``." -#: ../Doc/library/datetime.rst:250 +#: ../Doc/library/datetime.rst:297 msgid "In general, *t1* \\* i == *t1* \\* (i-1) + *t1* is true. (1)" msgstr "De manière générale, *t1* \\* i == *t1* \\* (i-1) + *t1* est vrai. (1)" -#: ../Doc/library/datetime.rst:253 +#: ../Doc/library/datetime.rst:300 msgid "``t1 = t2 * f or t1 = f * t2``" msgstr "``t1 = t2 * f or t1 = f * t2``" -#: ../Doc/library/datetime.rst:253 +#: ../Doc/library/datetime.rst:300 msgid "" "Delta multiplied by a float. The result is rounded to the nearest multiple " "of timedelta.resolution using round-half-to-even." @@ -480,11 +569,11 @@ msgstr "" "proche de ``timedelta.resolution`` en utilisant la règle de l'arrondi au " "pair le plus proche." -#: ../Doc/library/datetime.rst:257 +#: ../Doc/library/datetime.rst:304 msgid "``f = t2 / t3``" msgstr "``f = t2 / t3``" -#: ../Doc/library/datetime.rst:257 +#: ../Doc/library/datetime.rst:304 msgid "" "Division (3) of overall duration *t2* by interval unit *t3*. Returns a :" "class:`float` object." @@ -492,11 +581,11 @@ msgstr "" "Division (3) de la durée totale *t2* par l'unité d'intervalle *t3*. Renvoie " "un objet :class:`float`." -#: ../Doc/library/datetime.rst:261 +#: ../Doc/library/datetime.rst:308 msgid "``t1 = t2 / f or t1 = t2 / i``" msgstr "``t1 = t2 / f or t1 = t2 / i``" -#: ../Doc/library/datetime.rst:261 +#: ../Doc/library/datetime.rst:308 msgid "" "Delta divided by a float or an int. The result is rounded to the nearest " "multiple of timedelta.resolution using round-half-to-even." @@ -505,31 +594,32 @@ msgstr "" "multiple le plus proche de ``timedelta.resolution`` en utilisant la règle de " "l'arrondi au pair le plus proche." -#: ../Doc/library/datetime.rst:265 +#: ../Doc/library/datetime.rst:312 msgid "``t1 = t2 // i`` or ``t1 = t2 // t3``" msgstr "``t1 = t2 // i`` or ``t1 = t2 // t3``" -#: ../Doc/library/datetime.rst:265 +#: ../Doc/library/datetime.rst:312 +#, fuzzy msgid "" -"The floor is computed and the remainder (if any) is thrown away. In the " +"The floor is computed and the remainder (if any) is thrown away. In the " "second case, an integer is returned. (3)" msgstr "" "Le quotient est calculé et le reste (s'il y en a un) est ignoré. Dans le " "second cas, un entier est renvoyé. (3)" -#: ../Doc/library/datetime.rst:269 +#: ../Doc/library/datetime.rst:316 msgid "``t1 = t2 % t3``" msgstr "``t1 = t2 % t3``" -#: ../Doc/library/datetime.rst:269 +#: ../Doc/library/datetime.rst:316 msgid "The remainder is computed as a :class:`timedelta` object. (3)" msgstr "Le reste est calculé comme un objet de type :class:`timedelta`. (3)" -#: ../Doc/library/datetime.rst:272 +#: ../Doc/library/datetime.rst:319 msgid "``q, r = divmod(t1, t2)``" msgstr "``q, r = divmod(t1, t2)``" -#: ../Doc/library/datetime.rst:272 +#: ../Doc/library/datetime.rst:319 msgid "" "Computes the quotient and the remainder: ``q = t1 // t2`` (3) and ``r = t1 % " "t2``. q is an integer and r is a :class:`timedelta` object." @@ -537,19 +627,19 @@ msgstr "" "Calcule le quotient et le reste : ``q = t1 // t2`` (3) et ``r = t1 % t2``. q " "est un entier et r est un objet :class:`timedelta`." -#: ../Doc/library/datetime.rst:277 +#: ../Doc/library/datetime.rst:324 msgid "``+t1``" msgstr "``+t1``" -#: ../Doc/library/datetime.rst:277 +#: ../Doc/library/datetime.rst:324 msgid "Returns a :class:`timedelta` object with the same value. (2)" msgstr "Renvoie un objet :class:`timedelta` avec la même valeur. (2)" -#: ../Doc/library/datetime.rst:280 +#: ../Doc/library/datetime.rst:327 msgid "``-t1``" msgstr "``-t1``" -#: ../Doc/library/datetime.rst:280 +#: ../Doc/library/datetime.rst:327 msgid "" "equivalent to :class:`timedelta`\\ (-*t1.days*, -*t1.seconds*, -*t1." "microseconds*), and to *t1*\\* -1. (1)(4)" @@ -557,11 +647,11 @@ msgstr "" "équivalent à :class:`timedelta`\\ (*-t1.days*, *-t1.seconds*, *-t1." "microseconds*), et à ``t1 * -1``. (1)(4)" -#: ../Doc/library/datetime.rst:285 +#: ../Doc/library/datetime.rst:332 msgid "``abs(t)``" msgstr "``abs(t)``" -#: ../Doc/library/datetime.rst:285 +#: ../Doc/library/datetime.rst:332 msgid "" "equivalent to +\\ *t* when ``t.days >= 0``, and to -*t* when ``t.days < 0``. " "(2)" @@ -569,11 +659,11 @@ msgstr "" "équivalent à ``+t`` quand ``t.days >= 0``, et à ``-t`` quand ``t.days < 0``. " "(2)" -#: ../Doc/library/datetime.rst:288 +#: ../Doc/library/datetime.rst:335 msgid "``str(t)``" msgstr "``str(t)``" -#: ../Doc/library/datetime.rst:288 +#: ../Doc/library/datetime.rst:335 msgid "" "Returns a string in the form ``[D day[s], ][H]H:MM:SS[.UUUUUU]``, where D is " "negative for negative ``t``. (5)" @@ -581,11 +671,11 @@ msgstr "" "Renvoie une chaîne de la forme ``[D day[s], ][H]H:MM:SS[.UUUUUU]``, où D est " "négatif pour ``t`` négatif. (5)" -#: ../Doc/library/datetime.rst:292 +#: ../Doc/library/datetime.rst:339 msgid "``repr(t)``" msgstr "``repr(t)``" -#: ../Doc/library/datetime.rst:292 +#: ../Doc/library/datetime.rst:339 msgid "" "Returns a string representation of the :class:`timedelta` object as a " "constructor call with canonical attribute values." @@ -593,39 +683,42 @@ msgstr "" "Renvoie une chaîne de la forme objet :class:`timedelta` comme un appel " "construit avec des valeurs d'attributs canoniques." -#: ../Doc/library/datetime.rst:298 ../Doc/library/datetime.rst:521 -#: ../Doc/library/datetime.rst:2209 +#: ../Doc/library/datetime.rst:345 ../Doc/library/datetime.rst:592 +#: ../Doc/library/datetime.rst:2469 msgid "Notes:" msgstr "Notes :" -#: ../Doc/library/datetime.rst:301 -msgid "This is exact, but may overflow." +#: ../Doc/library/datetime.rst:348 +#, fuzzy +msgid "This is exact but may overflow." msgstr "Ceci est exact, mais peut provoquer un débordement." -#: ../Doc/library/datetime.rst:304 -msgid "This is exact, and cannot overflow." +#: ../Doc/library/datetime.rst:351 +#, fuzzy +msgid "This is exact and cannot overflow." msgstr "Ceci est exact, et ne peut pas provoquer un débordement." -#: ../Doc/library/datetime.rst:307 +#: ../Doc/library/datetime.rst:354 msgid "Division by 0 raises :exc:`ZeroDivisionError`." msgstr "Une division par 0 provoque :exc:`ZeroDivisionError`." -#: ../Doc/library/datetime.rst:310 +#: ../Doc/library/datetime.rst:357 msgid "-*timedelta.max* is not representable as a :class:`timedelta` object." msgstr "" "*-timedelta.max* n'est pas représentable avec un objet :class:`timedelta`." -#: ../Doc/library/datetime.rst:313 +#: ../Doc/library/datetime.rst:360 +#, fuzzy msgid "" "String representations of :class:`timedelta` objects are normalized " -"similarly to their internal representation. This leads to somewhat unusual " -"results for negative timedeltas. For example:" +"similarly to their internal representation. This leads to somewhat unusual " +"results for negative timedeltas. For example::" msgstr "" "La représentation en chaîne de caractères des objets :class:`timedelta` est " "normalisée similairement à leur représentation interne. Cela amène à des " "résultats inhabituels pour des *timedeltas* négatifs. Par exemple :" -#: ../Doc/library/datetime.rst:323 +#: ../Doc/library/datetime.rst:370 msgid "" "The expression ``t2 - t3`` will always be equal to the expression ``t2 + (-" "t3)`` except when t3 is equal to ``timedelta.max``; in that case the former " @@ -635,9 +728,10 @@ msgstr "" "sauf si *t3* vaut ``timedelta.max` ; dans ce cas, la première expression " "produit une valeur alors que la seconde lève une ``OverflowError``." -#: ../Doc/library/datetime.rst:327 +#: ../Doc/library/datetime.rst:374 +#, fuzzy msgid "" -"In addition to the operations listed above :class:`timedelta` objects " +"In addition to the operations listed above, :class:`timedelta` objects " "support certain additions and subtractions with :class:`date` and :class:`." "datetime` objects (see below)." msgstr "" @@ -645,11 +739,12 @@ msgstr "" "implémentent certaines additions et soustractions avec des objets :class:" "`date` et :class:`datetime` (voir ci-dessous)." -#: ../Doc/library/datetime.rst:331 +#: ../Doc/library/datetime.rst:378 +#, fuzzy msgid "" "Floor division and true division of a :class:`timedelta` object by another :" "class:`timedelta` object are now supported, as are remainder operations and " -"the :func:`divmod` function. True division and multiplication of a :class:" +"the :func:`divmod` function. True division and multiplication of a :class:" "`timedelta` object by a :class:`float` object are now supported." msgstr "" "La division entière et la vraie division d'un objet :class:`timedelta` par " @@ -658,42 +753,42 @@ msgstr "" "division et la multiplication d'un objet :class:`timedelta` par un :class:" "`float` sont maintenant implémentées." -#: ../Doc/library/datetime.rst:338 +#: ../Doc/library/datetime.rst:385 +#, fuzzy +msgid "" +"Comparisons of :class:`timedelta` objects are supported, with some caveats." +msgstr "Renvoie un objet :class:`timedelta` avec la même valeur. (2)" + +#: ../Doc/library/datetime.rst:387 +msgid "" +"The comparisons ``==`` or ``!=`` *always* return a :class:`bool`, no matter " +"the type of the compared object::" +msgstr "" + +#: ../Doc/library/datetime.rst:398 msgid "" -"Comparisons of :class:`timedelta` objects are supported with the :class:" -"`timedelta` object representing the smaller duration considered to be the " -"smaller timedelta. In order to stop mixed-type comparisons from falling back " -"to the default comparison by object address, when a :class:`timedelta` " -"object is compared to an object of a different type, :exc:`TypeError` is " -"raised unless the comparison is ``==`` or ``!=``. The latter cases return :" -"const:`False` or :const:`True`, respectively." +"For all other comparisons (such as ``<`` and ``>``), when a :class:" +"`timedelta` object is compared to an object of a different type, :exc:" +"`TypeError` is raised::" msgstr "" -"Les comparaisons entre objets :class:`timedelta` sont maintenant gérées avec " -"le :class:`timedelta` représentant la plus courte durée considéré comme le " -"plus petit. Afin d'empêcher les comparaisons de types mixtes de retomber sur " -"la comparaison par défaut par l'adresse de l'objet, quand un objet :class:" -"`timedelta` est comparé à un objet de type différent, une :exc:`TypeError` " -"est levée à moins que la comparaison soit ``==`` ou ``!=``. Ces derniers " -"cas renvoient respectivement :const:`False` et :const:`True`." -#: ../Doc/library/datetime.rst:346 +#: ../Doc/library/datetime.rst:409 +#, fuzzy msgid "" -":class:`timedelta` objects are :term:`hashable` (usable as dictionary keys), " -"support efficient pickling, and in Boolean contexts, a :class:`timedelta` " -"object is considered to be true if and only if it isn't equal to " -"``timedelta(0)``." +"In Boolean contexts, a :class:`timedelta` object is considered to be true if " +"and only if it isn't equal to ``timedelta(0)``." msgstr "" "Les objets :class:`timedelta` sont :term:`hashable` (utilisables comme clés " "de dictionnaires), implémentent le protocole *pickle* et, dans un contexte " "booléen, un :class:`timedelta` est considéré vrai si et seulement si il " "n'est pas égal à ``timedelta(0)``." -#: ../Doc/library/datetime.rst:350 ../Doc/library/datetime.rst:551 -#: ../Doc/library/datetime.rst:1037 ../Doc/library/datetime.rst:1565 +#: ../Doc/library/datetime.rst:412 ../Doc/library/datetime.rst:621 +#: ../Doc/library/datetime.rst:1192 ../Doc/library/datetime.rst:1780 msgid "Instance methods:" msgstr "Méthodes de l'instance :" -#: ../Doc/library/datetime.rst:354 +#: ../Doc/library/datetime.rst:416 msgid "" "Return the total number of seconds contained in the duration. Equivalent to " "``td / timedelta(seconds=1)``. For interval units other than seconds, use " @@ -704,7 +799,7 @@ msgstr "" "seconde, utilisez directement la division (par exemple, ``td / " "timedelta(microseconds=1)``)." -#: ../Doc/library/datetime.rst:358 +#: ../Doc/library/datetime.rst:420 msgid "" "Note that for very large time intervals (greater than 270 years on most " "platforms) this method will lose microsecond accuracy." @@ -713,83 +808,95 @@ msgstr "" "sur la plupart des plateformes), cette méthode perdra la précision des " "microsecondes." -#: ../Doc/library/datetime.rst:364 -msgid "Example usage:" -msgstr "Exemple d'utilisation :" +#: ../Doc/library/datetime.rst:426 +#, fuzzy +msgid "Examples of usage: :class:`timedelta`" +msgstr "Exemple d'utilisation de la classe :class:`date` :" + +#: ../Doc/library/datetime.rst:428 +msgid "An additional example of normalization::" +msgstr "" -#: ../Doc/library/datetime.rst:390 +#: ../Doc/library/datetime.rst:440 +#, fuzzy +msgid "Examples of :class:`timedelta` arithmetic::" +msgstr "Objets :class:`timedelta`" + +#: ../Doc/library/datetime.rst:459 msgid ":class:`date` Objects" msgstr "Objets :class:`date`" -#: ../Doc/library/datetime.rst:392 +#: ../Doc/library/datetime.rst:461 msgid "" "A :class:`date` object represents a date (year, month and day) in an " "idealized calendar, the current Gregorian calendar indefinitely extended in " -"both directions. January 1 of year 1 is called day number 1, January 2 of " -"year 1 is called day number 2, and so on. This matches the definition of " -"the \"proleptic Gregorian\" calendar in Dershowitz and Reingold's book " -"Calendrical Calculations, where it's the base calendar for all " -"computations. See the book for algorithms for converting between proleptic " -"Gregorian ordinals and many other calendar systems." +"both directions." +msgstr "" + +#: ../Doc/library/datetime.rst:465 +msgid "" +"January 1 of year 1 is called day number 1, January 2 of year 1 is called " +"day number 2, and so on. [#]_" msgstr "" -"Un objet :class:`date` représente une date (année, mois et jour) dans un " -"calendrier idéal, l'actuel calendrier grégorien étendu indéfiniment dans les " -"deux directions. Le 1er janvier de l'an 1 est appelé le jour numéro 1, le 2 " -"janvier de l'an 1 est appelé le jour numéro 2, et ainsi de suite. Cela " -"correspond à la définition du calendrier « grégorien proleptique » dans le " -"livre *Calendrical Calculations* de Dershowitz et Reingold, où il est la " -"base de tous les calculs. Référez-vous au livre pour les algorithmes de " -"conversion entre calendriers grégorien proleptique et les autres systèmes." -#: ../Doc/library/datetime.rst:404 +#: ../Doc/library/datetime.rst:470 #, fuzzy msgid "" -"All arguments are required. Arguments must be integers in the following " +"All arguments are required. Arguments must be integers, in the following " "ranges:" msgstr "" "Tous les arguments sont requis. Les arguments peuvent être des entiers, " "dans les intervalles suivant :" -#: ../Doc/library/datetime.rst:407 +#: ../Doc/library/datetime.rst:473 msgid "``MINYEAR <= year <= MAXYEAR``" msgstr "``MINYEAR <= year <= MAXYEAR``" -#: ../Doc/library/datetime.rst:408 +#: ../Doc/library/datetime.rst:474 msgid "``1 <= month <= 12``" msgstr "``1 <= month <= 12``" -#: ../Doc/library/datetime.rst:409 +#: ../Doc/library/datetime.rst:475 msgid "``1 <= day <= number of days in the given month and year``" msgstr "``1 <= day <= nombre de jours dans le mois et l'année donnés``" -#: ../Doc/library/datetime.rst:411 ../Doc/library/datetime.rst:729 +#: ../Doc/library/datetime.rst:477 ../Doc/library/datetime.rst:835 msgid "" "If an argument outside those ranges is given, :exc:`ValueError` is raised." msgstr "" "Si un argument est donné en dehors de ces intervalles, une :exc:`valueError` " "est levée." -#: ../Doc/library/datetime.rst:414 ../Doc/library/datetime.rst:734 +#: ../Doc/library/datetime.rst:480 ../Doc/library/datetime.rst:840 msgid "Other constructors, all class methods:" msgstr "Autres constructeurs, méthodes de classe :" -#: ../Doc/library/datetime.rst:418 -msgid "" -"Return the current local date. This is equivalent to ``date." -"fromtimestamp(time.time())``." +#: ../Doc/library/datetime.rst:484 +msgid "Return the current local date." +msgstr "" + +#: ../Doc/library/datetime.rst:486 +#, fuzzy +msgid "This is equivalent to ``date.fromtimestamp(time.time())``." msgstr "" "Renvoie la date locale courante. Cela est équivalent à ``date." "fromtimestamp(time.time())``." -#: ../Doc/library/datetime.rst:424 +#: ../Doc/library/datetime.rst:490 msgid "" "Return the local date corresponding to the POSIX timestamp, such as is " -"returned by :func:`time.time`. This may raise :exc:`OverflowError`, if the " -"timestamp is out of the range of values supported by the platform C :c:func:" -"`localtime` function, and :exc:`OSError` on :c:func:`localtime` failure. " -"It's common for this to be restricted to years from 1970 through 2038. Note " -"that on non-POSIX systems that include leap seconds in their notion of a " -"timestamp, leap seconds are ignored by :meth:`fromtimestamp`." +"returned by :func:`time.time`." +msgstr "" + +#: ../Doc/library/datetime.rst:493 +#, fuzzy +msgid "" +"This may raise :exc:`OverflowError`, if the timestamp is out of the range of " +"values supported by the platform C :c:func:`localtime` function, and :exc:" +"`OSError` on :c:func:`localtime` failure. It's common for this to be " +"restricted to years from 1970 through 2038. Note that on non-POSIX systems " +"that include leap seconds in their notion of a timestamp, leap seconds are " +"ignored by :meth:`fromtimestamp`." msgstr "" "Renvoie la date locale correspondant à l'horodatage (*timestamp* en anglais) " "*POSIX*, tel que renvoyé par :func:`time.time`. Elle peut lever une :exc:" @@ -800,7 +907,7 @@ msgstr "" "incluent les secondes de décalage dans leur notion d'horodatage, ces " "secondes sont ignorées par :meth:`fromtimestamp`." -#: ../Doc/library/datetime.rst:432 +#: ../Doc/library/datetime.rst:500 msgid "" "Raise :exc:`OverflowError` instead of :exc:`ValueError` if the timestamp is " "out of the range of values supported by the platform C :c:func:`localtime` " @@ -812,57 +919,60 @@ msgstr "" "fonction C :c:func:`localtime` de la plateforme. Lève une :exc:`OSError` " "plutôt qu'une :exc:`ValueError` en cas d'échec de :c:func:`localtime`." -#: ../Doc/library/datetime.rst:441 +#: ../Doc/library/datetime.rst:509 +#, fuzzy msgid "" "Return the date corresponding to the proleptic Gregorian ordinal, where " -"January 1 of year 1 has ordinal 1. :exc:`ValueError` is raised unless ``1 " -"<= ordinal <= date.max.toordinal()``. For any date *d*, ``date.fromordinal(d." -"toordinal()) == d``." +"January 1 of year 1 has ordinal 1." msgstr "" "Renvoie la date correspondant à l'ordinal grégorien proleptique, où le 1er " "janvier de l'an 1 a l'ordinal 1. :exc:`ValueError` est levée à moins que " "``1 <= ordinal <= date.max.toordinal()``. Pour toute date *d*, ``date." "fromordinal(d.toordinal()) == d``." -#: ../Doc/library/datetime.rst:449 +#: ../Doc/library/datetime.rst:512 +#, fuzzy +msgid "" +":exc:`ValueError` is raised unless ``1 <= ordinal <= date.max.toordinal()``. " +"For any date *d*, ``date.fromordinal(d.toordinal()) == d``." +msgstr "" +"Renvoie la date correspondant à l'ordinal grégorien proleptique, où le 1er " +"janvier de l'an 1 a l'ordinal 1. :exc:`ValueError` est levée à moins que " +"``1 <= ordinal <= date.max.toordinal()``. Pour toute date *d*, ``date." +"fromordinal(d.toordinal()) == d``." + +#: ../Doc/library/datetime.rst:519 +#, fuzzy msgid "" -"Return a :class:`date` corresponding to a *date_string* in the format " -"emitted by :meth:`date.isoformat`. Specifically, this function supports " -"strings in the format(s) ``YYYY-MM-DD``." +"Return a :class:`date` corresponding to a *date_string* given in the format " +"``YYYY-MM-DD``::" msgstr "" "Renvoie une :class:`date` correspondant à *date_string* dans le format émis " "par :meth:`date.isoformat`. Spécifiquement, cette fonction gère des chaînes " "dans le(s) format(s) ``YYYY-MM-DD``." -#: ../Doc/library/datetime.rst:455 +#: ../Doc/library/datetime.rst:526 msgid "" -"This does not support parsing arbitrary ISO 8601 strings - it is only " -"intended as the inverse operation of :meth:`date.isoformat`." +"This is the inverse of :meth:`date.isoformat`. It only supports the format " +"``YYYY-MM-DD``." msgstr "" -"Ceci n'implémente pas l'analyse de chaînes ISO 8601 arbitraires, ceci est " -"seulement destiné à réaliser l'opération inverse de :meth:`date.isoformat`." -#: ../Doc/library/datetime.rst:463 +#: ../Doc/library/datetime.rst:534 msgid "" "Return a :class:`date` corresponding to the ISO calendar date specified by " "year, week and day. This is the inverse of the function :meth:`date." "isocalendar`." msgstr "" -#: ../Doc/library/datetime.rst:469 ../Doc/library/datetime.rst:887 -#: ../Doc/library/datetime.rst:1456 ../Doc/library/datetime.rst:2026 -msgid "Class attributes:" -msgstr "Attributs de la classe :" - -#: ../Doc/library/datetime.rst:473 +#: ../Doc/library/datetime.rst:544 msgid "The earliest representable date, ``date(MINYEAR, 1, 1)``." msgstr "La plus vieille date représentable, ``date(MINYEAR, 1, 1)``." -#: ../Doc/library/datetime.rst:478 +#: ../Doc/library/datetime.rst:549 msgid "The latest representable date, ``date(MAXYEAR, 12, 31)``." msgstr "La dernière date représentable, ``date(MAXYEAR, 12, 31)``." -#: ../Doc/library/datetime.rst:483 +#: ../Doc/library/datetime.rst:554 msgid "" "The smallest possible difference between non-equal date objects, " "``timedelta(days=1)``." @@ -870,48 +980,49 @@ msgstr "" "La plus petite différence possible entre deux objets dates non-égaux, " "``timedelta(days=1)``." -#: ../Doc/library/datetime.rst:491 ../Doc/library/datetime.rst:911 +#: ../Doc/library/datetime.rst:562 ../Doc/library/datetime.rst:1069 msgid "Between :const:`MINYEAR` and :const:`MAXYEAR` inclusive." msgstr "Entre :const:`MINYEAR` et :const:`MAXYEAR` inclus." -#: ../Doc/library/datetime.rst:496 ../Doc/library/datetime.rst:916 +#: ../Doc/library/datetime.rst:567 ../Doc/library/datetime.rst:1074 msgid "Between 1 and 12 inclusive." msgstr "Entre 1 et 12 inclus." -#: ../Doc/library/datetime.rst:501 ../Doc/library/datetime.rst:921 +#: ../Doc/library/datetime.rst:572 ../Doc/library/datetime.rst:1079 msgid "Between 1 and the number of days in the given month of the given year." msgstr "Entre 1 et le nombre de jours du mois donné de l'année donnée." -#: ../Doc/library/datetime.rst:509 +#: ../Doc/library/datetime.rst:580 msgid "``date2 = date1 + timedelta``" msgstr "``date2 = date1 + timedelta``" -#: ../Doc/library/datetime.rst:509 -msgid "*date2* is ``timedelta.days`` days removed from *date1*. (1)" +#: ../Doc/library/datetime.rst:580 +#, fuzzy +msgid "*date2* is ``timedelta.days`` days removed from *date1*. (1)" msgstr "" "*date2* est décalée de ``timedelta.days`` jours par rapport à *date1*. (1)" -#: ../Doc/library/datetime.rst:512 +#: ../Doc/library/datetime.rst:583 msgid "``date2 = date1 - timedelta``" msgstr "``date2 = date1 - timedelta``" -#: ../Doc/library/datetime.rst:512 +#: ../Doc/library/datetime.rst:583 msgid "Computes *date2* such that ``date2 + timedelta == date1``. (2)" msgstr "Calcule *date2* de façon à avoir ``date2 + timedelta == date1``. (2)" -#: ../Doc/library/datetime.rst:515 +#: ../Doc/library/datetime.rst:586 msgid "``timedelta = date1 - date2``" msgstr "``timedelta = date1 - date2``" -#: ../Doc/library/datetime.rst:515 ../Doc/library/datetime.rst:969 +#: ../Doc/library/datetime.rst:586 ../Doc/library/datetime.rst:1127 msgid "\\(3)" msgstr "\\(3)" -#: ../Doc/library/datetime.rst:517 +#: ../Doc/library/datetime.rst:588 msgid "``date1 < date2``" msgstr "``date1 < date2``" -#: ../Doc/library/datetime.rst:517 +#: ../Doc/library/datetime.rst:588 msgid "" "*date1* is considered less than *date2* when *date1* precedes *date2* in " "time. (4)" @@ -919,10 +1030,11 @@ msgstr "" "*date1* est considérée comme inférieure à *date2* quand *date1* précède " "*date2* dans le temps. (4)" -#: ../Doc/library/datetime.rst:524 +#: ../Doc/library/datetime.rst:595 +#, fuzzy msgid "" "*date2* is moved forward in time if ``timedelta.days > 0``, or backward if " -"``timedelta.days < 0``. Afterward ``date2 - date1 == timedelta.days``. " +"``timedelta.days < 0``. Afterward ``date2 - date1 == timedelta.days``. " "``timedelta.seconds`` and ``timedelta.microseconds`` are ignored. :exc:" "`OverflowError` is raised if ``date2.year`` would be smaller than :const:" "`MINYEAR` or larger than :const:`MAXYEAR`." @@ -933,29 +1045,31 @@ msgstr "" "Une :exc:`OverflowError` est levée si ``date2.year`` devait être inférieure " "à :const:`MINYEAR` ou supérieure à :const:`MAXYEAR`." -#: ../Doc/library/datetime.rst:531 +#: ../Doc/library/datetime.rst:602 msgid "``timedelta.seconds`` and ``timedelta.microseconds`` are ignored." msgstr "``timedelta.seconds`` et ``timedelta.microseconds`` sont ignorés." -#: ../Doc/library/datetime.rst:534 +#: ../Doc/library/datetime.rst:605 +#, fuzzy msgid "" -"This is exact, and cannot overflow. timedelta.seconds and timedelta." +"This is exact, and cannot overflow. timedelta.seconds and timedelta." "microseconds are 0, and date2 + timedelta == date1 after." msgstr "" "Cela est exact, et ne peut pas dépasser les bornes. ``timedelta.seconds`` " "et ``timedelta.microseconds`` valent ``0``, et ``date2 + timedelta == " "date1`` après cela." -#: ../Doc/library/datetime.rst:538 +#: ../Doc/library/datetime.rst:609 +#, fuzzy msgid "" "In other words, ``date1 < date2`` if and only if ``date1.toordinal() < date2." "toordinal()``. Date comparison raises :exc:`TypeError` if the other " "comparand isn't also a :class:`date` object. However, ``NotImplemented`` is " -"returned instead if the other comparand has a :meth:`timetuple` attribute. " +"returned instead if the other comparand has a :meth:`timetuple` attribute. " "This hook gives other kinds of date objects a chance at implementing mixed-" "type comparison. If not, when a :class:`date` object is compared to an " "object of a different type, :exc:`TypeError` is raised unless the comparison " -"is ``==`` or ``!=``. The latter cases return :const:`False` or :const:" +"is ``==`` or ``!=``. The latter cases return :const:`False` or :const:" "`True`, respectively." msgstr "" "En d'autres termes, ``date1 < date2`` si et seulement si ``date1.toordinal() " @@ -968,51 +1082,61 @@ msgstr "" "`TypeError` est levée à moins que la comparaison soit ``==`` ou ``!=``. Ces " "derniers cas renvoient respectivement :const:`False` et :const:`True`." -#: ../Doc/library/datetime.rst:548 +#: ../Doc/library/datetime.rst:619 +#, fuzzy msgid "" -"Dates can be used as dictionary keys. In Boolean contexts, all :class:`date` " -"objects are considered to be true." +"In Boolean contexts, all :class:`date` objects are considered to be true." msgstr "" -"Les dates peuvent être utilisées en tant que clés de dictionnaires. Dans un " -"contexte booléen, tous les objets :class:`date` sont considérés comme vrais." +"Dans un contexte booléen, un objet :class:`.time` est toujours considéré " +"comme vrai." -#: ../Doc/library/datetime.rst:555 +#: ../Doc/library/datetime.rst:625 +#, fuzzy msgid "" "Return a date with the same value, except for those parameters given new " -"values by whichever keyword arguments are specified. For example, if ``d == " -"date(2002, 12, 31)``, then ``d.replace(day=26) == date(2002, 12, 26)``." +"values by whichever keyword arguments are specified." msgstr "" "Renvoie une date avec la même valeur, excepté pour les valeurs spécifiées " "par arguments nommés. Par exemple, si ``d == date(2002, 12, 31)``, alors " "``d.replace(day=26) == date(2002, 12, 26)``." -#: ../Doc/library/datetime.rst:562 +#: ../Doc/library/datetime.rst:628 ../Doc/library/datetime.rst:1823 +#, fuzzy +msgid "Example::" +msgstr "Exemple :" + +#: ../Doc/library/datetime.rst:638 ../Doc/library/datetime.rst:1305 msgid "" "Return a :class:`time.struct_time` such as returned by :func:`time." -"localtime`. The hours, minutes and seconds are 0, and the DST flag is -1. " -"``d.timetuple()`` is equivalent to ``time.struct_time((d.year, d.month, d." -"day, 0, 0, 0, d.weekday(), yday, -1))``, where ``yday = d.toordinal() - " -"date(d.year, 1, 1).toordinal() + 1`` is the day number within the current " -"year starting with ``1`` for January 1st." -msgstr "" -"Renvoie une :class:`time.struct_time` telle que renvoyée par :func:`time." -"localtime`. Les heures, minutes et secondes valent 0, et le *flag* *DST* " -"(heure d'été) est ``-1``. ``d.timetuple()`` est équivalent à ``time." -"struct_time((d.year, d.month, d.day, 0, 0, 0, d.weekday(), yday, -1))``, où " -"``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` est le numéro " -"du jour dans l'année courante, commençant avec ``1`` pour le 1er janvier." +"localtime`." +msgstr "" + +#: ../Doc/library/datetime.rst:640 +msgid "The hours, minutes and seconds are 0, and the DST flag is -1." +msgstr "" + +#: ../Doc/library/datetime.rst:642 ../Doc/library/datetime.rst:1307 +msgid "``d.timetuple()`` is equivalent to::" +msgstr "" -#: ../Doc/library/datetime.rst:572 +#: ../Doc/library/datetime.rst:646 +msgid "" +"where ``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` is the " +"day number within the current year starting with ``1`` for January 1st." +msgstr "" + +#: ../Doc/library/datetime.rst:652 +#, fuzzy msgid "" "Return the proleptic Gregorian ordinal of the date, where January 1 of year " -"1 has ordinal 1. For any :class:`date` object *d*, ``date.fromordinal(d." +"1 has ordinal 1. For any :class:`date` object *d*, ``date.fromordinal(d." "toordinal()) == d``." msgstr "" "Renvoie l'ordinal grégorien proleptique de la date, où le 1er janvier de " "l'an 1 a l'ordinal 1. Pour tout objet :class:`date` *d*, ``date." "fromordinal(d.toordinal()) == d``." -#: ../Doc/library/datetime.rst:579 +#: ../Doc/library/datetime.rst:659 msgid "" "Return the day of the week as an integer, where Monday is 0 and Sunday is 6. " "For example, ``date(2002, 12, 4).weekday() == 2``, a Wednesday. See also :" @@ -1022,7 +1146,7 @@ msgstr "" "dimanche vaut 6. Par exemple, ``date(2002, 12, 4).weekday() == 2``, un " "mercredi. Voir aussi :meth:`isoweekday`." -#: ../Doc/library/datetime.rst:586 +#: ../Doc/library/datetime.rst:666 msgid "" "Return the day of the week as an integer, where Monday is 1 and Sunday is 7. " "For example, ``date(2002, 12, 4).isoweekday() == 3``, a Wednesday. See also :" @@ -1032,26 +1156,22 @@ msgstr "" "dimanche vaut 7. Par exemple, ``date(2002, 12, 4).isoweekday() == 3``, un " "mercredi. Voir aussi :meth:`weekday`, :meth:`isocalendar`." -#: ../Doc/library/datetime.rst:593 +#: ../Doc/library/datetime.rst:673 msgid "Return a 3-tuple, (ISO year, ISO week number, ISO weekday)." msgstr "" "Renvoie un *tuple* de 3 éléments, (année ISO, numéro de semaine ISO, jour de " "la semaine ISO)." -#: ../Doc/library/datetime.rst:595 +#: ../Doc/library/datetime.rst:675 msgid "" -"The ISO calendar is a widely used variant of the Gregorian calendar. See " -"https://www.staff.science.uu.nl/~gent0113/calendar/isocalendar.htm for a " -"good explanation." +"The ISO calendar is a widely used variant of the Gregorian calendar. [#]_" msgstr "" -"Le calendrier ISO est une variante largement utilisée du calendrier " -"grégorien. Voir https://www.staff.science.uu.nl/~gent0113/calendar/" -"isocalendar.htm pour une bonne explication." -#: ../Doc/library/datetime.rst:599 +#: ../Doc/library/datetime.rst:677 +#, fuzzy msgid "" "The ISO year consists of 52 or 53 full weeks, and where a week starts on a " -"Monday and ends on a Sunday. The first week of an ISO year is the first " +"Monday and ends on a Sunday. The first week of an ISO year is the first " "(Gregorian) calendar week of a year containing a Thursday. This is called " "week number 1, and the ISO year of that Thursday is the same as its " "Gregorian year." @@ -1062,38 +1182,48 @@ msgstr "" "un jeudi. Elle est appelée la semaine numéro 1, et l'année ISO de ce " "mercredi est la même que son année grégorienne." -#: ../Doc/library/datetime.rst:604 +#: ../Doc/library/datetime.rst:682 +#, fuzzy msgid "" "For example, 2004 begins on a Thursday, so the first week of ISO year 2004 " -"begins on Monday, 29 Dec 2003 and ends on Sunday, 4 Jan 2004, so that " -"``date(2003, 12, 29).isocalendar() == (2004, 1, 1)`` and ``date(2004, 1, 4)." -"isocalendar() == (2004, 1, 7)``." +"begins on Monday, 29 Dec 2003 and ends on Sunday, 4 Jan 2004::" msgstr "" "Par exemple, l'année 2004 débute un jeudi, donc la première semaine de " "l'année ISO 2004 débute le lundi 29 décembre 2003 et se termine le dimanche " "4 janvier 2004, ainsi ``date(2003, 12, 29).isocalendar() == (2004, 1, 1)`` " "et ``date(2004, 1, 4).isocalendar() == (2004, 1, 7)``." -#: ../Doc/library/datetime.rst:612 +#: ../Doc/library/datetime.rst:693 +#, fuzzy msgid "" -"Return a string representing the date in ISO 8601 format, 'YYYY-MM-DD'. For " -"example, ``date(2002, 12, 4).isoformat() == '2002-12-04'``." +"Return a string representing the date in ISO 8601 format, ``YYYY-MM-DD``::" msgstr "" "Renvoie une chaîne de caractères représentant la date au format ISO 8601, " "\"YYYY-MM-DD\". Par exemple, ``date(2002, 12, 4).isoformat() == " "'2002-12-04'``." -#: ../Doc/library/datetime.rst:618 +#: ../Doc/library/datetime.rst:699 +msgid "This is the inverse of :meth:`date.fromisoformat`." +msgstr "" + +#: ../Doc/library/datetime.rst:703 msgid "For a date *d*, ``str(d)`` is equivalent to ``d.isoformat()``." msgstr "Pour une date *d*, ``str(d)`` est équivalent à ``d.isoformat()``." -#: ../Doc/library/datetime.rst:623 +#: ../Doc/library/datetime.rst:708 +msgid "Return a string representing the date::" +msgstr "" + +#: ../Doc/library/datetime.rst:714 ../Doc/library/datetime.rst:1491 +msgid "``d.ctime()`` is equivalent to::" +msgstr "" + +#: ../Doc/library/datetime.rst:718 +#, fuzzy msgid "" -"Return a string representing the date, for example ``date(2002, 12, 4)." -"ctime() == 'Wed Dec 4 00:00:00 2002'``. ``d.ctime()`` is equivalent to " -"``time.ctime(time.mktime(d.timetuple()))`` on platforms where the native C :" -"c:func:`ctime` function (which :func:`time.ctime` invokes, but which :meth:" -"`date.ctime` does not invoke) conforms to the C standard." +"on platforms where the native C :c:func:`ctime` function (which :func:`time." +"ctime` invokes, but which :meth:`date.ctime` does not invoke) conforms to " +"the C standard." msgstr "" "Renvoie une chaîne de caractères représentant la date, par exemple " "``date(2002, 12, 4).ctime() == 'Wed Dec 4 00:00:00 2002'``. ``d.ctime()`` " @@ -1101,7 +1231,7 @@ msgstr "" "plateformes où la fonction C native :c:func:`ctime` (que :func:`time.ctime` " "invoque, mais pas :meth:`date.ctime`) est conforme au standard C." -#: ../Doc/library/datetime.rst:632 +#: ../Doc/library/datetime.rst:725 msgid "" "Return a string representing the date, controlled by an explicit format " "string. Format codes referring to hours, minutes or seconds will see 0 " @@ -1113,7 +1243,7 @@ msgstr "" "heures, minutes ou secondes auront pour valeur 0. Pour une liste complète " "des directives de formatage, voir :ref:`strftime-strptime-behavior`." -#: ../Doc/library/datetime.rst:640 +#: ../Doc/library/datetime.rst:733 msgid "" "Same as :meth:`.date.strftime`. This makes it possible to specify a format " "string for a :class:`.date` object in :ref:`formatted string literals `_." +"parser.html#dateutil.parser.isoparse>`__. This does not support parsing " +"arbitrary ISO 8601 strings - it is only intended as the inverse operation " +"of :meth:`datetime.isoformat`." msgstr "" -#: ../Doc/library/datetime.rst:869 +#: ../Doc/library/datetime.rst:1003 ../Doc/library/datetime.rst:1420 +#: ../Doc/library/datetime.rst:1767 +#, fuzzy +msgid "Examples::" +msgstr "Exemple :" + +#: ../Doc/library/datetime.rst:1022 msgid "" -"Return a :class:`datetime` corresponding to the ISO calendar date specified " +"Return a :class:`.datetime` corresponding to the ISO calendar date specified " "by year, week and day. The non-date components of the datetime are populated " "with their normal default values. This is the inverse of the function :meth:" "`datetime.isocalendar`." msgstr "" -#: ../Doc/library/datetime.rst:878 +#: ../Doc/library/datetime.rst:1031 msgid "" "Return a :class:`.datetime` corresponding to *date_string*, parsed according " -"to *format*. This is equivalent to ``datetime(*(time.strptime(date_string, " -"format)[0:6]))``. :exc:`ValueError` is raised if the date_string and format " -"can't be parsed by :func:`time.strptime` or if it returns a value which " -"isn't a time tuple. For a complete list of formatting directives, see :ref:" -"`strftime-strptime-behavior`." +"to *format*." +msgstr "" + +#: ../Doc/library/datetime.rst:1034 +msgid "This is equivalent to::" +msgstr "" + +#: ../Doc/library/datetime.rst:1038 +#, fuzzy +msgid "" +":exc:`ValueError` is raised if the date_string and format can't be parsed " +"by :func:`time.strptime` or if it returns a value which isn't a time tuple. " +"For a complete list of formatting directives, see :ref:`strftime-strptime-" +"behavior`." msgstr "" "Renvoie un :class:`.datetime` correspondant à la chaîne *date_string*, " "analysée conformément à *format*. Cela est équivalent à ``datetime(*(time." @@ -1461,7 +1673,7 @@ msgstr "" "ou si elle renvoie une valeur qui n'est pas un *tuple-temps*. Pour une liste " "complète des directives de formatage, voir :ref:`strftime-strptime-behavior`." -#: ../Doc/library/datetime.rst:891 +#: ../Doc/library/datetime.rst:1049 msgid "" "The earliest representable :class:`.datetime`, ``datetime(MINYEAR, 1, 1, " "tzinfo=None)``." @@ -1469,7 +1681,7 @@ msgstr "" "Le plus ancien :class:`.datetime` représentable, ``datetime(MINYEAR, 1, 1, " "tzinfo=None)``." -#: ../Doc/library/datetime.rst:897 +#: ../Doc/library/datetime.rst:1055 msgid "" "The latest representable :class:`.datetime`, ``datetime(MAXYEAR, 12, 31, 23, " "59, 59, 999999, tzinfo=None)``." @@ -1477,7 +1689,7 @@ msgstr "" "Le dernier :class:`.datetime` représentable, ``datetime(MAXYEAR, 12, 31, 23, " "59, 59, 999999, tzinfo=None)``." -#: ../Doc/library/datetime.rst:903 +#: ../Doc/library/datetime.rst:1061 msgid "" "The smallest possible difference between non-equal :class:`.datetime` " "objects, ``timedelta(microseconds=1)``." @@ -1485,20 +1697,20 @@ msgstr "" "La plus petite différence possible entre deux objets :class:`.datetime` non-" "égaux, ``timedelta(microseconds=1)``." -#: ../Doc/library/datetime.rst:926 ../Doc/library/datetime.rst:1480 +#: ../Doc/library/datetime.rst:1084 ../Doc/library/datetime.rst:1687 msgid "In ``range(24)``." msgstr "Dans ``range(24)``." -#: ../Doc/library/datetime.rst:931 ../Doc/library/datetime.rst:936 -#: ../Doc/library/datetime.rst:1485 ../Doc/library/datetime.rst:1490 +#: ../Doc/library/datetime.rst:1089 ../Doc/library/datetime.rst:1094 +#: ../Doc/library/datetime.rst:1692 ../Doc/library/datetime.rst:1697 msgid "In ``range(60)``." msgstr "Dans ``range(60)``." -#: ../Doc/library/datetime.rst:941 ../Doc/library/datetime.rst:1495 +#: ../Doc/library/datetime.rst:1099 ../Doc/library/datetime.rst:1702 msgid "In ``range(1000000)``." msgstr "Dans ``range(1000000)``." -#: ../Doc/library/datetime.rst:946 +#: ../Doc/library/datetime.rst:1104 msgid "" "The object passed as the *tzinfo* argument to the :class:`.datetime` " "constructor, or ``None`` if none was passed." @@ -1506,9 +1718,10 @@ msgstr "" "L'objet passé en tant que paramètre *tzinfo* du constructeur de la classe :" "class:`.datetime` ou ``None`` si aucun n'a été donné." -#: ../Doc/library/datetime.rst:952 ../Doc/library/datetime.rst:1506 +#: ../Doc/library/datetime.rst:1110 ../Doc/library/datetime.rst:1713 +#, fuzzy msgid "" -"In ``[0, 1]``. Used to disambiguate wall times during a repeated interval. " +"In ``[0, 1]``. Used to disambiguate wall times during a repeated interval. " "(A repeated interval occurs when clocks are rolled back at the end of " "daylight saving time or when the UTC offset for the current zone is " "decreased for political reasons.) The value 0 (1) represents the earlier " @@ -1520,41 +1733,42 @@ msgstr "" "décrémenté pour des raisons politiques.) La valeur 0 (1) représente le plus " "ancien (récent) des deux moments représentés par la même heure." -#: ../Doc/library/datetime.rst:965 +#: ../Doc/library/datetime.rst:1123 msgid "``datetime2 = datetime1 + timedelta``" msgstr "``datetime2 = datetime1 + timedelta``" -#: ../Doc/library/datetime.rst:965 ../Doc/library/datetime.rst:2084 -#: ../Doc/library/datetime.rst:2089 ../Doc/library/datetime.rst:2101 -#: ../Doc/library/datetime.rst:2106 ../Doc/library/datetime.rst:2166 -#: ../Doc/library/datetime.rst:2171 ../Doc/library/datetime.rst:2175 +#: ../Doc/library/datetime.rst:1123 ../Doc/library/datetime.rst:2305 +#: ../Doc/library/datetime.rst:2310 ../Doc/library/datetime.rst:2322 +#: ../Doc/library/datetime.rst:2327 ../Doc/library/datetime.rst:2387 +#: ../Doc/library/datetime.rst:2392 ../Doc/library/datetime.rst:2396 msgid "\\(1)" msgstr "\\(1)" -#: ../Doc/library/datetime.rst:967 +#: ../Doc/library/datetime.rst:1125 msgid "``datetime2 = datetime1 - timedelta``" msgstr "``datetime2 = datetime1 - timedelta``" -#: ../Doc/library/datetime.rst:967 ../Doc/library/datetime.rst:2117 +#: ../Doc/library/datetime.rst:1125 ../Doc/library/datetime.rst:2338 msgid "\\(2)" msgstr "\\(2)" -#: ../Doc/library/datetime.rst:969 +#: ../Doc/library/datetime.rst:1127 msgid "``timedelta = datetime1 - datetime2``" msgstr "``timedelta = datetime1 - datetime2``" -#: ../Doc/library/datetime.rst:971 +#: ../Doc/library/datetime.rst:1129 msgid "``datetime1 < datetime2``" msgstr "``datetime1 < datetime2``" -#: ../Doc/library/datetime.rst:971 +#: ../Doc/library/datetime.rst:1129 msgid "Compares :class:`.datetime` to :class:`.datetime`. (4)" msgstr "Compare :class:`.datetime` à :class:`.datetime`. (4)" -#: ../Doc/library/datetime.rst:976 +#: ../Doc/library/datetime.rst:1134 +#, fuzzy msgid "" "datetime2 is a duration of timedelta removed from datetime1, moving forward " -"in time if ``timedelta.days`` > 0, or backward if ``timedelta.days`` < 0. " +"in time if ``timedelta.days`` > 0, or backward if ``timedelta.days`` < 0. " "The result has the same :attr:`~.datetime.tzinfo` attribute as the input " "datetime, and datetime2 - datetime1 == timedelta after. :exc:`OverflowError` " "is raised if datetime2.year would be smaller than :const:`MINYEAR` or larger " @@ -1570,7 +1784,7 @@ msgstr "" "qu'aucun ajustement de fuseau horaire n'est réalisé même si l'entrée est " "avisée." -#: ../Doc/library/datetime.rst:985 +#: ../Doc/library/datetime.rst:1143 msgid "" "Computes the datetime2 such that datetime2 + timedelta == datetime1. As for " "addition, the result has the same :attr:`~.datetime.tzinfo` attribute as the " @@ -1582,10 +1796,11 @@ msgstr "" "que le *datetime* d'entrée, et aucun ajustement de fuseau horaire n'est " "réalisé même si l'entrée est avisée." -#: ../Doc/library/datetime.rst:990 +#: ../Doc/library/datetime.rst:1148 +#, fuzzy msgid "" "Subtraction of a :class:`.datetime` from a :class:`.datetime` is defined " -"only if both operands are naive, or if both are aware. If one is aware and " +"only if both operands are naive, or if both are aware. If one is aware and " "the other is naive, :exc:`TypeError` is raised." msgstr "" "La soustraction d'un :class:`.datetime` à un autre :class:`.datetime` n'est " @@ -1593,12 +1808,13 @@ msgstr "" "avisés. Si l'un est avisé et que l'autre est naïf, une :exc:`TypeError` est " "levée." -#: ../Doc/library/datetime.rst:994 +#: ../Doc/library/datetime.rst:1152 +#, fuzzy msgid "" "If both are naive, or both are aware and have the same :attr:`~.datetime." "tzinfo` attribute, the :attr:`~.datetime.tzinfo` attributes are ignored, and " "the result is a :class:`timedelta` object *t* such that ``datetime2 + t == " -"datetime1``. No time zone adjustments are done in this case." +"datetime1``. No time zone adjustments are done in this case." msgstr "" "Si les deux sont naïfs, ou que les deux sont avisés et ont le même attribut :" "attr:`~.datetime.tzinfo`, les attributs :attr:`~.datetime.tzinfo` sont " @@ -1606,11 +1822,12 @@ msgstr "" "``datetime2 + t == datetime1``. Aucun ajustement de fuseau horaire n'a lieu " "dans ce cas." -#: ../Doc/library/datetime.rst:999 +#: ../Doc/library/datetime.rst:1157 +#, fuzzy msgid "" "If both are aware and have different :attr:`~.datetime.tzinfo` attributes, " "``a-b`` acts as if *a* and *b* were first converted to naive UTC datetimes " -"first. The result is ``(a.replace(tzinfo=None) - a.utcoffset()) - (b." +"first. The result is ``(a.replace(tzinfo=None) - a.utcoffset()) - (b." "replace(tzinfo=None) - b.utcoffset())`` except that the implementation never " "overflows." msgstr "" @@ -1620,7 +1837,7 @@ msgstr "" "a.utcoffset()) - (b.replace(tzinfo=None) - b.utcoffset())`` à l'exception " "que l'implémentation ne produit jamais de débordement." -#: ../Doc/library/datetime.rst:1005 +#: ../Doc/library/datetime.rst:1163 msgid "" "*datetime1* is considered less than *datetime2* when *datetime1* precedes " "*datetime2* in time." @@ -1628,21 +1845,23 @@ msgstr "" "*datetime1* est considéré inférieur à *datetime2* quand il le précède dans " "le temps." -#: ../Doc/library/datetime.rst:1008 +#: ../Doc/library/datetime.rst:1166 +#, fuzzy msgid "" "If one comparand is naive and the other is aware, :exc:`TypeError` is raised " -"if an order comparison is attempted. For equality comparisons, naive " +"if an order comparison is attempted. For equality comparisons, naive " "instances are never equal to aware instances." msgstr "" "Si un opérande est naïf et l'autre avisé, une :exc:`TypeError` est levée si " "une comparaison d'ordre est attendue. Pour les comparaisons d'égalité, les " "instances naïves ne sont jamais égales aux instances avisées." -#: ../Doc/library/datetime.rst:1012 +#: ../Doc/library/datetime.rst:1170 +#, fuzzy msgid "" "If both comparands are aware, and have the same :attr:`~.datetime.tzinfo` " "attribute, the common :attr:`~.datetime.tzinfo` attribute is ignored and the " -"base datetimes are compared. If both comparands are aware and have " +"base datetimes are compared. If both comparands are aware and have " "different :attr:`~.datetime.tzinfo` attributes, the comparands are first " "adjusted by subtracting their UTC offsets (obtained from ``self." "utcoffset()``)." @@ -1654,24 +1873,26 @@ msgstr "" "premièrement ajustés en soustrayant leurs décalages UTC (obtenus depuis " "``self.utcoffset()``)." -#: ../Doc/library/datetime.rst:1018 +#: ../Doc/library/datetime.rst:1176 +#, fuzzy msgid "" -"Equality comparisons between naive and aware :class:`.datetime` instances " +"Equality comparisons between aware and naive :class:`.datetime` instances " "don't raise :exc:`TypeError`." msgstr "" "Les comparaisons d'égalité entre des instances :class:`.datetime` naïves et " "avisées ne lèvent pas de :exc:`TypeError`." -#: ../Doc/library/datetime.rst:1024 +#: ../Doc/library/datetime.rst:1182 +#, fuzzy msgid "" "In order to stop comparison from falling back to the default scheme of " "comparing object addresses, datetime comparison normally raises :exc:" -"`TypeError` if the other comparand isn't also a :class:`.datetime` object. " +"`TypeError` if the other comparand isn't also a :class:`.datetime` object. " "However, ``NotImplemented`` is returned instead if the other comparand has " -"a :meth:`timetuple` attribute. This hook gives other kinds of date objects " -"a chance at implementing mixed-type comparison. If not, when a :class:`." +"a :meth:`timetuple` attribute. This hook gives other kinds of date objects a " +"chance at implementing mixed-type comparison. If not, when a :class:`." "datetime` object is compared to an object of a different type, :exc:" -"`TypeError` is raised unless the comparison is ``==`` or ``!=``. The latter " +"`TypeError` is raised unless the comparison is ``==`` or ``!=``. The latter " "cases return :const:`False` or :const:`True`, respectively." msgstr "" "Afin d'empêcher la comparaison de retomber sur le schéma par défaut de " @@ -1685,45 +1906,39 @@ msgstr "" "comparaison soit ``==`` ou ``!=``. Ces derniers cas renvoient " "respectivement :const:`False` et :const:`True`." -#: ../Doc/library/datetime.rst:1034 -msgid "" -":class:`.datetime` objects can be used as dictionary keys. In Boolean " -"contexts, all :class:`.datetime` objects are considered to be true." -msgstr "" -"Les objets :class:`.datetime` peuvent être utilisés comme clés de " -"dictionnaires. Dans les contextes booléens, tous les objets :class:`." -"datetime` sont considérés vrais." - -#: ../Doc/library/datetime.rst:1041 +#: ../Doc/library/datetime.rst:1196 msgid "Return :class:`date` object with same year, month and day." msgstr "Renvoie un objet :class:`date` avec les mêmes année, mois et jour." -#: ../Doc/library/datetime.rst:1046 +#: ../Doc/library/datetime.rst:1201 +#, fuzzy msgid "" "Return :class:`.time` object with same hour, minute, second, microsecond and " -"fold. :attr:`.tzinfo` is ``None``. See also method :meth:`timetz`." +"fold. :attr:`.tzinfo` is ``None``. See also method :meth:`timetz`." msgstr "" "Renvoie un objet :class:`.time` avec les mêmes heure, minute, seconde, " "microseconde et *fold*. :attr:`.tzinfo` est ``None``. Voir aussi la " "méthode :meth:`timetz`." -#: ../Doc/library/datetime.rst:1049 ../Doc/library/datetime.rst:1058 +#: ../Doc/library/datetime.rst:1204 ../Doc/library/datetime.rst:1213 msgid "The fold value is copied to the returned :class:`.time` object." msgstr "La valeur *fold* est copiée vers l'objet :class:`.time` renvoyé." -#: ../Doc/library/datetime.rst:1055 +#: ../Doc/library/datetime.rst:1210 +#, fuzzy msgid "" "Return :class:`.time` object with same hour, minute, second, microsecond, " -"fold, and tzinfo attributes. See also method :meth:`time`." +"fold, and tzinfo attributes. See also method :meth:`time`." msgstr "" "Renvoie un objet :class:`.time` avec les mêmes attributs heure, minute, " "seconde, microseconde, *fold* et *tzinfo*. Voir aussi la méthode :meth:" "`time`." -#: ../Doc/library/datetime.rst:1066 +#: ../Doc/library/datetime.rst:1221 +#, fuzzy msgid "" "Return a datetime with the same attributes, except for those attributes " -"given new values by whichever keyword arguments are specified. Note that " +"given new values by whichever keyword arguments are specified. Note that " "``tzinfo=None`` can be specified to create a naive datetime from an aware " "datetime with no conversion of date and time data." msgstr "" @@ -1732,7 +1947,7 @@ msgstr "" "Notez que ``tzinfo=None`` peut être spécifié pour créer un *datetime* naïf " "depuis un *datetime* avisé sans conversion de la date ou de l'heure." -#: ../Doc/library/datetime.rst:1077 +#: ../Doc/library/datetime.rst:1232 msgid "" "Return a :class:`.datetime` object with new :attr:`.tzinfo` attribute *tz*, " "adjusting the date and time data so the result is the same UTC time as " @@ -1742,10 +1957,11 @@ msgstr "" "valant *tz*, ajustant la date et l'heure pour que le résultat soit le même " "temps UTC que *self*, mais dans le temps local au fuseau *tz*." -#: ../Doc/library/datetime.rst:1081 +#: ../Doc/library/datetime.rst:1236 +#, fuzzy msgid "" "If provided, *tz* must be an instance of a :class:`tzinfo` subclass, and " -"its :meth:`utcoffset` and :meth:`dst` methods must not return ``None``. If " +"its :meth:`utcoffset` and :meth:`dst` methods must not return ``None``. If " "*self* is naive, it is presumed to represent time in the system timezone." msgstr "" "Si fourni, *tz* doit être une instance d'une sous-classe :class:`tzinfo`, et " @@ -1753,10 +1969,11 @@ msgstr "" "``None``. Si *self* est naïf, Python considère que le temps est exprimé " "dans le fuseau horaire du système." -#: ../Doc/library/datetime.rst:1085 +#: ../Doc/library/datetime.rst:1240 +#, fuzzy msgid "" "If called without arguments (or with ``tz=None``) the system local timezone " -"is assumed for the target timezone. The ``.tzinfo`` attribute of the " +"is assumed for the target timezone. The ``.tzinfo`` attribute of the " "converted datetime instance will be set to an instance of :class:`timezone` " "with the zone name and offset obtained from the OS." msgstr "" @@ -1765,7 +1982,7 @@ msgstr "" "l'instance *datetime* convertie aura pour valeur une instance de :class:" "`timezone` avec le nom de fuseau et le décalage obtenus depuis l'OS." -#: ../Doc/library/datetime.rst:1090 +#: ../Doc/library/datetime.rst:1245 msgid "" "If ``self.tzinfo`` is *tz*, ``self.astimezone(tz)`` is equal to *self*: no " "adjustment of date or time data is performed. Else the result is local time " @@ -1779,10 +1996,11 @@ msgstr "" "après ``astz = dt.astimezone(tz)``, ``astz - astz.utcoffset()`` aura les " "mêmes données de date et d'heure que ``dt - dt.utcoffset()``." -#: ../Doc/library/datetime.rst:1096 +#: ../Doc/library/datetime.rst:1251 +#, fuzzy msgid "" "If you merely want to attach a time zone object *tz* to a datetime *dt* " -"without adjustment of date and time data, use ``dt.replace(tzinfo=tz)``. If " +"without adjustment of date and time data, use ``dt.replace(tzinfo=tz)``. If " "you merely want to remove the time zone object from an aware datetime *dt* " "without conversion of date and time data, use ``dt.replace(tzinfo=None)``." msgstr "" @@ -1792,7 +2010,7 @@ msgstr "" "d'un *datetime* *dt* avisé sans conversion des données de date et d'heure, " "utilisez ``dt.replace(tzinfo=None)``." -#: ../Doc/library/datetime.rst:1101 +#: ../Doc/library/datetime.rst:1256 msgid "" "Note that the default :meth:`tzinfo.fromutc` method can be overridden in a :" "class:`tzinfo` subclass to affect the result returned by :meth:`astimezone`. " @@ -1803,11 +2021,11 @@ msgstr "" "meth:`astimezone`. En ignorant les cas d'erreurs, :meth:`astimezone` se " "comporte comme : ::" -#: ../Doc/library/datetime.rst:1113 +#: ../Doc/library/datetime.rst:1268 msgid "*tz* now can be omitted." msgstr "*tz* peut maintenant être omis." -#: ../Doc/library/datetime.rst:1116 +#: ../Doc/library/datetime.rst:1271 msgid "" "The :meth:`astimezone` method can now be called on naive instances that are " "presumed to represent system local time." @@ -1815,7 +2033,7 @@ msgstr "" "La méthode :meth:`astimezone` peut maintenant être appelée sur des instances " "naïves qui sont supposées représenter un temps local au système." -#: ../Doc/library/datetime.rst:1123 +#: ../Doc/library/datetime.rst:1278 msgid "" "If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." "utcoffset(self)``, and raises an exception if the latter doesn't return " @@ -1826,13 +2044,13 @@ msgstr "" "ne renvoie pas ``None`` ou un objet :class:`timedelta` d'une magnitude " "inférieure à un jour." -#: ../Doc/library/datetime.rst:1127 ../Doc/library/datetime.rst:1647 -#: ../Doc/library/datetime.rst:1747 ../Doc/library/datetime.rst:1988 -#: ../Doc/library/datetime.rst:1999 ../Doc/library/datetime.rst:2265 +#: ../Doc/library/datetime.rst:1282 ../Doc/library/datetime.rst:1865 +#: ../Doc/library/datetime.rst:1971 ../Doc/library/datetime.rst:2217 +#: ../Doc/library/datetime.rst:2229 ../Doc/library/datetime.rst:2525 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." -#: ../Doc/library/datetime.rst:1133 +#: ../Doc/library/datetime.rst:1288 msgid "" "If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." "dst(self)``, and raises an exception if the latter doesn't return ``None`` " @@ -1843,12 +2061,12 @@ msgstr "" "renvoie pas ``None`` ou un objet :class:`timedelta` d'une magnitude " "inférieure à un jour." -#: ../Doc/library/datetime.rst:1137 ../Doc/library/datetime.rst:1657 -#: ../Doc/library/datetime.rst:1799 +#: ../Doc/library/datetime.rst:1292 ../Doc/library/datetime.rst:1875 +#: ../Doc/library/datetime.rst:2025 msgid "The DST offset is not restricted to a whole number of minutes." msgstr "Le décalage DST n'est pas restreint à des minutes entières." -#: ../Doc/library/datetime.rst:1143 +#: ../Doc/library/datetime.rst:1298 msgid "" "If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." "tzname(self)``, raises an exception if the latter doesn't return ``None`` or " @@ -1858,13 +2076,11 @@ msgstr "" "tzinfo.tzname(self)``, lève une exception si l'expression précédente ne " "renvoie pas ``None`` ou une chaîne de caractères," -#: ../Doc/library/datetime.rst:1150 +#: ../Doc/library/datetime.rst:1313 +#, fuzzy msgid "" -"Return a :class:`time.struct_time` such as returned by :func:`time." -"localtime`. ``d.timetuple()`` is equivalent to ``time.struct_time((d.year, d." -"month, d.day, d.hour, d.minute, d.second, d.weekday(), yday, dst))``, where " -"``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` is the day " -"number within the current year starting with ``1`` for January 1st. The :" +"where ``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` is the " +"day number within the current year starting with ``1`` for January 1st. The :" "attr:`tm_isdst` flag of the result is set according to the :meth:`dst` " "method: :attr:`.tzinfo` is ``None`` or :meth:`dst` returns ``None``, :attr:" "`tm_isdst` is set to ``-1``; else if :meth:`dst` returns a non-zero value, :" @@ -1881,24 +2097,26 @@ msgstr "" "une valeur non-nulle, :attr:`tm_isdst` est mise à ``1`` ; sinon :attr:" "`tm_isdst` est mise à ``0``." -#: ../Doc/library/datetime.rst:1163 +#: ../Doc/library/datetime.rst:1324 +#, fuzzy msgid "" "If :class:`.datetime` instance *d* is naive, this is the same as ``d." "timetuple()`` except that :attr:`tm_isdst` is forced to 0 regardless of what " -"``d.dst()`` returns. DST is never in effect for a UTC time." +"``d.dst()`` returns. DST is never in effect for a UTC time." msgstr "" "Si l'instance de :class:`.datetime` *d* est naïve, cela est équivalent à ``d." "timetuple()``, excepté que :attr:`tm_isdst` est forcé à 0 sans tenir compte " "de ce que renvoie ``d.dst()``. L'heure d'été n'est jamais effective pour un " "temps UTC." -#: ../Doc/library/datetime.rst:1167 +#: ../Doc/library/datetime.rst:1328 +#, fuzzy msgid "" "If *d* is aware, *d* is normalized to UTC time, by subtracting ``d." "utcoffset()``, and a :class:`time.struct_time` for the normalized time is " -"returned. :attr:`tm_isdst` is forced to 0. Note that an :exc:" -"`OverflowError` may be raised if *d*.year was ``MINYEAR`` or ``MAXYEAR`` and " -"UTC adjustment spills over a year boundary." +"returned. :attr:`tm_isdst` is forced to 0. Note that an :exc:`OverflowError` " +"may be raised if *d*.year was ``MINYEAR`` or ``MAXYEAR`` and UTC adjustment " +"spills over a year boundary." msgstr "" "Si *d* est avisé, il est normalisé vers un temps UTC, en lui soustrayant ``d." "utcoffset()``, et un :class:`time.struct_time` est renvoyé pour le temps " @@ -1906,29 +2124,42 @@ msgstr "" "`OverflowError` peut être levée si *d.year* vaut ``MINYEAR``ou ``MAXYEAR`` " "et que l'ajustement UTC fait dépasser les bornes." -#: ../Doc/library/datetime.rst:1177 +#: ../Doc/library/datetime.rst:1337 +msgid "" +"Because naive ``datetime`` objects are treated by many ``datetime`` methods " +"as local times, it is preferred to use aware datetimes to represent times in " +"UTC; as a result, using ``utcfromtimetuple`` may give misleading results. If " +"you have a naive ``datetime`` representing UTC, use ``datetime." +"replace(tzinfo=timezone.utc)`` to make it aware, at which point you can use :" +"meth:`.datetime.timetuple`." +msgstr "" + +#: ../Doc/library/datetime.rst:1346 +#, fuzzy msgid "" -"Return the proleptic Gregorian ordinal of the date. The same as ``self." +"Return the proleptic Gregorian ordinal of the date. The same as ``self." "date().toordinal()``." msgstr "" "Renvoie l'ordinal du calendrier géorgien proleptique de cette date. " "Identique à ``self.date().toordinal()``." -#: ../Doc/library/datetime.rst:1182 +#: ../Doc/library/datetime.rst:1351 +#, fuzzy msgid "" -"Return POSIX timestamp corresponding to the :class:`.datetime` instance. " -"The return value is a :class:`float` similar to that returned by :func:`time." +"Return POSIX timestamp corresponding to the :class:`.datetime` instance. The " +"return value is a :class:`float` similar to that returned by :func:`time." "time`." msgstr "" "Renvoie l'horodatage (*timestamp* en anglais) *POSIX* correspondant à " "l'instance :class:`.datetime`. La valeur renvoyée est un :class:`float` " "similaire à ceux renvoyés par :func:`time.time`." -#: ../Doc/library/datetime.rst:1186 +#: ../Doc/library/datetime.rst:1355 +#, fuzzy msgid "" "Naive :class:`.datetime` instances are assumed to represent local time and " "this method relies on the platform C :c:func:`mktime` function to perform " -"the conversion. Since :class:`.datetime` supports wider range of values " +"the conversion. Since :class:`.datetime` supports wider range of values " "than :c:func:`mktime` on many platforms, this method may raise :exc:" "`OverflowError` for times far in the past or far in the future." msgstr "" @@ -1939,14 +2170,14 @@ msgstr "" "plateformes, cette méthode peut lever une :exc:`OverflowError` pour les " "temps trop éloignés dans le passé ou le futur." -#: ../Doc/library/datetime.rst:1193 +#: ../Doc/library/datetime.rst:1362 msgid "" "For aware :class:`.datetime` instances, the return value is computed as::" msgstr "" "Pour les instances :class:`.datetime` avisées, la valeur renvoyée est " "calculée comme suit : ::" -#: ../Doc/library/datetime.rst:1200 +#: ../Doc/library/datetime.rst:1369 msgid "" "The :meth:`timestamp` method uses the :attr:`.fold` attribute to " "disambiguate the times during a repeated interval." @@ -1954,10 +2185,11 @@ msgstr "" "La méthode :meth:`timestamp` utilise l'attribut :attr:`.fold` pour " "désambiguïser le temps dans un intervalle répété." -#: ../Doc/library/datetime.rst:1206 +#: ../Doc/library/datetime.rst:1375 +#, fuzzy msgid "" "There is no method to obtain the POSIX timestamp directly from a naive :" -"class:`.datetime` instance representing UTC time. If your application uses " +"class:`.datetime` instance representing UTC time. If your application uses " "this convention and your system timezone is not set to UTC, you can obtain " "the POSIX timestamp by supplying ``tzinfo=timezone.utc``::" msgstr "" @@ -1967,11 +2199,11 @@ msgstr "" "que le fuseau horaire de votre système est UTC, vous pouvez obtenir " "l'horodatage *POSIX* en fournissant ``tzinfo=timezone.utc`` : ::" -#: ../Doc/library/datetime.rst:1214 +#: ../Doc/library/datetime.rst:1383 msgid "or by calculating the timestamp directly::" msgstr "ou en calculant l'horodatage (*timestamp* en anglais) directement : ::" -#: ../Doc/library/datetime.rst:1220 +#: ../Doc/library/datetime.rst:1389 msgid "" "Return the day of the week as an integer, where Monday is 0 and Sunday is 6. " "The same as ``self.date().weekday()``. See also :meth:`isoweekday`." @@ -1980,7 +2212,7 @@ msgstr "" "dimanche vaut 6. Identique à ``self.date().weekday()``. Voir aussi :meth:" "`isoweekday`." -#: ../Doc/library/datetime.rst:1226 +#: ../Doc/library/datetime.rst:1395 msgid "" "Return the day of the week as an integer, where Monday is 1 and Sunday is 7. " "The same as ``self.date().isoweekday()``. See also :meth:`weekday`, :meth:" @@ -1990,43 +2222,62 @@ msgstr "" "dimanche vaut 7. Identique à ``self.date().isoweekday()``. Voir aussi :meth:" "`weekday`, :meth:`isocalendar`." -#: ../Doc/library/datetime.rst:1233 +#: ../Doc/library/datetime.rst:1402 +#, fuzzy msgid "" -"Return a 3-tuple, (ISO year, ISO week number, ISO weekday). The same as " +"Return a 3-tuple, (ISO year, ISO week number, ISO weekday). The same as " "``self.date().isocalendar()``." msgstr "" "Renvoie un *tuple* de 3 éléments, (année ISO, numéro de semaine ISO, jour de " "la semaine ISO). Identique à ``self.date().isocalendar()``." -#: ../Doc/library/datetime.rst:1239 -msgid "" -"Return a string representing the date and time in ISO 8601 format, YYYY-MM-" -"DDTHH:MM:SS.ffffff or, if :attr:`microsecond` is 0, YYYY-MM-DDTHH:MM:SS" +#: ../Doc/library/datetime.rst:1408 +#, fuzzy +msgid "Return a string representing the date and time in ISO 8601 format:" msgstr "" "Renvoie une chaîne représentant la date et l'heure au format ISO 8601, *YYYY-" "MM-DDTHH:MM:SS.ffffff* ou, si :attr:`microsecond` vaut 0, *YYYY-MM-DDTHH:MM:" "SS*" -#: ../Doc/library/datetime.rst:1243 +#: ../Doc/library/datetime.rst:1410 +msgid "``YYYY-MM-DDTHH:MM:SS.ffffff``, if :attr:`microsecond` is not 0" +msgstr "" + +#: ../Doc/library/datetime.rst:1411 +msgid "``YYYY-MM-DDTHH:MM:SS``, if :attr:`microsecond` is 0" +msgstr "" + +#: ../Doc/library/datetime.rst:1413 +#, fuzzy msgid "" "If :meth:`utcoffset` does not return ``None``, a string is appended, giving " -"the UTC offset: YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM[:SS[.ffffff]] or, if :attr:" -"`microsecond` is 0 YYYY-MM-DDTHH:MM:SS+HH:MM[:SS[.ffffff]]." +"the UTC offset:" +msgstr "" +"Si :meth:`utcoffset` ne renvoie pas ``None``, :meth:`dst` ne doit pas non " +"plus renvoyer ``None``." + +#: ../Doc/library/datetime.rst:1416 +msgid "" +"``YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM[:SS[.ffffff]]``, if :attr:`microsecond` " +"is not 0" +msgstr "" + +#: ../Doc/library/datetime.rst:1418 +msgid "" +"``YYYY-MM-DDTHH:MM:SS+HH:MM[:SS[.ffffff]]``, if :attr:`microsecond` is 0" msgstr "" -"Si :meth:`utcoffset` ne renvoie pas ``None``, une chaîne est ajoutée, " -"donnant le décalage UTC : *YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM[:SS[.ffffff]]* " -"ou, si :attr:`microsecond` vaut 0, *YYYY-MM-DDTHH:MM:SS+HH:MM[:SS[.ffffff]]*." -#: ../Doc/library/datetime.rst:1248 +#: ../Doc/library/datetime.rst:1428 +#, fuzzy msgid "" "The optional argument *sep* (default ``'T'``) is a one-character separator, " -"placed between the date and time portions of the result. For example," +"placed between the date and time portions of the result. For example::" msgstr "" "L'argument optionnel *sep* (valant par défaut ``'T'``) est un séparateur " "d'un caractère, placé entre les portions du résultat correspondant à la date " "et à l'heure. Par exemple," -#: ../Doc/library/datetime.rst:1258 ../Doc/library/datetime.rst:1586 +#: ../Doc/library/datetime.rst:1442 ../Doc/library/datetime.rst:1803 msgid "" "The optional argument *timespec* specifies the number of additional " "components of the time to include (the default is ``'auto'``). It can be one " @@ -2036,7 +2287,7 @@ msgstr "" "additionnels de temps à inclure (par défaut ``'auto'``). Il peut valoir " "l'une des valeurs suivantes :" -#: ../Doc/library/datetime.rst:1262 ../Doc/library/datetime.rst:1590 +#: ../Doc/library/datetime.rst:1446 ../Doc/library/datetime.rst:1807 msgid "" "``'auto'``: Same as ``'seconds'`` if :attr:`microsecond` is 0, same as " "``'microseconds'`` otherwise." @@ -2044,49 +2295,56 @@ msgstr "" "``'auto'`` : Identique à ``'seconds'`` si :attr:`microsecond` vaut 0, à " "``'microseconds'`` sinon." -#: ../Doc/library/datetime.rst:1264 ../Doc/library/datetime.rst:1592 -msgid "``'hours'``: Include the :attr:`hour` in the two-digit HH format." +#: ../Doc/library/datetime.rst:1448 ../Doc/library/datetime.rst:1809 +#, fuzzy +msgid "``'hours'``: Include the :attr:`hour` in the two-digit ``HH`` format." msgstr "``'hours'`` : Inclut :attr:`hour` au format à deux chiffres HH." -#: ../Doc/library/datetime.rst:1265 ../Doc/library/datetime.rst:1593 -msgid "``'minutes'``: Include :attr:`hour` and :attr:`minute` in HH:MM format." +#: ../Doc/library/datetime.rst:1449 ../Doc/library/datetime.rst:1810 +#, fuzzy +msgid "" +"``'minutes'``: Include :attr:`hour` and :attr:`minute` in ``HH:MM`` format." msgstr "``'minutes'`` : Inclut :attr:`hour` et :attr:`minute` au format HH:MM." -#: ../Doc/library/datetime.rst:1266 ../Doc/library/datetime.rst:1594 +#: ../Doc/library/datetime.rst:1450 ../Doc/library/datetime.rst:1811 +#, fuzzy msgid "" "``'seconds'``: Include :attr:`hour`, :attr:`minute`, and :attr:`second` in " -"HH:MM:SS format." +"``HH:MM:SS`` format." msgstr "" "``'seconds'`` : Inclut :attr:`hour`, :attr:`minute` et :attr:`second` au " "format ``HH:MM:SS``." -#: ../Doc/library/datetime.rst:1268 ../Doc/library/datetime.rst:1596 +#: ../Doc/library/datetime.rst:1452 ../Doc/library/datetime.rst:1813 +#, fuzzy msgid "" "``'milliseconds'``: Include full time, but truncate fractional second part " -"to milliseconds. HH:MM:SS.sss format." +"to milliseconds. ``HH:MM:SS.sss`` format." msgstr "" "``'milliseconds'`` : Inclut le temps complet, mais tronque la partie " "fractionnaire des millisecondes, au format ``HH:MM:SS.sss``." -#: ../Doc/library/datetime.rst:1270 ../Doc/library/datetime.rst:1598 -msgid "``'microseconds'``: Include full time in HH:MM:SS.ffffff format." +#: ../Doc/library/datetime.rst:1454 ../Doc/library/datetime.rst:1815 +#, fuzzy +msgid "``'microseconds'``: Include full time in ``HH:MM:SS.ffffff`` format." msgstr "" "``'microseconds'`` : Inclut le temps complet, au format ``HH:MM:SS.ffffff``." -#: ../Doc/library/datetime.rst:1274 ../Doc/library/datetime.rst:1602 +#: ../Doc/library/datetime.rst:1458 ../Doc/library/datetime.rst:1819 msgid "Excluded time components are truncated, not rounded." msgstr "Les composants de temps exclus sont tronqués et non arrondis." -#: ../Doc/library/datetime.rst:1276 ../Doc/library/datetime.rst:1604 -msgid ":exc:`ValueError` will be raised on an invalid *timespec* argument." +#: ../Doc/library/datetime.rst:1460 +#, fuzzy +msgid ":exc:`ValueError` will be raised on an invalid *timespec* argument::" msgstr "" "Une :exc:`ValueError` sera levée en cas d'argument *timespec* invalide." -#: ../Doc/library/datetime.rst:1286 ../Doc/library/datetime.rst:1616 +#: ../Doc/library/datetime.rst:1470 ../Doc/library/datetime.rst:1834 msgid "Added the *timespec* argument." msgstr "Ajout de l'argument *timespec*." -#: ../Doc/library/datetime.rst:1292 +#: ../Doc/library/datetime.rst:1476 msgid "" "For a :class:`.datetime` instance *d*, ``str(d)`` is equivalent to ``d." "isoformat(' ')``." @@ -2094,37 +2352,47 @@ msgstr "" "Pour une instance *d* de :class:`.datetime`, ``str(d)`` est équivalent à ``d." "isoformat(' ')``." -#: ../Doc/library/datetime.rst:1298 +#: ../Doc/library/datetime.rst:1482 +msgid "Return a string representing the date and time::" +msgstr "" + +#: ../Doc/library/datetime.rst:1488 +msgid "" +"The output string will *not* include time zone information, regardless of " +"whether the input is aware or naive." +msgstr "" + +#: ../Doc/library/datetime.rst:1495 +#, fuzzy msgid "" -"Return a string representing the date and time, for example ``datetime(2002, " -"12, 4, 20, 30, 40).ctime() == 'Wed Dec 4 20:30:40 2002'``. ``d.ctime()`` is " -"equivalent to ``time.ctime(time.mktime(d.timetuple()))`` on platforms where " -"the native C :c:func:`ctime` function (which :func:`time.ctime` invokes, but " -"which :meth:`datetime.ctime` does not invoke) conforms to the C standard." +"on platforms where the native C :c:func:`ctime` function (which :func:`time." +"ctime` invokes, but which :meth:`datetime.ctime` does not invoke) conforms " +"to the C standard." msgstr "" -"Renvoie une chaîne représentant la date et l'heure, par exemple " -"``datetime(2002, 12, 4, 20, 30, 40).ctime() == 'Wed Dec 4 20:30:40 2002'``. " -"``d.ctime()`` est équivalent à ``time.ctime(time.mktime(d.timetuple()))`` " -"sur les plateformes où la fonction C native :c:func:`ctime` (invoquée par :" -"func:`time.ctime` mais pas par :meth:`datetime.ctime`) est conforme au " -"standard C." +"Renvoie une chaîne de caractères représentant la date, par exemple " +"``date(2002, 12, 4).ctime() == 'Wed Dec 4 00:00:00 2002'``. ``d.ctime()`` " +"est équivalent à ``time.ctime(time.mktime(d.timetuple()))`` sur les " +"plateformes où la fonction C native :c:func:`ctime` (que :func:`time.ctime` " +"invoque, mais pas :meth:`date.ctime`) est conforme au standard C." -#: ../Doc/library/datetime.rst:1307 +#: ../Doc/library/datetime.rst:1501 +#, fuzzy msgid "" "Return a string representing the date and time, controlled by an explicit " -"format string. For a complete list of formatting directives, see :ref:" +"format string. For a complete list of formatting directives, see :ref:" "`strftime-strptime-behavior`." msgstr "" "Renvoie une chaîne représentant la date et l'heure, contrôlée par une chaîne " "de format explicite. Pour une liste complète des directives de formatage, " "voir :ref:`strftime-strptime-behavior`." -#: ../Doc/library/datetime.rst:1314 +#: ../Doc/library/datetime.rst:1508 +#, fuzzy msgid "" -"Same as :meth:`.datetime.strftime`. This makes it possible to specify a " +"Same as :meth:`.datetime.strftime`. This makes it possible to specify a " "format string for a :class:`.datetime` object in :ref:`formatted string " -"literals ` and when using :meth:`str.format`. For a complete " -"list of formatting directives, see :ref:`strftime-strptime-behavior`." +"literals ` and when using :meth:`str.format`. For a complete list " +"of formatting directives, see :ref:`strftime-strptime-behavior`." msgstr "" "Identique à :meth:`.datetime.strftime`. Cela permet de spécifier une chaîne " "de format pour un objet :class:`.datetime` dans une :ref:`chaîne de " @@ -2132,58 +2400,73 @@ msgstr "" "une liste complète des directives de formatage, voir :ref:`strftime-strptime-" "behavior`." -#: ../Doc/library/datetime.rst:1321 -msgid "Examples of working with datetime objects:" +#: ../Doc/library/datetime.rst:1515 +#, fuzzy +msgid "Examples of Usage: :class:`.datetime`" +msgstr "Exemple d'utilisation de la classe :class:`date` :" + +#: ../Doc/library/datetime.rst:1517 +#, fuzzy +msgid "Examples of working with :class:`~datetime.datetime` objects:" msgstr "Exemples d'utilisation des objets *datetime* :" -#: ../Doc/library/datetime.rst:1368 -msgid "Using datetime with tzinfo:" -msgstr "Utilisation de *datetime* avec *tzinfo* :" +#: ../Doc/library/datetime.rst:1570 +msgid "" +"The example below defines a :class:`tzinfo` subclass capturing time zone " +"information for Kabul, Afghanistan, which used +4 UTC until 1945 and then " +"+4:30 UTC thereafter::" +msgstr "" + +#: ../Doc/library/datetime.rst:1617 +msgid "Usage of ``KabulTz`` from above::" +msgstr "" -#: ../Doc/library/datetime.rst:1436 +#: ../Doc/library/datetime.rst:1643 msgid ":class:`.time` Objects" msgstr "Objets :class:`.time`" -#: ../Doc/library/datetime.rst:1438 +#: ../Doc/library/datetime.rst:1645 +#, fuzzy msgid "" -"A time object represents a (local) time of day, independent of any " +"A :class:`time` object represents a (local) time of day, independent of any " "particular day, and subject to adjustment via a :class:`tzinfo` object." msgstr "" "Un objet *time* représente une heure (locale) du jour, indépendante de tout " "jour particulier, et sujette à des ajustements par un objet :class:`tzinfo`." -#: ../Doc/library/datetime.rst:1443 +#: ../Doc/library/datetime.rst:1650 #, fuzzy msgid "" -"All arguments are optional. *tzinfo* may be ``None``, or an instance of a :" -"class:`tzinfo` subclass. The remaining arguments must be integers in the " +"All arguments are optional. *tzinfo* may be ``None``, or an instance of a :" +"class:`tzinfo` subclass. The remaining arguments must be integers in the " "following ranges:" msgstr "" "Tous les arguments sont optionnels. *tzinfo* peut être ``None`` ou une " "instance d'une sous-classe :class:`tzinfo`. Les autres arguments doivent " "être des nombres entiers, dans les intervalles suivants :" -#: ../Doc/library/datetime.rst:1453 +#: ../Doc/library/datetime.rst:1660 +#, fuzzy msgid "" -"If an argument outside those ranges is given, :exc:`ValueError` is raised. " +"If an argument outside those ranges is given, :exc:`ValueError` is raised. " "All default to ``0`` except *tzinfo*, which defaults to :const:`None`." msgstr "" "Si un argument est fourni en dehors de ces bornes, une :exc:`ValueError` est " "levée. Ils valent tous ``0`` par défaut, à l'exception de *tzinfo* qui " "vaut :const:`None`." -#: ../Doc/library/datetime.rst:1461 +#: ../Doc/library/datetime.rst:1668 msgid "The earliest representable :class:`.time`, ``time(0, 0, 0, 0)``." msgstr "" "Le plus petit objet :class:`.time` représentable, ``time(0, 0, 0, 0)``." -#: ../Doc/library/datetime.rst:1466 +#: ../Doc/library/datetime.rst:1673 msgid "The latest representable :class:`.time`, ``time(23, 59, 59, 999999)``." msgstr "" "Le plus grand objet :class:`.time` représentable, ``time(23, 59, 59, " "999999)``." -#: ../Doc/library/datetime.rst:1471 +#: ../Doc/library/datetime.rst:1678 msgid "" "The smallest possible difference between non-equal :class:`.time` objects, " "``timedelta(microseconds=1)``, although note that arithmetic on :class:`." @@ -2193,7 +2476,7 @@ msgstr "" "égaux, ``timedelta(microseconds=1)``, notez cependant que les objets :class:" "`.time` n'implémentent pas d'opérations arithmétiques." -#: ../Doc/library/datetime.rst:1500 +#: ../Doc/library/datetime.rst:1707 msgid "" "The object passed as the tzinfo argument to the :class:`.time` constructor, " "or ``None`` if none was passed." @@ -2201,13 +2484,14 @@ msgstr "" "L'objet passé comme argument *tzinfo* au constructeur de :class:`.time`, ou " "``None`` si aucune valeur n'a été passée." -#: ../Doc/library/datetime.rst:1517 +#: ../Doc/library/datetime.rst:1721 +#, fuzzy msgid "" -"comparison of :class:`.time` to :class:`.time`, where *a* is considered less " -"than *b* when *a* precedes *b* in time. If one comparand is naive and the " -"other is aware, :exc:`TypeError` is raised if an order comparison is " -"attempted. For equality comparisons, naive instances are never equal to " -"aware instances." +":class:`.time` objects support comparison of :class:`.time` to :class:`." +"time`, where *a* is considered less than *b* when *a* precedes *b* in time. " +"If one comparand is naive and the other is aware, :exc:`TypeError` is raised " +"if an order comparison is attempted. For equality comparisons, naive " +"instances are never equal to aware instances." msgstr "" "comparaison d'un :class:`.time` avec un autre :class:`.time`, où *a* est " "considéré inférieur à *b* s'il le précède dans le temps. Si un opérande est " @@ -2215,17 +2499,18 @@ msgstr "" "`TypeError` est levée. Pour les égalités, les instances naïves ne sont " "jamais égales aux instances avisées." -#: ../Doc/library/datetime.rst:1522 +#: ../Doc/library/datetime.rst:1727 +#, fuzzy msgid "" "If both comparands are aware, and have the same :attr:`~time.tzinfo` " "attribute, the common :attr:`~time.tzinfo` attribute is ignored and the base " -"times are compared. If both comparands are aware and have different :attr:" +"times are compared. If both comparands are aware and have different :attr:" "`~time.tzinfo` attributes, the comparands are first adjusted by subtracting " "their UTC offsets (obtained from ``self.utcoffset()``). In order to stop " "mixed-type comparisons from falling back to the default comparison by object " "address, when a :class:`.time` object is compared to an object of a " "different type, :exc:`TypeError` is raised unless the comparison is ``==`` " -"or ``!=``. The latter cases return :const:`False` or :const:`True`, " +"or ``!=``. The latter cases return :const:`False` or :const:`True`, " "respectively." msgstr "" "Si les deux opérandes sont avisés, et ont le même attribut :attr:`~time." @@ -2239,34 +2524,29 @@ msgstr "" "que la comparaison soit ``==`` ou ``!=``. Ces derniers cas renvoient " "respectivement :const:`False` et :const:`True`." -#: ../Doc/library/datetime.rst:1532 +#: ../Doc/library/datetime.rst:1737 +#, fuzzy msgid "" -"Equality comparisons between naive and aware :class:`~datetime.time` " +"Equality comparisons between aware and naive :class:`~datetime.time` " "instances don't raise :exc:`TypeError`." msgstr "" "Les comparaisons d'égalité entre instances de :class:`~datetime.time` naïves " "et avisées ne lèvent pas de :exc:`TypeError`." -#: ../Doc/library/datetime.rst:1536 -msgid "hash, use as dict key" -msgstr "hachage, utilisation comme clef de dictionnaire" - -#: ../Doc/library/datetime.rst:1538 -msgid "efficient pickling" -msgstr "sérialisation (*pickling*) efficace" - -#: ../Doc/library/datetime.rst:1540 +#: ../Doc/library/datetime.rst:1741 +#, fuzzy msgid "" -"In boolean contexts, a :class:`.time` object is always considered to be true." +"In Boolean contexts, a :class:`.time` object is always considered to be true." msgstr "" "Dans un contexte booléen, un objet :class:`.time` est toujours considéré " "comme vrai." -#: ../Doc/library/datetime.rst:1542 +#: ../Doc/library/datetime.rst:1743 +#, fuzzy msgid "" "Before Python 3.5, a :class:`.time` object was considered to be false if it " -"represented midnight in UTC. This behavior was considered obscure and error-" -"prone and has been removed in Python 3.5. See :issue:`13936` for full " +"represented midnight in UTC. This behavior was considered obscure and error-" +"prone and has been removed in Python 3.5. See :issue:`13936` for full " "details." msgstr "" "Avant Python 3.5, un objet :class:`.time` était considéré comme faux s'il " @@ -2274,34 +2554,35 @@ msgstr "" "propice aux erreurs, il a été supprimé en Python 3.5. Voir :issue:`13936` " "pour les détails complets." -#: ../Doc/library/datetime.rst:1549 +#: ../Doc/library/datetime.rst:1750 msgid "Other constructor:" msgstr "Autre constructeur :" -#: ../Doc/library/datetime.rst:1553 +#: ../Doc/library/datetime.rst:1754 +#, fuzzy msgid "" -"Return a :class:`time` corresponding to a *time_string* in one of the " +"Return a :class:`.time` corresponding to a *time_string* in one of the " "formats emitted by :meth:`time.isoformat`. Specifically, this function " -"supports strings in the format(s) ``HH[:MM[:SS[.fff[fff]]]][+HH:MM[:SS[." -"ffffff]]]``." +"supports strings in the format:" msgstr "" -"Renvoie une :class:`time` correspondant à *time_string* dans l'un des " -"formats émis par :meth:`time.isoformat`. Plus spécifiquement, cette fonction " -"est compatible avec des chaînes dans le(s) format(s) ``HH[:MM[:SS[." -"fff[fff]]]][+HH:MM[:SS[.ffffff]]]``." +"Renvoie une :class:`date` correspondant à *date_string* dans le format émis " +"par :meth:`date.isoformat`. Spécifiquement, cette fonction gère des chaînes " +"dans le(s) format(s) ``YYYY-MM-DD``." -#: ../Doc/library/datetime.rst:1559 +#: ../Doc/library/datetime.rst:1764 +#, fuzzy msgid "" -"This does not support parsing arbitrary ISO 8601 strings - it is only " +"This does *not* support parsing arbitrary ISO 8601 strings. It is only " "intended as the inverse operation of :meth:`time.isoformat`." msgstr "" "Ceci ne gère pas l'analyse arbitraire de chaînes ISO 8601, ceci est " "seulement destiné à l'opération inverse de :meth:`time.isoformat`." -#: ../Doc/library/datetime.rst:1570 +#: ../Doc/library/datetime.rst:1785 +#, fuzzy msgid "" "Return a :class:`.time` with the same value, except for those attributes " -"given new values by whichever keyword arguments are specified. Note that " +"given new values by whichever keyword arguments are specified. Note that " "``tzinfo=None`` can be specified to create a naive :class:`.time` from an " "aware :class:`.time`, without conversion of the time data." msgstr "" @@ -2311,39 +2592,60 @@ msgstr "" "`.time` naïve à partir d'une instance :class:`.time` avisée, sans conversion " "des données de temps." -#: ../Doc/library/datetime.rst:1581 +#: ../Doc/library/datetime.rst:1796 +#, fuzzy +msgid "Return a string representing the time in ISO 8601 format, one of:" +msgstr "" +"Renvoie une chaîne de caractères représentant la date au format ISO 8601, " +"\"YYYY-MM-DD\". Par exemple, ``date(2002, 12, 4).isoformat() == " +"'2002-12-04'``." + +#: ../Doc/library/datetime.rst:1798 +msgid "``HH:MM:SS.ffffff``, if :attr:`microsecond` is not 0" +msgstr "" + +#: ../Doc/library/datetime.rst:1799 +msgid "``HH:MM:SS``, if :attr:`microsecond` is 0" +msgstr "" + +#: ../Doc/library/datetime.rst:1800 +msgid "" +"``HH:MM:SS.ffffff+HH:MM[:SS[.ffffff]]``, if :meth:`utcoffset` does not " +"return ``None``" +msgstr "" + +#: ../Doc/library/datetime.rst:1801 msgid "" -"Return a string representing the time in ISO 8601 format, HH:MM:SS.ffffff " -"or, if :attr:`microsecond` is 0, HH:MM:SS If :meth:`utcoffset` does not " -"return ``None``, a string is appended, giving the UTC offset: HH:MM:SS.ffffff" -"+HH:MM[:SS[.ffffff]] or, if self.microsecond is 0, HH:MM:SS+HH:MM[:SS[." -"ffffff]]." +"``HH:MM:SS+HH:MM[:SS[.ffffff]]``, if :attr:`microsecond` is 0 and :meth:" +"`utcoffset` does not return ``None``" msgstr "" -"Renvoie une chaîne représentant l'heure au format ISO 8601, ``HH:MM:SS." -"ffffff`` ou, si :attr:`microsecond` vaut 0, ``HH:MM:SS`` Si :meth:" -"`utcoffset` ne renvoie pas ``None``, une chaîne est ajoutée, donnant le " -"décalage UTC : ``HH:MM:SS.ffffff+HH:MM[:SS[.ffffff]]`` ou, si ``self." -"microsecond`` vaut 0, ``HH:MM:SS+HH:MM[:SS[.ffffff]]``." -#: ../Doc/library/datetime.rst:1622 +#: ../Doc/library/datetime.rst:1821 +msgid ":exc:`ValueError` will be raised on an invalid *timespec* argument." +msgstr "" +"Une :exc:`ValueError` sera levée en cas d'argument *timespec* invalide." + +#: ../Doc/library/datetime.rst:1840 msgid "For a time *t*, ``str(t)`` is equivalent to ``t.isoformat()``." msgstr "Pour un temps *t*, ``str(t)`` est équivalent à ``t.isoformat()``." -#: ../Doc/library/datetime.rst:1627 +#: ../Doc/library/datetime.rst:1845 +#, fuzzy msgid "" "Return a string representing the time, controlled by an explicit format " -"string. For a complete list of formatting directives, see :ref:`strftime-" +"string. For a complete list of formatting directives, see :ref:`strftime-" "strptime-behavior`." msgstr "" "Renvoie une chaîne de caractères représentant la date, contrôlée par une " "chaîne de formatage explicite. Pour une liste complète des directives de " "formatage, voir :ref:`strftime-strptime-behavior`." -#: ../Doc/library/datetime.rst:1634 +#: ../Doc/library/datetime.rst:1852 +#, fuzzy msgid "" "Same as :meth:`.time.strftime`. This makes it possible to specify a format " "string for a :class:`.time` object in :ref:`formatted string literals ` and when using :meth:`str.format`. For a complete list of " +"strings>` and when using :meth:`str.format`. For a complete list of " "formatting directives, see :ref:`strftime-strptime-behavior`." msgstr "" "Identique à :meth:`.time.strftime`. Cela permet de spécifier une chaîne de " @@ -2352,7 +2654,7 @@ msgstr "" "liste complète des directives de formatage, voir :ref:`strftime-strptime-" "behavior`." -#: ../Doc/library/datetime.rst:1643 +#: ../Doc/library/datetime.rst:1861 msgid "" "If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." "utcoffset(None)``, and raises an exception if the latter doesn't return " @@ -2363,7 +2665,7 @@ msgstr "" "ne renvoie pas ``None`` ou un objet :class:`timedelta` d'une magnitude " "inférieure à un jour." -#: ../Doc/library/datetime.rst:1653 +#: ../Doc/library/datetime.rst:1871 msgid "" "If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." "dst(None)``, and raises an exception if the latter doesn't return ``None``, " @@ -2374,7 +2676,7 @@ msgstr "" "renvoie pas ``None`` ou un objet :class:`timedelta` d'une magnitude " "inférieure à un jour." -#: ../Doc/library/datetime.rst:1662 +#: ../Doc/library/datetime.rst:1880 msgid "" "If :attr:`.tzinfo` is ``None``, returns ``None``, else returns ``self.tzinfo." "tzname(None)``, or raises an exception if the latter doesn't return ``None`` " @@ -2384,34 +2686,28 @@ msgstr "" "tzinfo.tzname(None)``, et lève une exception si l'expression précédente ne " "renvoie pas ``None`` ou une chaîne de caractères." -#: ../Doc/library/datetime.rst:1666 -msgid "Example:" -msgstr "Exemple :" +#: ../Doc/library/datetime.rst:1885 +#, fuzzy +msgid "Examples of Usage: :class:`.time`" +msgstr "Exemple d'utilisation de la classe :class:`date` :" + +#: ../Doc/library/datetime.rst:1887 +#, fuzzy +msgid "Examples of working with a :class:`.time` object::" +msgstr "Exemples d'utilisation des objets *datetime* :" -#: ../Doc/library/datetime.rst:1697 +#: ../Doc/library/datetime.rst:1918 msgid ":class:`tzinfo` Objects" msgstr "Objets :class:`tzinfo`" -#: ../Doc/library/datetime.rst:1701 +#: ../Doc/library/datetime.rst:1922 msgid "" "This is an abstract base class, meaning that this class should not be " -"instantiated directly. You need to derive a concrete subclass, and (at " -"least) supply implementations of the standard :class:`tzinfo` methods needed " -"by the :class:`.datetime` methods you use. The :mod:`datetime` module " -"supplies a simple concrete subclass of :class:`tzinfo`, :class:`timezone`, " -"which can represent timezones with fixed offset from UTC such as UTC itself " -"or North American EST and EDT." +"instantiated directly. Define a subclass of :class:`tzinfo` to capture " +"information about a particular time zone." msgstr "" -"Cette classe est une classe abstraite, signifiant qu'elle ne doit pas être " -"instanciée directement. Vous devez en dériver une sous-classe concrète, et " -"(au minimum) fournir des implémentations aux méthodes standard :class:" -"`tzinfo` requises par les méthodes de :class:`.datetime` que vous utilisez. " -"Le module :mod:`datetime` fournit une simple sous-classe concrète de :class:" -"`tzinfo`, :class:`timezone`, qui peut peut représenter des fuseaux horaires " -"avec des décalages fixes par rapport à UTC, tels qu'UTC lui-même ou les nord-" -"américains EST et EDT." -#: ../Doc/library/datetime.rst:1709 +#: ../Doc/library/datetime.rst:1926 msgid "" "An instance of (a concrete subclass of) :class:`tzinfo` can be passed to the " "constructors for :class:`.datetime` and :class:`.time` objects. The latter " @@ -2427,41 +2723,66 @@ msgstr "" "temps local par rapport à UTC, le nom du fuseau horaire, le décalage d'heure " "d'été, tous relatifs à un objet de date ou d'heure qui leur est passé." -#: ../Doc/library/datetime.rst:1715 +#: ../Doc/library/datetime.rst:1932 +#, fuzzy +msgid "" +"You need to derive a concrete subclass, and (at least) supply " +"implementations of the standard :class:`tzinfo` methods needed by the :class:" +"`.datetime` methods you use. The :mod:`datetime` module provides :class:" +"`timezone`, a simple concrete subclass of :class:`tzinfo` which can " +"represent timezones with fixed offset from UTC such as UTC itself or North " +"American EST and EDT." +msgstr "" +"Cette classe est une classe abstraite, signifiant qu'elle ne doit pas être " +"instanciée directement. Vous devez en dériver une sous-classe concrète, et " +"(au minimum) fournir des implémentations aux méthodes standard :class:" +"`tzinfo` requises par les méthodes de :class:`.datetime` que vous utilisez. " +"Le module :mod:`datetime` fournit une simple sous-classe concrète de :class:" +"`tzinfo`, :class:`timezone`, qui peut peut représenter des fuseaux horaires " +"avec des décalages fixes par rapport à UTC, tels qu'UTC lui-même ou les nord-" +"américains EST et EDT." + +#: ../Doc/library/datetime.rst:1939 +#, fuzzy msgid "" "Special requirement for pickling: A :class:`tzinfo` subclass must have an :" -"meth:`__init__` method that can be called with no arguments, else it can be " -"pickled but possibly not unpickled again. This is a technical requirement " -"that may be relaxed in the future." +"meth:`__init__` method that can be called with no arguments, otherwise it " +"can be pickled but possibly not unpickled again. This is a technical " +"requirement that may be relaxed in the future." msgstr "" "Prérequis spécifique au *picklng* : Une sous-classe :class:`tzinfo` doit " "avoir une méthode :meth:`__init__` qui peut être appelée sans arguments, " "sans quoi un objet sérialisé ne pourrait pas toujours être désérialisé. " "C'est un prérequis technique qui pourrait être assoupli dans le futur." -#: ../Doc/library/datetime.rst:1720 +#: ../Doc/library/datetime.rst:1944 +#, fuzzy msgid "" "A concrete subclass of :class:`tzinfo` may need to implement the following " -"methods. Exactly which methods are needed depends on the uses made of " -"aware :mod:`datetime` objects. If in doubt, simply implement all of them." +"methods. Exactly which methods are needed depends on the uses made of aware :" +"mod:`datetime` objects. If in doubt, simply implement all of them." msgstr "" "Une sous-classe concrète de :class:`tzinfo` peut devoir implémenter les " "méthodes suivantes. Les méthodes réellement nécessaires dépendent de " "l'utilisation qui est faite des objets :mod:`datetime` avisés. Dans le " "doute, implémentez-les toutes." -#: ../Doc/library/datetime.rst:1727 +#: ../Doc/library/datetime.rst:1951 msgid "" "Return offset of local time from UTC, as a :class:`timedelta` object that is " -"positive east of UTC. If local time is west of UTC, this should be " -"negative. Note that this is intended to be the total offset from UTC; for " -"example, if a :class:`tzinfo` object represents both time zone and DST " -"adjustments, :meth:`utcoffset` should return their sum. If the UTC offset " -"isn't known, return ``None``. Else the value returned must be a :class:" -"`timedelta` object strictly between ``-timedelta(hours=24)`` and " -"``timedelta(hours=24)`` (the magnitude of the offset must be less than one " -"day). Most implementations of :meth:`utcoffset` will probably look like one " -"of these two::" +"positive east of UTC. If local time is west of UTC, this should be negative." +msgstr "" + +#: ../Doc/library/datetime.rst:1954 +#, fuzzy +msgid "" +"This represents the *total* offset from UTC; for example, if a :class:" +"`tzinfo` object represents both time zone and DST adjustments, :meth:" +"`utcoffset` should return their sum. If the UTC offset isn't known, return " +"``None``. Else the value returned must be a :class:`timedelta` object " +"strictly between ``-timedelta(hours=24)`` and ``timedelta(hours=24)`` (the " +"magnitude of the offset must be less than one day). Most implementations of :" +"meth:`utcoffset` will probably look like one of these two::" msgstr "" "Renvoie le décalage entre le temps local et UTC, comme un objet :class:" "`timedelta` qui est positif à l'est d'UTC. Si le temps local se situe à " @@ -2475,7 +2796,7 @@ msgstr "" "un jour). La plupart des implémentations de :meth:`utcoffset` ressembleront " "probablement à l'une des deux suivantes : ::" -#: ../Doc/library/datetime.rst:1741 +#: ../Doc/library/datetime.rst:1965 msgid "" "If :meth:`utcoffset` does not return ``None``, :meth:`dst` should not return " "``None`` either." @@ -2483,7 +2804,7 @@ msgstr "" "Si :meth:`utcoffset` ne renvoie pas ``None``, :meth:`dst` ne doit pas non " "plus renvoyer ``None``." -#: ../Doc/library/datetime.rst:1744 +#: ../Doc/library/datetime.rst:1968 msgid "" "The default implementation of :meth:`utcoffset` raises :exc:" "`NotImplementedError`." @@ -2491,19 +2812,24 @@ msgstr "" "L'implémentation par défaut de :meth:`utcoffset` lève une :exc:" "`NotImplementedError`." -#: ../Doc/library/datetime.rst:1753 +#: ../Doc/library/datetime.rst:1977 msgid "" "Return the daylight saving time (DST) adjustment, as a :class:`timedelta` " -"object or ``None`` if DST information isn't known. Return ``timedelta(0)`` " -"if DST is not in effect. If DST is in effect, return the offset as a :class:" -"`timedelta` object (see :meth:`utcoffset` for details). Note that DST " -"offset, if applicable, has already been added to the UTC offset returned by :" -"meth:`utcoffset`, so there's no need to consult :meth:`dst` unless you're " -"interested in obtaining DST info separately. For example, :meth:`datetime." -"timetuple` calls its :attr:`~.datetime.tzinfo` attribute's :meth:`dst` " -"method to determine how the :attr:`tm_isdst` flag should be set, and :meth:" -"`tzinfo.fromutc` calls :meth:`dst` to account for DST changes when crossing " -"time zones." +"object or ``None`` if DST information isn't known." +msgstr "" + +#: ../Doc/library/datetime.rst:1981 +#, fuzzy +msgid "" +"Return ``timedelta(0)`` if DST is not in effect. If DST is in effect, return " +"the offset as a :class:`timedelta` object (see :meth:`utcoffset` for " +"details). Note that DST offset, if applicable, has already been added to the " +"UTC offset returned by :meth:`utcoffset`, so there's no need to consult :" +"meth:`dst` unless you're interested in obtaining DST info separately. For " +"example, :meth:`datetime.timetuple` calls its :attr:`~.datetime.tzinfo` " +"attribute's :meth:`dst` method to determine how the :attr:`tm_isdst` flag " +"should be set, and :meth:`tzinfo.fromutc` calls :meth:`dst` to account for " +"DST changes when crossing time zones." msgstr "" "Renvoie l'ajustement d'heure d'été (DST, *daylight saving time*), comme un " "objet :class:`timedelta` ou ``None`` si l'information n'est pas connue. " @@ -2519,7 +2845,7 @@ msgstr "" "`dst` pour tenir compte des heures d'été quand elle traverse des fuseaux " "horaires." -#: ../Doc/library/datetime.rst:1765 +#: ../Doc/library/datetime.rst:1991 msgid "" "An instance *tz* of a :class:`tzinfo` subclass that models both standard and " "daylight times must be consistent in this sense:" @@ -2527,18 +2853,19 @@ msgstr "" "Une instance *tz* d'une sous-classe :class:`tzinfo` convenant à la fois pour " "une heure standard et une heure d'été doit être cohérente :" -#: ../Doc/library/datetime.rst:1768 +#: ../Doc/library/datetime.rst:1994 msgid "``tz.utcoffset(dt) - tz.dst(dt)``" msgstr "``tz.utcoffset(dt) - tz.dst(dt)``" -#: ../Doc/library/datetime.rst:1770 +#: ../Doc/library/datetime.rst:1996 +#, fuzzy msgid "" "must return the same result for every :class:`.datetime` *dt* with ``dt." "tzinfo == tz`` For sane :class:`tzinfo` subclasses, this expression yields " "the time zone's \"standard offset\", which should not depend on the date or " -"the time, but only on geographic location. The implementation of :meth:" +"the time, but only on geographic location. The implementation of :meth:" "`datetime.astimezone` relies on this, but cannot detect violations; it's the " -"programmer's responsibility to ensure it. If a :class:`tzinfo` subclass " +"programmer's responsibility to ensure it. If a :class:`tzinfo` subclass " "cannot guarantee this, it may be able to override the default implementation " "of :meth:`tzinfo.fromutc` to work correctly with :meth:`astimezone` " "regardless." @@ -2554,7 +2881,7 @@ msgstr "" "l'implémentation par défaut de :meth:`tzinfo.fromutc` pour tout de même " "fonctionner correctement avec :meth:`astimezone`." -#: ../Doc/library/datetime.rst:1779 +#: ../Doc/library/datetime.rst:2005 msgid "" "Most implementations of :meth:`dst` will probably look like one of these " "two::" @@ -2562,28 +2889,29 @@ msgstr "" "La plupart des implémentations de :meth:`dst` ressembleront probablement à " "l'une des deux suivantes : ::" -#: ../Doc/library/datetime.rst:1785 -msgid "or ::" -msgstr "ou ::" +#: ../Doc/library/datetime.rst:2011 +msgid "or::" +msgstr "" -#: ../Doc/library/datetime.rst:1797 +#: ../Doc/library/datetime.rst:2023 msgid "" "The default implementation of :meth:`dst` raises :exc:`NotImplementedError`." msgstr "" "L'implémentation par défaut de :meth:`dst` lève une :exc:" "`NotImplementedError`." -#: ../Doc/library/datetime.rst:1805 +#: ../Doc/library/datetime.rst:2031 +#, fuzzy msgid "" "Return the time zone name corresponding to the :class:`.datetime` object " "*dt*, as a string. Nothing about string names is defined by the :mod:" "`datetime` module, and there's no requirement that it mean anything in " -"particular. For example, \"GMT\", \"UTC\", \"-500\", \"-5:00\", \"EDT\", " -"\"US/Eastern\", \"America/New York\" are all valid replies. Return ``None`` " -"if a string name isn't known. Note that this is a method rather than a " -"fixed string primarily because some :class:`tzinfo` subclasses will wish to " -"return different names depending on the specific value of *dt* passed, " -"especially if the :class:`tzinfo` class is accounting for daylight time." +"particular. For example, \"GMT\", \"UTC\", \"-500\", \"-5:00\", \"EDT\", " +"\"US/Eastern\", \"America/New York\" are all valid replies. Return ``None`` " +"if a string name isn't known. Note that this is a method rather than a fixed " +"string primarily because some :class:`tzinfo` subclasses will wish to return " +"different names depending on the specific value of *dt* passed, especially " +"if the :class:`tzinfo` class is accounting for daylight time." msgstr "" "Renvoie le nom du fuseau horaire correspondant à l'objet :class:`.datetime` " "*dt*, sous forme d'une chaîne de caractères. rien n'est défini sur les noms " @@ -2596,7 +2924,7 @@ msgstr "" "renvoyer des noms différents en fonction de valeurs de *dt* spécifiques, en " "particulier si la classe :class:`tzinfo` tient compte de l'heure d'été." -#: ../Doc/library/datetime.rst:1815 +#: ../Doc/library/datetime.rst:2041 msgid "" "The default implementation of :meth:`tzname` raises :exc:" "`NotImplementedError`." @@ -2604,12 +2932,13 @@ msgstr "" "L'implémentation par défaut de :meth:`tzname` lève une :exc:" "`NotImplementedError`." -#: ../Doc/library/datetime.rst:1818 +#: ../Doc/library/datetime.rst:2044 +#, fuzzy msgid "" "These methods are called by a :class:`.datetime` or :class:`.time` object, " -"in response to their methods of the same names. A :class:`.datetime` object " +"in response to their methods of the same names. A :class:`.datetime` object " "passes itself as the argument, and a :class:`.time` object passes ``None`` " -"as the argument. A :class:`tzinfo` subclass's methods should therefore be " +"as the argument. A :class:`tzinfo` subclass's methods should therefore be " "prepared to accept a *dt* argument of ``None``, or of class :class:`." "datetime`." msgstr "" @@ -2620,14 +2949,14 @@ msgstr "" "être prêtes à recevoir un argument ``None`` pour *dt*, ou une instance de :" "class:`.datetime`." -#: ../Doc/library/datetime.rst:1824 +#: ../Doc/library/datetime.rst:2050 +#, fuzzy msgid "" "When ``None`` is passed, it's up to the class designer to decide the best " -"response. For example, returning ``None`` is appropriate if the class " -"wishes to say that time objects don't participate in the :class:`tzinfo` " -"protocols. It may be more useful for ``utcoffset(None)`` to return the " -"standard UTC offset, as there is no other convention for discovering the " -"standard offset." +"response. For example, returning ``None`` is appropriate if the class wishes " +"to say that time objects don't participate in the :class:`tzinfo` protocols. " +"It may be more useful for ``utcoffset(None)`` to return the standard UTC " +"offset, as there is no other convention for discovering the standard offset." msgstr "" "Quand ``None`` est passé, il est de la responsabilité du *designer* de la " "classe de choisir la meilleure réponse. Par exemple, renvoyer ``None`` est " @@ -2636,12 +2965,13 @@ msgstr "" "``utcoffset(None)`` de renvoyer le décalage UTC standard, comme il n'existe " "aucune autre convention pour obtenir ce décalage." -#: ../Doc/library/datetime.rst:1830 +#: ../Doc/library/datetime.rst:2056 +#, fuzzy msgid "" "When a :class:`.datetime` object is passed in response to a :class:`." -"datetime` method, ``dt.tzinfo`` is the same object as *self*. :class:" +"datetime` method, ``dt.tzinfo`` is the same object as *self*. :class:" "`tzinfo` methods can rely on this, unless user code calls :class:`tzinfo` " -"methods directly. The intent is that the :class:`tzinfo` methods interpret " +"methods directly. The intent is that the :class:`tzinfo` methods interpret " "*dt* as being in local time, and not need worry about objects in other " "timezones." msgstr "" @@ -2653,7 +2983,7 @@ msgstr "" "étant le temps local, et n'aient pas à se soucier des objets dans d'autres " "fuseaux horaires." -#: ../Doc/library/datetime.rst:1836 +#: ../Doc/library/datetime.rst:2062 msgid "" "There is one more :class:`tzinfo` method that a subclass may wish to " "override:" @@ -2661,11 +2991,12 @@ msgstr "" "Il y a une dernière méthode de :class:`tzinfo` que les sous-classes peuvent " "vouloir redéfinir :" -#: ../Doc/library/datetime.rst:1841 +#: ../Doc/library/datetime.rst:2067 +#, fuzzy msgid "" "This is called from the default :class:`datetime.astimezone()` " -"implementation. When called from that, ``dt.tzinfo`` is *self*, and *dt*'s " -"date and time data are to be viewed as expressing a UTC time. The purpose " +"implementation. When called from that, ``dt.tzinfo`` is *self*, and *dt*'s " +"date and time data are to be viewed as expressing a UTC time. The purpose " "of :meth:`fromutc` is to adjust the date and time data, returning an " "equivalent datetime in *self*'s local time." msgstr "" @@ -2676,13 +3007,14 @@ msgstr "" "et d'heure, renvoyant un objet *datetime* équivalent à *self*, dans le temps " "local." -#: ../Doc/library/datetime.rst:1847 +#: ../Doc/library/datetime.rst:2073 +#, fuzzy msgid "" "Most :class:`tzinfo` subclasses should be able to inherit the default :meth:" -"`fromutc` implementation without problems. It's strong enough to handle " +"`fromutc` implementation without problems. It's strong enough to handle " "fixed-offset time zones, and time zones accounting for both standard and " "daylight time, and the latter even if the DST transition times differ in " -"different years. An example of a time zone the default :meth:`fromutc` " +"different years. An example of a time zone the default :meth:`fromutc` " "implementation may not handle correctly in all cases is one where the " "standard offset (from UTC) depends on the specific date and time passed, " "which can happen for political reasons. The default implementations of :meth:" @@ -2702,7 +3034,7 @@ msgstr "" "ne pas produire les résultats attendus si le résultat est l'une des heures " "affectées par le changement d'heure." -#: ../Doc/library/datetime.rst:1858 +#: ../Doc/library/datetime.rst:2084 msgid "" "Skipping code for error cases, the default :meth:`fromutc` implementation " "acts like::" @@ -2710,7 +3042,7 @@ msgstr "" "En omettant le code des cas d'erreurs, l'implémentation par défaut de :meth:" "`fromutc` se comporte comme suit : ::" -#: ../Doc/library/datetime.rst:1876 +#: ../Doc/library/datetime.rst:2102 msgid "" "In the following :download:`tzinfo_examples.py <../includes/tzinfo_examples." "py>` file there are some examples of :class:`tzinfo` classes:" @@ -2718,11 +3050,12 @@ msgstr "" "Dans le fichier :download:`tzinfo_examples.py <../includes/tzinfo_examples." "py>` il y a des exemples de :class:`tzinfo` classes:" -#: ../Doc/library/datetime.rst:1882 +#: ../Doc/library/datetime.rst:2108 +#, fuzzy msgid "" "Note that there are unavoidable subtleties twice per year in a :class:" "`tzinfo` subclass accounting for both standard and daylight time, at the DST " -"transition points. For concreteness, consider US Eastern (UTC -0500), where " +"transition points. For concreteness, consider US Eastern (UTC -0500), where " "EDT begins the minute after 1:59 (EST) on the second Sunday in March, and " "ends the minute after 1:59 (EDT) on the first Sunday in November::" msgstr "" @@ -2733,13 +3066,14 @@ msgstr "" "la minute qui suit 1:59 (EST) le second dimanche de mars, et se termine à la " "minute qui suit 1:59 (EDT) le premier dimanche de novembre : ::" -#: ../Doc/library/datetime.rst:1896 +#: ../Doc/library/datetime.rst:2122 +#, fuzzy msgid "" "When DST starts (the \"start\" line), the local wall clock leaps from 1:59 " -"to 3:00. A wall time of the form 2:MM doesn't really make sense on that " -"day, so ``astimezone(Eastern)`` won't deliver a result with ``hour == 2`` on " -"the day DST begins. For example, at the Spring forward transition of 2016, " -"we get" +"to 3:00. A wall time of the form 2:MM doesn't really make sense on that day, " +"so ``astimezone(Eastern)`` won't deliver a result with ``hour == 2`` on the " +"day DST begins. For example, at the Spring forward transition of 2016, we " +"get::" msgstr "" "Quand l'heure d'été débute (la ligne « *start* »), l'horloge locale passe de " "1:59 à 3:00. Une heure de la forme 2:MM n'a pas vraiment de sens ce jour " @@ -2747,19 +3081,20 @@ msgstr "" "== 2`` pour le jour où débute l'heure d'été. Par exemple, lors de la " "transition du printemps 2016, nous obtenons" -#: ../Doc/library/datetime.rst:1915 +#: ../Doc/library/datetime.rst:2141 +#, fuzzy msgid "" "When DST ends (the \"end\" line), there's a potentially worse problem: " "there's an hour that can't be spelled unambiguously in local wall time: the " -"last hour of daylight time. In Eastern, that's times of the form 5:MM UTC " -"on the day daylight time ends. The local wall clock leaps from 1:59 " -"(daylight time) back to 1:00 (standard time) again. Local times of the form " -"1:MM are ambiguous. :meth:`astimezone` mimics the local clock's behavior by " -"mapping two adjacent UTC hours into the same local hour then. In the " -"Eastern example, UTC times of the form 5:MM and 6:MM both map to 1:MM when " -"converted to Eastern, but earlier times have the :attr:`~datetime.fold` " -"attribute set to 0 and the later times have it set to 1. For example, at the " -"Fall back transition of 2016, we get" +"last hour of daylight time. In Eastern, that's times of the form 5:MM UTC on " +"the day daylight time ends. The local wall clock leaps from 1:59 (daylight " +"time) back to 1:00 (standard time) again. Local times of the form 1:MM are " +"ambiguous. :meth:`astimezone` mimics the local clock's behavior by mapping " +"two adjacent UTC hours into the same local hour then. In the Eastern " +"example, UTC times of the form 5:MM and 6:MM both map to 1:MM when converted " +"to Eastern, but earlier times have the :attr:`~datetime.fold` attribute set " +"to 0 and the later times have it set to 1. For example, at the Fall back " +"transition of 2016, we get::" msgstr "" "Quand l'heure d'été se termine (la ligne « *end* »), il y a potentiellement " "un problème pire que cela : il y a une heure qui ne peut pas être exprimée " @@ -2774,16 +3109,17 @@ msgstr "" "attr:`~datetime.fold` à 0 et les plus récentes l'ont à 1. Par exemple, lors " "de la transition de l'automne 2016, nous obtenons" -#: ../Doc/library/datetime.rst:1937 +#: ../Doc/library/datetime.rst:2163 +#, fuzzy msgid "" -"Note that the :class:`datetime` instances that differ only by the value of " +"Note that the :class:`.datetime` instances that differ only by the value of " "the :attr:`~datetime.fold` attribute are considered equal in comparisons." msgstr "" "Notez que deux instances :class:`datetime` qui ne diffèrent que par la " "valeur de leur attribut :attr:`~datetime.fold` sont considérées égales dans " "les comparaisons." -#: ../Doc/library/datetime.rst:1940 +#: ../Doc/library/datetime.rst:2166 msgid "" "Applications that can't bear wall-time ambiguities should explicitly check " "the value of the :attr:`~datetime.fold` attribute or avoid using hybrid :" @@ -2800,35 +3136,38 @@ msgstr "" "représentant uniquement le fuseau EST (de décalage fixe *-5h*) ou uniquement " "EDT (*-4h*))." -#: ../Doc/library/datetime.rst:1953 +#: ../Doc/library/datetime.rst:2181 msgid "`dateutil.tz `_" msgstr "`dateutil.tz `_" -#: ../Doc/library/datetime.rst:1949 +#: ../Doc/library/datetime.rst:2175 +#, fuzzy msgid "" -"The standard library has :class:`timezone` class for handling arbitrary " -"fixed offsets from UTC and :attr:`timezone.utc` as UTC timezone instance." +"The :mod:`datetime` module has a basic :class:`timezone` class (for handling " +"arbitrary fixed offsets from UTC) and its :attr:`timezone.utc` attribute (a " +"UTC timezone instance)." msgstr "" "La bibliothèque standard contient la classe :class:`timezone` pour gérer des " "décalages fixes par rapport à UTC et :attr:`timezone.utc` comme instance du " "fuseau horaire UTC." -#: ../Doc/library/datetime.rst:1952 +#: ../Doc/library/datetime.rst:2179 +#, fuzzy msgid "" "*dateutil.tz* library brings the *IANA timezone database* (also known as the " -"Olson database) to Python and its usage is recommended." +"Olson database) to Python, and its usage is recommended." msgstr "" "La bibliothèque *dateutils.tz* apporte à Python la *base de données de " "fuseaux horaires IANA* (*IANA timezone database*, aussi appelée base de " "données Olson) , et son utilisation est recommandée." -#: ../Doc/library/datetime.rst:1959 +#: ../Doc/library/datetime.rst:2187 msgid "`IANA timezone database `_" msgstr "" "`Base de données des fuseaux horaires de l'IANA `_" -#: ../Doc/library/datetime.rst:1956 +#: ../Doc/library/datetime.rst:2184 msgid "" "The Time Zone Database (often called tz, tzdata or zoneinfo) contains code " "and data that represent the history of local time for many representative " @@ -2843,17 +3182,22 @@ msgstr "" "politiques sur les bornes du fuseau, les décalages UTC, et les règles de " "passage à l'heure d'été." -#: ../Doc/library/datetime.rst:1966 +#: ../Doc/library/datetime.rst:2194 msgid ":class:`timezone` Objects" msgstr "Objets :class:`timezone`" -#: ../Doc/library/datetime.rst:1968 +#: ../Doc/library/datetime.rst:2196 msgid "" "The :class:`timezone` class is a subclass of :class:`tzinfo`, each instance " -"of which represents a timezone defined by a fixed offset from UTC. Note " -"that objects of this class cannot be used to represent timezone information " -"in the locations where different offsets are used in different days of the " -"year or where historical changes have been made to civil time." +"of which represents a timezone defined by a fixed offset from UTC." +msgstr "" + +#: ../Doc/library/datetime.rst:2200 +#, fuzzy +msgid "" +"Objects of this class cannot be used to represent timezone information in " +"the locations where different offsets are used in different days of the year " +"or where historical changes have been made to civil time." msgstr "" "La classe :class:`timezone` est une sous-classe de :class:`tzinfo`, où " "chaque instance représente un fuseau horaire défini par un décalage fixe par " @@ -2862,10 +3206,11 @@ msgstr "" "emplacements où plusieurs décalages sont utilisés au cours de l'année ou où " "des changements historiques ont été opérés sur le temps civil." -#: ../Doc/library/datetime.rst:1978 +#: ../Doc/library/datetime.rst:2207 +#, fuzzy msgid "" "The *offset* argument must be specified as a :class:`timedelta` object " -"representing the difference between the local time and UTC. It must be " +"representing the difference between the local time and UTC. It must be " "strictly between ``-timedelta(hours=24)`` and ``timedelta(hours=24)``, " "otherwise :exc:`ValueError` is raised." msgstr "" @@ -2874,34 +3219,41 @@ msgstr "" "strictement compris entre ``-timedelta(hours=24)`` et " "``timedelta(hours=24)``, autrement une :exc:`ValueError` est levée." -#: ../Doc/library/datetime.rst:1983 +#: ../Doc/library/datetime.rst:2212 +#, fuzzy msgid "" -"The *name* argument is optional. If specified it must be a string that will " +"The *name* argument is optional. If specified it must be a string that will " "be used as the value returned by the :meth:`datetime.tzname` method." msgstr "" "L'argument *name* est optionnel. Si spécifié, il doit être une chaîne de " "caractères qui sera utilisée comme valeur de retour de la méthode :meth:" "`datetime.tzname`." -#: ../Doc/library/datetime.rst:1994 +#: ../Doc/library/datetime.rst:2223 ../Doc/library/datetime.rst:2234 msgid "" "Return the fixed value specified when the :class:`timezone` instance is " -"constructed. The *dt* argument is ignored. The return value is a :class:" -"`timedelta` instance equal to the difference between the local time and UTC." +"constructed." +msgstr "" + +#: ../Doc/library/datetime.rst:2226 +#, fuzzy +msgid "" +"The *dt* argument is ignored. The return value is a :class:`timedelta` " +"instance equal to the difference between the local time and UTC." msgstr "" "Renvoie la valeur fixe spécifiée à la création de l'instance de :class:" "`timezone`. L'argument *dt* est ignoré. La valeur de retour est une " "instance :class:`timedelta` égale à la différence entre le temps local et " "UTC." -#: ../Doc/library/datetime.rst:2004 +#: ../Doc/library/datetime.rst:2237 +#, fuzzy msgid "" -"Return the fixed value specified when the :class:`timezone` instance is " -"constructed. If *name* is not provided in the constructor, the name " -"returned by ``tzname(dt)`` is generated from the value of the ``offset`` as " -"follows. If *offset* is ``timedelta(0)``, the name is \"UTC\", otherwise it " -"is a string 'UTC±HH:MM', where ± is the sign of ``offset``, HH and MM are " -"two digits of ``offset.hours`` and ``offset.minutes`` respectively." +"If *name* is not provided in the constructor, the name returned by " +"``tzname(dt)`` is generated from the value of the ``offset`` as follows. If " +"*offset* is ``timedelta(0)``, the name is \"UTC\", otherwise it is a string " +"in the format ``UTC±HH:MM``, where ± is the sign of ``offset``, HH and MM " +"are two digits of ``offset.hours`` and ``offset.minutes`` respectively." msgstr "" "Renvoie la valeur fixe spécifiée à la création de l'instance de :class:" "`timezone`. Si *name* n'est pas fourni au constructeur, le nom renvoyé par " @@ -2911,41 +3263,42 @@ msgstr "" "et HH et MM sont respectivement les représentations à deux chiffres de " "``offset.hours`` et ``offset.minutes``." -#: ../Doc/library/datetime.rst:2012 +#: ../Doc/library/datetime.rst:2243 +#, fuzzy msgid "" -"Name generated from ``offset=timedelta(0)`` is now plain 'UTC', not 'UTC" -"+00:00'." +"Name generated from ``offset=timedelta(0)`` is now plain `'UTC'`, not ``'UTC" +"+00:00'``." msgstr "" "Le nom généré à partir de ``offset=timedelta(0)`` est maintenant \"UTC\" " "plutôt que \"UTC+00:00\"." -#: ../Doc/library/datetime.rst:2019 +#: ../Doc/library/datetime.rst:2250 msgid "Always returns ``None``." msgstr "Renvoie toujours ``None``." -#: ../Doc/library/datetime.rst:2023 +#: ../Doc/library/datetime.rst:2254 +#, fuzzy msgid "" -"Return ``dt + offset``. The *dt* argument must be an aware :class:`." +"Return ``dt + offset``. The *dt* argument must be an aware :class:`." "datetime` instance, with ``tzinfo`` set to ``self``." msgstr "" "Renvoie ``dt + offset``. L'argument *dt* doit être une instance avisée de :" "class:`datetime`, avec ``tzinfo`` valant ``self``." -#: ../Doc/library/datetime.rst:2030 +#: ../Doc/library/datetime.rst:2261 msgid "The UTC timezone, ``timezone(timedelta(0))``." msgstr "Le fuseau horaire UTC, ``timezone(timedelta(0))``." -#: ../Doc/library/datetime.rst:2039 +#: ../Doc/library/datetime.rst:2270 msgid ":meth:`strftime` and :meth:`strptime` Behavior" msgstr "Comportement de :meth:`strftime` et :meth:`strptime`" -#: ../Doc/library/datetime.rst:2041 +#: ../Doc/library/datetime.rst:2272 +#, fuzzy msgid "" ":class:`date`, :class:`.datetime`, and :class:`.time` objects all support a " "``strftime(format)`` method, to create a string representing the time under " -"the control of an explicit format string. Broadly speaking, ``d." -"strftime(fmt)`` acts like the :mod:`time` module's ``time.strftime(fmt, d." -"timetuple())`` although not all objects support a :meth:`timetuple` method." +"the control of an explicit format string." msgstr "" "Les objets :class:`date`, :class:`.datetime` et :class:`.time` comportent " "tous une méthode ``strftime(format)``, pour créer une représentation du " @@ -2954,117 +3307,119 @@ msgstr "" "la fonction ``time.strftime(fmt, d.timetuple())`` du module :mod:`time`, " "bien que tous les objets ne comportent pas de méthode :meth:`timetuple`." -#: ../Doc/library/datetime.rst:2047 +#: ../Doc/library/datetime.rst:2276 msgid "" "Conversely, the :meth:`datetime.strptime` class method creates a :class:`." "datetime` object from a string representing a date and time and a " -"corresponding format string. ``datetime.strptime(date_string, format)`` is " -"equivalent to ``datetime(*(time.strptime(date_string, format)[0:6]))``, " -"except when the format includes sub-second components or timezone offset " -"information, which are supported in ``datetime.strptime`` but are discarded " -"by ``time.strptime``." +"corresponding format string." msgstr "" -"Inversement, la méthode de classe :meth:`datetime.strptime` crée un objet :" -"class:`.datetime` à partir d'une représentation de date et heure et d'une " -"chaîne de formatage correspondante. ``datetime.strptime(date_string, " -"format)`` est équivalent à ``datetime(*(time.strptime(date_string, format)" -"[0:6]))``, sauf quand le format inclut une composante en-dessous de la " -"seconde ou une information de fuseau horaire ; ces composantes sont gérées " -"par ``datetime.strptime`` mais sont ignorées par ``time.strptime``." -#: ../Doc/library/datetime.rst:2054 +#: ../Doc/library/datetime.rst:2280 msgid "" -"For :class:`.time` objects, the format codes for year, month, and day should " -"not be used, as time objects have no such values. If they're used anyway, " -"``1900`` is substituted for the year, and ``1`` for the month and day." +"The table below provides a high-level comparison of :meth:`strftime` versus :" +"meth:`strptime`:" msgstr "" -"Pour les objets :class:`.time`, les codes de formatage pour l'année, le mois " -"et le jour ne devraient pas être utilisés, puisque les objets de temps ne " -"possèdent pas de telles valeurs. S'ils sont tout de même utilisés, ``1900`` " -"est substitué à l'année, et ``1`` au mois et au jour." -#: ../Doc/library/datetime.rst:2058 -msgid "" -"For :class:`date` objects, the format codes for hours, minutes, seconds, and " -"microseconds should not be used, as :class:`date` objects have no such " -"values. If they're used anyway, ``0`` is substituted for them." +#: ../Doc/library/datetime.rst:2284 +#, fuzzy +msgid "``strftime``" +msgstr "``str(t)``" + +#: ../Doc/library/datetime.rst:2284 +#, fuzzy +msgid "``strptime``" +msgstr "``str(t)``" + +#: ../Doc/library/datetime.rst:2286 +msgid "Usage" msgstr "" -"Pour les objets :class:`date`, les codes de formatage pour les heures, " -"minutes, secondes et microsecondes ne devraient pas être utilisés, puisque " -"les objets :class:`date` ne possèdent pas de telles valeurs. S'ils sont " -"tous de même utilisés, ils sont substitués par ``0``." -#: ../Doc/library/datetime.rst:2062 -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. [#]_" +#: ../Doc/library/datetime.rst:2286 +msgid "Convert object to a string according to a given format" msgstr "" -"Pour la méthode :meth:`datetime.strptime`, la valeur par défaut est " -"``1900-01-01T00:00:00.000`` : tous les composants non spécifiés dans la " -"chaîne de formatage seront retirés de la valeur par défaut. [#]_" -#: ../Doc/library/datetime.rst:2065 +#: ../Doc/library/datetime.rst:2286 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 " -"supported on your platform, consult the :manpage:`strftime(3)` documentation." +"Parse a string into a :class:`.datetime` object given a corresponding format" msgstr "" -"L'ensemble complet des codes de formatage implémentés varie selon les " -"plateformes, parce que Python appelle la fonction :func:`strftime` de la " -"bibliothèque C de la plateforme, et les variations sont courantes. Pour " -"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:2070 -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 " -"also platform-dependent. On some platforms such code points are preserved " -"intact in the output, while on others ``strftime`` may raise :exc:" -"`UnicodeError` or return an empty string instead." +#: ../Doc/library/datetime.rst:2288 +msgid "Type of method" +msgstr "" + +#: ../Doc/library/datetime.rst:2288 +#, fuzzy +msgid "Instance method" +msgstr "Méthodes de l'instance :" + +#: ../Doc/library/datetime.rst:2288 +msgid "Class method" +msgstr "" + +#: ../Doc/library/datetime.rst:2290 +msgid "Method of" msgstr "" -"Pour la même raison, la gestion des chaînes contenant des caractères (ou " -"points) Unicode qui ne peuvent pas être représentés dans la *locale* " -"actuelle dépend aussi de la plateforme. Sur certaines plateformes, ces " -"caractères sont conservés tels quels dans la sortie, alors que sur d'autres " -"plateformes ``strftime`` lève une :exc:`UnicodeError` ou renvoie une chaîne " -"vide." -#: ../Doc/library/datetime.rst:2076 +#: ../Doc/library/datetime.rst:2290 +#, fuzzy +msgid ":class:`date`; :class:`.datetime`; :class:`.time`" +msgstr "Compare :class:`.datetime` à :class:`.datetime`. (4)" + +#: ../Doc/library/datetime.rst:2290 +#, fuzzy +msgid ":class:`.datetime`" +msgstr "Objets :class:`.datetime`" + +#: ../Doc/library/datetime.rst:2292 +msgid "Signature" +msgstr "" + +#: ../Doc/library/datetime.rst:2292 +#, fuzzy +msgid "``strftime(format)``" +msgstr "``str(t)``" + +#: ../Doc/library/datetime.rst:2292 +msgid "``strptime(date_string, format)``" +msgstr "" + +#: ../Doc/library/datetime.rst:2297 +#, fuzzy +msgid ":meth:`strftime` and :meth:`strptime` Format Codes" +msgstr "Comportement de :meth:`strftime` et :meth:`strptime`" + +#: ../Doc/library/datetime.rst:2299 +#, fuzzy 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 " -"implementation. Note that the 1999 version of the C standard added " -"additional format codes." +"The following is a list of all the format codes that the 1989 C standard " +"requires, and these work on all platforms with a standard C implementation." msgstr "" "La liste suivante est la liste de tous les codes de formatage requis par le " "standard C (version 1989), ils fonctionnent sur toutes les plateformes " "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:2082 ../Doc/library/datetime.rst:2189 +#: ../Doc/library/datetime.rst:2303 ../Doc/library/datetime.rst:2406 msgid "Directive" msgstr "Directive" -#: ../Doc/library/datetime.rst:2082 ../Doc/library/datetime.rst:2189 +#: ../Doc/library/datetime.rst:2303 ../Doc/library/datetime.rst:2406 msgid "Meaning" msgstr "Signification" -#: ../Doc/library/datetime.rst:2082 ../Doc/library/datetime.rst:2189 +#: ../Doc/library/datetime.rst:2303 ../Doc/library/datetime.rst:2406 msgid "Example" msgstr "Exemple" -#: ../Doc/library/datetime.rst:2082 ../Doc/library/datetime.rst:2189 +#: ../Doc/library/datetime.rst:2303 ../Doc/library/datetime.rst:2406 msgid "Notes" msgstr "Notes" -#: ../Doc/library/datetime.rst:2084 +#: ../Doc/library/datetime.rst:2305 msgid "``%a``" msgstr "``%a``" -#: ../Doc/library/datetime.rst:2084 +#: ../Doc/library/datetime.rst:2305 msgid "Weekday as locale's abbreviated name." msgstr "Jour de la semaine abrégé dans la langue locale." @@ -3076,11 +3431,11 @@ msgstr "Sun, Mon, ..., Sat (en_US);" msgid "So, Mo, ..., Sa (de_DE)" msgstr "Lu, Ma, ..., Di (*fr_FR*)" -#: ../Doc/library/datetime.rst:2089 +#: ../Doc/library/datetime.rst:2310 msgid "``%A``" msgstr "``%A``" -#: ../Doc/library/datetime.rst:2089 +#: ../Doc/library/datetime.rst:2310 msgid "Weekday as locale's full name." msgstr "Jour de la semaine complet dans la langue locale." @@ -3092,43 +3447,43 @@ msgstr "*Sunday*, *Monday*, ..., *Saturday* (*en_US*);" msgid "Sonntag, Montag, ..., Samstag (de_DE)" msgstr "Lundi, Mardi, ..., Dimanche (*fr_FR*)" -#: ../Doc/library/datetime.rst:2094 +#: ../Doc/library/datetime.rst:2315 msgid "``%w``" msgstr "``%w``" -#: ../Doc/library/datetime.rst:2094 +#: ../Doc/library/datetime.rst:2315 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:2094 +#: ../Doc/library/datetime.rst:2315 msgid "0, 1, ..., 6" msgstr "0, 1, ..., 6" -#: ../Doc/library/datetime.rst:2098 +#: ../Doc/library/datetime.rst:2319 msgid "``%d``" msgstr "``%d``" -#: ../Doc/library/datetime.rst:2098 +#: ../Doc/library/datetime.rst:2319 msgid "Day of the month as a zero-padded decimal number." msgstr "Jour du mois sur deux chiffres." -#: ../Doc/library/datetime.rst:2098 +#: ../Doc/library/datetime.rst:2319 msgid "01, 02, ..., 31" msgstr "01, 02, ..., 31" -#: ../Doc/library/datetime.rst:2098 ../Doc/library/datetime.rst:2111 -#: ../Doc/library/datetime.rst:2114 ../Doc/library/datetime.rst:2120 -#: ../Doc/library/datetime.rst:2123 ../Doc/library/datetime.rst:2129 -#: ../Doc/library/datetime.rst:2147 +#: ../Doc/library/datetime.rst:2319 ../Doc/library/datetime.rst:2332 +#: ../Doc/library/datetime.rst:2335 ../Doc/library/datetime.rst:2341 +#: ../Doc/library/datetime.rst:2344 ../Doc/library/datetime.rst:2350 +#: ../Doc/library/datetime.rst:2368 msgid "\\(9)" msgstr "\\(9)" -#: ../Doc/library/datetime.rst:2101 +#: ../Doc/library/datetime.rst:2322 msgid "``%b``" msgstr "``%b``" -#: ../Doc/library/datetime.rst:2101 +#: ../Doc/library/datetime.rst:2322 msgid "Month as locale's abbreviated name." msgstr "Nom du mois abrégé dans la langue locale." @@ -3140,11 +3495,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:2106 +#: ../Doc/library/datetime.rst:2327 msgid "``%B``" msgstr "``%B``" -#: ../Doc/library/datetime.rst:2106 +#: ../Doc/library/datetime.rst:2327 msgid "Month as locale's full name." msgstr "Nom complet du mois dans la langue locale." @@ -3156,67 +3511,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:2111 +#: ../Doc/library/datetime.rst:2332 msgid "``%m``" msgstr "``%m``" -#: ../Doc/library/datetime.rst:2111 +#: ../Doc/library/datetime.rst:2332 msgid "Month as a zero-padded decimal number." msgstr "Numéro du mois sur deux chiffres." -#: ../Doc/library/datetime.rst:2111 ../Doc/library/datetime.rst:2123 +#: ../Doc/library/datetime.rst:2332 ../Doc/library/datetime.rst:2344 msgid "01, 02, ..., 12" msgstr "01, 02, ..., 12" -#: ../Doc/library/datetime.rst:2114 +#: ../Doc/library/datetime.rst:2335 msgid "``%y``" msgstr "``%y``" -#: ../Doc/library/datetime.rst:2114 +#: ../Doc/library/datetime.rst:2335 msgid "Year without century as a zero-padded decimal number." msgstr "Année sur deux chiffres (sans le siècle)." -#: ../Doc/library/datetime.rst:2114 +#: ../Doc/library/datetime.rst:2335 msgid "00, 01, ..., 99" msgstr "00, 01, ..., 99" -#: ../Doc/library/datetime.rst:2117 +#: ../Doc/library/datetime.rst:2338 msgid "``%Y``" msgstr "``%Y``" -#: ../Doc/library/datetime.rst:2117 +#: ../Doc/library/datetime.rst:2338 msgid "Year with century as a decimal number." msgstr "Année complète sur quatre chiffres." -#: ../Doc/library/datetime.rst:2117 ../Doc/library/datetime.rst:2191 +#: ../Doc/library/datetime.rst:2338 ../Doc/library/datetime.rst:2408 msgid "0001, 0002, ..., 2013, 2014, ..., 9998, 9999" msgstr "0001, 0002, ..., 2013, 2014, ..., 9998, 9999" -#: ../Doc/library/datetime.rst:2120 +#: ../Doc/library/datetime.rst:2341 msgid "``%H``" msgstr "``%H``" -#: ../Doc/library/datetime.rst:2120 +#: ../Doc/library/datetime.rst:2341 msgid "Hour (24-hour clock) as a zero-padded decimal number." msgstr "Heure à deux chiffres de 00 à 23." -#: ../Doc/library/datetime.rst:2120 +#: ../Doc/library/datetime.rst:2341 msgid "00, 01, ..., 23" msgstr "00, 01, ..., 23" -#: ../Doc/library/datetime.rst:2123 +#: ../Doc/library/datetime.rst:2344 msgid "``%I``" msgstr "``%I``" -#: ../Doc/library/datetime.rst:2123 +#: ../Doc/library/datetime.rst:2344 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:2126 +#: ../Doc/library/datetime.rst:2347 msgid "``%p``" msgstr "``%p``" -#: ../Doc/library/datetime.rst:2126 +#: ../Doc/library/datetime.rst:2347 msgid "Locale's equivalent of either AM or PM." msgstr "Équivalent local à AM/PM." @@ -3228,99 +3583,100 @@ msgstr "AM, PM (en_US);" msgid "am, pm (de_DE)" msgstr "am, pm (de_DE)" -#: ../Doc/library/datetime.rst:2126 +#: ../Doc/library/datetime.rst:2347 msgid "\\(1), \\(3)" msgstr "\\(1), \\(3)" -#: ../Doc/library/datetime.rst:2129 +#: ../Doc/library/datetime.rst:2350 msgid "``%M``" msgstr "``%M``" -#: ../Doc/library/datetime.rst:2129 +#: ../Doc/library/datetime.rst:2350 msgid "Minute as a zero-padded decimal number." msgstr "Minutes sur deux chiffres." -#: ../Doc/library/datetime.rst:2129 ../Doc/library/datetime.rst:2132 +#: ../Doc/library/datetime.rst:2350 ../Doc/library/datetime.rst:2353 msgid "00, 01, ..., 59" msgstr "00, 01, ..., 59" -#: ../Doc/library/datetime.rst:2132 +#: ../Doc/library/datetime.rst:2353 msgid "``%S``" msgstr "``%S``" -#: ../Doc/library/datetime.rst:2132 +#: ../Doc/library/datetime.rst:2353 msgid "Second as a zero-padded decimal number." msgstr "Secondes sur deux chiffres." -#: ../Doc/library/datetime.rst:2132 +#: ../Doc/library/datetime.rst:2353 msgid "\\(4), \\(9)" msgstr "\\(4), \\(9)" -#: ../Doc/library/datetime.rst:2135 +#: ../Doc/library/datetime.rst:2356 msgid "``%f``" msgstr "``%f``" -#: ../Doc/library/datetime.rst:2135 +#: ../Doc/library/datetime.rst:2356 msgid "Microsecond as a decimal number, zero-padded on the left." msgstr "Microsecondes sur 6 chiffres." -#: ../Doc/library/datetime.rst:2135 +#: ../Doc/library/datetime.rst:2356 msgid "000000, 000001, ..., 999999" msgstr "000000, 000001, ..., 999999" -#: ../Doc/library/datetime.rst:2135 +#: ../Doc/library/datetime.rst:2356 msgid "\\(5)" msgstr "\\(5)" -#: ../Doc/library/datetime.rst:2139 ../Doc/library/datetime.rst:2263 +#: ../Doc/library/datetime.rst:2360 ../Doc/library/datetime.rst:2523 msgid "``%z``" msgstr "``%z``" -#: ../Doc/library/datetime.rst:2139 +#: ../Doc/library/datetime.rst:2360 +#, fuzzy msgid "" -"UTC offset in the form ±HHMM[SS[.ffffff]] (empty string if the object is " +"UTC offset in the form ``±HHMM[SS[.ffffff]]`` (empty string if the object is " "naive)." msgstr "" "Décalage UTC sous la forme ``±HHMM[SS[.ffffff]]`` (chaîne vide si l'instance " "est naïve)." -#: ../Doc/library/datetime.rst:2139 +#: ../Doc/library/datetime.rst:2360 msgid "(empty), +0000, -0400, +1030, +063415, -030712.345216" msgstr "(vide), +0000, -0400, +1030, +063415, -030712.345216" -#: ../Doc/library/datetime.rst:2139 +#: ../Doc/library/datetime.rst:2360 msgid "\\(6)" msgstr "\\(6)" -#: ../Doc/library/datetime.rst:2144 ../Doc/library/datetime.rst:2278 +#: ../Doc/library/datetime.rst:2365 ../Doc/library/datetime.rst:2538 msgid "``%Z``" msgstr "``%Z``" -#: ../Doc/library/datetime.rst:2144 +#: ../Doc/library/datetime.rst:2365 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:2144 +#: ../Doc/library/datetime.rst:2365 msgid "(empty), UTC, EST, CST" msgstr "(vide), UTC, EST, CST" -#: ../Doc/library/datetime.rst:2147 +#: ../Doc/library/datetime.rst:2368 msgid "``%j``" msgstr "``%j``" -#: ../Doc/library/datetime.rst:2147 +#: ../Doc/library/datetime.rst:2368 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:2147 +#: ../Doc/library/datetime.rst:2368 msgid "001, 002, ..., 366" msgstr "001, 002, ..., 366" -#: ../Doc/library/datetime.rst:2150 +#: ../Doc/library/datetime.rst:2371 msgid "``%U``" msgstr "``%U``" -#: ../Doc/library/datetime.rst:2150 +#: ../Doc/library/datetime.rst:2371 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 " @@ -3330,19 +3686,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:2150 ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2371 ../Doc/library/datetime.rst:2379 msgid "00, 01, ..., 53" msgstr "00, 01, ..., 53" -#: ../Doc/library/datetime.rst:2150 ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2371 ../Doc/library/datetime.rst:2379 msgid "\\(7), \\(9)" msgstr "\\(7), \\(9)" -#: ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2379 msgid "``%W``" msgstr "``%W``" -#: ../Doc/library/datetime.rst:2158 +#: ../Doc/library/datetime.rst:2379 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 " @@ -3352,11 +3708,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:2166 +#: ../Doc/library/datetime.rst:2387 msgid "``%c``" msgstr "``%c``" -#: ../Doc/library/datetime.rst:2166 +#: ../Doc/library/datetime.rst:2387 msgid "Locale's appropriate date and time representation." msgstr "Représentation locale de la date et de l'heure." @@ -3368,11 +3724,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:2171 +#: ../Doc/library/datetime.rst:2392 msgid "``%x``" msgstr "``%x``" -#: ../Doc/library/datetime.rst:2171 +#: ../Doc/library/datetime.rst:2392 msgid "Locale's appropriate date representation." msgstr "Représentation locale de la date." @@ -3388,11 +3744,11 @@ msgstr "08/16/1988 (*en_US*);" msgid "16.08.1988 (de_DE)" msgstr "16/08/1988 (*fr_FR*)" -#: ../Doc/library/datetime.rst:2175 +#: ../Doc/library/datetime.rst:2396 msgid "``%X``" msgstr "``%X``" -#: ../Doc/library/datetime.rst:2175 +#: ../Doc/library/datetime.rst:2396 msgid "Locale's appropriate time representation." msgstr "Représentation locale de l'heure." @@ -3404,41 +3760,29 @@ msgstr "21:30:00 (*en_US*) ;" msgid "21:30:00 (de_DE)" msgstr "21:30:00 (*fr_FR*)" -#: ../Doc/library/datetime.rst:2178 +#: ../Doc/library/datetime.rst:2399 msgid "``%%``" msgstr "``%%``" -#: ../Doc/library/datetime.rst:2178 +#: ../Doc/library/datetime.rst:2399 msgid "A literal ``'%'`` character." msgstr "Un caractère ``'%'`` littéral." -#: ../Doc/library/datetime.rst:2178 +#: ../Doc/library/datetime.rst:2399 msgid "%" msgstr "%" -#: ../Doc/library/datetime.rst:2181 +#: ../Doc/library/datetime.rst:2402 msgid "" "Several additional directives not required by the C89 standard are included " -"for convenience. These parameters all correspond to ISO 8601 date values. " -"These may not be available on all platforms when used with the :meth:" -"`strftime` method. The ISO 8601 year and ISO 8601 week directives are not " -"interchangeable with the year and week number directives above. Calling :" -"meth:`strptime` with incomplete or ambiguous ISO 8601 directives will raise " -"a :exc:`ValueError`." +"for convenience. These parameters all correspond to ISO 8601 date values." msgstr "" -"Plusieurs directives additionnelles non requises par le standard *C89* sont " -"incluses par commodité. Ces paramètres correspondent tous aux valeurs de " -"dates ISO 8601. Ils peuvent ne pas être disponibles sur toutes les " -"plateformes quand utilisés avec la méthode :meth:`strftime`. Les directives " -"ISO 8601 d'année et de semaine ne sont pas interchangeables avec les " -"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:2191 +#: ../Doc/library/datetime.rst:2408 msgid "``%G``" msgstr "``%G``" -#: ../Doc/library/datetime.rst:2191 +#: ../Doc/library/datetime.rst:2408 msgid "" "ISO 8601 year with century representing the year that contains the greater " "part of the ISO week (``%V``)." @@ -3446,27 +3790,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:2191 +#: ../Doc/library/datetime.rst:2408 msgid "\\(8)" msgstr "\\(8)" -#: ../Doc/library/datetime.rst:2196 +#: ../Doc/library/datetime.rst:2413 msgid "``%u``" msgstr "``%u``" -#: ../Doc/library/datetime.rst:2196 +#: ../Doc/library/datetime.rst:2413 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:2196 +#: ../Doc/library/datetime.rst:2413 msgid "1, 2, ..., 7" msgstr "1, 2, ..., 7" -#: ../Doc/library/datetime.rst:2199 +#: ../Doc/library/datetime.rst:2416 msgid "``%V``" msgstr "``%V``" -#: ../Doc/library/datetime.rst:2199 +#: ../Doc/library/datetime.rst:2416 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." @@ -3474,19 +3818,129 @@ 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:2199 +#: ../Doc/library/datetime.rst:2416 msgid "01, 02, ..., 53" msgstr "01, 02, ..., 53" -#: ../Doc/library/datetime.rst:2199 +#: ../Doc/library/datetime.rst:2416 msgid "\\(8), \\(9)" msgstr "\\(8), \\(9)" -#: ../Doc/library/datetime.rst:2206 +#: ../Doc/library/datetime.rst:2423 +#, fuzzy +msgid "" +"These may not be available on all platforms when used with the :meth:" +"`strftime` method. The ISO 8601 year and ISO 8601 week directives are not " +"interchangeable with the year and week number directives above. Calling :" +"meth:`strptime` with incomplete or ambiguous ISO 8601 directives will raise " +"a :exc:`ValueError`." +msgstr "" +"Plusieurs directives additionnelles non requises par le standard *C89* sont " +"incluses par commodité. Ces paramètres correspondent tous aux valeurs de " +"dates ISO 8601. Ils peuvent ne pas être disponibles sur toutes les " +"plateformes quand utilisés avec la méthode :meth:`strftime`. Les directives " +"ISO 8601 d'année et de semaine ne sont pas interchangeables avec les " +"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:2428 +#, fuzzy +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 " +"supported on your platform, consult the :manpage:`strftime(3)` documentation." +msgstr "" +"L'ensemble complet des codes de formatage implémentés varie selon les " +"plateformes, parce que Python appelle la fonction :func:`strftime` de la " +"bibliothèque C de la plateforme, et les variations sont courantes. Pour " +"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:2433 msgid "``%G``, ``%u`` and ``%V`` were added." msgstr "``%G``, ``%u`` et ``%V`` ont été ajoutés." -#: ../Doc/library/datetime.rst:2212 +#: ../Doc/library/datetime.rst:2437 +msgid "Technical Detail" +msgstr "" + +#: ../Doc/library/datetime.rst:2439 +#, fuzzy +msgid "" +"Broadly speaking, ``d.strftime(fmt)`` acts like the :mod:`time` module's " +"``time.strftime(fmt, d.timetuple())`` although not all objects support a :" +"meth:`timetuple` method." +msgstr "" +"Les objets :class:`date`, :class:`.datetime` et :class:`.time` comportent " +"tous une méthode ``strftime(format)``, pour créer une représentation du " +"temps sous forme d'une chaîne de caractères, contrôlée par une chaîne de " +"formatage explicite. Grossièrement, ``d.strftime(fmt)`` se comporte comme " +"la fonction ``time.strftime(fmt, d.timetuple())`` du module :mod:`time`, " +"bien que tous les objets ne comportent pas de méthode :meth:`timetuple`." + +#: ../Doc/library/datetime.rst:2443 +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 "" +"Pour la méthode :meth:`datetime.strptime`, la valeur par défaut est " +"``1900-01-01T00:00:00.000`` : tous les composants non spécifiés dans la " +"chaîne de formatage seront retirés de la valeur par défaut. [#]_" + +#: ../Doc/library/datetime.rst:2447 +msgid "Using ``datetime.strptime(date_string, format)`` is equivalent to::" +msgstr "" + +#: ../Doc/library/datetime.rst:2451 +msgid "" +"except when the format includes sub-second components or timezone offset " +"information, which are supported in ``datetime.strptime`` but are discarded " +"by ``time.strptime``." +msgstr "" + +#: ../Doc/library/datetime.rst:2455 +#, fuzzy +msgid "" +"For :class:`.time` objects, the format codes for year, month, and day should " +"not be used, as :class:`time` objects have no such values. If they're used " +"anyway, ``1900`` is substituted for the year, and ``1`` for the month and " +"day." +msgstr "" +"Pour les objets :class:`.time`, les codes de formatage pour l'année, le mois " +"et le jour ne devraient pas être utilisés, puisque les objets de temps ne " +"possèdent pas de telles valeurs. S'ils sont tout de même utilisés, ``1900`` " +"est substitué à l'année, et ``1`` au mois et au jour." + +#: ../Doc/library/datetime.rst:2459 +#, fuzzy +msgid "" +"For :class:`date` objects, the format codes for hours, minutes, seconds, and " +"microseconds should not be used, as :class:`date` objects have no such " +"values. If they're used anyway, ``0`` is substituted for them." +msgstr "" +"Pour les objets :class:`date`, les codes de formatage pour les heures, " +"minutes, secondes et microsecondes ne devraient pas être utilisés, puisque " +"les objets :class:`date` ne possèdent pas de telles valeurs. S'ils sont " +"tous de même utilisés, ils sont substitués par ``0``." + +#: ../Doc/library/datetime.rst:2463 +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 " +"also platform-dependent. On some platforms such code points are preserved " +"intact in the output, while on others ``strftime`` may raise :exc:" +"`UnicodeError` or return an empty string instead." +msgstr "" +"Pour la même raison, la gestion des chaînes contenant des caractères (ou " +"points) Unicode qui ne peuvent pas être représentés dans la *locale* " +"actuelle dépend aussi de la plateforme. Sur certaines plateformes, ces " +"caractères sont conservés tels quels dans la sortie, alors que sur d'autres " +"plateformes ``strftime`` lève une :exc:`UnicodeError` ou renvoie une chaîne " +"vide." + +#: ../Doc/library/datetime.rst:2472 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 " @@ -3505,7 +3959,7 @@ msgstr "" "utilisez :meth:`locale.getlocale` pour déterminer l'encodage de la locale " "courante)." -#: ../Doc/library/datetime.rst:2221 +#: ../Doc/library/datetime.rst:2481 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." @@ -3514,7 +3968,7 @@ msgstr "" "[1, 9999], mais toutes les années < 1000 doivent être représentées sur " "quatre chiffres." -#: ../Doc/library/datetime.rst:2224 +#: ../Doc/library/datetime.rst:2484 msgid "" "In previous versions, :meth:`strftime` method was restricted to years >= " "1900." @@ -3522,13 +3976,13 @@ msgstr "" "Dans les versions précédentes, la méthode :meth:`strftime` était limitée aux " "années >= 1900." -#: ../Doc/library/datetime.rst:2228 +#: ../Doc/library/datetime.rst:2488 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:2233 +#: ../Doc/library/datetime.rst:2493 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 " @@ -3538,7 +3992,7 @@ msgstr "" "n'affecte l'heure extraite que si la directive ``%I`` est utilisée pour " "analyser l'heure." -#: ../Doc/library/datetime.rst:2237 +#: ../Doc/library/datetime.rst:2497 msgid "" "Unlike the :mod:`time` module, the :mod:`datetime` module does not support " "leap seconds." @@ -3546,12 +4000,13 @@ msgstr "" "À l'inverse du module :mod:`time`, le module :mod:`datetime` ne gère pas les " "secondes intercalaires." -#: ../Doc/library/datetime.rst:2241 +#: ../Doc/library/datetime.rst:2501 +#, fuzzy 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 " -"to the set of format characters in the C standard (but implemented " -"separately in datetime objects, and therefore always available)." +"from one to six digits and zero pads on the right. ``%f`` is an extension to " +"the set of format characters in the C standard (but implemented separately " +"in datetime objects, and therefore always available)." msgstr "" "Quand utilisée avec la méthode :meth:`strptime`, la directive ``%f`` accepte " "un nombre de 1 à 6 chiffres, où des zéros seront ajoutés à droite jusqu'à " @@ -3559,7 +4014,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:2248 +#: ../Doc/library/datetime.rst:2508 msgid "" "For a naive object, the ``%z`` and ``%Z`` format codes are replaced by empty " "strings." @@ -3567,21 +4022,23 @@ 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:2251 +#: ../Doc/library/datetime.rst:2511 msgid "For an aware object:" msgstr "Pour un objet avisé :" -#: ../Doc/library/datetime.rst:2254 +#: ../Doc/library/datetime.rst:2514 +#, fuzzy 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 " -"hours, MM is a 2-digit string giving the number of UTC offset minutes, SS is " -"a 2-digit string giving the number of UTC offset seconds and ffffff is a 6-" -"digit string giving the number of UTC offset microseconds. The ffffff part " -"is omitted when the offset is a whole number of seconds and both the ffffff " -"and the SS part is omitted when the offset is a whole number of minutes. " -"For example, if :meth:`utcoffset` returns ``timedelta(hours=-3, " -"minutes=-30)``, ``%z`` is replaced with the string ``'-0330'``." +":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 " +"hours, ``MM`` is a 2-digit string giving the number of UTC offset minutes, " +"SS is a 2-digit string giving the number of UTC offset seconds and " +"``ffffff`` is a 6-digit string giving the number of UTC offset microseconds. " +"The ``ffffff`` part is omitted when the offset is a whole number of seconds " +"and both the ``ffffff`` and the ``SS`` part is omitted when the offset is a " +"whole number of minutes. For example, if :meth:`utcoffset` returns " +"``timedelta(hours=-3, minutes=-30)``, ``%z`` is replaced with the string " +"``'-0330'``." msgstr "" "Le résultat de :meth:`utcoffset` est transformé en une chaîne sous la forme " "``±HHMM[SS[.uuuuuu]]``, où ``HH`` est une chaîne de deux chiffres donnant le " @@ -3593,7 +4050,7 @@ msgstr "" "``timedelta(hours=-3, minutes=-30)``, ``%z`` est remplacé par la chaîne " "`'-0330'``." -#: ../Doc/library/datetime.rst:2268 +#: ../Doc/library/datetime.rst:2528 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 " @@ -3605,26 +4062,28 @@ 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:2276 +#: ../Doc/library/datetime.rst:2536 +#, fuzzy msgid "" -"If :meth:`tzname` returns ``None``, ``%Z`` is replaced by an empty string. " +"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." msgstr "" "Si :meth:`tzname` renvoie ``None``, ``%Z`` est remplacé par une chaîne " "vide. Autrement ``%Z`` est remplacé par la valeur renvoyée, qui doit être " "une chaîne." -#: ../Doc/library/datetime.rst:2280 +#: ../Doc/library/datetime.rst:2540 +#, fuzzy msgid "" "When the ``%z`` directive is provided to the :meth:`strptime` method, an " -"aware :class:`.datetime` object will be produced. The ``tzinfo`` of the " +"aware :class:`.datetime` object will be produced. The ``tzinfo`` of the " "result will be set to a :class:`timezone` instance." msgstr "" "Quand la directive ``%z`` est fournie à la méthode :meth:`strptime`, un " "objet :class:`.datetime` avisé est construit. L'attribut ``tzinfo`` du " "résultat aura pour valeur une instance de :class:`timezone`." -#: ../Doc/library/datetime.rst:2286 +#: ../Doc/library/datetime.rst:2546 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 " @@ -3634,7 +4093,7 @@ msgstr "" "et ``%W`` ne sont utilisées dans les calculs que si le jour de la semaine et " "l'année calendaire (``%Y``) sont spécifiés." -#: ../Doc/library/datetime.rst:2291 +#: ../Doc/library/datetime.rst:2551 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:" @@ -3646,7 +4105,7 @@ msgstr "" "dans la chaîne de formatage :meth:`strptime`. Notez aussi que ``%G`` et ``" "%Y`` ne sont pas interchangeables." -#: ../Doc/library/datetime.rst:2297 +#: ../Doc/library/datetime.rst:2557 msgid "" "When used with the :meth:`strptime` method, the leading zero is optional " "for formats ``%d``, ``%m``, ``%H``, ``%I``, ``%M``, ``%S``, ``%J``, ``%U``, " @@ -3657,15 +4116,44 @@ msgstr "" "%M``, ``%S``, ``%J``, ``%U``, ``%W`` et ``%V``. Le format ``%y`` requiert un " "zéro en entête." -#: ../Doc/library/datetime.rst:2302 +#: ../Doc/library/datetime.rst:2562 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/datetime.rst:2303 +#: ../Doc/library/datetime.rst:2563 msgid "If, that is, we ignore the effects of Relativity" msgstr "Si on ignore les effets de la Relativité" -#: ../Doc/library/datetime.rst:2304 +#: ../Doc/library/datetime.rst:2565 +#, fuzzy +msgid "" +"This matches the definition of the \"proleptic Gregorian\" calendar in " +"Dershowitz and Reingold's book *Calendrical Calculations*, where it's the " +"base calendar for all computations. See the book for algorithms for " +"converting between proleptic Gregorian ordinals and many other calendar " +"systems." +msgstr "" +"Un objet :class:`date` représente une date (année, mois et jour) dans un " +"calendrier idéal, l'actuel calendrier grégorien étendu indéfiniment dans les " +"deux directions. Le 1er janvier de l'an 1 est appelé le jour numéro 1, le 2 " +"janvier de l'an 1 est appelé le jour numéro 2, et ainsi de suite. Cela " +"correspond à la définition du calendrier « grégorien proleptique » dans le " +"livre *Calendrical Calculations* de Dershowitz et Reingold, où il est la " +"base de tous les calculs. Référez-vous au livre pour les algorithmes de " +"conversion entre calendriers grégorien proleptique et les autres systèmes." + +#: ../Doc/library/datetime.rst:2571 +#, fuzzy +msgid "" +"See R. H. van Gent's `guide to the mathematics of the ISO 8601 calendar " +"`_ for a " +"good explanation." +msgstr "" +"Le calendrier ISO est une variante largement utilisée du calendrier " +"grégorien. Voir https://www.staff.science.uu.nl/~gent0113/calendar/" +"isocalendar.htm pour une bonne explication." + +#: ../Doc/library/datetime.rst:2575 msgid "" "Passing ``datetime.strptime('Feb 29', '%b %d')`` will fail since ``1900`` is " "not a leap year." @@ -3673,6 +4161,187 @@ msgstr "" "Passer ``datetime.strptime(‘Feb 29’, ‘%b %d’)`` ne marchera pas car ``1900`` " "n’est pas une année bissextile." +#~ msgid "" +#~ "There are two kinds of date and time objects: \"naive\" and \"aware\"." +#~ msgstr "" +#~ "Il y a deux sortes d'objets *date* et *time* : les \"naïfs\" et les " +#~ "\"avisés\"." + +#~ msgid "" +#~ "An object of type :class:`.time` or :class:`.datetime` may be naive or " +#~ "aware. A :class:`.datetime` object *d* is aware if ``d.tzinfo`` is not " +#~ "``None`` and ``d.tzinfo.utcoffset(d)`` does not return ``None``. If ``d." +#~ "tzinfo`` is ``None``, or if ``d.tzinfo`` is not ``None`` but ``d.tzinfo." +#~ "utcoffset(d)`` returns ``None``, *d* is naive. A :class:`.time` object " +#~ "*t* is aware if ``t.tzinfo`` is not ``None`` and ``t.tzinfo." +#~ "utcoffset(None)`` does not return ``None``. Otherwise, *t* is naive." +#~ msgstr "" +#~ "Un objet de type :class:`.time` ou :class:`.datetime` peut être naïf ou " +#~ "avisé. Un objet :class:`.datetime` *d* est avisé si ``d.tzinfo`` ne vaut " +#~ "pas ``None`` et que ``d.tzinfo.utcoffset(d)`` ne renvoie pas ``None``. Si " +#~ "``d.tzinfo`` vaut ``None`` ou que ``d.tzinfo`` ne vaut pas ``None`` mais " +#~ "que ``d.tzinfo.utcoffset(d)`` renvoie ``None``, alors *d* est naïf. Un " +#~ "objet :class:`.time` *t* est avisé si ``t.tzinfo`` ne vaut pas ``None`` " +#~ "et que ``t.tzinfo.utcoffset(None)`` ne renvoie pas ``None``. Sinon, *t* " +#~ "est naïf." + +#~ msgid "Class attributes are:" +#~ msgstr "Les attributs de la classe sont :" + +#~ msgid "" +#~ "Comparisons of :class:`timedelta` objects are supported with the :class:" +#~ "`timedelta` object representing the smaller duration considered to be the " +#~ "smaller timedelta. In order to stop mixed-type comparisons from falling " +#~ "back to the default comparison by object address, when a :class:" +#~ "`timedelta` object is compared to an object of a different type, :exc:" +#~ "`TypeError` is raised unless the comparison is ``==`` or ``!=``. The " +#~ "latter cases return :const:`False` or :const:`True`, respectively." +#~ msgstr "" +#~ "Les comparaisons entre objets :class:`timedelta` sont maintenant gérées " +#~ "avec le :class:`timedelta` représentant la plus courte durée considéré " +#~ "comme le plus petit. Afin d'empêcher les comparaisons de types mixtes de " +#~ "retomber sur la comparaison par défaut par l'adresse de l'objet, quand un " +#~ "objet :class:`timedelta` est comparé à un objet de type différent, une :" +#~ "exc:`TypeError` est levée à moins que la comparaison soit ``==`` ou ``!" +#~ "=``. Ces derniers cas renvoient respectivement :const:`False` et :const:" +#~ "`True`." + +#~ msgid "Example usage:" +#~ msgstr "Exemple d'utilisation :" + +#~ msgid "" +#~ "This does not support parsing arbitrary ISO 8601 strings - it is only " +#~ "intended as the inverse operation of :meth:`date.isoformat`." +#~ msgstr "" +#~ "Ceci n'implémente pas l'analyse de chaînes ISO 8601 arbitraires, ceci est " +#~ "seulement destiné à réaliser l'opération inverse de :meth:`date." +#~ "isoformat`." + +#~ msgid "" +#~ "Dates can be used as dictionary keys. In Boolean contexts, all :class:" +#~ "`date` objects are considered to be true." +#~ msgstr "" +#~ "Les dates peuvent être utilisées en tant que clés de dictionnaires. Dans " +#~ "un contexte booléen, tous les objets :class:`date` sont considérés comme " +#~ "vrais." + +#~ msgid "" +#~ "Return a :class:`time.struct_time` such as returned by :func:`time." +#~ "localtime`. The hours, minutes and seconds are 0, and the DST flag is -1. " +#~ "``d.timetuple()`` is equivalent to ``time.struct_time((d.year, d.month, d." +#~ "day, 0, 0, 0, d.weekday(), yday, -1))``, where ``yday = d.toordinal() - " +#~ "date(d.year, 1, 1).toordinal() + 1`` is the day number within the current " +#~ "year starting with ``1`` for January 1st." +#~ msgstr "" +#~ "Renvoie une :class:`time.struct_time` telle que renvoyée par :func:`time." +#~ "localtime`. Les heures, minutes et secondes valent 0, et le *flag* *DST* " +#~ "(heure d'été) est ``-1``. ``d.timetuple()`` est équivalent à ``time." +#~ "struct_time((d.year, d.month, d.day, 0, 0, 0, d.weekday(), yday, -1))``, " +#~ "où ``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` est le " +#~ "numéro du jour dans l'année courante, commençant avec ``1`` pour le 1er " +#~ "janvier." + +#~ msgid "" +#~ "Return the current local datetime, with :attr:`.tzinfo` ``None``. This is " +#~ "equivalent to ``datetime.fromtimestamp(time.time())``. See also :meth:" +#~ "`now`, :meth:`fromtimestamp`." +#~ msgstr "" +#~ "Renvoie le *datetime* local courant, avec :attr:`.tzinfo` à ``None``. " +#~ "Cela est équivalent à ``datetime.fromtimestamp(time.time())``. Voir " +#~ "aussi :meth:`now`, :meth:`fromtimestamp`." + +#~ msgid "" +#~ "Return a :class:`datetime` corresponding to a *date_string* in one of the " +#~ "formats emitted by :meth:`date.isoformat` and :meth:`datetime.isoformat`. " +#~ "Specifically, this function supports strings in the format(s) ``YYYY-MM-" +#~ "DD[*HH[:MM[:SS[.fff[fff]]]][+HH:MM[:SS[.ffffff]]]]``, where ``*`` can " +#~ "match any single character." +#~ msgstr "" +#~ "Renvoie une :class:`datetime` correspondant à *date_string* dans un des " +#~ "formats émis par :meth:`date.isoformat` et :meth:`datetime.isoformat`. " +#~ "Plus spécifiquement, cette fonction supporte des chaînes dans les " +#~ "format(s) ``YYYY-MM-DD[*HH[:MM[:SS[.mmm[mmm]]]][+HH:MM[:SS[.ffffff]]]]``, " +#~ "où ``*`` peut égaler n'importe quel caractère." + +#~ msgid "" +#~ "If :meth:`utcoffset` does not return ``None``, a string is appended, " +#~ "giving the UTC offset: YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM[:SS[.ffffff]] or, " +#~ "if :attr:`microsecond` is 0 YYYY-MM-DDTHH:MM:SS+HH:MM[:SS[.ffffff]]." +#~ msgstr "" +#~ "Si :meth:`utcoffset` ne renvoie pas ``None``, une chaîne est ajoutée, " +#~ "donnant le décalage UTC : *YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM[:SS[." +#~ "ffffff]]* ou, si :attr:`microsecond` vaut 0, *YYYY-MM-DDTHH:MM:SS+HH:MM[:" +#~ "SS[.ffffff]]*." + +#~ msgid "" +#~ "Return a string representing the date and time, for example " +#~ "``datetime(2002, 12, 4, 20, 30, 40).ctime() == 'Wed Dec 4 20:30:40 " +#~ "2002'``. ``d.ctime()`` is equivalent to ``time.ctime(time.mktime(d." +#~ "timetuple()))`` on platforms where the native C :c:func:`ctime` function " +#~ "(which :func:`time.ctime` invokes, but which :meth:`datetime.ctime` does " +#~ "not invoke) conforms to the C standard." +#~ msgstr "" +#~ "Renvoie une chaîne représentant la date et l'heure, par exemple " +#~ "``datetime(2002, 12, 4, 20, 30, 40).ctime() == 'Wed Dec 4 20:30:40 " +#~ "2002'``. ``d.ctime()`` est équivalent à ``time.ctime(time.mktime(d." +#~ "timetuple()))`` sur les plateformes où la fonction C native :c:func:" +#~ "`ctime` (invoquée par :func:`time.ctime` mais pas par :meth:`datetime." +#~ "ctime`) est conforme au standard C." + +#~ msgid "Using datetime with tzinfo:" +#~ msgstr "Utilisation de *datetime* avec *tzinfo* :" + +#~ msgid "hash, use as dict key" +#~ msgstr "hachage, utilisation comme clef de dictionnaire" + +#~ msgid "efficient pickling" +#~ msgstr "sérialisation (*pickling*) efficace" + +#~ msgid "" +#~ "Return a :class:`time` corresponding to a *time_string* in one of the " +#~ "formats emitted by :meth:`time.isoformat`. Specifically, this function " +#~ "supports strings in the format(s) ``HH[:MM[:SS[.fff[fff]]]][+HH:MM[:SS[." +#~ "ffffff]]]``." +#~ msgstr "" +#~ "Renvoie une :class:`time` correspondant à *time_string* dans l'un des " +#~ "formats émis par :meth:`time.isoformat`. Plus spécifiquement, cette " +#~ "fonction est compatible avec des chaînes dans le(s) format(s) ``HH[:MM[:" +#~ "SS[.fff[fff]]]][+HH:MM[:SS[.ffffff]]]``." + +#~ msgid "" +#~ "Return a string representing the time in ISO 8601 format, HH:MM:SS.ffffff " +#~ "or, if :attr:`microsecond` is 0, HH:MM:SS If :meth:`utcoffset` does not " +#~ "return ``None``, a string is appended, giving the UTC offset: HH:MM:SS." +#~ "ffffff+HH:MM[:SS[.ffffff]] or, if self.microsecond is 0, HH:MM:SS+HH:MM[:" +#~ "SS[.ffffff]]." +#~ msgstr "" +#~ "Renvoie une chaîne représentant l'heure au format ISO 8601, ``HH:MM:SS." +#~ "ffffff`` ou, si :attr:`microsecond` vaut 0, ``HH:MM:SS`` Si :meth:" +#~ "`utcoffset` ne renvoie pas ``None``, une chaîne est ajoutée, donnant le " +#~ "décalage UTC : ``HH:MM:SS.ffffff+HH:MM[:SS[.ffffff]]`` ou, si ``self." +#~ "microsecond`` vaut 0, ``HH:MM:SS+HH:MM[:SS[.ffffff]]``." + +#~ msgid "or ::" +#~ msgstr "ou ::" + +#~ msgid "" +#~ "Conversely, the :meth:`datetime.strptime` class method creates a :class:`." +#~ "datetime` object from a string representing a date and time and a " +#~ "corresponding format string. ``datetime.strptime(date_string, format)`` " +#~ "is equivalent to ``datetime(*(time.strptime(date_string, format)" +#~ "[0:6]))``, except when the format includes sub-second components or " +#~ "timezone offset information, which are supported in ``datetime.strptime`` " +#~ "but are discarded by ``time.strptime``." +#~ msgstr "" +#~ "Inversement, la méthode de classe :meth:`datetime.strptime` crée un " +#~ "objet :class:`.datetime` à partir d'une représentation de date et heure " +#~ "et d'une chaîne de formatage correspondante. ``datetime." +#~ "strptime(date_string, format)`` est équivalent à ``datetime(*(time." +#~ "strptime(date_string, format)[0:6]))``, sauf quand le format inclut une " +#~ "composante en-dessous de la seconde ou une information de fuseau " +#~ "horaire ; ces composantes sont gérées par ``datetime.strptime`` mais sont " +#~ "ignorées par ``time.strptime``." + #~ msgid "" #~ "This does not support parsing arbitrary ISO 8601 strings - it is only " #~ "intended as the inverse operation of :meth:`datetime.isoformat`." diff --git a/library/difflib.po b/library/difflib.po index da6bea20b..7a67b8d22 100644 --- a/library/difflib.po +++ b/library/difflib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -68,7 +68,7 @@ msgid "" "``False`` when creating the :class:`SequenceMatcher`." msgstr "" -#: ../Doc/library/difflib.rst:54 ../Doc/library/difflib.rst:383 +#: ../Doc/library/difflib.rst:54 ../Doc/library/difflib.rst:387 msgid "The *autojunk* parameter." msgstr "" @@ -88,7 +88,7 @@ msgstr "" msgid "Code" msgstr "Code" -#: ../Doc/library/difflib.rst:68 ../Doc/library/difflib.rst:490 +#: ../Doc/library/difflib.rst:68 ../Doc/library/difflib.rst:494 msgid "Meaning" msgstr "Signification" @@ -197,45 +197,51 @@ msgid "" "without any leading context)." msgstr "" -#: ../Doc/library/difflib.rst:130 +#: ../Doc/library/difflib.rst:131 +msgid "" +"*fromdesc* and *todesc* are interpreted as unescaped HTML and should be " +"properly escaped while receiving input from untrusted sources." +msgstr "" + +#: ../Doc/library/difflib.rst:134 msgid "" "*charset* keyword-only argument was added. The default charset of HTML " "document changed from ``'ISO-8859-1'`` to ``'utf-8'``." msgstr "" -#: ../Doc/library/difflib.rst:136 +#: ../Doc/library/difflib.rst:140 msgid "" "Compares *fromlines* and *tolines* (lists of strings) and returns a string " "which is a complete HTML table showing line by line differences with inter-" "line and intra-line changes highlighted." msgstr "" -#: ../Doc/library/difflib.rst:140 +#: ../Doc/library/difflib.rst:144 msgid "" "The arguments for this method are the same as those for the :meth:" "`make_file` method." msgstr "" -#: ../Doc/library/difflib.rst:143 +#: ../Doc/library/difflib.rst:147 msgid "" ":file:`Tools/scripts/diff.py` is a command-line front-end to this class and " "contains a good example of its use." msgstr "" -#: ../Doc/library/difflib.rst:149 +#: ../Doc/library/difflib.rst:153 msgid "" "Compare *a* and *b* (lists of strings); return a delta (a :term:`generator` " "generating the delta lines) in context diff format." msgstr "" -#: ../Doc/library/difflib.rst:152 +#: ../Doc/library/difflib.rst:156 msgid "" "Context diffs are a compact way of showing just the lines that have changed " "plus a few lines of context. The changes are shown in a before/after " "style. The number of context lines is set by *n* which defaults to three." msgstr "" -#: ../Doc/library/difflib.rst:156 +#: ../Doc/library/difflib.rst:160 msgid "" "By default, the diff control lines (those with ``***`` or ``---``) are " "created with a trailing newline. This is helpful so that inputs created " @@ -244,13 +250,13 @@ msgid "" "trailing newlines." msgstr "" -#: ../Doc/library/difflib.rst:162 ../Doc/library/difflib.rst:293 +#: ../Doc/library/difflib.rst:166 ../Doc/library/difflib.rst:297 msgid "" "For inputs that do not have trailing newlines, set the *lineterm* argument " "to ``\"\"`` so that the output will be uniformly newline free." msgstr "" -#: ../Doc/library/difflib.rst:165 ../Doc/library/difflib.rst:296 +#: ../Doc/library/difflib.rst:169 ../Doc/library/difflib.rst:300 msgid "" "The context diff format normally has a header for filenames and modification " "times. Any or all of these may be specified using strings for *fromfile*, " @@ -259,11 +265,11 @@ msgid "" "default to blanks." msgstr "" -#: ../Doc/library/difflib.rst:188 ../Doc/library/difflib.rst:317 +#: ../Doc/library/difflib.rst:192 ../Doc/library/difflib.rst:321 msgid "See :ref:`difflib-interface` for a more detailed example." msgstr "" -#: ../Doc/library/difflib.rst:193 +#: ../Doc/library/difflib.rst:197 msgid "" "Return a list of the best \"good enough\" matches. *word* is a sequence for " "which close matches are desired (typically a string), and *possibilities* is " @@ -271,37 +277,37 @@ msgid "" "strings)." msgstr "" -#: ../Doc/library/difflib.rst:197 +#: ../Doc/library/difflib.rst:201 msgid "" "Optional argument *n* (default ``3``) is the maximum number of close matches " "to return; *n* must be greater than ``0``." msgstr "" -#: ../Doc/library/difflib.rst:200 +#: ../Doc/library/difflib.rst:204 msgid "" "Optional argument *cutoff* (default ``0.6``) is a float in the range [0, 1]. " "Possibilities that don't score at least that similar to *word* are ignored." msgstr "" -#: ../Doc/library/difflib.rst:203 +#: ../Doc/library/difflib.rst:207 msgid "" "The best (no more than *n*) matches among the possibilities are returned in " "a list, sorted by similarity score, most similar first." msgstr "" -#: ../Doc/library/difflib.rst:219 +#: ../Doc/library/difflib.rst:223 msgid "" "Compare *a* and *b* (lists of strings); return a :class:`Differ`\\ -style " "delta (a :term:`generator` generating the delta lines)." msgstr "" -#: ../Doc/library/difflib.rst:222 +#: ../Doc/library/difflib.rst:226 msgid "" "Optional keyword parameters *linejunk* and *charjunk* are filtering " "functions (or ``None``):" msgstr "" -#: ../Doc/library/difflib.rst:225 +#: ../Doc/library/difflib.rst:229 msgid "" "*linejunk*: A function that accepts a single string argument, and returns " "true if the string is junk, or false if not. The default is ``None``. There " @@ -312,7 +318,7 @@ msgid "" "this usually works better than using this function." msgstr "" -#: ../Doc/library/difflib.rst:233 +#: ../Doc/library/difflib.rst:237 msgid "" "*charjunk*: A function that accepts a character (a string of length 1), and " "returns if the character is junk, or false if not. The default is module-" @@ -320,33 +326,33 @@ msgid "" "characters (a blank or tab; it's a bad idea to include newline in this!)." msgstr "" -#: ../Doc/library/difflib.rst:238 +#: ../Doc/library/difflib.rst:242 msgid "" ":file:`Tools/scripts/ndiff.py` is a command-line front-end to this function." msgstr "" -#: ../Doc/library/difflib.rst:256 +#: ../Doc/library/difflib.rst:260 msgid "Return one of the two sequences that generated a delta." msgstr "" -#: ../Doc/library/difflib.rst:258 +#: ../Doc/library/difflib.rst:262 msgid "" "Given a *sequence* produced by :meth:`Differ.compare` or :func:`ndiff`, " "extract lines originating from file 1 or 2 (parameter *which*), stripping " "off line prefixes." msgstr "" -#: ../Doc/library/difflib.rst:262 +#: ../Doc/library/difflib.rst:266 msgid "Example:" msgstr "Exemple :" -#: ../Doc/library/difflib.rst:279 +#: ../Doc/library/difflib.rst:283 msgid "" "Compare *a* and *b* (lists of strings); return a delta (a :term:`generator` " "generating the delta lines) in unified diff format." msgstr "" -#: ../Doc/library/difflib.rst:282 +#: ../Doc/library/difflib.rst:286 msgid "" "Unified diffs are a compact way of showing just the lines that have changed " "plus a few lines of context. The changes are shown in an inline style " @@ -354,7 +360,7 @@ msgid "" "set by *n* which defaults to three." msgstr "" -#: ../Doc/library/difflib.rst:287 +#: ../Doc/library/difflib.rst:291 msgid "" "By default, the diff control lines (those with ``---``, ``+++``, or ``@@``) " "are created with a trailing newline. This is helpful so that inputs created " @@ -363,14 +369,14 @@ msgid "" "trailing newlines." msgstr "" -#: ../Doc/library/difflib.rst:321 +#: ../Doc/library/difflib.rst:325 msgid "" "Compare *a* and *b* (lists of bytes objects) using *dfunc*; yield a sequence " "of delta lines (also bytes) in the format returned by *dfunc*. *dfunc* must " "be a callable, typically either :func:`unified_diff` or :func:`context_diff`." msgstr "" -#: ../Doc/library/difflib.rst:326 +#: ../Doc/library/difflib.rst:330 msgid "" "Allows you to compare data with unknown or inconsistent encoding. All inputs " "except *n* must be bytes objects, not str. Works by losslessly converting " @@ -380,42 +386,42 @@ msgid "" "unknown/inconsistent encodings as *a* and *b*." msgstr "" -#: ../Doc/library/difflib.rst:337 +#: ../Doc/library/difflib.rst:341 msgid "" "Return true for ignorable lines. The line *line* is ignorable if *line* is " "blank or contains a single ``'#'``, otherwise it is not ignorable. Used as " "a default for parameter *linejunk* in :func:`ndiff` in older versions." msgstr "" -#: ../Doc/library/difflib.rst:344 +#: ../Doc/library/difflib.rst:348 msgid "" "Return true for ignorable characters. The character *ch* is ignorable if " "*ch* is a space or tab, otherwise it is not ignorable. Used as a default " "for parameter *charjunk* in :func:`ndiff`." msgstr "" -#: ../Doc/library/difflib.rst:352 +#: ../Doc/library/difflib.rst:356 msgid "" "`Pattern Matching: The Gestalt Approach `_" msgstr "" -#: ../Doc/library/difflib.rst:352 +#: ../Doc/library/difflib.rst:356 msgid "" "Discussion of a similar algorithm by John W. Ratcliff and D. E. Metzener. " "This was published in `Dr. Dobb's Journal `_ in " "July, 1988." msgstr "" -#: ../Doc/library/difflib.rst:359 +#: ../Doc/library/difflib.rst:363 msgid "SequenceMatcher Objects" msgstr "" -#: ../Doc/library/difflib.rst:361 +#: ../Doc/library/difflib.rst:365 msgid "The :class:`SequenceMatcher` class has this constructor:" msgstr "" -#: ../Doc/library/difflib.rst:366 +#: ../Doc/library/difflib.rst:370 msgid "" "Optional argument *isjunk* must be ``None`` (the default) or a one-argument " "function that takes a sequence element and returns true if and only if the " @@ -424,26 +430,26 @@ msgid "" "ignored. For example, pass::" msgstr "" -#: ../Doc/library/difflib.rst:374 +#: ../Doc/library/difflib.rst:378 msgid "" "if you're comparing lines as sequences of characters, and don't want to " "synch up on blanks or hard tabs." msgstr "" -#: ../Doc/library/difflib.rst:377 +#: ../Doc/library/difflib.rst:381 msgid "" "The optional arguments *a* and *b* are sequences to be compared; both " "default to empty strings. The elements of both sequences must be :term:" "`hashable`." msgstr "" -#: ../Doc/library/difflib.rst:380 +#: ../Doc/library/difflib.rst:384 msgid "" "The optional argument *autojunk* can be used to disable the automatic junk " "heuristic." msgstr "" -#: ../Doc/library/difflib.rst:386 +#: ../Doc/library/difflib.rst:390 msgid "" "SequenceMatcher objects get three data attributes: *bjunk* is the set of " "elements of *b* for which *isjunk* is ``True``; *bpopular* is the set of non-" @@ -453,19 +459,19 @@ msgid "" "`set_seqs` or :meth:`set_seq2`." msgstr "" -#: ../Doc/library/difflib.rst:393 +#: ../Doc/library/difflib.rst:397 msgid "The *bjunk* and *bpopular* attributes." msgstr "" -#: ../Doc/library/difflib.rst:396 +#: ../Doc/library/difflib.rst:400 msgid ":class:`SequenceMatcher` objects have the following methods:" msgstr "" -#: ../Doc/library/difflib.rst:400 +#: ../Doc/library/difflib.rst:404 msgid "Set the two sequences to be compared." msgstr "" -#: ../Doc/library/difflib.rst:402 +#: ../Doc/library/difflib.rst:406 msgid "" ":class:`SequenceMatcher` computes and caches detailed information about the " "second sequence, so if you want to compare one sequence against many " @@ -473,23 +479,23 @@ msgid "" "call :meth:`set_seq1` repeatedly, once for each of the other sequences." msgstr "" -#: ../Doc/library/difflib.rst:410 +#: ../Doc/library/difflib.rst:414 msgid "" "Set the first sequence to be compared. The second sequence to be compared " "is not changed." msgstr "" -#: ../Doc/library/difflib.rst:416 +#: ../Doc/library/difflib.rst:420 msgid "" "Set the second sequence to be compared. The first sequence to be compared " "is not changed." msgstr "" -#: ../Doc/library/difflib.rst:422 +#: ../Doc/library/difflib.rst:426 msgid "Find longest matching block in ``a[alo:ahi]`` and ``b[blo:bhi]``." msgstr "" -#: ../Doc/library/difflib.rst:424 +#: ../Doc/library/difflib.rst:428 msgid "" "If *isjunk* was omitted or ``None``, :meth:`find_longest_match` returns " "``(i, j, k)`` such that ``a[i:i+k]`` is equal to ``b[j:j+k]``, where ``alo " @@ -501,7 +507,7 @@ msgid "" "that starts earliest in *b*." msgstr "" -#: ../Doc/library/difflib.rst:437 +#: ../Doc/library/difflib.rst:441 msgid "" "If *isjunk* was provided, first the longest matching block is determined as " "above, but with the additional restriction that no junk element appears in " @@ -510,7 +516,7 @@ msgid "" "junk except as identical junk happens to be adjacent to an interesting match." msgstr "" -#: ../Doc/library/difflib.rst:444 +#: ../Doc/library/difflib.rst:448 msgid "" "Here's the same example as before, but considering blanks to be junk. That " "prevents ``' abcd'`` from matching the ``' abcd'`` at the tail end of the " @@ -518,22 +524,22 @@ msgid "" "matches the leftmost ``'abcd'`` in the second sequence:" msgstr "" -#: ../Doc/library/difflib.rst:453 +#: ../Doc/library/difflib.rst:457 msgid "If no blocks match, this returns ``(alo, blo, 0)``." msgstr "" -#: ../Doc/library/difflib.rst:455 +#: ../Doc/library/difflib.rst:459 msgid "This method returns a :term:`named tuple` ``Match(a, b, size)``." msgstr "" -#: ../Doc/library/difflib.rst:460 +#: ../Doc/library/difflib.rst:464 msgid "" "Return list of triples describing non-overlapping matching subsequences. " "Each triple is of the form ``(i, j, n)``, and means that ``a[i:i+n] == b[j:j" "+n]``. The triples are monotonically increasing in *i* and *j*." msgstr "" -#: ../Doc/library/difflib.rst:465 +#: ../Doc/library/difflib.rst:469 msgid "" "The last triple is a dummy, and has the value ``(len(a), len(b), 0)``. It " "is the only triple with ``n == 0``. If ``(i, j, n)`` and ``(i', j', n')`` " @@ -542,7 +548,7 @@ msgid "" "triples always describe non-adjacent equal blocks." msgstr "" -#: ../Doc/library/difflib.rst:482 +#: ../Doc/library/difflib.rst:486 msgid "" "Return list of 5-tuples describing how to turn *a* into *b*. Each tuple is " "of the form ``(tag, i1, i2, j1, j2)``. The first tuple has ``i1 == j1 == " @@ -550,101 +556,101 @@ msgid "" "tuple, and, likewise, *j1* equal to the previous *j2*." msgstr "" -#: ../Doc/library/difflib.rst:487 +#: ../Doc/library/difflib.rst:491 msgid "The *tag* values are strings, with these meanings:" msgstr "" -#: ../Doc/library/difflib.rst:490 +#: ../Doc/library/difflib.rst:494 msgid "Value" msgstr "Valeur" -#: ../Doc/library/difflib.rst:492 +#: ../Doc/library/difflib.rst:496 msgid "``'replace'``" msgstr "``'replace'``" -#: ../Doc/library/difflib.rst:492 +#: ../Doc/library/difflib.rst:496 msgid "``a[i1:i2]`` should be replaced by ``b[j1:j2]``." msgstr "" -#: ../Doc/library/difflib.rst:495 +#: ../Doc/library/difflib.rst:499 msgid "``'delete'``" msgstr "``'delete'``" -#: ../Doc/library/difflib.rst:495 +#: ../Doc/library/difflib.rst:499 msgid "``a[i1:i2]`` should be deleted. Note that ``j1 == j2`` in this case." msgstr "" -#: ../Doc/library/difflib.rst:498 +#: ../Doc/library/difflib.rst:502 msgid "``'insert'``" msgstr "``'insert'``" -#: ../Doc/library/difflib.rst:498 +#: ../Doc/library/difflib.rst:502 msgid "" "``b[j1:j2]`` should be inserted at ``a[i1:i1]``. Note that ``i1 == i2`` in " "this case." msgstr "" -#: ../Doc/library/difflib.rst:502 +#: ../Doc/library/difflib.rst:506 msgid "``'equal'``" msgstr "``'equal'``" -#: ../Doc/library/difflib.rst:502 +#: ../Doc/library/difflib.rst:506 msgid "``a[i1:i2] == b[j1:j2]`` (the sub-sequences are equal)." msgstr "" -#: ../Doc/library/difflib.rst:506 +#: ../Doc/library/difflib.rst:510 msgid "For example::" msgstr "Par exemple ::" -#: ../Doc/library/difflib.rst:523 +#: ../Doc/library/difflib.rst:527 msgid "Return a :term:`generator` of groups with up to *n* lines of context." msgstr "" -#: ../Doc/library/difflib.rst:525 +#: ../Doc/library/difflib.rst:529 msgid "" "Starting with the groups returned by :meth:`get_opcodes`, this method splits " "out smaller change clusters and eliminates intervening ranges which have no " "changes." msgstr "" -#: ../Doc/library/difflib.rst:529 +#: ../Doc/library/difflib.rst:533 msgid "The groups are returned in the same format as :meth:`get_opcodes`." msgstr "" -#: ../Doc/library/difflib.rst:534 +#: ../Doc/library/difflib.rst:538 msgid "" "Return a measure of the sequences' similarity as a float in the range [0, 1]." msgstr "" -#: ../Doc/library/difflib.rst:537 +#: ../Doc/library/difflib.rst:541 msgid "" "Where T is the total number of elements in both sequences, and M is the " "number of matches, this is 2.0\\*M / T. Note that this is ``1.0`` if the " "sequences are identical, and ``0.0`` if they have nothing in common." msgstr "" -#: ../Doc/library/difflib.rst:541 +#: ../Doc/library/difflib.rst:545 msgid "" "This is expensive to compute if :meth:`get_matching_blocks` or :meth:" "`get_opcodes` hasn't already been called, in which case you may want to try :" "meth:`quick_ratio` or :meth:`real_quick_ratio` first to get an upper bound." msgstr "" -#: ../Doc/library/difflib.rst:548 +#: ../Doc/library/difflib.rst:552 msgid "" "Caution: The result of a :meth:`ratio` call may depend on the order of the " "arguments. For instance::" msgstr "" -#: ../Doc/library/difflib.rst:559 +#: ../Doc/library/difflib.rst:563 msgid "Return an upper bound on :meth:`ratio` relatively quickly." msgstr "" -#: ../Doc/library/difflib.rst:564 +#: ../Doc/library/difflib.rst:568 msgid "Return an upper bound on :meth:`ratio` very quickly." msgstr "" -#: ../Doc/library/difflib.rst:567 +#: ../Doc/library/difflib.rst:571 msgid "" "The three methods that return the ratio of matching to total characters can " "give different results due to differing levels of approximation, although :" @@ -652,57 +658,57 @@ msgid "" "as :meth:`ratio`:" msgstr "" -#: ../Doc/library/difflib.rst:584 +#: ../Doc/library/difflib.rst:588 msgid "SequenceMatcher Examples" msgstr "" -#: ../Doc/library/difflib.rst:586 +#: ../Doc/library/difflib.rst:590 msgid "This example compares two strings, considering blanks to be \"junk\":" msgstr "" -#: ../Doc/library/difflib.rst:592 +#: ../Doc/library/difflib.rst:596 msgid "" ":meth:`ratio` returns a float in [0, 1], measuring the similarity of the " "sequences. As a rule of thumb, a :meth:`ratio` value over 0.6 means the " "sequences are close matches:" msgstr "" -#: ../Doc/library/difflib.rst:599 +#: ../Doc/library/difflib.rst:603 msgid "" "If you're only interested in where the sequences match, :meth:" "`get_matching_blocks` is handy:" msgstr "" -#: ../Doc/library/difflib.rst:608 +#: ../Doc/library/difflib.rst:612 msgid "" "Note that the last tuple returned by :meth:`get_matching_blocks` is always a " "dummy, ``(len(a), len(b), 0)``, and this is the only case in which the last " "tuple element (number of elements matched) is ``0``." msgstr "" -#: ../Doc/library/difflib.rst:612 +#: ../Doc/library/difflib.rst:616 msgid "" "If you want to know how to change the first sequence into the second, use :" "meth:`get_opcodes`:" msgstr "" -#: ../Doc/library/difflib.rst:623 +#: ../Doc/library/difflib.rst:627 msgid "" "The :func:`get_close_matches` function in this module which shows how simple " "code building on :class:`SequenceMatcher` can be used to do useful work." msgstr "" -#: ../Doc/library/difflib.rst:627 +#: ../Doc/library/difflib.rst:631 msgid "" "`Simple version control recipe `_ for a small application built with :class:`SequenceMatcher`." msgstr "" -#: ../Doc/library/difflib.rst:635 +#: ../Doc/library/difflib.rst:639 msgid "Differ Objects" msgstr "" -#: ../Doc/library/difflib.rst:637 +#: ../Doc/library/difflib.rst:641 msgid "" "Note that :class:`Differ`\\ -generated deltas make no claim to be " "**minimal** diffs. To the contrary, minimal diffs are often counter-" @@ -712,31 +718,31 @@ msgid "" "longer diff." msgstr "" -#: ../Doc/library/difflib.rst:643 +#: ../Doc/library/difflib.rst:647 msgid "The :class:`Differ` class has this constructor:" msgstr "" -#: ../Doc/library/difflib.rst:648 +#: ../Doc/library/difflib.rst:652 msgid "" "Optional keyword parameters *linejunk* and *charjunk* are for filter " "functions (or ``None``):" msgstr "" -#: ../Doc/library/difflib.rst:651 +#: ../Doc/library/difflib.rst:655 msgid "" "*linejunk*: A function that accepts a single string argument, and returns " "true if the string is junk. The default is ``None``, meaning that no line " "is considered junk." msgstr "" -#: ../Doc/library/difflib.rst:655 +#: ../Doc/library/difflib.rst:659 msgid "" "*charjunk*: A function that accepts a single character argument (a string of " "length 1), and returns true if the character is junk. The default is " "``None``, meaning that no character is considered junk." msgstr "" -#: ../Doc/library/difflib.rst:659 +#: ../Doc/library/difflib.rst:663 msgid "" "These junk-filtering functions speed up matching to find differences and do " "not cause any differing lines or characters to be ignored. Read the " @@ -744,17 +750,17 @@ msgid "" "*isjunk* parameter for an explanation." msgstr "" -#: ../Doc/library/difflib.rst:665 +#: ../Doc/library/difflib.rst:669 msgid "" ":class:`Differ` objects are used (deltas generated) via a single method:" msgstr "" -#: ../Doc/library/difflib.rst:670 +#: ../Doc/library/difflib.rst:674 msgid "" "Compare two sequences of lines, and generate the delta (a sequence of lines)." msgstr "" -#: ../Doc/library/difflib.rst:672 +#: ../Doc/library/difflib.rst:676 msgid "" "Each sequence must contain individual single-line strings ending with " "newlines. Such sequences can be obtained from the :meth:`~io.IOBase." @@ -763,11 +769,11 @@ msgid "" "IOBase.writelines` method of a file-like object." msgstr "" -#: ../Doc/library/difflib.rst:683 +#: ../Doc/library/difflib.rst:687 msgid "Differ Example" msgstr "" -#: ../Doc/library/difflib.rst:685 +#: ../Doc/library/difflib.rst:689 msgid "" "This example compares two texts. First we set up the texts, sequences of " "individual single-line strings ending with newlines (such sequences can also " @@ -775,34 +781,34 @@ msgid "" "objects):" msgstr "" -#: ../Doc/library/difflib.rst:704 +#: ../Doc/library/difflib.rst:708 msgid "Next we instantiate a Differ object:" msgstr "" -#: ../Doc/library/difflib.rst:708 +#: ../Doc/library/difflib.rst:712 msgid "" "Note that when instantiating a :class:`Differ` object we may pass functions " "to filter out line and character \"junk.\" See the :meth:`Differ` " "constructor for details." msgstr "" -#: ../Doc/library/difflib.rst:712 +#: ../Doc/library/difflib.rst:716 msgid "Finally, we compare the two:" msgstr "" -#: ../Doc/library/difflib.rst:716 +#: ../Doc/library/difflib.rst:720 msgid "``result`` is a list of strings, so let's pretty-print it:" msgstr "" -#: ../Doc/library/difflib.rst:731 +#: ../Doc/library/difflib.rst:735 msgid "As a single multi-line string it looks like this:" msgstr "" -#: ../Doc/library/difflib.rst:750 +#: ../Doc/library/difflib.rst:754 msgid "A command-line interface to difflib" msgstr "" -#: ../Doc/library/difflib.rst:752 +#: ../Doc/library/difflib.rst:756 msgid "" "This example shows how to use difflib to create a ``diff``-like utility. It " "is also contained in the Python source distribution, as :file:`Tools/scripts/" diff --git a/library/doctest.po b/library/doctest.po index 28769bdf2..6b227c7a7 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: 2019-05-23 16:48+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -14,34 +14,34 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../Doc/library/doctest.rst:4 +#: ../Doc/library/doctest.rst:2 msgid ":mod:`doctest` --- Test interactive Python examples" msgstr "" -#: ../Doc/library/doctest.rst:14 +#: ../Doc/library/doctest.rst:12 msgid "**Source code:** :source:`Lib/doctest.py`" msgstr "" -#: ../Doc/library/doctest.rst:18 +#: ../Doc/library/doctest.rst:16 msgid "" "The :mod:`doctest` module searches for pieces of text that look like " "interactive Python sessions, and then executes those sessions to verify that " "they work exactly as shown. There are several common ways to use doctest:" msgstr "" -#: ../Doc/library/doctest.rst:22 +#: ../Doc/library/doctest.rst:20 msgid "" "To check that a module's docstrings are up-to-date by verifying that all " "interactive examples still work as documented." msgstr "" -#: ../Doc/library/doctest.rst:25 +#: ../Doc/library/doctest.rst:23 msgid "" "To perform regression testing by verifying that interactive examples from a " "test file or a test object work as expected." msgstr "" -#: ../Doc/library/doctest.rst:28 +#: ../Doc/library/doctest.rst:26 msgid "" "To write tutorial documentation for a package, liberally illustrated with " "input-output examples. Depending on whether the examples or the expository " @@ -49,28 +49,28 @@ msgid "" "\"executable documentation\"." msgstr "" -#: ../Doc/library/doctest.rst:33 +#: ../Doc/library/doctest.rst:31 msgid "Here's a complete but small example module::" msgstr "" -#: ../Doc/library/doctest.rst:90 +#: ../Doc/library/doctest.rst:88 msgid "" "If you run :file:`example.py` directly from the command line, :mod:`doctest` " "works its magic:" msgstr "" -#: ../Doc/library/doctest.rst:98 +#: ../Doc/library/doctest.rst:96 msgid "" "There's no output! That's normal, and it means all the examples worked. " "Pass ``-v`` to the script, and :mod:`doctest` prints a detailed log of what " "it's trying, and prints a summary at the end:" msgstr "" -#: ../Doc/library/doctest.rst:116 +#: ../Doc/library/doctest.rst:114 msgid "And so on, eventually ending with:" msgstr "" -#: ../Doc/library/doctest.rst:135 +#: ../Doc/library/doctest.rst:133 msgid "" "That's all you need to know to start making productive use of :mod:" "`doctest`! Jump in. The following sections provide full details. Note that " @@ -79,27 +79,27 @@ msgid "" "file :file:`Lib/test/test_doctest.py`." msgstr "" -#: ../Doc/library/doctest.rst:145 +#: ../Doc/library/doctest.rst:143 msgid "Simple Usage: Checking Examples in Docstrings" msgstr "" -#: ../Doc/library/doctest.rst:147 +#: ../Doc/library/doctest.rst:145 msgid "" "The simplest way to start using doctest (but not necessarily the way you'll " "continue to do it) is to end each module :mod:`M` with::" msgstr "" -#: ../Doc/library/doctest.rst:154 +#: ../Doc/library/doctest.rst:152 msgid ":mod:`doctest` then examines docstrings in module :mod:`M`." msgstr "" -#: ../Doc/library/doctest.rst:156 +#: ../Doc/library/doctest.rst:154 msgid "" "Running the module as a script causes the examples in the docstrings to get " "executed and verified::" msgstr "" -#: ../Doc/library/doctest.rst:161 +#: ../Doc/library/doctest.rst:159 msgid "" "This won't display anything unless an example fails, in which case the " "failing example(s) and the cause(s) of the failure(s) are printed to stdout, " @@ -107,17 +107,17 @@ msgid "" "is the number of examples that failed." msgstr "" -#: ../Doc/library/doctest.rst:166 +#: ../Doc/library/doctest.rst:164 msgid "Run it with the ``-v`` switch instead::" msgstr "" -#: ../Doc/library/doctest.rst:170 +#: ../Doc/library/doctest.rst:168 msgid "" "and a detailed report of all examples tried is printed to standard output, " "along with assorted summaries at the end." msgstr "" -#: ../Doc/library/doctest.rst:173 +#: ../Doc/library/doctest.rst:171 msgid "" "You can force verbose mode by passing ``verbose=True`` to :func:`testmod`, " "or prohibit it by passing ``verbose=False``. In either of those cases, " @@ -125,37 +125,37 @@ msgid "" "has no effect)." msgstr "" -#: ../Doc/library/doctest.rst:178 +#: ../Doc/library/doctest.rst:176 msgid "" "There is also a command line shortcut for running :func:`testmod`. You can " "instruct the Python interpreter to run the doctest module directly from the " "standard library and pass the module name(s) on the command line::" msgstr "" -#: ../Doc/library/doctest.rst:184 +#: ../Doc/library/doctest.rst:182 msgid "" "This will import :file:`example.py` as a standalone module and run :func:" "`testmod` on it. Note that this may not work correctly if the file is part " "of a package and imports other submodules from that package." msgstr "" -#: ../Doc/library/doctest.rst:188 +#: ../Doc/library/doctest.rst:186 msgid "" "For more information on :func:`testmod`, see section :ref:`doctest-basic-" "api`." msgstr "" -#: ../Doc/library/doctest.rst:194 +#: ../Doc/library/doctest.rst:192 msgid "Simple Usage: Checking Examples in a Text File" msgstr "" -#: ../Doc/library/doctest.rst:196 +#: ../Doc/library/doctest.rst:194 msgid "" "Another simple application of doctest is testing interactive examples in a " "text file. This can be done with the :func:`testfile` function::" msgstr "" -#: ../Doc/library/doctest.rst:202 +#: ../Doc/library/doctest.rst:200 msgid "" "That short script executes and verifies any interactive Python examples " "contained in the file :file:`example.txt`. The file content is treated as " @@ -163,13 +163,13 @@ msgid "" "Python program! For example, perhaps :file:`example.txt` contains this:" msgstr "" -#: ../Doc/library/doctest.rst:225 +#: ../Doc/library/doctest.rst:223 msgid "" "Running ``doctest.testfile(\"example.txt\")`` then finds the error in this " "documentation::" msgstr "" -#: ../Doc/library/doctest.rst:236 +#: ../Doc/library/doctest.rst:234 msgid "" "As with :func:`testmod`, :func:`testfile` won't display anything unless an " "example fails. If an example does fail, then the failing example(s) and the " @@ -177,7 +177,7 @@ msgid "" "func:`testmod`." msgstr "" -#: ../Doc/library/doctest.rst:241 +#: ../Doc/library/doctest.rst:239 msgid "" "By default, :func:`testfile` looks for files in the calling module's " "directory. See section :ref:`doctest-basic-api` for a description of the " @@ -185,36 +185,36 @@ msgid "" "locations." msgstr "" -#: ../Doc/library/doctest.rst:245 +#: ../Doc/library/doctest.rst:243 msgid "" "Like :func:`testmod`, :func:`testfile`'s verbosity can be set with the ``-" "v`` command-line switch or with the optional keyword argument *verbose*." msgstr "" -#: ../Doc/library/doctest.rst:249 +#: ../Doc/library/doctest.rst:247 msgid "" "There is also a command line shortcut for running :func:`testfile`. You can " "instruct the Python interpreter to run the doctest module directly from the " "standard library and pass the file name(s) on the command line::" msgstr "" -#: ../Doc/library/doctest.rst:255 +#: ../Doc/library/doctest.rst:253 msgid "" "Because the file name does not end with :file:`.py`, :mod:`doctest` infers " "that it must be run with :func:`testfile`, not :func:`testmod`." msgstr "" -#: ../Doc/library/doctest.rst:258 +#: ../Doc/library/doctest.rst:256 msgid "" "For more information on :func:`testfile`, see section :ref:`doctest-basic-" "api`." msgstr "" -#: ../Doc/library/doctest.rst:264 +#: ../Doc/library/doctest.rst:262 msgid "How It Works" msgstr "" -#: ../Doc/library/doctest.rst:266 +#: ../Doc/library/doctest.rst:264 msgid "" "This section examines in detail how doctest works: which docstrings it looks " "at, how it finds interactive examples, what execution context it uses, how " @@ -224,17 +224,17 @@ msgid "" "see the following sections." msgstr "" -#: ../Doc/library/doctest.rst:277 +#: ../Doc/library/doctest.rst:275 msgid "Which Docstrings Are Examined?" msgstr "" -#: ../Doc/library/doctest.rst:279 +#: ../Doc/library/doctest.rst:277 msgid "" "The module docstring, and all function, class and method docstrings are " "searched. Objects imported into the module are not searched." msgstr "" -#: ../Doc/library/doctest.rst:282 +#: ../Doc/library/doctest.rst:280 msgid "" "In addition, if ``M.__test__`` exists and \"is true\", it must be a dict, " "and each entry maps a (string) name to a function object, class object, or " @@ -243,35 +243,35 @@ msgid "" "key ``K`` in ``M.__test__`` appears with name ::" msgstr "" -#: ../Doc/library/doctest.rst:290 +#: ../Doc/library/doctest.rst:288 msgid "" "Any classes found are recursively searched similarly, to test docstrings in " "their contained methods and nested classes." msgstr "" -#: ../Doc/library/doctest.rst:301 +#: ../Doc/library/doctest.rst:299 msgid "How are Docstring Examples Recognized?" msgstr "" -#: ../Doc/library/doctest.rst:303 +#: ../Doc/library/doctest.rst:301 msgid "" "In most cases a copy-and-paste of an interactive console session works fine, " "but doctest isn't trying to do an exact emulation of any specific Python " "shell." msgstr "" -#: ../Doc/library/doctest.rst:328 +#: ../Doc/library/doctest.rst:326 msgid "" "Any expected output must immediately follow the final ``'>>> '`` or ``'... " "'`` line containing the code, and the expected output (if any) extends to " "the next ``'>>> '`` or all-whitespace line." msgstr "" -#: ../Doc/library/doctest.rst:332 +#: ../Doc/library/doctest.rst:330 msgid "The fine print:" msgstr "" -#: ../Doc/library/doctest.rst:334 +#: ../Doc/library/doctest.rst:332 msgid "" "Expected output cannot contain an all-whitespace line, since such a line is " "taken to signal the end of expected output. If expected output does contain " @@ -279,7 +279,7 @@ msgid "" "line is expected." msgstr "" -#: ../Doc/library/doctest.rst:339 +#: ../Doc/library/doctest.rst:337 msgid "" "All hard tab characters are expanded to spaces, using 8-column tab stops. " "Tabs in output generated by the tested code are not modified. Because any " @@ -294,20 +294,20 @@ msgid "" "`DocTestParser` class." msgstr "" -#: ../Doc/library/doctest.rst:351 +#: ../Doc/library/doctest.rst:349 msgid "" "Output to stdout is captured, but not output to stderr (exception tracebacks " "are captured via a different means)." msgstr "" -#: ../Doc/library/doctest.rst:354 +#: ../Doc/library/doctest.rst:352 msgid "" "If you continue a line via backslashing in an interactive session, or for " "any other reason use a backslash, you should use a raw docstring, which will " "preserve your backslashes exactly as you type them::" msgstr "" -#: ../Doc/library/doctest.rst:363 +#: ../Doc/library/doctest.rst:361 msgid "" "Otherwise, the backslash will be interpreted as part of the string. For " "example, the ``\\n`` above would be interpreted as a newline character. " @@ -315,21 +315,21 @@ msgid "" "use a raw string)::" msgstr "" -#: ../Doc/library/doctest.rst:372 +#: ../Doc/library/doctest.rst:370 msgid "The starting column doesn't matter::" msgstr "" -#: ../Doc/library/doctest.rst:379 +#: ../Doc/library/doctest.rst:377 msgid "" "and as many leading whitespace characters are stripped from the expected " "output as appeared in the initial ``'>>> '`` line that started the example." msgstr "" -#: ../Doc/library/doctest.rst:386 +#: ../Doc/library/doctest.rst:384 msgid "What's the Execution Context?" msgstr "" -#: ../Doc/library/doctest.rst:388 +#: ../Doc/library/doctest.rst:386 msgid "" "By default, each time :mod:`doctest` finds a docstring to test, it uses a " "*shallow copy* of :mod:`M`'s globals, so that running tests doesn't change " @@ -340,17 +340,17 @@ msgid "" "defined in other docstrings." msgstr "" -#: ../Doc/library/doctest.rst:396 +#: ../Doc/library/doctest.rst:394 msgid "" "You can force use of your own dict as the execution context by passing " "``globs=your_dict`` to :func:`testmod` or :func:`testfile` instead." msgstr "" -#: ../Doc/library/doctest.rst:403 +#: ../Doc/library/doctest.rst:401 msgid "What About Exceptions?" msgstr "" -#: ../Doc/library/doctest.rst:405 +#: ../Doc/library/doctest.rst:403 msgid "" "No problem, provided that the traceback is the only output produced by the " "example: just paste in the traceback. [#]_ Since tracebacks contain details " @@ -359,31 +359,31 @@ msgid "" "it accepts." msgstr "" -#: ../Doc/library/doctest.rst:411 +#: ../Doc/library/doctest.rst:409 msgid "Simple example::" msgstr "" -#: ../Doc/library/doctest.rst:418 +#: ../Doc/library/doctest.rst:416 msgid "" "That doctest succeeds if :exc:`ValueError` is raised, with the ``list." "remove(x): x not in list`` detail as shown." msgstr "" -#: ../Doc/library/doctest.rst:421 +#: ../Doc/library/doctest.rst:419 msgid "" "The expected output for an exception must start with a traceback header, " "which may be either of the following two lines, indented the same as the " "first line of the example::" msgstr "" -#: ../Doc/library/doctest.rst:428 +#: ../Doc/library/doctest.rst:426 msgid "" "The traceback header is followed by an optional traceback stack, whose " "contents are ignored by doctest. The traceback stack is typically omitted, " "or copied verbatim from an interactive session." msgstr "" -#: ../Doc/library/doctest.rst:432 +#: ../Doc/library/doctest.rst:430 msgid "" "The traceback stack is followed by the most interesting part: the line(s) " "containing the exception type and detail. This is usually the last line of " @@ -391,20 +391,20 @@ msgid "" "multi-line detail::" msgstr "" -#: ../Doc/library/doctest.rst:444 +#: ../Doc/library/doctest.rst:442 msgid "" "The last three lines (starting with :exc:`ValueError`) are compared against " "the exception's type and detail, and the rest are ignored." msgstr "" -#: ../Doc/library/doctest.rst:447 +#: ../Doc/library/doctest.rst:445 msgid "" "Best practice is to omit the traceback stack, unless it adds significant " "documentation value to the example. So the last example is probably better " "as::" msgstr "" -#: ../Doc/library/doctest.rst:457 +#: ../Doc/library/doctest.rst:455 msgid "" "Note that tracebacks are treated very specially. In particular, in the " "rewritten example, the use of ``...`` is independent of doctest's :const:" @@ -413,11 +413,11 @@ msgid "" "transcript of a Monty Python skit." msgstr "" -#: ../Doc/library/doctest.rst:463 +#: ../Doc/library/doctest.rst:461 msgid "Some details you should read once, but won't need to remember:" msgstr "" -#: ../Doc/library/doctest.rst:465 +#: ../Doc/library/doctest.rst:463 msgid "" "Doctest can't guess whether your expected output came from an exception " "traceback or from ordinary printing. So, e.g., an example that expects " @@ -427,7 +427,7 @@ msgid "" "create real problems." msgstr "" -#: ../Doc/library/doctest.rst:472 +#: ../Doc/library/doctest.rst:470 msgid "" "Each line of the traceback stack (if present) must be indented further than " "the first line of the example, *or* start with a non-alphanumeric character. " @@ -436,14 +436,14 @@ msgid "" "course this does the right thing for genuine tracebacks." msgstr "" -#: ../Doc/library/doctest.rst:478 +#: ../Doc/library/doctest.rst:476 msgid "" "When the :const:`IGNORE_EXCEPTION_DETAIL` doctest option is specified, " "everything following the leftmost colon and any module information in the " "exception name is ignored." msgstr "" -#: ../Doc/library/doctest.rst:482 +#: ../Doc/library/doctest.rst:480 msgid "" "The interactive shell omits the traceback header line for some :exc:" "`SyntaxError`\\ s. But doctest uses the traceback header line to " @@ -452,13 +452,13 @@ msgid "" "need to manually add the traceback header line to your test example." msgstr "" -#: ../Doc/library/doctest.rst:490 +#: ../Doc/library/doctest.rst:488 msgid "" "For some :exc:`SyntaxError`\\ s, Python displays the character position of " "the syntax error, using a ``^`` marker::" msgstr "" -#: ../Doc/library/doctest.rst:499 +#: ../Doc/library/doctest.rst:497 msgid "" "Since the lines showing the position of the error come before the exception " "type and detail, they are not checked by doctest. For example, the " @@ -466,11 +466,11 @@ msgid "" "location::" msgstr "" -#: ../Doc/library/doctest.rst:515 +#: ../Doc/library/doctest.rst:513 msgid "Option Flags" msgstr "" -#: ../Doc/library/doctest.rst:517 +#: ../Doc/library/doctest.rst:515 msgid "" "A number of option flags control various aspects of doctest's behavior. " "Symbolic names for the flags are supplied as module constants, which can be :" @@ -480,17 +480,17 @@ msgid "" "option." msgstr "" -#: ../Doc/library/doctest.rst:523 +#: ../Doc/library/doctest.rst:521 msgid "The ``-o`` command line option." msgstr "" -#: ../Doc/library/doctest.rst:526 +#: ../Doc/library/doctest.rst:524 msgid "" "The first group of options define test semantics, controlling aspects of how " "doctest decides whether actual output matches an example's expected output:" msgstr "" -#: ../Doc/library/doctest.rst:532 +#: ../Doc/library/doctest.rst:530 msgid "" "By default, if an expected output block contains just ``1``, an actual " "output block containing just ``1`` or just ``True`` is considered to be a " @@ -502,7 +502,7 @@ msgid "" "not for several years." msgstr "" -#: ../Doc/library/doctest.rst:544 +#: ../Doc/library/doctest.rst:542 msgid "" "By default, if an expected output block contains a line containing only the " "string ````, then that line will match a blank line in the actual " @@ -511,7 +511,7 @@ msgid "" "`DONT_ACCEPT_BLANKLINE` is specified, this substitution is not allowed." msgstr "" -#: ../Doc/library/doctest.rst:553 +#: ../Doc/library/doctest.rst:551 msgid "" "When specified, all sequences of whitespace (blanks and newlines) are " "treated as equal. Any sequence of whitespace within the expected output " @@ -521,7 +521,7 @@ msgid "" "across multiple lines in your source." msgstr "" -#: ../Doc/library/doctest.rst:564 +#: ../Doc/library/doctest.rst:562 msgid "" "When specified, an ellipsis marker (``...``) in the expected output can " "match any substring in the actual output. This includes substrings that " @@ -530,7 +530,7 @@ msgid "" "matched too much!\" surprises that ``.*`` is prone to in regular expressions." msgstr "" -#: ../Doc/library/doctest.rst:573 +#: ../Doc/library/doctest.rst:571 msgid "" "When specified, an example that expects an exception passes if an exception " "of the expected type is raised, even if the exception detail does not " @@ -539,14 +539,14 @@ msgid "" "if :exc:`TypeError` is raised." msgstr "" -#: ../Doc/library/doctest.rst:579 +#: ../Doc/library/doctest.rst:577 msgid "" "It will also ignore the module name used in Python 3 doctest reports. Hence " "both of these variations will work with the flag specified, regardless of " "whether the test is run under Python 2.7 or Python 3.2 (or later versions)::" msgstr "" -#: ../Doc/library/doctest.rst:591 +#: ../Doc/library/doctest.rst:589 msgid "" "Note that :const:`ELLIPSIS` can also be used to ignore the details of the " "exception message, but such a test may still fail based on whether or not " @@ -558,20 +558,20 @@ msgid "" "irrelevant comments). For example::" msgstr "" -#: ../Doc/library/doctest.rst:605 +#: ../Doc/library/doctest.rst:603 msgid "" "passes under Python 2.3 and later Python versions with the flag specified, " "even though the detail changed in Python 2.4 to say \"does not\" instead of " "\"doesn't\"." msgstr "" -#: ../Doc/library/doctest.rst:609 +#: ../Doc/library/doctest.rst:607 msgid "" ":const:`IGNORE_EXCEPTION_DETAIL` now also ignores any information relating " "to the module containing the exception under test." msgstr "" -#: ../Doc/library/doctest.rst:616 +#: ../Doc/library/doctest.rst:614 msgid "" "When specified, do not run the example at all. This can be useful in " "contexts where doctest examples serve as both documentation and test cases, " @@ -580,32 +580,32 @@ msgid "" "might depend on resources which would be unavailable to the test driver." msgstr "" -#: ../Doc/library/doctest.rst:622 +#: ../Doc/library/doctest.rst:620 msgid "" "The SKIP flag can also be used for temporarily \"commenting out\" examples." msgstr "" -#: ../Doc/library/doctest.rst:627 +#: ../Doc/library/doctest.rst:625 msgid "A bitmask or'ing together all the comparison flags above." msgstr "" -#: ../Doc/library/doctest.rst:629 +#: ../Doc/library/doctest.rst:627 msgid "The second group of options controls how test failures are reported:" msgstr "" -#: ../Doc/library/doctest.rst:634 +#: ../Doc/library/doctest.rst:632 msgid "" "When specified, failures that involve multi-line expected and actual outputs " "are displayed using a unified diff." msgstr "" -#: ../Doc/library/doctest.rst:640 +#: ../Doc/library/doctest.rst:638 msgid "" "When specified, failures that involve multi-line expected and actual outputs " "will be displayed using a context diff." msgstr "" -#: ../Doc/library/doctest.rst:646 +#: ../Doc/library/doctest.rst:644 msgid "" "When specified, differences are computed by ``difflib.Differ``, using the " "same algorithm as the popular :file:`ndiff.py` utility. This is the only " @@ -615,7 +615,7 @@ msgid "" "mismatching column positions." msgstr "" -#: ../Doc/library/doctest.rst:655 +#: ../Doc/library/doctest.rst:653 msgid "" "When specified, display the first failing example in each doctest, but " "suppress output for all remaining examples. This will prevent doctest from " @@ -626,7 +626,7 @@ msgid "" "of failures reported; only the output is suppressed." msgstr "" -#: ../Doc/library/doctest.rst:666 +#: ../Doc/library/doctest.rst:664 msgid "" "When specified, exit after the first failing example and don't attempt to " "run the remaining examples. Thus, the number of failures reported will be at " @@ -634,23 +634,23 @@ msgid "" "first failure won't even produce debugging output." msgstr "" -#: ../Doc/library/doctest.rst:671 +#: ../Doc/library/doctest.rst:669 msgid "" "The doctest command line accepts the option ``-f`` as a shorthand for ``-o " "FAIL_FAST``." msgstr "" -#: ../Doc/library/doctest.rst:679 +#: ../Doc/library/doctest.rst:677 msgid "A bitmask or'ing together all the reporting flags above." msgstr "" -#: ../Doc/library/doctest.rst:682 +#: ../Doc/library/doctest.rst:680 msgid "" "There is also a way to register new option flag names, though this isn't " "useful unless you intend to extend :mod:`doctest` internals via subclassing:" msgstr "" -#: ../Doc/library/doctest.rst:688 +#: ../Doc/library/doctest.rst:686 msgid "" "Create a new option flag with a given name, and return the new flag's " "integer value. :func:`register_optionflag` can be used when subclassing :" @@ -659,35 +659,35 @@ msgid "" "be called using the following idiom::" msgstr "" -#: ../Doc/library/doctest.rst:704 +#: ../Doc/library/doctest.rst:702 msgid "Directives" msgstr "" -#: ../Doc/library/doctest.rst:706 +#: ../Doc/library/doctest.rst:704 msgid "" "Doctest directives may be used to modify the :ref:`option flags ` for an individual example. Doctest directives are special Python " "comments following an example's source code:" msgstr "" -#: ../Doc/library/doctest.rst:717 +#: ../Doc/library/doctest.rst:715 msgid "" "Whitespace is not allowed between the ``+`` or ``-`` and the directive " "option name. The directive option name can be any of the option flag names " "explained above." msgstr "" -#: ../Doc/library/doctest.rst:721 +#: ../Doc/library/doctest.rst:719 msgid "" "An example's doctest directives modify doctest's behavior for that single " "example. Use ``+`` to enable the named behavior, or ``-`` to disable it." msgstr "" -#: ../Doc/library/doctest.rst:724 +#: ../Doc/library/doctest.rst:722 msgid "For example, this test passes::" msgstr "" -#: ../Doc/library/doctest.rst:730 +#: ../Doc/library/doctest.rst:728 msgid "" "Without the directive it would fail, both because the actual output doesn't " "have two blanks before the single-digit list elements, and because the " @@ -695,26 +695,26 @@ msgid "" "a directive to do so::" msgstr "" -#: ../Doc/library/doctest.rst:738 +#: ../Doc/library/doctest.rst:736 msgid "" "Multiple directives can be used on a single physical line, separated by " "commas::" msgstr "" -#: ../Doc/library/doctest.rst:744 +#: ../Doc/library/doctest.rst:742 msgid "" "If multiple directive comments are used for a single example, then they are " "combined::" msgstr "" -#: ../Doc/library/doctest.rst:751 +#: ../Doc/library/doctest.rst:749 msgid "" "As the previous example shows, you can add ``...`` lines to your example " "containing only directives. This can be useful when an example is too long " "for a directive to comfortably fit on the same line::" msgstr "" -#: ../Doc/library/doctest.rst:759 +#: ../Doc/library/doctest.rst:757 msgid "" "Note that since all options are disabled by default, and directives apply " "only to the example they appear in, enabling options (via ``+`` in a " @@ -724,11 +724,11 @@ msgid "" "be useful." msgstr "" -#: ../Doc/library/doctest.rst:769 +#: ../Doc/library/doctest.rst:767 msgid "Warnings" msgstr "Avertissements" -#: ../Doc/library/doctest.rst:771 +#: ../Doc/library/doctest.rst:769 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 " @@ -738,58 +738,58 @@ msgid "" "test like ::" msgstr "" -#: ../Doc/library/doctest.rst:780 +#: ../Doc/library/doctest.rst:778 msgid "is vulnerable! One workaround is to do ::" msgstr "" -#: ../Doc/library/doctest.rst:785 +#: ../Doc/library/doctest.rst:783 msgid "instead. Another is to do ::" msgstr "" -#: ../Doc/library/doctest.rst:793 +#: ../Doc/library/doctest.rst:791 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 +#: ../Doc/library/doctest.rst:794 msgid "There are others, but you get the idea." msgstr "" -#: ../Doc/library/doctest.rst:798 +#: ../Doc/library/doctest.rst:796 msgid "" "Another bad idea is to print things that embed an object address, like ::" msgstr "" -#: ../Doc/library/doctest.rst:806 +#: ../Doc/library/doctest.rst:804 msgid "" "The :const:`ELLIPSIS` directive gives a nice approach for the last example::" msgstr "" -#: ../Doc/library/doctest.rst:811 +#: ../Doc/library/doctest.rst:809 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:822 +#: ../Doc/library/doctest.rst:820 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:828 +#: ../Doc/library/doctest.rst:826 msgid "" "Simple fractions are also easier for people to understand, and that makes " "for better documentation." msgstr "" -#: ../Doc/library/doctest.rst:835 +#: ../Doc/library/doctest.rst:833 msgid "Basic API" msgstr "" -#: ../Doc/library/doctest.rst:837 +#: ../Doc/library/doctest.rst:835 msgid "" "The functions :func:`testmod` and :func:`testfile` provide a simple " "interface to doctest that should be sufficient for most basic uses. For a " @@ -797,25 +797,25 @@ msgid "" "simple-testmod` and :ref:`doctest-simple-testfile`." msgstr "" -#: ../Doc/library/doctest.rst:845 +#: ../Doc/library/doctest.rst:843 msgid "" "All arguments except *filename* are optional, and should be specified in " "keyword form." msgstr "" -#: ../Doc/library/doctest.rst:848 +#: ../Doc/library/doctest.rst:846 msgid "" "Test examples in the file named *filename*. Return ``(failure_count, " "test_count)``." msgstr "" -#: ../Doc/library/doctest.rst:851 +#: ../Doc/library/doctest.rst:849 msgid "" "Optional argument *module_relative* specifies how the filename should be " "interpreted:" msgstr "" -#: ../Doc/library/doctest.rst:854 +#: ../Doc/library/doctest.rst:852 msgid "" "If *module_relative* is ``True`` (the default), then *filename* specifies an " "OS-independent module-relative path. By default, this path is relative to " @@ -825,20 +825,20 @@ msgid "" "absolute path (i.e., it may not begin with ``/``)." msgstr "" -#: ../Doc/library/doctest.rst:861 +#: ../Doc/library/doctest.rst:859 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:865 +#: ../Doc/library/doctest.rst:863 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:868 +#: ../Doc/library/doctest.rst:866 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-" @@ -847,7 +847,7 @@ msgid "" "is an error to specify *package* if *module_relative* is ``False``." msgstr "" -#: ../Doc/library/doctest.rst:874 +#: ../Doc/library/doctest.rst:872 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 " @@ -855,7 +855,7 @@ msgid "" "``None``, a new empty dict is used." msgstr "" -#: ../Doc/library/doctest.rst:879 +#: ../Doc/library/doctest.rst:877 msgid "" "Optional argument *extraglobs* gives a dict merged into the globals used to " "execute examples. This works like :meth:`dict.update`: if *globs* and " @@ -868,27 +868,27 @@ msgid "" "tested." msgstr "" -#: ../Doc/library/doctest.rst:888 +#: ../Doc/library/doctest.rst:886 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:892 +#: ../Doc/library/doctest.rst:890 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:896 +#: ../Doc/library/doctest.rst:894 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:900 +#: ../Doc/library/doctest.rst:898 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. " @@ -896,33 +896,33 @@ msgid "" "continue running examples." msgstr "" -#: ../Doc/library/doctest.rst:905 ../Doc/library/doctest.rst:1045 +#: ../Doc/library/doctest.rst:903 ../Doc/library/doctest.rst:1043 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:909 ../Doc/library/doctest.rst:1049 +#: ../Doc/library/doctest.rst:907 ../Doc/library/doctest.rst:1047 msgid "" "Optional argument *encoding* specifies an encoding that should be used to " "convert the file to unicode." msgstr "" -#: ../Doc/library/doctest.rst:915 +#: ../Doc/library/doctest.rst:913 msgid "" "All arguments are optional, and all except for *m* should be specified in " "keyword form." msgstr "" -#: ../Doc/library/doctest.rst:918 +#: ../Doc/library/doctest.rst:916 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:922 +#: ../Doc/library/doctest.rst:920 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 " @@ -930,22 +930,22 @@ msgid "" "are searched directly, as if they were docstrings." msgstr "" -#: ../Doc/library/doctest.rst:927 +#: ../Doc/library/doctest.rst:925 msgid "" "Only docstrings attached to objects belonging to module *m* are searched." msgstr "" -#: ../Doc/library/doctest.rst:929 +#: ../Doc/library/doctest.rst:927 msgid "Return ``(failure_count, test_count)``." msgstr "" -#: ../Doc/library/doctest.rst:931 +#: ../Doc/library/doctest.rst:929 msgid "" "Optional argument *name* gives the name of the module; by default, or if " "``None``, ``m.__name__`` is used." msgstr "" -#: ../Doc/library/doctest.rst:934 +#: ../Doc/library/doctest.rst:932 msgid "" "Optional argument *exclude_empty* defaults to false. If true, objects for " "which no doctests are found are excluded from consideration. The default is " @@ -955,39 +955,39 @@ msgid "" "class:`DocTestFinder` constructor defaults to true." msgstr "" -#: ../Doc/library/doctest.rst:941 +#: ../Doc/library/doctest.rst:939 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:948 +#: ../Doc/library/doctest.rst:946 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:951 +#: ../Doc/library/doctest.rst:949 msgid "" "A shallow copy of dictionary argument *globs* is used for the execution " "context." msgstr "" -#: ../Doc/library/doctest.rst:953 +#: ../Doc/library/doctest.rst:951 msgid "" "Optional argument *name* is used in failure messages, and defaults to ``" "\"NoName\"``." msgstr "" -#: ../Doc/library/doctest.rst:956 +#: ../Doc/library/doctest.rst:954 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:959 +#: ../Doc/library/doctest.rst:957 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 " @@ -995,16 +995,16 @@ msgid "" "found in *globs*." msgstr "" -#: ../Doc/library/doctest.rst:963 +#: ../Doc/library/doctest.rst:961 msgid "" "Optional argument *optionflags* works as for function :func:`testfile` above." msgstr "" -#: ../Doc/library/doctest.rst:969 +#: ../Doc/library/doctest.rst:967 msgid "Unittest API" msgstr "" -#: ../Doc/library/doctest.rst:971 +#: ../Doc/library/doctest.rst:969 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 " @@ -1013,19 +1013,19 @@ msgid "" "discovery, include a :func:`load_tests` function in your test module::" msgstr "" -#: ../Doc/library/doctest.rst:985 +#: ../Doc/library/doctest.rst:983 msgid "" "There are two main functions for creating :class:`unittest.TestSuite` " "instances from text files and modules with doctests:" msgstr "" -#: ../Doc/library/doctest.rst:991 +#: ../Doc/library/doctest.rst:989 msgid "" "Convert doctest tests from one or more text files to a :class:`unittest." "TestSuite`." msgstr "" -#: ../Doc/library/doctest.rst:994 +#: ../Doc/library/doctest.rst:992 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 " @@ -1034,21 +1034,21 @@ msgid "" "containing the test and a (sometimes approximate) line number." msgstr "" -#: ../Doc/library/doctest.rst:1000 +#: ../Doc/library/doctest.rst:998 msgid "Pass one or more paths (as strings) to text files to be examined." msgstr "" -#: ../Doc/library/doctest.rst:1002 +#: ../Doc/library/doctest.rst:1000 msgid "Options may be provided as keyword arguments:" msgstr "" -#: ../Doc/library/doctest.rst:1004 +#: ../Doc/library/doctest.rst:1002 msgid "" "Optional argument *module_relative* specifies how the filenames in *paths* " "should be interpreted:" msgstr "" -#: ../Doc/library/doctest.rst:1007 +#: ../Doc/library/doctest.rst:1005 msgid "" "If *module_relative* is ``True`` (the default), then each filename in " "*paths* specifies an OS-independent module-relative path. By default, this " @@ -1059,14 +1059,14 @@ msgid "" "``)." msgstr "" -#: ../Doc/library/doctest.rst:1015 +#: ../Doc/library/doctest.rst:1013 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:1019 +#: ../Doc/library/doctest.rst:1017 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-" @@ -1076,7 +1076,7 @@ msgid "" "``False``." msgstr "" -#: ../Doc/library/doctest.rst:1026 +#: ../Doc/library/doctest.rst:1024 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 " @@ -1084,7 +1084,7 @@ msgid "" "test globals as the *globs* attribute of the test passed." msgstr "" -#: ../Doc/library/doctest.rst:1031 +#: ../Doc/library/doctest.rst:1029 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* " @@ -1092,14 +1092,14 @@ msgid "" "access the test globals as the *globs* attribute of the test passed." msgstr "" -#: ../Doc/library/doctest.rst:1036 ../Doc/library/doctest.rst:1070 +#: ../Doc/library/doctest.rst:1034 ../Doc/library/doctest.rst:1068 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:1040 +#: ../Doc/library/doctest.rst:1038 msgid "" "Optional argument *optionflags* specifies the default doctest options for " "the tests, created by or-ing together individual option flags. See section :" @@ -1107,17 +1107,17 @@ msgid "" "for a better way to set reporting options." msgstr "" -#: ../Doc/library/doctest.rst:1052 +#: ../Doc/library/doctest.rst:1050 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:1058 +#: ../Doc/library/doctest.rst:1056 msgid "Convert doctest tests for a module to a :class:`unittest.TestSuite`." msgstr "" -#: ../Doc/library/doctest.rst:1060 +#: ../Doc/library/doctest.rst:1058 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, " @@ -1126,42 +1126,42 @@ msgid "" "(sometimes approximate) line number." msgstr "" -#: ../Doc/library/doctest.rst:1066 +#: ../Doc/library/doctest.rst:1064 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:1074 +#: ../Doc/library/doctest.rst:1072 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:1077 +#: ../Doc/library/doctest.rst:1075 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:1080 +#: ../Doc/library/doctest.rst:1078 msgid "" "Optional arguments *setUp*, *tearDown*, and *optionflags* are the same as " "for function :func:`DocFileSuite` above." msgstr "" -#: ../Doc/library/doctest.rst:1083 +#: ../Doc/library/doctest.rst:1081 msgid "This function uses the same search technique as :func:`testmod`." msgstr "" -#: ../Doc/library/doctest.rst:1085 +#: ../Doc/library/doctest.rst:1083 msgid "" ":func:`DocTestSuite` returns an empty :class:`unittest.TestSuite` if " "*module* contains no docstrings instead of raising :exc:`ValueError`." msgstr "" -#: ../Doc/library/doctest.rst:1090 +#: ../Doc/library/doctest.rst:1088 msgid "" "Under the covers, :func:`DocTestSuite` creates a :class:`unittest.TestSuite` " "out of :class:`doctest.DocTestCase` instances, and :class:`DocTestCase` is a " @@ -1170,14 +1170,14 @@ msgid "" "questions about the exact details of :mod:`unittest` integration." msgstr "" -#: ../Doc/library/doctest.rst:1096 +#: ../Doc/library/doctest.rst:1094 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:1100 +#: ../Doc/library/doctest.rst:1098 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 :" @@ -1190,23 +1190,23 @@ msgid "" "through :mod:`unittest` to :mod:`doctest` test runners." msgstr "" -#: ../Doc/library/doctest.rst:1110 +#: ../Doc/library/doctest.rst:1108 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:1116 +#: ../Doc/library/doctest.rst:1114 msgid "Set the :mod:`doctest` reporting flags to use." msgstr "" -#: ../Doc/library/doctest.rst:1118 +#: ../Doc/library/doctest.rst:1116 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:1121 +#: ../Doc/library/doctest.rst:1119 msgid "" "This is a module-global setting, and affects all future doctests run by " "module :mod:`unittest`: the :meth:`runTest` method of :class:`DocTestCase` " @@ -1220,17 +1220,17 @@ msgid "" "`doctest`'s :mod:`unittest` reporting flags are ignored." msgstr "" -#: ../Doc/library/doctest.rst:1132 +#: ../Doc/library/doctest.rst:1130 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:1139 +#: ../Doc/library/doctest.rst:1137 msgid "Advanced API" msgstr "" -#: ../Doc/library/doctest.rst:1141 +#: ../Doc/library/doctest.rst:1139 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 " @@ -1238,85 +1238,85 @@ msgid "" "doctest's capabilities, then you should use the advanced API." msgstr "" -#: ../Doc/library/doctest.rst:1146 +#: ../Doc/library/doctest.rst:1144 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:1149 +#: ../Doc/library/doctest.rst:1147 msgid "" ":class:`Example`: A single Python :term:`statement`, paired with its " "expected output." msgstr "" -#: ../Doc/library/doctest.rst:1152 +#: ../Doc/library/doctest.rst:1150 msgid "" ":class:`DocTest`: A collection of :class:`Example`\\ s, typically extracted " "from a single docstring or text file." msgstr "" -#: ../Doc/library/doctest.rst:1155 +#: ../Doc/library/doctest.rst:1153 msgid "" "Additional processing classes are defined to find, parse, and run, and check " "doctest examples:" msgstr "" -#: ../Doc/library/doctest.rst:1158 +#: ../Doc/library/doctest.rst:1156 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:1162 +#: ../Doc/library/doctest.rst:1160 msgid "" ":class:`DocTestParser`: Creates a :class:`DocTest` object from a string " "(such as an object's docstring)." msgstr "" -#: ../Doc/library/doctest.rst:1165 +#: ../Doc/library/doctest.rst:1163 msgid "" ":class:`DocTestRunner`: Executes the examples in a :class:`DocTest`, and " "uses an :class:`OutputChecker` to verify their output." msgstr "" -#: ../Doc/library/doctest.rst:1168 +#: ../Doc/library/doctest.rst:1166 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:1171 +#: ../Doc/library/doctest.rst:1169 msgid "" "The relationships among these processing classes are summarized in the " "following diagram::" msgstr "" -#: ../Doc/library/doctest.rst:1187 +#: ../Doc/library/doctest.rst:1185 msgid "DocTest Objects" msgstr "" -#: ../Doc/library/doctest.rst:1192 +#: ../Doc/library/doctest.rst:1190 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:1196 +#: ../Doc/library/doctest.rst:1194 msgid "" ":class:`DocTest` defines the following attributes. They are initialized by " "the constructor, and should not be modified directly." msgstr "" -#: ../Doc/library/doctest.rst:1202 +#: ../Doc/library/doctest.rst:1200 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:1208 +#: ../Doc/library/doctest.rst:1206 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 " @@ -1324,57 +1324,57 @@ msgid "" "`globs` after the test is run." msgstr "" -#: ../Doc/library/doctest.rst:1216 +#: ../Doc/library/doctest.rst:1214 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:1222 +#: ../Doc/library/doctest.rst:1220 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:1229 +#: ../Doc/library/doctest.rst:1227 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:1236 +#: ../Doc/library/doctest.rst:1234 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:1243 +#: ../Doc/library/doctest.rst:1241 msgid "Example Objects" msgstr "" -#: ../Doc/library/doctest.rst:1248 +#: ../Doc/library/doctest.rst:1246 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:1253 +#: ../Doc/library/doctest.rst:1251 msgid "" ":class:`Example` defines the following attributes. They are initialized by " "the constructor, and should not be modified directly." msgstr "" -#: ../Doc/library/doctest.rst:1259 +#: ../Doc/library/doctest.rst:1257 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:1266 +#: ../Doc/library/doctest.rst:1264 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 " @@ -1382,7 +1382,7 @@ msgid "" "The constructor adds a newline when necessary." msgstr "" -#: ../Doc/library/doctest.rst:1274 +#: ../Doc/library/doctest.rst:1272 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 " @@ -1391,20 +1391,20 @@ msgid "" "unless it's ``None``. The constructor adds a newline if needed." msgstr "" -#: ../Doc/library/doctest.rst:1283 +#: ../Doc/library/doctest.rst:1281 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:1290 +#: ../Doc/library/doctest.rst:1288 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:1296 +#: ../Doc/library/doctest.rst:1294 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 " @@ -1413,11 +1413,11 @@ msgid "" "are set." msgstr "" -#: ../Doc/library/doctest.rst:1305 +#: ../Doc/library/doctest.rst:1303 msgid "DocTestFinder objects" msgstr "" -#: ../Doc/library/doctest.rst:1310 +#: ../Doc/library/doctest.rst:1308 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 " @@ -1425,48 +1425,48 @@ msgid "" "classes, functions, methods, staticmethods, classmethods, and properties." msgstr "" -#: ../Doc/library/doctest.rst:1315 +#: ../Doc/library/doctest.rst:1313 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:1318 +#: ../Doc/library/doctest.rst:1316 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:1321 +#: ../Doc/library/doctest.rst:1319 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:1324 +#: ../Doc/library/doctest.rst:1322 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:1328 +#: ../Doc/library/doctest.rst:1326 msgid ":class:`DocTestFinder` defines the following method:" msgstr "" -#: ../Doc/library/doctest.rst:1333 +#: ../Doc/library/doctest.rst:1331 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:1336 +#: ../Doc/library/doctest.rst:1334 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:1340 +#: ../Doc/library/doctest.rst:1338 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 " @@ -1474,26 +1474,26 @@ msgid "" "module is used:" msgstr "" -#: ../Doc/library/doctest.rst:1344 +#: ../Doc/library/doctest.rst:1342 msgid "As a default namespace, if *globs* is not specified." msgstr "" -#: ../Doc/library/doctest.rst:1346 +#: ../Doc/library/doctest.rst:1344 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:1350 +#: ../Doc/library/doctest.rst:1348 msgid "To find the name of the file containing the object." msgstr "" -#: ../Doc/library/doctest.rst:1352 +#: ../Doc/library/doctest.rst:1350 msgid "To help find the line number of the object within its file." msgstr "" -#: ../Doc/library/doctest.rst:1354 +#: ../Doc/library/doctest.rst:1352 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 " @@ -1502,7 +1502,7 @@ msgid "" "contained objects will (recursively) be searched for doctests." msgstr "" -#: ../Doc/library/doctest.rst:1360 +#: ../Doc/library/doctest.rst:1358 msgid "" "The globals for each :class:`DocTest` is formed by combining *globs* and " "*extraglobs* (bindings in *extraglobs* override bindings in *globs*). A new " @@ -1512,34 +1512,34 @@ msgid "" "defaults to ``{}``." msgstr "" -#: ../Doc/library/doctest.rst:1371 +#: ../Doc/library/doctest.rst:1369 msgid "DocTestParser objects" msgstr "" -#: ../Doc/library/doctest.rst:1376 +#: ../Doc/library/doctest.rst:1374 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:1380 ../Doc/library/doctest.rst:1448 +#: ../Doc/library/doctest.rst:1378 ../Doc/library/doctest.rst:1446 msgid ":class:`DocTestParser` defines the following methods:" msgstr "" -#: ../Doc/library/doctest.rst:1385 +#: ../Doc/library/doctest.rst:1383 msgid "" "Extract all doctest examples from the given string, and collect them into a :" "class:`DocTest` object." msgstr "" -#: ../Doc/library/doctest.rst:1388 +#: ../Doc/library/doctest.rst:1386 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:1395 +#: ../Doc/library/doctest.rst:1393 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 " @@ -1547,7 +1547,7 @@ msgid "" "error messages." msgstr "" -#: ../Doc/library/doctest.rst:1402 +#: ../Doc/library/doctest.rst:1400 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 " @@ -1555,17 +1555,17 @@ msgid "" "name identifying this string, and is only used for error messages." msgstr "" -#: ../Doc/library/doctest.rst:1411 +#: ../Doc/library/doctest.rst:1409 msgid "DocTestRunner objects" msgstr "" -#: ../Doc/library/doctest.rst:1416 +#: ../Doc/library/doctest.rst:1414 msgid "" "A processing class used to execute and verify the interactive examples in a :" "class:`DocTest`." msgstr "" -#: ../Doc/library/doctest.rst:1419 +#: ../Doc/library/doctest.rst:1417 msgid "" "The comparison between expected outputs and actual outputs is done by an :" "class:`OutputChecker`. This comparison may be customized with a number of " @@ -1575,7 +1575,7 @@ msgid "" "constructor." msgstr "" -#: ../Doc/library/doctest.rst:1425 +#: ../Doc/library/doctest.rst:1423 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 " @@ -1586,14 +1586,14 @@ msgid "" "`report_unexpected_exception`, and :meth:`report_failure`." msgstr "" -#: ../Doc/library/doctest.rst:1433 +#: ../Doc/library/doctest.rst:1431 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:1437 +#: ../Doc/library/doctest.rst:1435 msgid "" "The optional keyword argument *verbose* controls the :class:" "`DocTestRunner`'s verbosity. If *verbose* is ``True``, then information is " @@ -1602,56 +1602,56 @@ msgid "" "verbose output is used iff the command-line switch ``-v`` is used." msgstr "" -#: ../Doc/library/doctest.rst:1443 +#: ../Doc/library/doctest.rst:1441 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:1453 +#: ../Doc/library/doctest.rst:1451 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:1457 +#: ../Doc/library/doctest.rst:1455 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:1464 +#: ../Doc/library/doctest.rst:1462 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:1468 ../Doc/library/doctest.rst:1479 +#: ../Doc/library/doctest.rst:1466 ../Doc/library/doctest.rst:1477 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:1475 +#: ../Doc/library/doctest.rst:1473 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:1486 +#: ../Doc/library/doctest.rst:1484 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:1490 +#: ../Doc/library/doctest.rst:1488 msgid "" "*example* is the example about to be processed. *exc_info* is a tuple " "containing information about the unexpected exception (as returned by :func:" @@ -1659,13 +1659,13 @@ msgid "" "output function that was passed to :meth:`DocTestRunner.run`." msgstr "" -#: ../Doc/library/doctest.rst:1498 +#: ../Doc/library/doctest.rst:1496 msgid "" "Run the examples in *test* (a :class:`DocTest` object), and display the " "results using the writer function *out*." msgstr "" -#: ../Doc/library/doctest.rst:1501 +#: ../Doc/library/doctest.rst:1499 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, " @@ -1673,39 +1673,39 @@ msgid "" "after the test completes, then use *clear_globs=False*." msgstr "" -#: ../Doc/library/doctest.rst:1506 +#: ../Doc/library/doctest.rst:1504 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:1510 +#: ../Doc/library/doctest.rst:1508 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:1517 +#: ../Doc/library/doctest.rst:1515 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:1520 +#: ../Doc/library/doctest.rst:1518 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:1527 +#: ../Doc/library/doctest.rst:1525 msgid "OutputChecker objects" msgstr "" -#: ../Doc/library/doctest.rst:1532 +#: ../Doc/library/doctest.rst:1530 msgid "" "A class used to check the whether the actual output from a doctest example " "matches the expected output. :class:`OutputChecker` defines two methods: :" @@ -1714,11 +1714,11 @@ msgid "" "describing the differences between two outputs." msgstr "" -#: ../Doc/library/doctest.rst:1539 +#: ../Doc/library/doctest.rst:1537 msgid ":class:`OutputChecker` defines the following methods:" msgstr "" -#: ../Doc/library/doctest.rst:1543 +#: ../Doc/library/doctest.rst:1541 msgid "" "Return ``True`` iff the actual output from an example (*got*) matches the " "expected output (*want*). These strings are always considered to match if " @@ -1727,28 +1727,28 @@ msgid "" "`doctest-options` for more information about option flags." msgstr "" -#: ../Doc/library/doctest.rst:1552 +#: ../Doc/library/doctest.rst:1550 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:1560 +#: ../Doc/library/doctest.rst:1558 msgid "Debugging" msgstr "" -#: ../Doc/library/doctest.rst:1562 +#: ../Doc/library/doctest.rst:1560 msgid "Doctest provides several mechanisms for debugging doctest examples:" msgstr "" -#: ../Doc/library/doctest.rst:1564 +#: ../Doc/library/doctest.rst:1562 msgid "" "Several functions convert doctests to executable Python programs, which can " "be run under the Python debugger, :mod:`pdb`." msgstr "" -#: ../Doc/library/doctest.rst:1567 +#: ../Doc/library/doctest.rst:1565 msgid "" "The :class:`DebugRunner` class is a subclass of :class:`DocTestRunner` that " "raises an exception for the first failing example, containing information " @@ -1756,13 +1756,13 @@ msgid "" "debugging on the example." msgstr "" -#: ../Doc/library/doctest.rst:1572 +#: ../Doc/library/doctest.rst:1570 msgid "" "The :mod:`unittest` cases generated by :func:`DocTestSuite` support the :" "meth:`debug` method defined by :class:`unittest.TestCase`." msgstr "" -#: ../Doc/library/doctest.rst:1575 +#: ../Doc/library/doctest.rst:1573 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 " @@ -1770,21 +1770,21 @@ msgid "" "`a.py` contains just this module docstring::" msgstr "" -#: ../Doc/library/doctest.rst:1590 +#: ../Doc/library/doctest.rst:1588 msgid "Then an interactive Python session may look like this::" msgstr "" -#: ../Doc/library/doctest.rst:1623 +#: ../Doc/library/doctest.rst:1621 msgid "" "Functions that convert doctests to Python code, and possibly run the " "synthesized code under the debugger:" msgstr "" -#: ../Doc/library/doctest.rst:1629 +#: ../Doc/library/doctest.rst:1627 msgid "Convert text with examples to a script." msgstr "" -#: ../Doc/library/doctest.rst:1631 +#: ../Doc/library/doctest.rst:1629 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 " @@ -1792,22 +1792,22 @@ msgid "" "generated script is returned as a string. For example, ::" msgstr "" -#: ../Doc/library/doctest.rst:1646 +#: ../Doc/library/doctest.rst:1644 msgid "displays::" msgstr "" -#: ../Doc/library/doctest.rst:1656 +#: ../Doc/library/doctest.rst:1654 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:1663 +#: ../Doc/library/doctest.rst:1661 msgid "Convert the doctest for an object to a script." msgstr "" -#: ../Doc/library/doctest.rst:1665 +#: ../Doc/library/doctest.rst:1663 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 " @@ -1817,17 +1817,17 @@ msgid "" "module :file:`a.py` contains a top-level function :func:`f`, then ::" msgstr "" -#: ../Doc/library/doctest.rst:1675 +#: ../Doc/library/doctest.rst:1673 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:1681 +#: ../Doc/library/doctest.rst:1679 msgid "Debug the doctests for an object." msgstr "" -#: ../Doc/library/doctest.rst:1683 +#: ../Doc/library/doctest.rst:1681 msgid "" "The *module* and *name* arguments are the same as for function :func:" "`testsource` above. The synthesized Python script for the named object's " @@ -1835,13 +1835,13 @@ msgid "" "the control of the Python debugger, :mod:`pdb`." msgstr "" -#: ../Doc/library/doctest.rst:1688 +#: ../Doc/library/doctest.rst:1686 msgid "" "A shallow copy of ``module.__dict__`` is used for both local and global " "execution context." msgstr "" -#: ../Doc/library/doctest.rst:1691 +#: ../Doc/library/doctest.rst:1689 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 " @@ -1853,30 +1853,30 @@ msgid "" "to :func:`pdb.run`." msgstr "" -#: ../Doc/library/doctest.rst:1702 +#: ../Doc/library/doctest.rst:1700 msgid "Debug the doctests in a string." msgstr "" -#: ../Doc/library/doctest.rst:1704 +#: ../Doc/library/doctest.rst:1702 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:1707 +#: ../Doc/library/doctest.rst:1705 msgid "" "Optional argument *pm* has the same meaning as in function :func:`debug` " "above." msgstr "" -#: ../Doc/library/doctest.rst:1709 +#: ../Doc/library/doctest.rst:1707 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:1714 +#: ../Doc/library/doctest.rst:1712 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 " @@ -1884,7 +1884,7 @@ msgid "" "(which is a doctest!) for more details:" msgstr "" -#: ../Doc/library/doctest.rst:1722 +#: ../Doc/library/doctest.rst:1720 msgid "" "A subclass of :class:`DocTestRunner` that raises an exception as soon as a " "failure is encountered. If an unexpected exception occurs, an :exc:" @@ -1894,89 +1894,89 @@ msgid "" "the actual output." msgstr "" -#: ../Doc/library/doctest.rst:1729 +#: ../Doc/library/doctest.rst:1727 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:1732 +#: ../Doc/library/doctest.rst:1730 msgid "" "There are two exceptions that may be raised by :class:`DebugRunner` " "instances:" msgstr "" -#: ../Doc/library/doctest.rst:1737 +#: ../Doc/library/doctest.rst:1735 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:1741 +#: ../Doc/library/doctest.rst:1739 msgid ":exc:`DocTestFailure` defines the following attributes:" msgstr "" -#: ../Doc/library/doctest.rst:1746 ../Doc/library/doctest.rst:1770 +#: ../Doc/library/doctest.rst:1744 ../Doc/library/doctest.rst:1768 msgid "The :class:`DocTest` object that was being run when the example failed." msgstr "" -#: ../Doc/library/doctest.rst:1751 ../Doc/library/doctest.rst:1775 +#: ../Doc/library/doctest.rst:1749 ../Doc/library/doctest.rst:1773 msgid "The :class:`Example` that failed." msgstr "" -#: ../Doc/library/doctest.rst:1756 +#: ../Doc/library/doctest.rst:1754 msgid "The example's actual output." msgstr "" -#: ../Doc/library/doctest.rst:1761 +#: ../Doc/library/doctest.rst:1759 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:1765 +#: ../Doc/library/doctest.rst:1763 msgid ":exc:`UnexpectedException` defines the following attributes:" msgstr "" -#: ../Doc/library/doctest.rst:1780 +#: ../Doc/library/doctest.rst:1778 msgid "" "A tuple containing information about the unexpected exception, as returned " "by :func:`sys.exc_info`." msgstr "" -#: ../Doc/library/doctest.rst:1787 +#: ../Doc/library/doctest.rst:1785 msgid "Soapbox" msgstr "" -#: ../Doc/library/doctest.rst:1789 +#: ../Doc/library/doctest.rst:1787 msgid "" "As mentioned in the introduction, :mod:`doctest` has grown to have three " "primary uses:" msgstr "" -#: ../Doc/library/doctest.rst:1792 +#: ../Doc/library/doctest.rst:1790 msgid "Checking examples in docstrings." msgstr "" -#: ../Doc/library/doctest.rst:1794 +#: ../Doc/library/doctest.rst:1792 msgid "Regression testing." msgstr "" -#: ../Doc/library/doctest.rst:1796 +#: ../Doc/library/doctest.rst:1794 msgid "Executable documentation / literate testing." msgstr "" -#: ../Doc/library/doctest.rst:1798 +#: ../Doc/library/doctest.rst:1796 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:1802 +#: ../Doc/library/doctest.rst:1800 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. " @@ -1988,7 +1988,7 @@ msgid "" "\"harmless\" change." msgstr "" -#: ../Doc/library/doctest.rst:1810 +#: ../Doc/library/doctest.rst:1808 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 " @@ -2009,13 +2009,13 @@ msgid "" "different results, blurring the distinction between testing and explaining." msgstr "" -#: ../Doc/library/doctest.rst:1828 +#: ../Doc/library/doctest.rst:1826 msgid "" "Regression testing is best confined to dedicated objects or files. There " "are several options for organizing tests:" msgstr "" -#: ../Doc/library/doctest.rst:1831 +#: ../Doc/library/doctest.rst:1829 msgid "" "Write text files containing test cases as interactive examples, and test the " "files using :func:`testfile` or :func:`DocFileSuite`. This is recommended, " @@ -2023,7 +2023,7 @@ msgid "" "doctest." msgstr "" -#: ../Doc/library/doctest.rst:1836 +#: ../Doc/library/doctest.rst:1834 msgid "" "Define functions named ``_regrtest_topic`` that consist of single " "docstrings, containing test cases for the named topics. These functions can " @@ -2031,13 +2031,13 @@ msgid "" "test file." msgstr "" -#: ../Doc/library/doctest.rst:1840 +#: ../Doc/library/doctest.rst:1838 msgid "" "Define a ``__test__`` dictionary mapping from regression test topics to " "docstrings containing test cases." msgstr "" -#: ../Doc/library/doctest.rst:1843 +#: ../Doc/library/doctest.rst:1841 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-" @@ -2045,11 +2045,11 @@ msgid "" "example of such a test runner::" msgstr "" -#: ../Doc/library/doctest.rst:1865 +#: ../Doc/library/doctest.rst:1863 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/doctest.rst:1866 +#: ../Doc/library/doctest.rst:1864 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/faulthandler.po b/library/faulthandler.po index 4f08c50be..9b58850eb 100644 --- a/library/faulthandler.po +++ b/library/faulthandler.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-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -93,7 +93,7 @@ msgid "" msgstr "" #: ../Doc/library/faulthandler.rst:52 ../Doc/library/faulthandler.rst:70 -#: ../Doc/library/faulthandler.rst:106 ../Doc/library/faulthandler.rst:128 +#: ../Doc/library/faulthandler.rst:108 ../Doc/library/faulthandler.rst:130 msgid "Added support for passing file descriptor to this function." msgstr "" @@ -152,48 +152,50 @@ msgid "" msgstr "" #: ../Doc/library/faulthandler.rst:103 -msgid "" -"This function is implemented using a watchdog thread and therefore is not " -"available if Python is compiled with threads disabled." +msgid "This function is implemented using a watchdog thread." +msgstr "" + +#: ../Doc/library/faulthandler.rst:105 +msgid "This function is now always available." msgstr "" -#: ../Doc/library/faulthandler.rst:111 +#: ../Doc/library/faulthandler.rst:113 msgid "Cancel the last call to :func:`dump_traceback_later`." msgstr "" -#: ../Doc/library/faulthandler.rst:115 +#: ../Doc/library/faulthandler.rst:117 msgid "Dumping the traceback on a user signal" msgstr "" -#: ../Doc/library/faulthandler.rst:119 +#: ../Doc/library/faulthandler.rst:121 msgid "" "Register a user signal: install a handler for the *signum* signal to dump " "the traceback of all threads, or of the current thread if *all_threads* is " "``False``, into *file*. Call the previous handler if chain is ``True``." msgstr "" -#: ../Doc/library/faulthandler.rst:123 +#: ../Doc/library/faulthandler.rst:125 msgid "" "The *file* must be kept open until the signal is unregistered by :func:" "`unregister`: see :ref:`issue with file descriptors `." msgstr "" -#: ../Doc/library/faulthandler.rst:126 ../Doc/library/faulthandler.rst:137 +#: ../Doc/library/faulthandler.rst:128 ../Doc/library/faulthandler.rst:139 msgid "Not available on Windows." msgstr "" -#: ../Doc/library/faulthandler.rst:133 +#: ../Doc/library/faulthandler.rst:135 msgid "" "Unregister a user signal: uninstall the handler of the *signum* signal " "installed by :func:`register`. Return ``True`` if the signal was registered, " "``False`` otherwise." msgstr "" -#: ../Doc/library/faulthandler.rst:143 +#: ../Doc/library/faulthandler.rst:145 msgid "Issue with file descriptors" msgstr "" -#: ../Doc/library/faulthandler.rst:145 +#: ../Doc/library/faulthandler.rst:147 msgid "" ":func:`enable`, :func:`dump_traceback_later` and :func:`register` keep the " "file descriptor of their *file* argument. If the file is closed and its file " @@ -202,11 +204,11 @@ msgid "" "Call these functions again each time that the file is replaced." msgstr "" -#: ../Doc/library/faulthandler.rst:153 +#: ../Doc/library/faulthandler.rst:155 msgid "Example" msgstr "Exemple" -#: ../Doc/library/faulthandler.rst:155 +#: ../Doc/library/faulthandler.rst:157 msgid "" "Example of a segmentation fault on Linux with and without enabling the fault " "handler:" diff --git a/library/fcntl.po b/library/fcntl.po index 73bdf2634..9d714b4c4 100644 --- a/library/fcntl.po +++ b/library/fcntl.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2017-08-10 00:59+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -151,23 +151,24 @@ msgstr "" #: ../Doc/library/fcntl.rst:122 msgid "" "This is essentially a wrapper around the :func:`~fcntl.fcntl` locking calls. " -"*fd* is the file descriptor of the file to lock or unlock, and *cmd* is one " -"of the following values:" +"*fd* is the file descriptor (file objects providing a :meth:`~io.IOBase." +"fileno` method are accepted as well) of the file to lock or unlock, and " +"*cmd* is one of the following values:" msgstr "" -#: ../Doc/library/fcntl.rst:126 +#: ../Doc/library/fcntl.rst:127 msgid ":const:`LOCK_UN` -- unlock" msgstr "" -#: ../Doc/library/fcntl.rst:127 +#: ../Doc/library/fcntl.rst:128 msgid ":const:`LOCK_SH` -- acquire a shared lock" msgstr "" -#: ../Doc/library/fcntl.rst:128 +#: ../Doc/library/fcntl.rst:129 msgid ":const:`LOCK_EX` -- acquire an exclusive lock" msgstr "" -#: ../Doc/library/fcntl.rst:130 +#: ../Doc/library/fcntl.rst:131 msgid "" "When *cmd* is :const:`LOCK_SH` or :const:`LOCK_EX`, it can also be bitwise " "ORed with :const:`LOCK_NB` to avoid blocking on lock acquisition. If :const:" @@ -179,38 +180,38 @@ msgid "" "for writing." msgstr "" -#: ../Doc/library/fcntl.rst:139 +#: ../Doc/library/fcntl.rst:140 msgid "" "*len* is the number of bytes to lock, *start* is the byte offset at which " "the lock starts, relative to *whence*, and *whence* is as with :func:`io." "IOBase.seek`, specifically:" msgstr "" -#: ../Doc/library/fcntl.rst:143 +#: ../Doc/library/fcntl.rst:144 msgid ":const:`0` -- relative to the start of the file (:data:`os.SEEK_SET`)" msgstr "" -#: ../Doc/library/fcntl.rst:144 +#: ../Doc/library/fcntl.rst:145 msgid "" ":const:`1` -- relative to the current buffer position (:data:`os.SEEK_CUR`)" msgstr "" -#: ../Doc/library/fcntl.rst:145 +#: ../Doc/library/fcntl.rst:146 msgid ":const:`2` -- relative to the end of the file (:data:`os.SEEK_END`)" msgstr "" -#: ../Doc/library/fcntl.rst:147 +#: ../Doc/library/fcntl.rst:148 msgid "" "The default for *start* is 0, which means to start at the beginning of the " "file. The default for *len* is 0 which means to lock to the end of the " "file. The default for *whence* is also 0." msgstr "" -#: ../Doc/library/fcntl.rst:151 +#: ../Doc/library/fcntl.rst:152 msgid "Examples (all on a SVR4 compliant system)::" msgstr "" -#: ../Doc/library/fcntl.rst:161 +#: ../Doc/library/fcntl.rst:162 msgid "" "Note that in the first example the return value variable *rv* will hold an " "integer value; in the second example it will hold a :class:`bytes` object. " @@ -218,11 +219,11 @@ msgid "" "therefore using the :func:`flock` call may be better." msgstr "" -#: ../Doc/library/fcntl.rst:172 +#: ../Doc/library/fcntl.rst:173 msgid "Module :mod:`os`" msgstr "Module :mod:`os`" -#: ../Doc/library/fcntl.rst:170 +#: ../Doc/library/fcntl.rst:171 msgid "" "If the locking flags :data:`~os.O_SHLOCK` and :data:`~os.O_EXLOCK` are " "present in the :mod:`os` module (on BSD only), the :func:`os.open` function " diff --git a/library/ftplib.po b/library/ftplib.po index b2d495e3e..11ee9c58e 100644 --- a/library/ftplib.po +++ b/library/ftplib.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -36,11 +36,11 @@ msgstr "" msgid "Here's a sample session using the :mod:`ftplib` module::" msgstr "" -#: ../Doc/library/ftplib.rst:41 +#: ../Doc/library/ftplib.rst:42 msgid "The module defines the following items:" msgstr "Le module définit les éléments suivants :" -#: ../Doc/library/ftplib.rst:45 +#: ../Doc/library/ftplib.rst:46 msgid "" "Return a new instance of the :class:`FTP` class. When *host* is given, the " "method call ``connect(host)`` is made. When *user* is given, additionally " @@ -52,20 +52,20 @@ msgid "" "to bind to as its source address before connecting." msgstr "" -#: ../Doc/library/ftplib.rst:54 +#: ../Doc/library/ftplib.rst:55 msgid "The :class:`FTP` class supports the :keyword:`with` statement, e.g.:" msgstr "" -#: ../Doc/library/ftplib.rst:68 +#: ../Doc/library/ftplib.rst:69 msgid "Support for the :keyword:`with` statement was added." msgstr "" -#: ../Doc/library/ftplib.rst:71 ../Doc/library/ftplib.rst:92 -#: ../Doc/library/ftplib.rst:195 +#: ../Doc/library/ftplib.rst:72 ../Doc/library/ftplib.rst:93 +#: ../Doc/library/ftplib.rst:196 msgid "*source_address* parameter was added." msgstr "" -#: ../Doc/library/ftplib.rst:77 +#: ../Doc/library/ftplib.rst:78 msgid "" "A :class:`FTP` subclass which adds TLS support to FTP as described in :rfc:" "`4217`. Connect as usual to port 21 implicitly securing the FTP control " @@ -77,77 +77,77 @@ msgid "" "best practices." msgstr "" -#: ../Doc/library/ftplib.rst:86 +#: ../Doc/library/ftplib.rst:87 msgid "" "*keyfile* and *certfile* are a legacy alternative to *context* -- they can " "point to PEM-formatted private key and certificate chain files " "(respectively) for the SSL connection." msgstr "" -#: ../Doc/library/ftplib.rst:95 +#: ../Doc/library/ftplib.rst:96 msgid "" "The class now supports hostname check with :attr:`ssl.SSLContext." "check_hostname` and *Server Name Indication* (see :data:`ssl.HAS_SNI`)." msgstr "" -#: ../Doc/library/ftplib.rst:102 +#: ../Doc/library/ftplib.rst:103 msgid "" "*keyfile* and *certfile* are deprecated in favor of *context*. Please use :" "meth:`ssl.SSLContext.load_cert_chain` instead, or let :func:`ssl." "create_default_context` select the system's trusted CA certificates for you." msgstr "" -#: ../Doc/library/ftplib.rst:107 +#: ../Doc/library/ftplib.rst:108 msgid "Here's a sample session using the :class:`FTP_TLS` class::" msgstr "" -#: ../Doc/library/ftplib.rst:120 +#: ../Doc/library/ftplib.rst:121 msgid "Exception raised when an unexpected reply is received from the server." msgstr "" -#: ../Doc/library/ftplib.rst:125 +#: ../Doc/library/ftplib.rst:126 msgid "" "Exception raised when an error code signifying a temporary error (response " "codes in the range 400--499) is received." msgstr "" -#: ../Doc/library/ftplib.rst:131 +#: ../Doc/library/ftplib.rst:132 msgid "" "Exception raised when an error code signifying a permanent error (response " "codes in the range 500--599) is received." msgstr "" -#: ../Doc/library/ftplib.rst:137 +#: ../Doc/library/ftplib.rst:138 msgid "" "Exception raised when a reply is received from the server that does not fit " "the response specifications of the File Transfer Protocol, i.e. begin with a " "digit in the range 1--5." msgstr "" -#: ../Doc/library/ftplib.rst:144 +#: ../Doc/library/ftplib.rst:145 msgid "" "The set of all exceptions (as a tuple) that methods of :class:`FTP` " "instances may raise as a result of problems with the FTP connection (as " "opposed to programming errors made by the caller). This set includes the " -"four exceptions listed above as well as :exc:`OSError`." +"four exceptions listed above as well as :exc:`OSError` and :exc:`EOFError`." msgstr "" -#: ../Doc/library/ftplib.rst:154 +#: ../Doc/library/ftplib.rst:155 msgid "Module :mod:`netrc`" msgstr "" -#: ../Doc/library/ftplib.rst:153 +#: ../Doc/library/ftplib.rst:154 msgid "" "Parser for the :file:`.netrc` file format. The file :file:`.netrc` is " "typically used by FTP clients to load user authentication information before " "prompting the user." msgstr "" -#: ../Doc/library/ftplib.rst:161 +#: ../Doc/library/ftplib.rst:162 msgid "FTP Objects" msgstr "" -#: ../Doc/library/ftplib.rst:163 +#: ../Doc/library/ftplib.rst:164 msgid "" "Several methods are available in two flavors: one for handling text files " "and another for binary files. These are named for the command which is used " @@ -155,11 +155,11 @@ msgid "" "version." msgstr "" -#: ../Doc/library/ftplib.rst:167 +#: ../Doc/library/ftplib.rst:168 msgid ":class:`FTP` instances have the following methods:" msgstr "" -#: ../Doc/library/ftplib.rst:172 +#: ../Doc/library/ftplib.rst:173 msgid "" "Set the instance's debugging level. This controls the amount of debugging " "output printed. The default, ``0``, produces no debugging output. A value " @@ -169,7 +169,7 @@ msgid "" "connection." msgstr "" -#: ../Doc/library/ftplib.rst:181 +#: ../Doc/library/ftplib.rst:182 msgid "" "Connect to the given host and port. The default port number is ``21``, as " "specified by the FTP protocol specification. It is rarely needed to specify " @@ -182,20 +182,20 @@ msgid "" "port)`` for the socket to bind to as its source address before connecting." msgstr "" -#: ../Doc/library/ftplib.rst:194 +#: ../Doc/library/ftplib.rst:195 msgid "" "Raises an :ref:`auditing event ` ``ftplib.connect`` with arguments " "``self``, ``host``, ``port``." msgstr "" -#: ../Doc/library/ftplib.rst:201 +#: ../Doc/library/ftplib.rst:202 msgid "" "Return the welcome message sent by the server in reply to the initial " "connection. (This message sometimes contains disclaimers or help " "information that may be relevant to the user.)" msgstr "" -#: ../Doc/library/ftplib.rst:208 +#: ../Doc/library/ftplib.rst:209 msgid "" "Log in as the given *user*. The *passwd* and *acct* parameters are optional " "and default to the empty string. If no *user* is specified, it defaults to " @@ -207,31 +207,31 @@ msgid "" "parameter supplies \"accounting information\"; few systems implement this." msgstr "" -#: ../Doc/library/ftplib.rst:220 +#: ../Doc/library/ftplib.rst:221 msgid "" "Abort a file transfer that is in progress. Using this does not always work, " "but it's worth a try." msgstr "" -#: ../Doc/library/ftplib.rst:226 +#: ../Doc/library/ftplib.rst:227 msgid "" "Send a simple command string to the server and return the response string." msgstr "" -#: ../Doc/library/ftplib.rst:228 ../Doc/library/ftplib.rst:237 +#: ../Doc/library/ftplib.rst:229 ../Doc/library/ftplib.rst:238 msgid "" "Raises an :ref:`auditing event ` ``ftplib.sendcmd`` with arguments " "``self``, ``cmd``." msgstr "" -#: ../Doc/library/ftplib.rst:233 +#: ../Doc/library/ftplib.rst:234 msgid "" "Send a simple command string to the server and handle the response. Return " "nothing if a response code corresponding to success (codes in the range " "200--299) is received. Raise :exc:`error_reply` otherwise." msgstr "" -#: ../Doc/library/ftplib.rst:242 +#: ../Doc/library/ftplib.rst:243 msgid "" "Retrieve a file in binary transfer mode. *cmd* should be an appropriate " "``RETR`` command: ``'RETR filename'``. The *callback* function is called for " @@ -243,7 +243,7 @@ msgid "" "`transfercmd` method." msgstr "" -#: ../Doc/library/ftplib.rst:254 +#: ../Doc/library/ftplib.rst:255 msgid "" "Retrieve a file or directory listing in ASCII transfer mode. *cmd* should " "be an appropriate ``RETR`` command (see :meth:`retrbinary`) or a command " @@ -254,13 +254,13 @@ msgid "" "stripped. The default *callback* prints the line to ``sys.stdout``." msgstr "" -#: ../Doc/library/ftplib.rst:266 +#: ../Doc/library/ftplib.rst:267 msgid "" "Enable \"passive\" mode if *val* is true, otherwise disable passive mode. " "Passive mode is on by default." msgstr "" -#: ../Doc/library/ftplib.rst:272 +#: ../Doc/library/ftplib.rst:273 msgid "" "Store a file in binary transfer mode. *cmd* should be an appropriate " "``STOR`` command: ``\"STOR filename\"``. *fp* is a :term:`file object` " @@ -271,11 +271,11 @@ msgid "" "*rest* means the same thing as in the :meth:`transfercmd` method." msgstr "" -#: ../Doc/library/ftplib.rst:280 +#: ../Doc/library/ftplib.rst:281 msgid "*rest* parameter added." msgstr "" -#: ../Doc/library/ftplib.rst:286 +#: ../Doc/library/ftplib.rst:287 msgid "" "Store a file in ASCII transfer mode. *cmd* should be an appropriate " "``STOR`` command (see :meth:`storbinary`). Lines are read until EOF from " @@ -285,7 +285,7 @@ msgid "" "sent." msgstr "" -#: ../Doc/library/ftplib.rst:295 +#: ../Doc/library/ftplib.rst:296 msgid "" "Initiate a transfer over the data connection. If the transfer is active, " "send an ``EPRT`` or ``PORT`` command and the transfer command specified by " @@ -294,7 +294,7 @@ msgid "" "command. Either way, return the socket for the connection." msgstr "" -#: ../Doc/library/ftplib.rst:301 +#: ../Doc/library/ftplib.rst:302 msgid "" "If optional *rest* is given, a ``REST`` command is sent to the server, " "passing *rest* as an argument. *rest* is usually a byte offset into the " @@ -308,7 +308,7 @@ msgid "" "happens, simply call :meth:`transfercmd` without a *rest* argument." msgstr "" -#: ../Doc/library/ftplib.rst:315 +#: ../Doc/library/ftplib.rst:316 msgid "" "Like :meth:`transfercmd`, but returns a tuple of the data connection and the " "expected size of the data. If the expected size could not be computed, " @@ -316,7 +316,7 @@ msgid "" "same thing as in :meth:`transfercmd`." msgstr "" -#: ../Doc/library/ftplib.rst:323 +#: ../Doc/library/ftplib.rst:324 msgid "" "List a directory in a standardized format by using ``MLSD`` command (:rfc:" "`3659`). If *path* is omitted the current directory is assumed. *facts* is " @@ -328,7 +328,7 @@ msgid "" "but server is not guaranteed to return all requested facts." msgstr "" -#: ../Doc/library/ftplib.rst:337 +#: ../Doc/library/ftplib.rst:338 msgid "" "Return a list of file names as returned by the ``NLST`` command. The " "optional *argument* is a directory to list (default is the current server " @@ -336,11 +336,11 @@ msgid "" "the ``NLST`` command." msgstr "" -#: ../Doc/library/ftplib.rst:342 ../Doc/library/ftplib.rst:354 +#: ../Doc/library/ftplib.rst:343 ../Doc/library/ftplib.rst:355 msgid "If your server supports the command, :meth:`mlsd` offers a better API." msgstr "" -#: ../Doc/library/ftplib.rst:347 +#: ../Doc/library/ftplib.rst:348 msgid "" "Produce a directory listing as returned by the ``LIST`` command, printing it " "to standard output. The optional *argument* is a directory to list (default " @@ -350,34 +350,34 @@ msgid "" "default prints to ``sys.stdout``. This method returns ``None``." msgstr "" -#: ../Doc/library/ftplib.rst:359 +#: ../Doc/library/ftplib.rst:360 msgid "Rename file *fromname* on the server to *toname*." msgstr "" -#: ../Doc/library/ftplib.rst:364 +#: ../Doc/library/ftplib.rst:365 msgid "" "Remove the file named *filename* from the server. If successful, returns " "the text of the response, otherwise raises :exc:`error_perm` on permission " "errors or :exc:`error_reply` on other errors." msgstr "" -#: ../Doc/library/ftplib.rst:371 +#: ../Doc/library/ftplib.rst:372 msgid "Set the current directory on the server." msgstr "" -#: ../Doc/library/ftplib.rst:376 +#: ../Doc/library/ftplib.rst:377 msgid "Create a new directory on the server." msgstr "" -#: ../Doc/library/ftplib.rst:381 +#: ../Doc/library/ftplib.rst:382 msgid "Return the pathname of the current directory on the server." msgstr "" -#: ../Doc/library/ftplib.rst:386 +#: ../Doc/library/ftplib.rst:387 msgid "Remove the directory named *dirname* on the server." msgstr "" -#: ../Doc/library/ftplib.rst:391 +#: ../Doc/library/ftplib.rst:392 msgid "" "Request the size of the file named *filename* on the server. On success, " "the size of the file is returned as an integer, otherwise ``None`` is " @@ -385,7 +385,7 @@ msgid "" "supported by many common server implementations." msgstr "" -#: ../Doc/library/ftplib.rst:399 +#: ../Doc/library/ftplib.rst:400 msgid "" "Send a ``QUIT`` command to the server and close the connection. This is the " "\"polite\" way to close a connection, but it may raise an exception if the " @@ -394,7 +394,7 @@ msgid "" "for subsequent calls (see below)." msgstr "" -#: ../Doc/library/ftplib.rst:408 +#: ../Doc/library/ftplib.rst:409 msgid "" "Close the connection unilaterally. This should not be applied to an already " "closed connection such as after a successful call to :meth:`~FTP.quit`. " @@ -403,43 +403,43 @@ msgid "" "connection by issuing another :meth:`login` method)." msgstr "" -#: ../Doc/library/ftplib.rst:416 +#: ../Doc/library/ftplib.rst:417 msgid "FTP_TLS Objects" msgstr "" -#: ../Doc/library/ftplib.rst:418 +#: ../Doc/library/ftplib.rst:419 msgid "" ":class:`FTP_TLS` class inherits from :class:`FTP`, defining these additional " "objects:" msgstr "" -#: ../Doc/library/ftplib.rst:422 +#: ../Doc/library/ftplib.rst:423 msgid "The SSL version to use (defaults to :attr:`ssl.PROTOCOL_SSLv23`)." msgstr "" -#: ../Doc/library/ftplib.rst:426 +#: ../Doc/library/ftplib.rst:427 msgid "" "Set up a secure control connection by using TLS or SSL, depending on what is " "specified in the :attr:`ssl_version` attribute." msgstr "" -#: ../Doc/library/ftplib.rst:429 +#: ../Doc/library/ftplib.rst:430 msgid "" "The method now supports hostname check with :attr:`ssl.SSLContext." "check_hostname` and *Server Name Indication* (see :data:`ssl.HAS_SNI`)." msgstr "" -#: ../Doc/library/ftplib.rst:436 +#: ../Doc/library/ftplib.rst:437 msgid "" "Revert control channel back to plaintext. This can be useful to take " "advantage of firewalls that know how to handle NAT with non-secure FTP " "without opening fixed ports." msgstr "" -#: ../Doc/library/ftplib.rst:444 +#: ../Doc/library/ftplib.rst:445 msgid "Set up secure data connection." msgstr "" -#: ../Doc/library/ftplib.rst:448 +#: ../Doc/library/ftplib.rst:449 msgid "Set up clear text data connection." msgstr "" diff --git a/library/functions.po b/library/functions.po index 8a4fb042b..a9bf4c730 100644 --- a/library/functions.po +++ b/library/functions.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-01 23:07+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -1970,14 +1970,16 @@ msgid "``'+'``" msgstr "``'+'``" #: ../Doc/library/functions.rst:1071 -msgid "open a disk file for updating (reading and writing)" +#, fuzzy +msgid "open for updating (reading and writing)" msgstr "ouvre un fichier pour le modifier (lire et écrire)" #: ../Doc/library/functions.rst:1074 +#, fuzzy msgid "" "The default mode is ``'r'`` (open for reading text, synonym of ``'rt'``). " -"For binary read-write access, the mode ``'w+b'`` opens and truncates the " -"file to 0 bytes. ``'r+b'`` opens the file without truncation." +"Modes ``'w+'`` and ``'w+b'`` open and truncate the file. Modes ``'r+'`` and " +"``'r+b'`` open the file with no truncation." msgstr "" "Les mode par défaut est ``'r'`` (ouvrir pour lire du texte, synonyme de " "``'rt'``). Pour un accès en lecture écriture binaire, le mode ``'w+b'`` " @@ -2356,17 +2358,18 @@ msgstr "" "s'agit de l'inverse de :func:`chr`." #: ../Doc/library/functions.rst:1277 +#, fuzzy msgid "" -"Return *x* to the power *y*; if *z* is present, return *x* to the power *y*, " -"modulo *z* (computed more efficiently than ``pow(x, y) % z``). The two-" -"argument form ``pow(x, y)`` is equivalent to using the power operator: " -"``x**y``." +"Return *base* to the power *exp*; if *mod* is present, return *base* to the " +"power *exp*, modulo *mod* (computed more efficiently than ``pow(base, exp) % " +"mod``). The two-argument form ``pow(base, exp)`` is equivalent to using the " +"power operator: ``base**exp``." msgstr "" "Donne *x* puissance *y*, et si *z* est présent, donne *x* puissance *y* " "modulo *z* (calculé de manière plus efficiente que ``pow(x, y) % z``). La " "forme à deux arguments est équivalent à ``x**y``." -#: ../Doc/library/functions.rst:1281 +#: ../Doc/library/functions.rst:1282 #, fuzzy msgid "" "The arguments must have numeric types. With mixed operand types, the " @@ -2386,25 +2389,31 @@ msgstr "" "argument est négatif, le troisième doit être omis. Si *z* est fourni, *x* et " "*y* doivent être des entiers et *y* positif." -#: ../Doc/library/functions.rst:1288 +#: ../Doc/library/functions.rst:1289 msgid "" -"For :class:`int` operands *x* and *y*, if *z* is present, *z* must also be " -"of integer type and *z* must be nonzero. If *z* is present and *y* is " -"negative, *x* must be relatively prime to *z*. In that case, ``pow(inv_x, -" -"y, z)`` is returned, where *inv_x* is an inverse to *x* modulo *z*." +"For :class:`int` operands *base* and *exp*, if *mod* is present, *mod* must " +"also be of integer type and *mod* must be nonzero. If *mod* is present and " +"*exp* is negative, *base* must be relatively prime to *mod*. In that case, " +"``pow(inv_base, -exp, mod)`` is returned, where *inv_base* is an inverse to " +"*base* modulo *mod*." msgstr "" -#: ../Doc/library/functions.rst:1293 +#: ../Doc/library/functions.rst:1295 msgid "Here's an example of computing an inverse for ``38`` modulo ``97``::" msgstr "" -#: ../Doc/library/functions.rst:1300 +#: ../Doc/library/functions.rst:1302 msgid "" "For :class:`int` operands, the three-argument form of ``pow`` now allows the " "second argument to be negative, permitting computation of modular inverses." msgstr "" -#: ../Doc/library/functions.rst:1308 +#: ../Doc/library/functions.rst:1307 +msgid "" +"Allow keyword arguments. Formerly, only positional arguments were supported." +msgstr "" + +#: ../Doc/library/functions.rst:1314 msgid "" "Print *objects* to the text stream *file*, separated by *sep* and followed " "by *end*. *sep*, *end*, *file* and *flush*, if present, must be given as " @@ -2414,7 +2423,7 @@ msgstr "" "*end*. *sep*, *end*, *file*, et *flush*, s'ils sont présents, doivent être " "données par mot clef." -#: ../Doc/library/functions.rst:1312 +#: ../Doc/library/functions.rst:1318 msgid "" "All non-keyword arguments are converted to strings like :func:`str` does and " "written to the stream, separated by *sep* and followed by *end*. Both *sep* " @@ -2428,7 +2437,7 @@ msgstr "" "les valeurs par défaut. Si aucun *objects* n'est donné :func:`print` écris " "seulement *end*." -#: ../Doc/library/functions.rst:1318 +#: ../Doc/library/functions.rst:1324 msgid "" "The *file* argument must be an object with a ``write(string)`` method; if it " "is not present or ``None``, :data:`sys.stdout` will be used. Since printed " @@ -2441,7 +2450,7 @@ msgstr "" "peut pas être utilisé avec des fichiers ouverts en mode binaire. Pour ceux " "ci utilisez plutôt ``file.write(...)``." -#: ../Doc/library/functions.rst:1323 +#: ../Doc/library/functions.rst:1329 msgid "" "Whether output is buffered is usually determined by *file*, but if the " "*flush* keyword argument is true, the stream is forcibly flushed." @@ -2449,15 +2458,15 @@ msgstr "" "Que la sortie utilise un *buffer* ou non est souvent décidé par *file*, mais " "si l'argument *flush* est vrai, le tampon du flux est vidé explicitement." -#: ../Doc/library/functions.rst:1326 +#: ../Doc/library/functions.rst:1332 msgid "Added the *flush* keyword argument." msgstr "Ajout de l'argument par mot clef *flush*." -#: ../Doc/library/functions.rst:1332 +#: ../Doc/library/functions.rst:1338 msgid "Return a property attribute." msgstr "Donne un attribut propriété." -#: ../Doc/library/functions.rst:1334 +#: ../Doc/library/functions.rst:1340 msgid "" "*fget* is a function for getting an attribute value. *fset* is a function " "for setting an attribute value. *fdel* is a function for deleting an " @@ -2468,11 +2477,11 @@ msgstr "" "supprimer la valeur d'un attribut, et *doc* créé une *docstring* pour " "l'attribut." -#: ../Doc/library/functions.rst:1338 +#: ../Doc/library/functions.rst:1344 msgid "A typical use is to define a managed attribute ``x``::" msgstr "Une utilisation typique : définir un attribut managé ``x`` ::" -#: ../Doc/library/functions.rst:1355 +#: ../Doc/library/functions.rst:1361 msgid "" "If *c* is an instance of *C*, ``c.x`` will invoke the getter, ``c.x = " "value`` will invoke the setter and ``del c.x`` the deleter." @@ -2480,7 +2489,7 @@ msgstr "" "Si *c* est une instance de *C*, ``c.x`` appellera le *getter*, ``c.x = " "value`` invoquera le *setter*, et ``del x`` le *deleter*." -#: ../Doc/library/functions.rst:1358 +#: ../Doc/library/functions.rst:1364 msgid "" "If given, *doc* will be the docstring of the property attribute. Otherwise, " "the property will copy *fget*'s docstring (if it exists). This makes it " @@ -2492,7 +2501,7 @@ msgstr "" "création de propriétés en lecture seule en utilisant simplement :func:" "`property` comme un :term:`decorator` ::" -#: ../Doc/library/functions.rst:1371 +#: ../Doc/library/functions.rst:1377 msgid "" "The ``@property`` decorator turns the :meth:`voltage` method into a \"getter" "\" for a read-only attribute with the same name, and it sets the docstring " @@ -2502,7 +2511,7 @@ msgstr "" "*getter* d'un attribut du même nom, et donne *\"Get the current voltage\"* " "comme *docstring* de *voltage*." -#: ../Doc/library/functions.rst:1375 +#: ../Doc/library/functions.rst:1381 msgid "" "A property object has :attr:`~property.getter`, :attr:`~property.setter`, " "and :attr:`~property.deleter` methods usable as decorators that create a " @@ -2514,7 +2523,7 @@ msgstr "" "une copie de la propriété avec les accesseurs correspondants définis par la " "fonction de décoration. C'est plus clair avec un exemple ::" -#: ../Doc/library/functions.rst:1397 +#: ../Doc/library/functions.rst:1403 msgid "" "This code is exactly equivalent to the first example. Be sure to give the " "additional functions the same name as the original property (``x`` in this " @@ -2524,7 +2533,7 @@ msgstr "" "donner aux fonctions additionnelles le même nom que la propriété (``x`` dans " "ce cas.)" -#: ../Doc/library/functions.rst:1401 +#: ../Doc/library/functions.rst:1407 msgid "" "The returned property object also has the attributes ``fget``, ``fset``, and " "``fdel`` corresponding to the constructor arguments." @@ -2532,11 +2541,11 @@ msgstr "" "L'objet propriété donné à aussi les attributs ``fget``, ``fset`` et ``fdel`` " "correspondant correspondants aux arguments du constructeur." -#: ../Doc/library/functions.rst:1404 +#: ../Doc/library/functions.rst:1410 msgid "The docstrings of property objects are now writeable." msgstr "Les *docstrings* des objets propriété peuvent maintenant être écrits." -#: ../Doc/library/functions.rst:1413 +#: ../Doc/library/functions.rst:1419 msgid "" "Rather than being a function, :class:`range` is actually an immutable " "sequence type, as documented in :ref:`typesseq-range` and :ref:`typesseq`." @@ -2544,7 +2553,7 @@ msgstr "" "Plutôt qu'être une fonction, :class:`range` est en fait une séquence " "immuable, tel que documenté dans :ref:`typesseq-range` et :ref:`typesseq`." -#: ../Doc/library/functions.rst:1419 +#: ../Doc/library/functions.rst:1425 msgid "" "Return a string containing a printable representation of an object. For " "many types, this function makes an attempt to return a string that would " @@ -2562,7 +2571,7 @@ msgstr "" "l'objet. Une classe peut contrôler ce que cette fonction donne pour ses " "instances en définissant une méthode :meth:`__repr__`." -#: ../Doc/library/functions.rst:1430 +#: ../Doc/library/functions.rst:1436 msgid "" "Return a reverse :term:`iterator`. *seq* must be an object which has a :" "meth:`__reversed__` method or supports the sequence protocol (the :meth:" @@ -2574,7 +2583,7 @@ msgstr "" "meth:`__len__` et la méthode :meth:`__getitem__` avec des arguments entiers " "commençant à zéro)." -#: ../Doc/library/functions.rst:1438 +#: ../Doc/library/functions.rst:1444 msgid "" "Return *number* rounded to *ndigits* precision after the decimal point. If " "*ndigits* is omitted or is ``None``, it returns the nearest integer to its " @@ -2584,7 +2593,7 @@ msgstr "" "virgule. Si *ndigits* est omis (ou est ``None``), l'entier le plus proche " "est renvoyé." -#: ../Doc/library/functions.rst:1442 +#: ../Doc/library/functions.rst:1448 msgid "" "For the built-in types supporting :func:`round`, values are rounded to the " "closest multiple of 10 to the power minus *ndigits*; if two multiples are " @@ -2602,7 +2611,7 @@ msgstr "" "zéro, ou négatif). La valeur renvoyée est un entier si *ndigits* n'est pas " "donné, (ou est ``None``). Sinon elle est du même type que *number*." -#: ../Doc/library/functions.rst:1451 +#: ../Doc/library/functions.rst:1457 msgid "" "For a general Python object ``number``, ``round`` delegates to ``number." "__round__``." @@ -2610,7 +2619,7 @@ msgstr "" "Pour tout autre objet Python ``number``, ``round`` délègue à ``number." "__round__``." -#: ../Doc/library/functions.rst:1456 +#: ../Doc/library/functions.rst:1462 msgid "" "The behavior of :func:`round` for floats can be surprising: for example, " "``round(2.675, 2)`` gives ``2.67`` instead of the expected ``2.68``. This is " @@ -2624,7 +2633,7 @@ msgstr "" "de décimaux ne peuvent pas être représentés exactement en nombre a virgule " "flottante. Voir :ref:`tut-fp-issues` pour plus d'information." -#: ../Doc/library/functions.rst:1467 +#: ../Doc/library/functions.rst:1473 msgid "" "Return a new :class:`set` object, optionally with elements taken from " "*iterable*. ``set`` is a built-in class. See :class:`set` and :ref:`types-" @@ -2634,7 +2643,7 @@ msgstr "" "d'*iterable*. ``set`` est une classe native. Voir :class:`set` et :ref:" "`types-set` pour la documentation de cette classe." -#: ../Doc/library/functions.rst:1471 +#: ../Doc/library/functions.rst:1477 msgid "" "For other containers see the built-in :class:`frozenset`, :class:`list`, :" "class:`tuple`, and :class:`dict` classes, as well as the :mod:`collections` " @@ -2644,7 +2653,7 @@ msgstr "" "`list`, :class:`tuple`, et :class:`dict`, ainsi que le module :mod:" "`collections`." -#: ../Doc/library/functions.rst:1478 +#: ../Doc/library/functions.rst:1484 msgid "" "This is the counterpart of :func:`getattr`. The arguments are an object, a " "string and an arbitrary value. The string may name an existing attribute or " @@ -2658,7 +2667,7 @@ msgstr "" "si l'objet l'autorise. Par exemple, ``setattr(x, 'foobar', 123)`` équivaut à " "``x.foobar = 123``." -#: ../Doc/library/functions.rst:1490 +#: ../Doc/library/functions.rst:1496 msgid "" "Return a :term:`slice` object representing the set of indices specified by " "``range(start, stop, step)``. The *start* and *step* arguments default to " @@ -2682,16 +2691,16 @@ msgstr "" "étendue. Par exemple ``a[start:stop:step]`` ou ``a[start:stop, i]``. Voir :" "func:`itertools.islice` pour une version alternative donnant un itérateur." -#: ../Doc/library/functions.rst:1503 +#: ../Doc/library/functions.rst:1509 msgid "Return a new sorted list from the items in *iterable*." msgstr "Donne une nouvelle liste triée depuis les éléments d'*iterable*." -#: ../Doc/library/functions.rst:1505 +#: ../Doc/library/functions.rst:1511 msgid "" "Has two optional arguments which must be specified as keyword arguments." msgstr "A deux arguments optionnels qui doivent être fournis par mot clef." -#: ../Doc/library/functions.rst:1507 +#: ../Doc/library/functions.rst:1513 msgid "" "*key* specifies a function of one argument that is used to extract a " "comparison key from each element in *iterable* (for example, ``key=str." @@ -2702,7 +2711,7 @@ msgstr "" "lower``). La valeur par défaut est ``None`` (compare les éléments " "directement)." -#: ../Doc/library/functions.rst:1511 +#: ../Doc/library/functions.rst:1517 msgid "" "*reverse* is a boolean value. If set to ``True``, then the list elements " "are sorted as if each comparison were reversed." @@ -2710,7 +2719,7 @@ msgstr "" "*reverse*, une valeur booléenne. Si elle est ``True``, la liste d'éléments " "est triée comme si toutes les comparaisons étaient inversées." -#: ../Doc/library/functions.rst:1514 +#: ../Doc/library/functions.rst:1520 msgid "" "Use :func:`functools.cmp_to_key` to convert an old-style *cmp* function to a " "*key* function." @@ -2718,7 +2727,7 @@ msgstr "" "Utilisez :func:`functools.cmp_to_key` pour convertir l'ancienne notation " "*cmp* en une fonction *key*." -#: ../Doc/library/functions.rst:1517 +#: ../Doc/library/functions.rst:1523 msgid "" "The built-in :func:`sorted` function is guaranteed to be stable. A sort is " "stable if it guarantees not to change the relative order of elements that " @@ -2730,17 +2739,17 @@ msgstr "" "eux. C'est utile pour trier en plusieurs passes, par exemple par département " "puis par salaire)." -#: ../Doc/library/functions.rst:1522 +#: ../Doc/library/functions.rst:1528 msgid "" "For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." msgstr "" "Pour des exemples de tris et un bref tutoriel, consultez :ref:`sortinghowto`." -#: ../Doc/library/functions.rst:1526 +#: ../Doc/library/functions.rst:1532 msgid "Transform a method into a static method." msgstr "Transforme une méthode en méthode statique." -#: ../Doc/library/functions.rst:1528 +#: ../Doc/library/functions.rst:1534 msgid "" "A static method does not receive an implicit first argument. To declare a " "static method, use this idiom::" @@ -2748,7 +2757,7 @@ msgstr "" "Une méthode statique ne reçoit pas de premier argument implicitement. Voilà " "comment déclarer une méthode statique ::" -#: ../Doc/library/functions.rst:1535 +#: ../Doc/library/functions.rst:1541 msgid "" "The ``@staticmethod`` form is a function :term:`decorator` -- see :ref:" "`function` for details." @@ -2756,7 +2765,7 @@ msgstr "" "La forme ``@staticmethod`` est un :term:`decorator` de fonction. Consultez :" "ref:`function` pour plus de détails." -#: ../Doc/library/functions.rst:1538 +#: ../Doc/library/functions.rst:1544 msgid "" "A static method can be called either on the class (such as ``C.f()``) or on " "an instance (such as ``C().f()``)." @@ -2764,7 +2773,7 @@ msgstr "" "Elle peut être appelée soit sur une classe (tel que ``C.f()``) ou sur une " "instance (tel que ``C().f()``)." -#: ../Doc/library/functions.rst:1541 +#: ../Doc/library/functions.rst:1547 msgid "" "Static methods in Python are similar to those found in Java or C++. Also " "see :func:`classmethod` for a variant that is useful for creating alternate " @@ -2774,7 +2783,7 @@ msgstr "" "ou en C++. Consultez :func:`classmethod` pour une variante utile pour créer " "des constructeurs alternatifs." -#: ../Doc/library/functions.rst:1545 +#: ../Doc/library/functions.rst:1551 msgid "" "Like all decorators, it is also possible to call ``staticmethod`` as a " "regular function and do something with its result. This is needed in some " @@ -2788,19 +2797,19 @@ msgstr "" "depuis le corps d'une classe, et souhaiteriez éviter sa transformation en " "méthode d'instance. Pour ces cas, faites comme suit ::" -#: ../Doc/library/functions.rst:1554 +#: ../Doc/library/functions.rst:1560 msgid "For more information on static methods, see :ref:`types`." msgstr "" "Pour plus d'informations sur les méthodes statiques, consultez :ref:`types`." -#: ../Doc/library/functions.rst:1565 +#: ../Doc/library/functions.rst:1571 msgid "" "Return a :class:`str` version of *object*. See :func:`str` for details." msgstr "" "Donne une version sous forme de :class:`str` d'*object*. Voir :func:`str` " "pour plus de détails." -#: ../Doc/library/functions.rst:1567 +#: ../Doc/library/functions.rst:1573 msgid "" "``str`` is the built-in string :term:`class`. For general information about " "strings, see :ref:`textseq`." @@ -2808,7 +2817,7 @@ msgstr "" "``str`` est la :term:`class` native des chaînes de caractères. Pour des " "informations générales à propos des chaînes, consultez :ref:`textseq`." -#: ../Doc/library/functions.rst:1573 +#: ../Doc/library/functions.rst:1579 #, fuzzy msgid "" "Sums *start* and the items of an *iterable* from left to right and returns " @@ -2820,7 +2829,7 @@ msgstr "" "sont normalement des nombres, et la valeur de *start* ne peut pas être une " "chaîne." -#: ../Doc/library/functions.rst:1577 +#: ../Doc/library/functions.rst:1583 msgid "" "For some use cases, there are good alternatives to :func:`sum`. The " "preferred, fast way to concatenate a sequence of strings is by calling ``''." @@ -2834,12 +2843,12 @@ msgstr "" "meilleure précision, voir :func:`math.fsum`. Pour concaténer une série " "d'itérables, utilisez plutôt :func:`itertools.chain`." -#: ../Doc/library/functions.rst:1583 +#: ../Doc/library/functions.rst:1589 #, fuzzy msgid "The *start* parameter can be specified as a keyword argument." msgstr "A deux arguments optionnels qui doivent être fournis par mot clef." -#: ../Doc/library/functions.rst:1588 +#: ../Doc/library/functions.rst:1594 #, fuzzy msgid "" "Return a proxy object that delegates method calls to a parent or sibling " @@ -2852,20 +2861,20 @@ msgstr "" "recherche est le même que celui utilisé par :func:`getattr` sauf que *type* " "lui même est sauté." -#: ../Doc/library/functions.rst:1592 +#: ../Doc/library/functions.rst:1598 msgid "" "The *object-or-type* determines the :term:`method resolution order` to be " "searched. The search starts from the class right after the *type*." msgstr "" -#: ../Doc/library/functions.rst:1596 +#: ../Doc/library/functions.rst:1602 msgid "" "For example, if :attr:`~class.__mro__` of *object-or-type* is ``D -> B -> C -" "> A -> object`` and the value of *type* is ``B``, then :func:`super` " "searches ``C -> A -> object``." msgstr "" -#: ../Doc/library/functions.rst:1600 +#: ../Doc/library/functions.rst:1606 #, fuzzy msgid "" "The :attr:`~class.__mro__` attribute of the *object-or-type* lists the " @@ -2878,7 +2887,7 @@ msgstr "" "L'attribut est dynamique et peut changer lorsque la hiérarchie d'héritage " "est modifiée." -#: ../Doc/library/functions.rst:1605 +#: ../Doc/library/functions.rst:1611 msgid "" "If the second argument is omitted, the super object returned is unbound. If " "the second argument is an object, ``isinstance(obj, type)`` must be true. " @@ -2890,7 +2899,7 @@ msgstr "" "le second argument est un type, ``issubclass(type2, type)`` doit être vrai " "(c'est utile pour les méthodes de classe)." -#: ../Doc/library/functions.rst:1610 +#: ../Doc/library/functions.rst:1616 msgid "" "There are two typical use cases for *super*. In a class hierarchy with " "single inheritance, *super* can be used to refer to parent classes without " @@ -2903,7 +2912,7 @@ msgstr "" "maintenable. Cet usage se rapproche de l'usage de *super* dans d'autres " "langages de programmation." -#: ../Doc/library/functions.rst:1615 +#: ../Doc/library/functions.rst:1621 msgid "" "The second use case is to support cooperative multiple inheritance in a " "dynamic execution environment. This use case is unique to Python and is not " @@ -2926,12 +2935,19 @@ msgstr "" "changements dans la hiérarchie, et parce que l'ordre peut inclure des " "classes sœurs inconnues avant l'exécution)." -#: ../Doc/library/functions.rst:1625 +#: ../Doc/library/functions.rst:1631 msgid "For both use cases, a typical superclass call looks like this::" msgstr "" "Dans tous les cas, un appel typique à une classe parente ressemble à ::" -#: ../Doc/library/functions.rst:1632 +#: ../Doc/library/functions.rst:1638 +msgid "" +"In addition to method lookups, :func:`super` also works for attribute " +"lookups. One possible use case for this is calling :term:`descriptor`\\s in " +"a parent or sibling class." +msgstr "" + +#: ../Doc/library/functions.rst:1642 msgid "" "Note that :func:`super` is implemented as part of the binding process for " "explicit dotted attribute lookups such as ``super().__getitem__(name)``. It " @@ -2948,7 +2964,7 @@ msgstr "" "n'est pas défini pour les recherches implicites via des instructions ou des " "opérateurs tel que ``super()[name]``." -#: ../Doc/library/functions.rst:1639 +#: ../Doc/library/functions.rst:1649 msgid "" "Also note that, aside from the zero argument form, :func:`super` is not " "limited to use inside methods. The two argument form specifies the " @@ -2965,7 +2981,7 @@ msgstr "" "propos de la classe en cours de définition, ainsi qu'accéder à l'instance " "courante pour les méthodes ordinaires." -#: ../Doc/library/functions.rst:1646 +#: ../Doc/library/functions.rst:1656 msgid "" "For practical suggestions on how to design cooperative classes using :func:" "`super`, see `guide to using super() `_." -#: ../Doc/library/functions.rst:1655 +#: ../Doc/library/functions.rst:1665 msgid "" "Rather than being a function, :class:`tuple` is actually an immutable " "sequence type, as documented in :ref:`typesseq-tuple` and :ref:`typesseq`." @@ -2983,7 +2999,7 @@ msgstr "" "Plutôt qu'être une fonction, :class:`tuple` est en fait un type de séquence " "immuable, tel que documenté dans :ref:`typesseq-tuple` et :ref:`typesseq`." -#: ../Doc/library/functions.rst:1664 +#: ../Doc/library/functions.rst:1674 msgid "" "With one argument, return the type of an *object*. The return value is a " "type object and generally the same object as returned by :attr:`object." @@ -2993,7 +3009,7 @@ msgstr "" "type et généralement la même que la valeur de l'attribut :attr:`object." "__class__ `." -#: ../Doc/library/functions.rst:1668 +#: ../Doc/library/functions.rst:1678 msgid "" "The :func:`isinstance` built-in function is recommended for testing the type " "of an object, because it takes subclasses into account." @@ -3001,7 +3017,7 @@ msgstr "" "La fonction native :func:`isinstance` est recommandée pour tester le type " "d'un objet car elle prend en compte l'héritage." -#: ../Doc/library/functions.rst:1672 +#: ../Doc/library/functions.rst:1682 msgid "" "With three arguments, return a new type object. This is essentially a " "dynamic form of the :keyword:`class` statement. The *name* string is the " @@ -3022,11 +3038,11 @@ msgstr "" "exemple, les deux instructions suivantes créent deux instances identiques " "de :class:`type` :" -#: ../Doc/library/functions.rst:1686 +#: ../Doc/library/functions.rst:1696 msgid "See also :ref:`bltin-type-objects`." msgstr "Voir aussi :ref:`bltin-type-objects`." -#: ../Doc/library/functions.rst:1688 +#: ../Doc/library/functions.rst:1698 msgid "" "Subclasses of :class:`type` which don't override ``type.__new__`` may no " "longer use the one-argument form to get the type of an object." @@ -3035,7 +3051,7 @@ msgstr "" "ne devraient plus utiliser la forme à un argument pour récupérer le type " "d'un objet." -#: ../Doc/library/functions.rst:1694 +#: ../Doc/library/functions.rst:1704 msgid "" "Return the :attr:`~object.__dict__` attribute for a module, class, instance, " "or any other object with a :attr:`~object.__dict__` attribute." @@ -3044,7 +3060,7 @@ msgstr "" "instance ou de n'importe quel objet avec un attribut :attr:`~object." "__dict__`." -#: ../Doc/library/functions.rst:1697 +#: ../Doc/library/functions.rst:1707 msgid "" "Objects such as modules and instances have an updateable :attr:`~object." "__dict__` attribute; however, other objects may have write restrictions on " @@ -3057,7 +3073,7 @@ msgstr "" "exemple, les classes utilisent un :class:`types.MappingProxyType` pour " "éviter les modifications directes du dictionnaire)." -#: ../Doc/library/functions.rst:1702 +#: ../Doc/library/functions.rst:1712 msgid "" "Without an argument, :func:`vars` acts like :func:`locals`. Note, the " "locals dictionary is only useful for reads since updates to the locals " @@ -3067,11 +3083,11 @@ msgstr "" "dictionnaire des variables locales n'est utile qu'en lecture, car ses " "écritures sont ignorées." -#: ../Doc/library/functions.rst:1709 +#: ../Doc/library/functions.rst:1719 msgid "Make an iterator that aggregates elements from each of the iterables." msgstr "Construit un itérateur agrégeant les éléments de tous les itérables." -#: ../Doc/library/functions.rst:1711 +#: ../Doc/library/functions.rst:1721 msgid "" "Returns an iterator of tuples, where the *i*-th tuple contains the *i*-th " "element from each of the argument sequences or iterables. The iterator " @@ -3085,7 +3101,7 @@ msgstr "" "itérable, elle donne un itérateur sur des *tuples* d'un élément. Sans " "arguments, elle donne un itérateur vide. Équivalent à ::" -#: ../Doc/library/functions.rst:1730 +#: ../Doc/library/functions.rst:1740 msgid "" "The left-to-right evaluation order of the iterables is guaranteed. This " "makes possible an idiom for clustering a data series into n-length groups " @@ -3099,7 +3115,7 @@ msgstr "" "que le tuple obtenu contient le résultat de ``n`` appels à l'itérateur. Cela " "a pour effet de diviser la séquence en morceaux de taille *n*." -#: ../Doc/library/functions.rst:1736 +#: ../Doc/library/functions.rst:1746 msgid "" ":func:`zip` should only be used with unequal length inputs when you don't " "care about trailing, unmatched values from the longer iterables. If those " @@ -3110,7 +3126,7 @@ msgstr "" "peuvent être ignorées. Si c'est valeurs sont importantes, utilisez plutôt :" "func:`itertools.zip_longest`." -#: ../Doc/library/functions.rst:1740 +#: ../Doc/library/functions.rst:1750 msgid "" ":func:`zip` in conjunction with the ``*`` operator can be used to unzip a " "list::" @@ -3118,7 +3134,7 @@ msgstr "" ":func:`zip` peut être utilisée conjointement avec l'opérateur ``*`` pour " "dézipper une liste ::" -#: ../Doc/library/functions.rst:1761 +#: ../Doc/library/functions.rst:1771 msgid "" "This is an advanced function that is not needed in everyday Python " "programming, unlike :func:`importlib.import_module`." @@ -3126,7 +3142,7 @@ msgstr "" "C'est une fonction avancée qui n'est pas fréquemment nécessaire, " "contrairement à :func:`importlib.import_module`." -#: ../Doc/library/functions.rst:1764 +#: ../Doc/library/functions.rst:1774 msgid "" "This function is invoked by the :keyword:`import` statement. It can be " "replaced (by importing the :mod:`builtins` module and assigning to " @@ -3146,7 +3162,7 @@ msgstr "" "trouver l'implémentation par défaut. L'usage direct de :func:`__import__` " "est aussi déconseillé en faveur de :func:`importlib.import_module`." -#: ../Doc/library/functions.rst:1773 +#: ../Doc/library/functions.rst:1783 msgid "" "The function imports the module *name*, potentially using the given " "*globals* and *locals* to determine how to interpret the name in a package " @@ -3162,7 +3178,7 @@ msgstr "" "l'argument *locals* et n'utilise *globals* que pour déterminer le contexte " "du paquet de l'instruction :keyword:`import`." -#: ../Doc/library/functions.rst:1780 +#: ../Doc/library/functions.rst:1790 msgid "" "*level* specifies whether to use absolute or relative imports. ``0`` (the " "default) means only perform absolute imports. Positive values for *level* " @@ -3175,7 +3191,7 @@ msgstr "" "positive indique le nombre de dossiers parents relativement au dossier du " "module appelant :func:`__import__` (voir la :pep:`328`)." -#: ../Doc/library/functions.rst:1786 +#: ../Doc/library/functions.rst:1796 msgid "" "When the *name* variable is of the form ``package.module``, normally, the " "top-level package (the name up till the first dot) is returned, *not* the " @@ -3187,7 +3203,7 @@ msgstr "" "le module nommé par *name*. Cependant, lorsqu'un argument *fromlist* est " "fourni, le module nommé par *name* est donné." -#: ../Doc/library/functions.rst:1791 +#: ../Doc/library/functions.rst:1801 msgid "" "For example, the statement ``import spam`` results in bytecode resembling " "the following code::" @@ -3195,11 +3211,11 @@ msgstr "" "Par exemple, l'instruction ``import spam`` donne un code intermédiaire " "(*bytecode* en anglais) ressemblant au code suivant ::" -#: ../Doc/library/functions.rst:1796 +#: ../Doc/library/functions.rst:1806 msgid "The statement ``import spam.ham`` results in this call::" msgstr "L'instruction ``import ham.ham`` appelle ::" -#: ../Doc/library/functions.rst:1800 +#: ../Doc/library/functions.rst:1810 msgid "" "Note how :func:`__import__` returns the toplevel module here because this is " "the object that is bound to a name by the :keyword:`import` statement." @@ -3207,7 +3223,7 @@ msgstr "" "Notez comment :func:`__import__` donne le module le plus haut ici parce que " "c'est l'objet lié à un nom par l'instruction :keyword:`import`." -#: ../Doc/library/functions.rst:1803 +#: ../Doc/library/functions.rst:1813 msgid "" "On the other hand, the statement ``from spam.ham import eggs, sausage as " "saus`` results in ::" @@ -3215,7 +3231,7 @@ msgstr "" "En revanche, l'instruction ``from spam.ham import eggs, saucage as saus`` " "donne ::" -#: ../Doc/library/functions.rst:1810 +#: ../Doc/library/functions.rst:1820 msgid "" "Here, the ``spam.ham`` module is returned from :func:`__import__`. From " "this object, the names to import are retrieved and assigned to their " @@ -3224,7 +3240,7 @@ msgstr "" "Ici le module ``spam.ham`` est donné par :func:`__import__`. De cet objet, " "les noms à importer sont récupérés et assignés à leurs noms respectifs." -#: ../Doc/library/functions.rst:1814 +#: ../Doc/library/functions.rst:1824 msgid "" "If you simply want to import a module (potentially within a package) by " "name, use :func:`importlib.import_module`." @@ -3232,7 +3248,7 @@ msgstr "" "Si vous voulez simplement importer un module (potentiellement dans un " "paquet) par son nom, utilisez :func:`importlib.import_module`." -#: ../Doc/library/functions.rst:1817 +#: ../Doc/library/functions.rst:1827 msgid "" "Negative values for *level* are no longer supported (which also changes the " "default value to 0)." @@ -3240,11 +3256,11 @@ msgstr "" "Des valeurs négatives pour *level* ne sont plus gérées (ce qui change la " "valeur par défaut pour 0)." -#: ../Doc/library/functions.rst:1823 +#: ../Doc/library/functions.rst:1833 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/functions.rst:1824 +#: ../Doc/library/functions.rst:1834 msgid "" "Note that the parser only accepts the Unix-style end of line convention. If " "you are reading the code from a file, make sure to use newline conversion " diff --git a/library/glob.po b/library/glob.po index 6dce3af2c..91ef71a56 100644 --- a/library/glob.po +++ b/library/glob.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-09-28 12:40+0200\n" "Last-Translator: Julien VITARD \n" "Language-Team: FRENCH \n" @@ -81,23 +81,25 @@ msgstr "" "shell)." #: ../Doc/library/glob.rst:51 +#, fuzzy msgid "" "If *recursive* is true, the pattern \"``**``\" will match any files and zero " -"or more directories and subdirectories. If the pattern is followed by an " -"``os.sep``, only directories and subdirectories match." +"or more directories, subdirectories and symbolic links to directories. If " +"the pattern is followed by an :data:`os.sep` or :data:`os.altsep` then files " +"will not match." msgstr "" "Si *recursive* est vrai, le motif \"``**``\" reconnaît tous les fichiers et, " "zéro ou plus répertoires et sous-répertoires. Si le motif est suivi par un " "caractère de séparation ``os.sep``, seuls les répertoires et sous-" "répertoires sont reconnus." -#: ../Doc/library/glob.rst:56 ../Doc/library/glob.rst:70 +#: ../Doc/library/glob.rst:57 ../Doc/library/glob.rst:71 msgid "" "Raises an :ref:`auditing event ` ``glob.glob`` with arguments " "``pathname``, ``recursive``." msgstr "" -#: ../Doc/library/glob.rst:58 +#: ../Doc/library/glob.rst:59 msgid "" "Using the \"``**``\" pattern in large directory trees may consume an " "inordinate amount of time." @@ -105,11 +107,11 @@ msgstr "" "Utiliser le motif \"``**``\" dans de grandes arborescences de dossier peut " "consommer une quantité de temps démesurée." -#: ../Doc/library/glob.rst:61 +#: ../Doc/library/glob.rst:62 msgid "Support for recursive globs using \"``**``\"." msgstr "Gestion des chemins récursifs utilisant le motif \"``**``\"." -#: ../Doc/library/glob.rst:67 +#: ../Doc/library/glob.rst:68 msgid "" "Return an :term:`iterator` which yields the same values as :func:`glob` " "without actually storing them all simultaneously." @@ -117,7 +119,7 @@ msgstr "" "Renvoie un :term:`iterator` qui produit les mêmes valeurs que :func:`glob`, " "sans toutes les charger en mémoire simultanément." -#: ../Doc/library/glob.rst:75 +#: ../Doc/library/glob.rst:76 msgid "" "Escape all special characters (``'?'``, ``'*'`` and ``'['``). This is useful " "if you want to match an arbitrary literal string that may have special " @@ -132,7 +134,7 @@ msgstr "" "Windows ``escape('//?/c:/Quo vadis?.txt')`` renvoie ``'//?/c:/Quo vadis[?]." "txt'``." -#: ../Doc/library/glob.rst:84 +#: ../Doc/library/glob.rst:85 msgid "" "For example, consider a directory containing the following files: :file:`1." "gif`, :file:`2.txt`, :file:`card.gif` and a subdirectory :file:`sub` which " @@ -146,7 +148,7 @@ msgstr "" "les résultats suivants. Notons que les composantes principales des chemins " "sont préservées. ::" -#: ../Doc/library/glob.rst:102 +#: ../Doc/library/glob.rst:103 msgid "" "If the directory contains files starting with ``.`` they won't be matched by " "default. For example, consider a directory containing :file:`card.gif` and :" @@ -156,11 +158,11 @@ msgstr "" "reconnus par défaut. Par exemple, considérons un répertoire contenant :file:" "`card.gif` et :file:`.card.gif` ::" -#: ../Doc/library/glob.rst:114 +#: ../Doc/library/glob.rst:115 msgid "Module :mod:`fnmatch`" msgstr "Module :mod:`fnmatch`" -#: ../Doc/library/glob.rst:115 +#: ../Doc/library/glob.rst:116 msgid "Shell-style filename (not path) expansion" msgstr "" "Recherche de noms de fichiers de style shell (ne concerne pas les chemins)" diff --git a/library/heapq.po b/library/heapq.po index f45c26c6a..19aa3903a 100644 --- a/library/heapq.po +++ b/library/heapq.po @@ -5,14 +5,14 @@ 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-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-16 12: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.2.1\n" #: ../Doc/library/heapq.rst:2 diff --git a/library/imp.po b/library/imp.po index eb6e33f06..ad2edfe99 100644 --- a/library/imp.po +++ b/library/imp.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-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -93,21 +93,20 @@ msgstr "" #: ../Doc/library/imp.rst:69 msgid "" -"If the module does not live in a file, the returned *file* is ``None``, " -"*pathname* is the empty string, and the *description* tuple contains empty " -"strings for its suffix and mode; the module type is indicated as given in " -"parentheses above. If the search is unsuccessful, :exc:`ImportError` is " -"raised. Other exceptions indicate problems with the arguments or " -"environment." +"If the module is built-in or frozen then *file* and *pathname* are both " +"``None`` and the *description* tuple contains empty strings for its suffix " +"and mode; the module type is indicated as given in parentheses above. If " +"the search is unsuccessful, :exc:`ImportError` is raised. Other exceptions " +"indicate problems with the arguments or environment." msgstr "" -#: ../Doc/library/imp.rst:76 +#: ../Doc/library/imp.rst:75 msgid "" "If the module is a package, *file* is ``None``, *pathname* is the package " "path and the last item in the *description* tuple is :const:`PKG_DIRECTORY`." msgstr "" -#: ../Doc/library/imp.rst:79 +#: ../Doc/library/imp.rst:78 msgid "" "This function does not handle hierarchical module names (names containing " "dots). In order to find *P.M*, that is, submodule *M* of package *P*, use :" @@ -116,7 +115,7 @@ msgid "" "When *P* itself has a dotted name, apply this recipe recursively." msgstr "" -#: ../Doc/library/imp.rst:85 +#: ../Doc/library/imp.rst:84 msgid "" "Use :func:`importlib.util.find_spec` instead unless Python 3.3 compatibility " "is required, in which case use :func:`importlib.find_loader`. For example " @@ -124,7 +123,7 @@ msgid "" "mod:`importlib` documentation." msgstr "" -#: ../Doc/library/imp.rst:95 +#: ../Doc/library/imp.rst:94 msgid "" "Load a module that was previously found by :func:`find_module` (or by an " "otherwise conducted search yielding compatible results). This function does " @@ -138,20 +137,20 @@ msgid "" "module must be loaded." msgstr "" -#: ../Doc/library/imp.rst:106 +#: ../Doc/library/imp.rst:105 msgid "" "If the load is successful, the return value is the module object; otherwise, " "an exception (usually :exc:`ImportError`) is raised." msgstr "" -#: ../Doc/library/imp.rst:109 +#: ../Doc/library/imp.rst:108 msgid "" "**Important:** the caller is responsible for closing the *file* argument, if " "it was not ``None``, even when an exception is raised. This is best done " "using a :keyword:`try` ... :keyword:`finally` statement." msgstr "" -#: ../Doc/library/imp.rst:113 +#: ../Doc/library/imp.rst:112 msgid "" "If previously used in conjunction with :func:`imp.find_module` then consider " "using :func:`importlib.import_module`, otherwise use the loader returned by " @@ -163,17 +162,17 @@ msgid "" "various approaches." msgstr "" -#: ../Doc/library/imp.rst:127 +#: ../Doc/library/imp.rst:126 msgid "" "Return a new empty module object called *name*. This object is *not* " "inserted in ``sys.modules``." msgstr "" -#: ../Doc/library/imp.rst:130 +#: ../Doc/library/imp.rst:129 msgid "Use :func:`importlib.util.module_from_spec` instead." msgstr "" -#: ../Doc/library/imp.rst:136 +#: ../Doc/library/imp.rst:135 msgid "" "Reload a previously imported *module*. The argument must be a module " "object, so it must have been successfully imported before. This is useful " @@ -182,11 +181,11 @@ msgid "" "return value is the module object (the same as the *module* argument)." msgstr "" -#: ../Doc/library/imp.rst:142 +#: ../Doc/library/imp.rst:141 msgid "When ``reload(module)`` is executed:" msgstr "" -#: ../Doc/library/imp.rst:144 +#: ../Doc/library/imp.rst:143 msgid "" "Python modules' code is recompiled and the module-level code reexecuted, " "defining a new set of objects which are bound to names in the module's " @@ -194,30 +193,30 @@ msgid "" "second time." msgstr "" -#: ../Doc/library/imp.rst:149 +#: ../Doc/library/imp.rst:148 msgid "" "As with all other objects in Python the old objects are only reclaimed after " "their reference counts drop to zero." msgstr "" -#: ../Doc/library/imp.rst:152 +#: ../Doc/library/imp.rst:151 msgid "" "The names in the module namespace are updated to point to any new or changed " "objects." msgstr "" -#: ../Doc/library/imp.rst:155 +#: ../Doc/library/imp.rst:154 msgid "" "Other references to the old objects (such as names external to the module) " "are not rebound to refer to the new objects and must be updated in each " "namespace where they occur if that is desired." msgstr "" -#: ../Doc/library/imp.rst:159 +#: ../Doc/library/imp.rst:158 msgid "There are a number of other caveats:" msgstr "" -#: ../Doc/library/imp.rst:161 +#: ../Doc/library/imp.rst:160 msgid "" "When a module is reloaded, its dictionary (containing the module's global " "variables) is retained. Redefinitions of names will override the old " @@ -229,7 +228,7 @@ msgid "" "if desired::" msgstr "" -#: ../Doc/library/imp.rst:174 +#: ../Doc/library/imp.rst:173 msgid "" "It is legal though generally not very useful to reload built-in or " "dynamically loaded modules, except for :mod:`sys`, :mod:`__main__` and :mod:" @@ -237,7 +236,7 @@ msgid "" "initialized more than once, and may fail in arbitrary ways when reloaded." msgstr "" -#: ../Doc/library/imp.rst:179 +#: ../Doc/library/imp.rst:178 msgid "" "If a module imports objects from another module using :keyword:`from` ... :" "keyword:`import` ..., calling :func:`reload` for the other module does not " @@ -246,7 +245,7 @@ msgid "" "and qualified names (*module*.*name*) instead." msgstr "" -#: ../Doc/library/imp.rst:185 +#: ../Doc/library/imp.rst:184 msgid "" "If a module instantiates instances of a class, reloading the module that " "defines the class does not affect the method definitions of the instances " @@ -254,23 +253,23 @@ msgid "" "derived classes." msgstr "" -#: ../Doc/library/imp.rst:189 +#: ../Doc/library/imp.rst:188 msgid "" "Relies on both ``__name__`` and ``__loader__`` being defined on the module " "being reloaded instead of just ``__name__``." msgstr "" -#: ../Doc/library/imp.rst:193 +#: ../Doc/library/imp.rst:192 msgid "Use :func:`importlib.reload` instead." msgstr "" -#: ../Doc/library/imp.rst:197 +#: ../Doc/library/imp.rst:196 msgid "" "The following functions are conveniences for handling :pep:`3147` byte-" "compiled file paths." msgstr "" -#: ../Doc/library/imp.rst:204 +#: ../Doc/library/imp.rst:203 msgid "" "Return the :pep:`3147` path to the byte-compiled file associated with the " "source *path*. For example, if *path* is ``/foo/bar/baz.py`` the return " @@ -282,25 +281,25 @@ msgid "" "leading to optimized bytecode." msgstr "" -#: ../Doc/library/imp.rst:213 +#: ../Doc/library/imp.rst:212 msgid "*path* need not exist." msgstr "" -#: ../Doc/library/imp.rst:215 +#: ../Doc/library/imp.rst:214 msgid "" "If :attr:`sys.implementation.cache_tag` is ``None``, then :exc:" "`NotImplementedError` is raised." msgstr "" -#: ../Doc/library/imp.rst:219 +#: ../Doc/library/imp.rst:218 msgid "Use :func:`importlib.util.cache_from_source` instead." msgstr "" -#: ../Doc/library/imp.rst:222 +#: ../Doc/library/imp.rst:221 msgid "The *debug_override* parameter no longer creates a ``.pyo`` file." msgstr "" -#: ../Doc/library/imp.rst:228 +#: ../Doc/library/imp.rst:227 msgid "" "Given the *path* to a :pep:`3147` file name, return the associated source " "code file path. For example, if *path* is ``/foo/bar/__pycache__/baz." @@ -310,28 +309,28 @@ msgid "" "defined, :exc:`NotImplementedError` is raised." msgstr "" -#: ../Doc/library/imp.rst:236 +#: ../Doc/library/imp.rst:235 msgid "" "Raise :exc:`NotImplementedError` when :attr:`sys.implementation.cache_tag` " "is not defined." msgstr "" -#: ../Doc/library/imp.rst:240 +#: ../Doc/library/imp.rst:239 msgid "Use :func:`importlib.util.source_from_cache` instead." msgstr "" -#: ../Doc/library/imp.rst:246 +#: ../Doc/library/imp.rst:245 msgid "" "Return the :pep:`3147` magic tag string matching this version of Python's " "magic number, as returned by :func:`get_magic`." msgstr "" -#: ../Doc/library/imp.rst:249 +#: ../Doc/library/imp.rst:248 msgid "" "Use :attr:`sys.implementation.cache_tag` directly starting in Python 3.3." msgstr "" -#: ../Doc/library/imp.rst:254 +#: ../Doc/library/imp.rst:253 msgid "" "The following functions help interact with the import system's internal " "locking mechanism. Locking semantics of imports are an implementation " @@ -339,13 +338,13 @@ msgid "" "circular imports work without any deadlocks." msgstr "" -#: ../Doc/library/imp.rst:262 +#: ../Doc/library/imp.rst:261 msgid "" "Return ``True`` if the global import lock is currently held, else ``False``. " "On platforms without threads, always return ``False``." msgstr "" -#: ../Doc/library/imp.rst:265 +#: ../Doc/library/imp.rst:264 msgid "" "On platforms with threads, a thread executing an import first holds a global " "import lock, then sets up a per-module lock for the rest of the import. " @@ -356,69 +355,69 @@ msgid "" "object at some point." msgstr "" -#: ../Doc/library/imp.rst:273 ../Doc/library/imp.rst:293 -#: ../Doc/library/imp.rst:306 +#: ../Doc/library/imp.rst:272 ../Doc/library/imp.rst:292 +#: ../Doc/library/imp.rst:305 msgid "" "The locking scheme has changed to per-module locks for the most part. A " "global import lock is kept for some critical tasks, such as initializing the " "per-module locks." msgstr "" -#: ../Doc/library/imp.rst:283 +#: ../Doc/library/imp.rst:282 msgid "" "Acquire the interpreter's global import lock for the current thread. This " "lock should be used by import hooks to ensure thread-safety when importing " "modules." msgstr "" -#: ../Doc/library/imp.rst:287 +#: ../Doc/library/imp.rst:286 msgid "" "Once a thread has acquired the import lock, the same thread may acquire it " "again without blocking; the thread must release it once for each time it has " "acquired it." msgstr "" -#: ../Doc/library/imp.rst:291 +#: ../Doc/library/imp.rst:290 msgid "On platforms without threads, this function does nothing." msgstr "" -#: ../Doc/library/imp.rst:303 +#: ../Doc/library/imp.rst:302 msgid "" "Release the interpreter's global import lock. On platforms without threads, " "this function does nothing." msgstr "" -#: ../Doc/library/imp.rst:314 +#: ../Doc/library/imp.rst:313 msgid "" "The following constants with integer values, defined in this module, are " "used to indicate the search result of :func:`find_module`." msgstr "" -#: ../Doc/library/imp.rst:320 +#: ../Doc/library/imp.rst:319 msgid "The module was found as a source file." msgstr "" -#: ../Doc/library/imp.rst:327 +#: ../Doc/library/imp.rst:326 msgid "The module was found as a compiled code object file." msgstr "" -#: ../Doc/library/imp.rst:334 +#: ../Doc/library/imp.rst:333 msgid "The module was found as dynamically loadable shared library." msgstr "" -#: ../Doc/library/imp.rst:341 +#: ../Doc/library/imp.rst:340 msgid "The module was found as a package directory." msgstr "" -#: ../Doc/library/imp.rst:348 +#: ../Doc/library/imp.rst:347 msgid "The module was found as a built-in module." msgstr "" -#: ../Doc/library/imp.rst:355 +#: ../Doc/library/imp.rst:354 msgid "The module was found as a frozen module." msgstr "" -#: ../Doc/library/imp.rst:362 +#: ../Doc/library/imp.rst:361 msgid "" "The :class:`NullImporter` type is a :pep:`302` import hook that handles non-" "directory path strings by failing to find any modules. Calling this type " @@ -426,31 +425,31 @@ msgid "" "Otherwise, a :class:`NullImporter` instance is returned." msgstr "" -#: ../Doc/library/imp.rst:367 +#: ../Doc/library/imp.rst:366 msgid "Instances have only one method:" msgstr "" -#: ../Doc/library/imp.rst:371 +#: ../Doc/library/imp.rst:370 msgid "" "This method always returns ``None``, indicating that the requested module " "could not be found." msgstr "" -#: ../Doc/library/imp.rst:374 +#: ../Doc/library/imp.rst:373 msgid "" "``None`` is inserted into ``sys.path_importer_cache`` instead of an instance " "of :class:`NullImporter`." msgstr "" -#: ../Doc/library/imp.rst:378 +#: ../Doc/library/imp.rst:377 msgid "Insert ``None`` into ``sys.path_importer_cache`` instead." msgstr "" -#: ../Doc/library/imp.rst:385 +#: ../Doc/library/imp.rst:384 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/imp.rst:387 +#: ../Doc/library/imp.rst:386 msgid "" "The following function emulates what was the standard import statement up to " "Python 1.4 (no hierarchical module names). (This *implementation* wouldn't " diff --git a/library/importlib.metadata.po b/library/importlib.metadata.po index 8e99efb6e..f69a8bd36 100644 --- a/library/importlib.metadata.po +++ b/library/importlib.metadata.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-04 11:42+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -169,7 +169,7 @@ msgstr "" #: ../Doc/library/importlib.metadata.rst:174 msgid "" "To get the full set of requirements for a distribution, use the " -"``requires()`` function. Note that this returns an iterator::" +"``requires()`` function::" msgstr "" #: ../Doc/library/importlib.metadata.rst:182 @@ -226,26 +226,32 @@ msgid "" "The abstract class :py:class:`importlib.abc.MetaPathFinder` defines the " "interface expected of finders by Python's import system. ``importlib." "metadata`` extends this protocol by looking for an optional " -"``find_distributions`` callable on the finders from ``sys.meta_path``. If " -"the finder has this method, it must return an iterator over instances of the " -"``Distribution`` abstract class. This method must have the signature::" +"``find_distributions`` callable on the finders from ``sys.meta_path`` and " +"presents this extended interface as the ``DistributionFinder`` abstract base " +"class, which defines this abstract method::" msgstr "" -#: ../Doc/library/importlib.metadata.rst:238 +#: ../Doc/library/importlib.metadata.rst:237 +msgid "" +"The ``DistributionFinder.Context`` object provides ``.path`` and ``.name`` " +"properties indicating the path to search and names to match and may supply " +"other relevant context." +msgstr "" + +#: ../Doc/library/importlib.metadata.rst:241 msgid "" "What this means in practice is that to support finding distribution package " "metadata in locations other than the file system, you should derive from " -"``Distribution`` and implement the ``load_metadata()`` method. This takes a " -"single argument which is the name of the package whose metadata is being " -"found. This instance of the ``Distribution`` base abstract class is what " -"your finder's ``find_distributions()`` method should return." +"``Distribution`` and implement the ``load_metadata()`` method. Then from " +"your finder, return instances of this derived ``Distribution`` in the " +"``find_distributions()`` method." msgstr "" -#: ../Doc/library/importlib.metadata.rst:258 +#: ../Doc/library/importlib.metadata.rst:260 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/importlib.metadata.rst:259 +#: ../Doc/library/importlib.metadata.rst:261 msgid "" "Technically, the returned distribution metadata object is an `email.message." "Message \n" "Language-Team: FRENCH \n" @@ -394,10 +394,11 @@ msgid "" "the value of :attr:`__path__` from the parent package. If a spec cannot be " "found, ``None`` is returned. When passed in, ``target`` is a module object " "that the finder may use to make a more educated guess about what spec to " -"return." +"return. :func:`importlib.util.spec_from_loader` may be useful for " +"implementing concrete ``MetaPathFinders``." msgstr "" -#: ../Doc/library/importlib.rst:282 +#: ../Doc/library/importlib.rst:284 msgid "" "A legacy method for finding a :term:`loader` for the specified module. If " "this is a top-level import, *path* will be ``None``. Otherwise, this is a " @@ -406,35 +407,35 @@ msgid "" "returned." msgstr "" -#: ../Doc/library/importlib.rst:288 +#: ../Doc/library/importlib.rst:290 msgid "" "If :meth:`find_spec` is defined, backwards-compatible functionality is " "provided." msgstr "" -#: ../Doc/library/importlib.rst:291 +#: ../Doc/library/importlib.rst:293 msgid "" "Returns ``None`` when called instead of raising :exc:`NotImplementedError`. " "Can use :meth:`find_spec` to provide functionality." msgstr "" -#: ../Doc/library/importlib.rst:296 ../Doc/library/importlib.rst:349 -#: ../Doc/library/importlib.rst:357 ../Doc/library/importlib.rst:1078 +#: ../Doc/library/importlib.rst:298 ../Doc/library/importlib.rst:352 +#: ../Doc/library/importlib.rst:360 ../Doc/library/importlib.rst:1081 msgid "Use :meth:`find_spec` instead." msgstr "" -#: ../Doc/library/importlib.rst:301 +#: ../Doc/library/importlib.rst:303 msgid "" "An optional method which, when called, should invalidate any internal cache " "used by the finder. Used by :func:`importlib.invalidate_caches` when " "invalidating the caches of all finders on :data:`sys.meta_path`." msgstr "" -#: ../Doc/library/importlib.rst:305 +#: ../Doc/library/importlib.rst:307 msgid "Returns ``None`` when called instead of ``NotImplemented``." msgstr "" -#: ../Doc/library/importlib.rst:311 +#: ../Doc/library/importlib.rst:313 msgid "" "An abstract base class representing a :term:`path entry finder`. Though it " "bears some similarities to :class:`MetaPathFinder`, ``PathEntryFinder`` is " @@ -443,16 +444,18 @@ msgid "" "reasons only." msgstr "" -#: ../Doc/library/importlib.rst:321 +#: ../Doc/library/importlib.rst:323 msgid "" "An abstract method for finding a :term:`spec ` for the " "specified module. The finder will search for the module only within the :" "term:`path entry` to which it is assigned. If a spec cannot be found, " "``None`` is returned. When passed in, ``target`` is a module object that " -"the finder may use to make a more educated guess about what spec to return." +"the finder may use to make a more educated guess about what spec to return. :" +"func:`importlib.util.spec_from_loader` may be useful for implementing " +"concrete ``PathEntryFinders``." msgstr "" -#: ../Doc/library/importlib.rst:332 +#: ../Doc/library/importlib.rst:335 msgid "" "A legacy method for finding a :term:`loader` for the specified module. " "Returns a 2-tuple of ``(loader, portion)`` where ``portion`` is a sequence " @@ -465,62 +468,62 @@ msgid "" "failure to find anything for the module)." msgstr "" -#: ../Doc/library/importlib.rst:342 +#: ../Doc/library/importlib.rst:345 msgid "" "If :meth:`find_spec` is defined then backwards-compatible functionality is " "provided." msgstr "" -#: ../Doc/library/importlib.rst:345 +#: ../Doc/library/importlib.rst:348 msgid "" "Returns ``(None, [])`` instead of raising :exc:`NotImplementedError`. Uses :" "meth:`find_spec` when available to provide functionality." msgstr "" -#: ../Doc/library/importlib.rst:354 +#: ../Doc/library/importlib.rst:357 msgid "" "A concrete implementation of :meth:`Finder.find_module` which is equivalent " "to ``self.find_loader(fullname)[0]``." msgstr "" -#: ../Doc/library/importlib.rst:362 +#: ../Doc/library/importlib.rst:365 msgid "" "An optional method which, when called, should invalidate any internal cache " "used by the finder. Used by :meth:`PathFinder.invalidate_caches` when " "invalidating the caches of all cached finders." msgstr "" -#: ../Doc/library/importlib.rst:369 +#: ../Doc/library/importlib.rst:372 msgid "" "An abstract base class for a :term:`loader`. See :pep:`302` for the exact " "definition for a loader." msgstr "" -#: ../Doc/library/importlib.rst:372 ../Doc/library/importlib.rst:832 +#: ../Doc/library/importlib.rst:375 ../Doc/library/importlib.rst:835 msgid "" "Loaders that wish to support resource reading should implement a " "``get_resource_reader(fullname)`` method as specified by :class:`importlib." "abc.ResourceReader`." msgstr "" -#: ../Doc/library/importlib.rst:376 +#: ../Doc/library/importlib.rst:379 msgid "Introduced the optional ``get_resource_reader()`` method." msgstr "" -#: ../Doc/library/importlib.rst:381 +#: ../Doc/library/importlib.rst:384 msgid "" "A method that returns the module object to use when importing a module. " "This method may return ``None``, indicating that default module creation " "semantics should take place." msgstr "" -#: ../Doc/library/importlib.rst:387 +#: ../Doc/library/importlib.rst:390 msgid "" "Starting in Python 3.6, this method will not be optional when :meth:" "`exec_module` is defined." msgstr "" -#: ../Doc/library/importlib.rst:393 +#: ../Doc/library/importlib.rst:396 msgid "" "An abstract method that executes the module in its own namespace when a " "module is imported or reloaded. The module should already be initialized " @@ -528,17 +531,17 @@ msgid "" "abc.Loader.create_module` must be defined." msgstr "" -#: ../Doc/library/importlib.rst:400 +#: ../Doc/library/importlib.rst:403 msgid ":meth:`~importlib.abc.Loader.create_module` must also be defined." msgstr "" -#: ../Doc/library/importlib.rst:405 +#: ../Doc/library/importlib.rst:408 msgid "" "A legacy method for loading a module. If the module cannot be loaded, :exc:" "`ImportError` is raised, otherwise the loaded module is returned." msgstr "" -#: ../Doc/library/importlib.rst:409 +#: ../Doc/library/importlib.rst:412 msgid "" "If the requested module already exists in :data:`sys.modules`, that module " "should be used and reloaded. Otherwise the loader should create a new module " @@ -549,83 +552,83 @@ msgid "" "left alone (see :func:`importlib.util.module_for_loader`)." msgstr "" -#: ../Doc/library/importlib.rst:418 +#: ../Doc/library/importlib.rst:421 msgid "" "The loader should set several attributes on the module. (Note that some of " "these attributes can change when a module is reloaded):" msgstr "" -#: ../Doc/library/importlib.rst:423 +#: ../Doc/library/importlib.rst:426 msgid ":attr:`__name__`" msgstr "" -#: ../Doc/library/importlib.rst:423 +#: ../Doc/library/importlib.rst:426 msgid "The name of the module." msgstr "" -#: ../Doc/library/importlib.rst:427 +#: ../Doc/library/importlib.rst:430 msgid ":attr:`__file__`" msgstr "" -#: ../Doc/library/importlib.rst:426 +#: ../Doc/library/importlib.rst:429 msgid "" "The path to where the module data is stored (not set for built-in modules)." msgstr "" -#: ../Doc/library/importlib.rst:431 +#: ../Doc/library/importlib.rst:434 msgid ":attr:`__cached__`" msgstr "" -#: ../Doc/library/importlib.rst:430 +#: ../Doc/library/importlib.rst:433 msgid "" "The path to where a compiled version of the module is/should be stored (not " "set when the attribute would be inappropriate)." msgstr "" -#: ../Doc/library/importlib.rst:435 +#: ../Doc/library/importlib.rst:438 msgid ":attr:`__path__`" msgstr "" -#: ../Doc/library/importlib.rst:434 +#: ../Doc/library/importlib.rst:437 msgid "" "A list of strings specifying the search path within a package. This " "attribute is not set on modules." msgstr "" -#: ../Doc/library/importlib.rst:441 +#: ../Doc/library/importlib.rst:444 msgid ":attr:`__package__`" msgstr "" -#: ../Doc/library/importlib.rst:438 +#: ../Doc/library/importlib.rst:441 msgid "" "The parent package for the module/package. If the module is top-level then " "it has a value of the empty string. The :func:`importlib.util." "module_for_loader` decorator can handle the details for :attr:`__package__`." msgstr "" -#: ../Doc/library/importlib.rst:446 +#: ../Doc/library/importlib.rst:449 msgid ":attr:`__loader__`" msgstr "" -#: ../Doc/library/importlib.rst:444 +#: ../Doc/library/importlib.rst:447 msgid "" "The loader used to load the module. The :func:`importlib.util." "module_for_loader` decorator can handle the details for :attr:`__package__`." msgstr "" -#: ../Doc/library/importlib.rst:448 +#: ../Doc/library/importlib.rst:451 msgid "" "When :meth:`exec_module` is available then backwards-compatible " "functionality is provided." msgstr "" -#: ../Doc/library/importlib.rst:451 +#: ../Doc/library/importlib.rst:454 msgid "" "Raise :exc:`ImportError` when called instead of :exc:`NotImplementedError`. " "Functionality provided when :meth:`exec_module` is available." msgstr "" -#: ../Doc/library/importlib.rst:456 +#: ../Doc/library/importlib.rst:459 msgid "" "The recommended API for loading a module is :meth:`exec_module` (and :meth:" "`create_module`). Loaders should implement it instead of load_module(). " @@ -633,27 +636,27 @@ msgid "" "load_module() when exec_module() is implemented." msgstr "" -#: ../Doc/library/importlib.rst:465 +#: ../Doc/library/importlib.rst:468 msgid "" "A legacy method which when implemented calculates and returns the given " "module's repr, as a string. The module type's default repr() will use the " "result of this method as appropriate." msgstr "" -#: ../Doc/library/importlib.rst:471 +#: ../Doc/library/importlib.rst:474 msgid "Made optional instead of an abstractmethod." msgstr "" -#: ../Doc/library/importlib.rst:474 +#: ../Doc/library/importlib.rst:477 msgid "The import machinery now takes care of this automatically." msgstr "" -#: ../Doc/library/importlib.rst:480 +#: ../Doc/library/importlib.rst:483 msgid "" "An :term:`abstract base class` to provide the ability to read *resources*." msgstr "" -#: ../Doc/library/importlib.rst:483 +#: ../Doc/library/importlib.rst:486 msgid "" "From the perspective of this ABC, a *resource* is a binary artifact that is " "shipped within a package. Typically this is something like a data file that " @@ -663,7 +666,7 @@ msgid "" "file versus on the file system." msgstr "" -#: ../Doc/library/importlib.rst:491 +#: ../Doc/library/importlib.rst:494 msgid "" "For any of methods of this class, a *resource* argument is expected to be a :" "term:`path-like object` which represents conceptually just a file name. This " @@ -675,7 +678,7 @@ msgid "" "potentially representing multiple packages or a module)." msgstr "" -#: ../Doc/library/importlib.rst:502 +#: ../Doc/library/importlib.rst:505 msgid "" "Loaders that wish to support resource reading are expected to provide a " "method called ``get_resource_reader(fullname)`` which returns an object " @@ -684,33 +687,33 @@ msgid "" "with this ABC should only be returned when the specified module is a package." msgstr "" -#: ../Doc/library/importlib.rst:513 +#: ../Doc/library/importlib.rst:516 msgid "" "Returns an opened, :term:`file-like object` for binary reading of the " "*resource*." msgstr "" -#: ../Doc/library/importlib.rst:516 +#: ../Doc/library/importlib.rst:519 msgid "If the resource cannot be found, :exc:`FileNotFoundError` is raised." msgstr "" -#: ../Doc/library/importlib.rst:521 +#: ../Doc/library/importlib.rst:524 msgid "Returns the file system path to the *resource*." msgstr "" -#: ../Doc/library/importlib.rst:523 +#: ../Doc/library/importlib.rst:526 msgid "" "If the resource does not concretely exist on the file system, raise :exc:" "`FileNotFoundError`." msgstr "" -#: ../Doc/library/importlib.rst:528 +#: ../Doc/library/importlib.rst:531 msgid "" "Returns ``True`` if the named *name* is considered a resource. :exc:" "`FileNotFoundError` is raised if *name* does not exist." msgstr "" -#: ../Doc/library/importlib.rst:533 +#: ../Doc/library/importlib.rst:536 msgid "" "Returns an :term:`iterable` of strings over the contents of the package. Do " "note that it is not required that all names returned by the iterator be " @@ -718,7 +721,7 @@ msgid "" "`is_resource` would be false." msgstr "" -#: ../Doc/library/importlib.rst:539 +#: ../Doc/library/importlib.rst:542 msgid "" "Allowing non-resource names to be returned is to allow for situations where " "how a package and its resources are stored are known a priori and the non-" @@ -727,23 +730,23 @@ msgid "" "stored on the file system then those subdirectory names can be used directly." msgstr "" -#: ../Doc/library/importlib.rst:547 +#: ../Doc/library/importlib.rst:550 msgid "The abstract method returns an iterable of no items." msgstr "" -#: ../Doc/library/importlib.rst:552 +#: ../Doc/library/importlib.rst:555 msgid "" "An abstract base class for a :term:`loader` which implements the optional :" "pep:`302` protocol for loading arbitrary resources from the storage back-end." msgstr "" -#: ../Doc/library/importlib.rst:556 +#: ../Doc/library/importlib.rst:559 msgid "" "This ABC is deprecated in favour of supporting resource loading through :" "class:`importlib.abc.ResourceReader`." msgstr "" -#: ../Doc/library/importlib.rst:562 +#: ../Doc/library/importlib.rst:565 msgid "" "An abstract method to return the bytes for the data located at *path*. " "Loaders that have a file-like storage back-end that allows storing arbitrary " @@ -753,34 +756,34 @@ msgid "" "attribute or an item from a package's :attr:`__path__`." msgstr "" -#: ../Doc/library/importlib.rst:570 +#: ../Doc/library/importlib.rst:573 msgid "Raises :exc:`OSError` instead of :exc:`NotImplementedError`." msgstr "" -#: ../Doc/library/importlib.rst:576 +#: ../Doc/library/importlib.rst:579 msgid "" "An abstract base class for a :term:`loader` which implements the optional :" "pep:`302` protocol for loaders that inspect modules." msgstr "" -#: ../Doc/library/importlib.rst:581 +#: ../Doc/library/importlib.rst:584 msgid "" "Return the code object for a module, or ``None`` if the module does not have " "a code object (as would be the case, for example, for a built-in module). " "Raise an :exc:`ImportError` if loader cannot find the requested module." msgstr "" -#: ../Doc/library/importlib.rst:587 +#: ../Doc/library/importlib.rst:590 msgid "" "While the method has a default implementation, it is suggested that it be " "overridden if possible for performance." msgstr "" -#: ../Doc/library/importlib.rst:593 +#: ../Doc/library/importlib.rst:596 msgid "No longer abstract and a concrete implementation is provided." msgstr "" -#: ../Doc/library/importlib.rst:598 +#: ../Doc/library/importlib.rst:601 msgid "" "An abstract method to return the source of a module. It is returned as a " "text string using :term:`universal newlines`, translating all recognized " @@ -789,23 +792,23 @@ msgid "" "cannot find the module specified." msgstr "" -#: ../Doc/library/importlib.rst:604 ../Doc/library/importlib.rst:613 -#: ../Doc/library/importlib.rst:663 +#: ../Doc/library/importlib.rst:607 ../Doc/library/importlib.rst:616 +#: ../Doc/library/importlib.rst:666 msgid "Raises :exc:`ImportError` instead of :exc:`NotImplementedError`." msgstr "" -#: ../Doc/library/importlib.rst:609 +#: ../Doc/library/importlib.rst:612 msgid "" "An abstract method to return a true value if the module is a package, a " "false value otherwise. :exc:`ImportError` is raised if the :term:`loader` " "cannot find the module." msgstr "" -#: ../Doc/library/importlib.rst:618 +#: ../Doc/library/importlib.rst:621 msgid "Create a code object from Python source." msgstr "" -#: ../Doc/library/importlib.rst:620 +#: ../Doc/library/importlib.rst:623 msgid "" "The *data* argument can be whatever the :func:`compile` function supports (i." "e. string or bytes). The *path* argument should be the \"path\" to where the " @@ -813,106 +816,106 @@ msgid "" "in a zip file)." msgstr "" -#: ../Doc/library/importlib.rst:625 +#: ../Doc/library/importlib.rst:628 msgid "" "With the subsequent code object one can execute it in a module by running " "``exec(code, module.__dict__)``." msgstr "" -#: ../Doc/library/importlib.rst:630 +#: ../Doc/library/importlib.rst:633 msgid "Made the method static." msgstr "" -#: ../Doc/library/importlib.rst:635 +#: ../Doc/library/importlib.rst:638 msgid "Implementation of :meth:`Loader.exec_module`." msgstr "" -#: ../Doc/library/importlib.rst:641 +#: ../Doc/library/importlib.rst:644 msgid "Implementation of :meth:`Loader.load_module`." msgstr "" -#: ../Doc/library/importlib.rst:643 +#: ../Doc/library/importlib.rst:646 msgid "use :meth:`exec_module` instead." msgstr "" -#: ../Doc/library/importlib.rst:649 +#: ../Doc/library/importlib.rst:652 msgid "" "An abstract base class which inherits from :class:`InspectLoader` that, when " "implemented, helps a module to be executed as a script. The ABC represents " "an optional :pep:`302` protocol." msgstr "" -#: ../Doc/library/importlib.rst:655 +#: ../Doc/library/importlib.rst:658 msgid "" "An abstract method that is to return the value of :attr:`__file__` for the " "specified module. If no path is available, :exc:`ImportError` is raised." msgstr "" -#: ../Doc/library/importlib.rst:659 +#: ../Doc/library/importlib.rst:662 msgid "" "If source code is available, then the method should return the path to the " "source file, regardless of whether a bytecode was used to load the module." msgstr "" -#: ../Doc/library/importlib.rst:669 +#: ../Doc/library/importlib.rst:672 msgid "" "An abstract base class which inherits from :class:`ResourceLoader` and :" "class:`ExecutionLoader`, providing concrete implementations of :meth:" "`ResourceLoader.get_data` and :meth:`ExecutionLoader.get_filename`." msgstr "" -#: ../Doc/library/importlib.rst:673 +#: ../Doc/library/importlib.rst:676 msgid "" "The *fullname* argument is a fully resolved name of the module the loader is " "to handle. The *path* argument is the path to the file for the module." msgstr "" -#: ../Doc/library/importlib.rst:680 +#: ../Doc/library/importlib.rst:683 msgid "The name of the module the loader can handle." msgstr "" -#: ../Doc/library/importlib.rst:684 +#: ../Doc/library/importlib.rst:687 msgid "Path to the file of the module." msgstr "" -#: ../Doc/library/importlib.rst:688 +#: ../Doc/library/importlib.rst:691 msgid "Calls super's ``load_module()``." msgstr "" -#: ../Doc/library/importlib.rst:690 +#: ../Doc/library/importlib.rst:693 msgid "Use :meth:`Loader.exec_module` instead." msgstr "" -#: ../Doc/library/importlib.rst:695 ../Doc/library/importlib.rst:1277 +#: ../Doc/library/importlib.rst:698 ../Doc/library/importlib.rst:1280 msgid "Returns :attr:`path`." msgstr "" -#: ../Doc/library/importlib.rst:699 +#: ../Doc/library/importlib.rst:702 msgid "Reads *path* as a binary file and returns the bytes from it." msgstr "" -#: ../Doc/library/importlib.rst:704 +#: ../Doc/library/importlib.rst:707 msgid "" "An abstract base class for implementing source (and optionally bytecode) " "file loading. The class inherits from both :class:`ResourceLoader` and :" "class:`ExecutionLoader`, requiring the implementation of:" msgstr "" -#: ../Doc/library/importlib.rst:708 +#: ../Doc/library/importlib.rst:711 msgid ":meth:`ResourceLoader.get_data`" msgstr "" -#: ../Doc/library/importlib.rst:711 +#: ../Doc/library/importlib.rst:714 msgid ":meth:`ExecutionLoader.get_filename`" msgstr "" -#: ../Doc/library/importlib.rst:710 +#: ../Doc/library/importlib.rst:713 msgid "" "Should only return the path to the source file; sourceless loading is not " "supported." msgstr "" -#: ../Doc/library/importlib.rst:713 +#: ../Doc/library/importlib.rst:716 msgid "" "The abstract methods defined by this class are to add optional bytecode file " "support. Not implementing these optional methods (or causing them to raise :" @@ -924,83 +927,83 @@ msgid "" "bytecode-specific API is exposed." msgstr "" -#: ../Doc/library/importlib.rst:724 +#: ../Doc/library/importlib.rst:727 msgid "" "Optional abstract method which returns a :class:`dict` containing metadata " "about the specified path. Supported dictionary keys are:" msgstr "" -#: ../Doc/library/importlib.rst:727 +#: ../Doc/library/importlib.rst:730 msgid "" "``'mtime'`` (mandatory): an integer or floating-point number representing " "the modification time of the source code;" msgstr "" -#: ../Doc/library/importlib.rst:729 +#: ../Doc/library/importlib.rst:732 msgid "``'size'`` (optional): the size in bytes of the source code." msgstr "" -#: ../Doc/library/importlib.rst:731 +#: ../Doc/library/importlib.rst:734 msgid "" "Any other keys in the dictionary are ignored, to allow for future " "extensions. If the path cannot be handled, :exc:`OSError` is raised." msgstr "" -#: ../Doc/library/importlib.rst:736 ../Doc/library/importlib.rst:749 +#: ../Doc/library/importlib.rst:739 ../Doc/library/importlib.rst:752 msgid "Raise :exc:`OSError` instead of :exc:`NotImplementedError`." msgstr "" -#: ../Doc/library/importlib.rst:741 +#: ../Doc/library/importlib.rst:744 msgid "" "Optional abstract method which returns the modification time for the " "specified path." msgstr "" -#: ../Doc/library/importlib.rst:744 +#: ../Doc/library/importlib.rst:747 msgid "" "This method is deprecated in favour of :meth:`path_stats`. You don't have " "to implement it, but it is still available for compatibility purposes. " "Raise :exc:`OSError` if the path cannot be handled." msgstr "" -#: ../Doc/library/importlib.rst:754 +#: ../Doc/library/importlib.rst:757 msgid "" "Optional abstract method which writes the specified bytes to a file path. " "Any intermediate directories which do not exist are to be created " "automatically." msgstr "" -#: ../Doc/library/importlib.rst:758 +#: ../Doc/library/importlib.rst:761 msgid "" "When writing to the path fails because the path is read-only (:attr:`errno." "EACCES`/:exc:`PermissionError`), do not propagate the exception." msgstr "" -#: ../Doc/library/importlib.rst:762 +#: ../Doc/library/importlib.rst:765 msgid "No longer raises :exc:`NotImplementedError` when called." msgstr "" -#: ../Doc/library/importlib.rst:767 +#: ../Doc/library/importlib.rst:770 msgid "Concrete implementation of :meth:`InspectLoader.get_code`." msgstr "" -#: ../Doc/library/importlib.rst:771 +#: ../Doc/library/importlib.rst:774 msgid "Concrete implementation of :meth:`Loader.exec_module`." msgstr "" -#: ../Doc/library/importlib.rst:777 +#: ../Doc/library/importlib.rst:780 msgid "Concrete implementation of :meth:`Loader.load_module`." msgstr "" -#: ../Doc/library/importlib.rst:779 +#: ../Doc/library/importlib.rst:782 msgid "Use :meth:`exec_module` instead." msgstr "" -#: ../Doc/library/importlib.rst:784 +#: ../Doc/library/importlib.rst:787 msgid "Concrete implementation of :meth:`InspectLoader.get_source`." msgstr "" -#: ../Doc/library/importlib.rst:788 +#: ../Doc/library/importlib.rst:791 msgid "" "Concrete implementation of :meth:`InspectLoader.is_package`. A module is " "determined to be a package if its file path (as provided by :meth:" @@ -1009,15 +1012,15 @@ msgid "" "``__init__``." msgstr "" -#: ../Doc/library/importlib.rst:796 +#: ../Doc/library/importlib.rst:799 msgid ":mod:`importlib.resources` -- Resources" msgstr "" -#: ../Doc/library/importlib.rst:801 +#: ../Doc/library/importlib.rst:804 msgid "**Source code:** :source:`Lib/importlib/resources.py`" msgstr "" -#: ../Doc/library/importlib.rst:807 +#: ../Doc/library/importlib.rst:810 msgid "" "This module leverages Python's import system to provide access to " "*resources* within *packages*. If you can import a package, you can access " @@ -1025,7 +1028,7 @@ msgid "" "binary or text mode." msgstr "" -#: ../Doc/library/importlib.rst:812 +#: ../Doc/library/importlib.rst:815 msgid "" "Resources are roughly akin to files inside directories, though it's " "important to keep in mind that this is just a metaphor. Resources and " @@ -1033,7 +1036,7 @@ msgid "" "file system." msgstr "" -#: ../Doc/library/importlib.rst:818 +#: ../Doc/library/importlib.rst:821 msgid "" "This module provides functionality similar to `pkg_resources `_ `Basic Resource " @@ -1043,7 +1046,7 @@ msgid "" "consistent semantics." msgstr "" -#: ../Doc/library/importlib.rst:826 +#: ../Doc/library/importlib.rst:829 msgid "" "The standalone backport of this module provides more information on `using " "importlib.resources `_." msgstr "" -#: ../Doc/library/importlib.rst:836 +#: ../Doc/library/importlib.rst:839 msgid "The following types are defined." msgstr "" -#: ../Doc/library/importlib.rst:840 +#: ../Doc/library/importlib.rst:843 msgid "" "The ``Package`` type is defined as ``Union[str, ModuleType]``. This means " "that where the function describes accepting a ``Package``, you can pass in " @@ -1063,21 +1066,21 @@ msgid "" "``__spec__.submodule_search_locations`` that is not ``None``." msgstr "" -#: ../Doc/library/importlib.rst:847 +#: ../Doc/library/importlib.rst:850 msgid "" "This type describes the resource names passed into the various functions in " "this package. This is defined as ``Union[str, os.PathLike]``." msgstr "" -#: ../Doc/library/importlib.rst:851 +#: ../Doc/library/importlib.rst:854 msgid "The following functions are available." msgstr "" -#: ../Doc/library/importlib.rst:855 +#: ../Doc/library/importlib.rst:858 msgid "Open for binary reading the *resource* within *package*." msgstr "" -#: ../Doc/library/importlib.rst:857 +#: ../Doc/library/importlib.rst:860 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1086,13 +1089,13 @@ msgid "" "BinaryIO`` instance, a binary I/O stream open for reading." msgstr "" -#: ../Doc/library/importlib.rst:866 +#: ../Doc/library/importlib.rst:869 msgid "" "Open for text reading the *resource* within *package*. By default, the " "resource is opened for reading as UTF-8." msgstr "" -#: ../Doc/library/importlib.rst:869 +#: ../Doc/library/importlib.rst:872 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1101,18 +1104,18 @@ msgid "" "same meaning as with built-in :func:`open`." msgstr "" -#: ../Doc/library/importlib.rst:875 +#: ../Doc/library/importlib.rst:878 msgid "" "This function returns a ``typing.TextIO`` instance, a text I/O stream open " "for reading." msgstr "" -#: ../Doc/library/importlib.rst:881 +#: ../Doc/library/importlib.rst:884 msgid "" "Read and return the contents of the *resource* within *package* as ``bytes``." msgstr "" -#: ../Doc/library/importlib.rst:884 +#: ../Doc/library/importlib.rst:887 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1121,13 +1124,13 @@ msgid "" "contents of the resource as :class:`bytes`." msgstr "" -#: ../Doc/library/importlib.rst:893 +#: ../Doc/library/importlib.rst:896 msgid "" "Read and return the contents of *resource* within *package* as a ``str``. By " "default, the contents are read as strict UTF-8." msgstr "" -#: ../Doc/library/importlib.rst:896 +#: ../Doc/library/importlib.rst:899 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1137,20 +1140,20 @@ msgid "" "contents of the resource as :class:`str`." msgstr "" -#: ../Doc/library/importlib.rst:906 +#: ../Doc/library/importlib.rst:909 msgid "" "Return the path to the *resource* as an actual file system path. This " "function returns a context manager for use in a :keyword:`with` statement. " "The context manager provides a :class:`pathlib.Path` object." msgstr "" -#: ../Doc/library/importlib.rst:910 +#: ../Doc/library/importlib.rst:913 msgid "" "Exiting the context manager cleans up any temporary file created when the " "resource needs to be extracted from e.g. a zip file." msgstr "" -#: ../Doc/library/importlib.rst:913 +#: ../Doc/library/importlib.rst:916 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements. *resource* is the name of the resource to open " @@ -1158,7 +1161,7 @@ msgid "" "resources (i.e. it cannot be a directory)." msgstr "" -#: ../Doc/library/importlib.rst:921 +#: ../Doc/library/importlib.rst:924 msgid "" "Return ``True`` if there is a resource named *name* in the package, " "otherwise ``False``. Remember that directories are *not* resources! " @@ -1166,72 +1169,72 @@ msgid "" "``Package`` requirements." msgstr "" -#: ../Doc/library/importlib.rst:929 +#: ../Doc/library/importlib.rst:932 msgid "" "Return an iterable over the named items within the package. The iterable " "returns :class:`str` resources (e.g. files) and non-resources (e.g. " "directories). The iterable does not recurse into subdirectories." msgstr "" -#: ../Doc/library/importlib.rst:933 +#: ../Doc/library/importlib.rst:936 msgid "" "*package* is either a name or a module object which conforms to the " "``Package`` requirements." msgstr "" -#: ../Doc/library/importlib.rst:938 +#: ../Doc/library/importlib.rst:941 msgid ":mod:`importlib.machinery` -- Importers and path hooks" msgstr "" -#: ../Doc/library/importlib.rst:943 +#: ../Doc/library/importlib.rst:946 msgid "**Source code:** :source:`Lib/importlib/machinery.py`" msgstr "" -#: ../Doc/library/importlib.rst:947 +#: ../Doc/library/importlib.rst:950 msgid "" "This module contains the various objects that help :keyword:`import` find " "and load modules." msgstr "" -#: ../Doc/library/importlib.rst:952 +#: ../Doc/library/importlib.rst:955 msgid "" "A list of strings representing the recognized file suffixes for source " "modules." msgstr "" -#: ../Doc/library/importlib.rst:959 +#: ../Doc/library/importlib.rst:962 msgid "" "A list of strings representing the file suffixes for non-optimized bytecode " "modules." msgstr "" -#: ../Doc/library/importlib.rst:964 ../Doc/library/importlib.rst:974 +#: ../Doc/library/importlib.rst:967 ../Doc/library/importlib.rst:977 msgid "Use :attr:`BYTECODE_SUFFIXES` instead." msgstr "" -#: ../Doc/library/importlib.rst:969 +#: ../Doc/library/importlib.rst:972 msgid "" "A list of strings representing the file suffixes for optimized bytecode " "modules." msgstr "" -#: ../Doc/library/importlib.rst:979 +#: ../Doc/library/importlib.rst:982 msgid "" "A list of strings representing the recognized file suffixes for bytecode " "modules (including the leading dot)." msgstr "" -#: ../Doc/library/importlib.rst:984 +#: ../Doc/library/importlib.rst:987 msgid "The value is no longer dependent on ``__debug__``." msgstr "" -#: ../Doc/library/importlib.rst:989 +#: ../Doc/library/importlib.rst:992 msgid "" "A list of strings representing the recognized file suffixes for extension " "modules." msgstr "" -#: ../Doc/library/importlib.rst:996 +#: ../Doc/library/importlib.rst:999 msgid "" "Returns a combined list of strings representing all file suffixes for " "modules recognized by the standard import machinery. This is a helper for " @@ -1240,51 +1243,51 @@ msgid "" "`inspect.getmodulename`)." msgstr "" -#: ../Doc/library/importlib.rst:1007 +#: ../Doc/library/importlib.rst:1010 msgid "" "An :term:`importer` for built-in modules. All known built-in modules are " "listed in :data:`sys.builtin_module_names`. This class implements the :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: ../Doc/library/importlib.rst:1012 ../Doc/library/importlib.rst:1026 -#: ../Doc/library/importlib.rst:1035 ../Doc/library/importlib.rst:1050 +#: ../Doc/library/importlib.rst:1015 ../Doc/library/importlib.rst:1029 +#: ../Doc/library/importlib.rst:1038 ../Doc/library/importlib.rst:1053 msgid "" "Only class methods are defined by this class to alleviate the need for " "instantiation." msgstr "" -#: ../Doc/library/importlib.rst:1015 +#: ../Doc/library/importlib.rst:1018 msgid "" "As part of :pep:`489`, the builtin importer now implements :meth:`Loader." "create_module` and :meth:`Loader.exec_module`" msgstr "" -#: ../Doc/library/importlib.rst:1022 +#: ../Doc/library/importlib.rst:1025 msgid "" "An :term:`importer` for frozen modules. This class implements the :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: ../Doc/library/importlib.rst:1032 +#: ../Doc/library/importlib.rst:1035 msgid "" ":term:`Finder` for modules declared in the Windows registry. This class " "implements the :class:`importlib.abc.MetaPathFinder` ABC." msgstr "" -#: ../Doc/library/importlib.rst:1040 +#: ../Doc/library/importlib.rst:1043 msgid "" "Use :mod:`site` configuration instead. Future versions of Python may not " "enable this finder by default." msgstr "" -#: ../Doc/library/importlib.rst:1047 +#: ../Doc/library/importlib.rst:1050 msgid "" "A :term:`Finder` for :data:`sys.path` and package ``__path__`` attributes. " "This class implements the :class:`importlib.abc.MetaPathFinder` ABC." msgstr "" -#: ../Doc/library/importlib.rst:1055 +#: ../Doc/library/importlib.rst:1058 msgid "" "Class method that attempts to find a :term:`spec ` for the " "module specified by *fullname* on :data:`sys.path` or, if defined, on " @@ -1298,47 +1301,47 @@ msgid "" "cache and returned." msgstr "" -#: ../Doc/library/importlib.rst:1069 +#: ../Doc/library/importlib.rst:1072 msgid "" "If the current working directory -- represented by an empty string -- is no " "longer valid then ``None`` is returned but no value is cached in :data:`sys." "path_importer_cache`." msgstr "" -#: ../Doc/library/importlib.rst:1076 +#: ../Doc/library/importlib.rst:1079 msgid "A legacy wrapper around :meth:`find_spec`." msgstr "" -#: ../Doc/library/importlib.rst:1083 +#: ../Doc/library/importlib.rst:1086 msgid "" "Calls :meth:`importlib.abc.PathEntryFinder.invalidate_caches` on all finders " "stored in :data:`sys.path_importer_cache` that define the method. Otherwise " "entries in :data:`sys.path_importer_cache` set to ``None`` are deleted." msgstr "" -#: ../Doc/library/importlib.rst:1088 +#: ../Doc/library/importlib.rst:1091 msgid "Entries of ``None`` in :data:`sys.path_importer_cache` are deleted." msgstr "" -#: ../Doc/library/importlib.rst:1091 +#: ../Doc/library/importlib.rst:1094 msgid "" "Calls objects in :data:`sys.path_hooks` with the current working directory " "for ``''`` (i.e. the empty string)." msgstr "" -#: ../Doc/library/importlib.rst:1098 +#: ../Doc/library/importlib.rst:1101 msgid "" "A concrete implementation of :class:`importlib.abc.PathEntryFinder` which " "caches results from the file system." msgstr "" -#: ../Doc/library/importlib.rst:1101 +#: ../Doc/library/importlib.rst:1104 msgid "" "The *path* argument is the directory for which the finder is in charge of " "searching." msgstr "" -#: ../Doc/library/importlib.rst:1104 +#: ../Doc/library/importlib.rst:1107 msgid "" "The *loader_details* argument is a variable number of 2-item tuples each " "containing a loader and a sequence of file suffixes the loader recognizes. " @@ -1346,7 +1349,7 @@ msgid "" "module's name and the path to the file found." msgstr "" -#: ../Doc/library/importlib.rst:1109 +#: ../Doc/library/importlib.rst:1112 msgid "" "The finder will cache the directory contents as necessary, making stat calls " "for each module search to verify the cache is not outdated. Because cache " @@ -1359,152 +1362,152 @@ msgid "" "to call :func:`importlib.invalidate_caches`." msgstr "" -#: ../Doc/library/importlib.rst:1123 +#: ../Doc/library/importlib.rst:1126 msgid "The path the finder will search in." msgstr "" -#: ../Doc/library/importlib.rst:1127 +#: ../Doc/library/importlib.rst:1130 msgid "Attempt to find the spec to handle *fullname* within :attr:`path`." msgstr "" -#: ../Doc/library/importlib.rst:1133 +#: ../Doc/library/importlib.rst:1136 msgid "Attempt to find the loader to handle *fullname* within :attr:`path`." msgstr "" -#: ../Doc/library/importlib.rst:1137 +#: ../Doc/library/importlib.rst:1140 msgid "Clear out the internal cache." msgstr "" -#: ../Doc/library/importlib.rst:1141 +#: ../Doc/library/importlib.rst:1144 msgid "" "A class method which returns a closure for use on :attr:`sys.path_hooks`. An " "instance of :class:`FileFinder` is returned by the closure using the path " "argument given to the closure directly and *loader_details* indirectly." msgstr "" -#: ../Doc/library/importlib.rst:1146 +#: ../Doc/library/importlib.rst:1149 msgid "" "If the argument to the closure is not an existing directory, :exc:" "`ImportError` is raised." msgstr "" -#: ../Doc/library/importlib.rst:1152 +#: ../Doc/library/importlib.rst:1155 msgid "" "A concrete implementation of :class:`importlib.abc.SourceLoader` by " "subclassing :class:`importlib.abc.FileLoader` and providing some concrete " "implementations of other methods." msgstr "" -#: ../Doc/library/importlib.rst:1160 +#: ../Doc/library/importlib.rst:1163 msgid "The name of the module that this loader will handle." msgstr "" -#: ../Doc/library/importlib.rst:1164 +#: ../Doc/library/importlib.rst:1167 msgid "The path to the source file." msgstr "" -#: ../Doc/library/importlib.rst:1168 +#: ../Doc/library/importlib.rst:1171 msgid "Return true if :attr:`path` appears to be for a package." msgstr "" -#: ../Doc/library/importlib.rst:1172 +#: ../Doc/library/importlib.rst:1175 msgid "" "Concrete implementation of :meth:`importlib.abc.SourceLoader.path_stats`." msgstr "" -#: ../Doc/library/importlib.rst:1176 +#: ../Doc/library/importlib.rst:1179 msgid "Concrete implementation of :meth:`importlib.abc.SourceLoader.set_data`." msgstr "" -#: ../Doc/library/importlib.rst:1180 ../Doc/library/importlib.rst:1223 +#: ../Doc/library/importlib.rst:1183 ../Doc/library/importlib.rst:1226 msgid "" "Concrete implementation of :meth:`importlib.abc.Loader.load_module` where " "specifying the name of the module to load is optional." msgstr "" -#: ../Doc/library/importlib.rst:1185 ../Doc/library/importlib.rst:1228 +#: ../Doc/library/importlib.rst:1188 ../Doc/library/importlib.rst:1231 msgid "Use :meth:`importlib.abc.Loader.exec_module` instead." msgstr "" -#: ../Doc/library/importlib.rst:1190 +#: ../Doc/library/importlib.rst:1193 msgid "" "A concrete implementation of :class:`importlib.abc.FileLoader` which can " "import bytecode files (i.e. no source code files exist)." msgstr "" -#: ../Doc/library/importlib.rst:1193 +#: ../Doc/library/importlib.rst:1196 msgid "" "Please note that direct use of bytecode files (and thus not source code " "files) inhibits your modules from being usable by all Python implementations " "or new versions of Python which change the bytecode format." msgstr "" -#: ../Doc/library/importlib.rst:1202 +#: ../Doc/library/importlib.rst:1205 msgid "The name of the module the loader will handle." msgstr "" -#: ../Doc/library/importlib.rst:1206 +#: ../Doc/library/importlib.rst:1209 msgid "The path to the bytecode file." msgstr "" -#: ../Doc/library/importlib.rst:1210 +#: ../Doc/library/importlib.rst:1213 msgid "Determines if the module is a package based on :attr:`path`." msgstr "" -#: ../Doc/library/importlib.rst:1214 +#: ../Doc/library/importlib.rst:1217 msgid "Returns the code object for :attr:`name` created from :attr:`path`." msgstr "" -#: ../Doc/library/importlib.rst:1218 +#: ../Doc/library/importlib.rst:1221 msgid "" "Returns ``None`` as bytecode files have no source when this loader is used." msgstr "" -#: ../Doc/library/importlib.rst:1233 +#: ../Doc/library/importlib.rst:1236 msgid "" "A concrete implementation of :class:`importlib.abc.ExecutionLoader` for " "extension modules." msgstr "" -#: ../Doc/library/importlib.rst:1236 +#: ../Doc/library/importlib.rst:1239 msgid "" "The *fullname* argument specifies the name of the module the loader is to " "support. The *path* argument is the path to the extension module's file." msgstr "" -#: ../Doc/library/importlib.rst:1243 +#: ../Doc/library/importlib.rst:1246 msgid "Name of the module the loader supports." msgstr "" -#: ../Doc/library/importlib.rst:1247 +#: ../Doc/library/importlib.rst:1250 msgid "Path to the extension module." msgstr "" -#: ../Doc/library/importlib.rst:1251 +#: ../Doc/library/importlib.rst:1254 msgid "" "Creates the module object from the given specification in accordance with :" "pep:`489`." msgstr "" -#: ../Doc/library/importlib.rst:1258 +#: ../Doc/library/importlib.rst:1261 msgid "Initializes the given module object in accordance with :pep:`489`." msgstr "" -#: ../Doc/library/importlib.rst:1264 +#: ../Doc/library/importlib.rst:1267 msgid "" "Returns ``True`` if the file path points to a package's ``__init__`` module " "based on :attr:`EXTENSION_SUFFIXES`." msgstr "" -#: ../Doc/library/importlib.rst:1269 +#: ../Doc/library/importlib.rst:1272 msgid "Returns ``None`` as extension modules lack a code object." msgstr "" -#: ../Doc/library/importlib.rst:1273 +#: ../Doc/library/importlib.rst:1276 msgid "Returns ``None`` as extension modules do not have source code." msgstr "" -#: ../Doc/library/importlib.rst:1284 +#: ../Doc/library/importlib.rst:1287 msgid "" "A specification for a module's import-system-related state. This is " "typically exposed as the module's ``__spec__`` attribute. In the " @@ -1517,29 +1520,29 @@ msgid "" "``__spec__.submodule_search_locations``." msgstr "" -#: ../Doc/library/importlib.rst:1298 +#: ../Doc/library/importlib.rst:1301 msgid "(``__name__``)" msgstr "" -#: ../Doc/library/importlib.rst:1300 +#: ../Doc/library/importlib.rst:1303 msgid "A string for the fully-qualified name of the module." msgstr "" -#: ../Doc/library/importlib.rst:1304 +#: ../Doc/library/importlib.rst:1307 msgid "(``__loader__``)" msgstr "" -#: ../Doc/library/importlib.rst:1306 +#: ../Doc/library/importlib.rst:1309 msgid "" "The loader to use for loading. For namespace packages this should be set to " "``None``." msgstr "" -#: ../Doc/library/importlib.rst:1311 +#: ../Doc/library/importlib.rst:1314 msgid "(``__file__``)" msgstr "" -#: ../Doc/library/importlib.rst:1313 +#: ../Doc/library/importlib.rst:1316 msgid "" "Name of the place from which the module is loaded, e.g. \"builtin\" for " "built-in modules and the filename for modules loaded from source. Normally " @@ -1547,66 +1550,66 @@ msgid "" "indicates it is unspecified (e.g. for namespace packages)." msgstr "" -#: ../Doc/library/importlib.rst:1320 +#: ../Doc/library/importlib.rst:1323 msgid "(``__path__``)" msgstr "" -#: ../Doc/library/importlib.rst:1322 +#: ../Doc/library/importlib.rst:1325 msgid "" "List of strings for where to find submodules, if a package (``None`` " "otherwise)." msgstr "" -#: ../Doc/library/importlib.rst:1327 +#: ../Doc/library/importlib.rst:1330 msgid "" "Container of extra module-specific data for use during loading (or ``None``)." msgstr "" -#: ../Doc/library/importlib.rst:1332 +#: ../Doc/library/importlib.rst:1335 msgid "(``__cached__``)" msgstr "" -#: ../Doc/library/importlib.rst:1334 +#: ../Doc/library/importlib.rst:1337 msgid "String for where the compiled module should be stored (or ``None``)." msgstr "" -#: ../Doc/library/importlib.rst:1338 +#: ../Doc/library/importlib.rst:1341 msgid "(``__package__``)" msgstr "" -#: ../Doc/library/importlib.rst:1340 +#: ../Doc/library/importlib.rst:1343 msgid "" "(Read-only) Fully-qualified name of the package to which the module belongs " "as a submodule (or ``None``)." msgstr "" -#: ../Doc/library/importlib.rst:1345 +#: ../Doc/library/importlib.rst:1348 msgid "" "Boolean indicating whether or not the module's \"origin\" attribute refers " "to a loadable location." msgstr "" -#: ../Doc/library/importlib.rst:1349 +#: ../Doc/library/importlib.rst:1352 msgid ":mod:`importlib.util` -- Utility code for importers" msgstr "" -#: ../Doc/library/importlib.rst:1355 +#: ../Doc/library/importlib.rst:1358 msgid "**Source code:** :source:`Lib/importlib/util.py`" msgstr "" -#: ../Doc/library/importlib.rst:1359 +#: ../Doc/library/importlib.rst:1362 msgid "" "This module contains the various objects that help in the construction of " "an :term:`importer`." msgstr "" -#: ../Doc/library/importlib.rst:1364 +#: ../Doc/library/importlib.rst:1367 msgid "" "The bytes which represent the bytecode version number. If you need help with " "loading/writing bytecode then consider :class:`importlib.abc.SourceLoader`." msgstr "" -#: ../Doc/library/importlib.rst:1371 +#: ../Doc/library/importlib.rst:1374 msgid "" "Return the :pep:`3147`/:pep:`488` path to the byte-compiled file associated " "with the source *path*. For example, if *path* is ``/foo/bar/baz.py`` the " @@ -1616,7 +1619,7 @@ msgid "" "`NotImplementedError` will be raised)." msgstr "" -#: ../Doc/library/importlib.rst:1378 +#: ../Doc/library/importlib.rst:1381 msgid "" "The *optimization* parameter is used to specify the optimization level of " "the bytecode file. An empty string represents no optimization, so ``/foo/bar/" @@ -1629,7 +1632,7 @@ msgid "" "be alphanumeric, else :exc:`ValueError` is raised." msgstr "" -#: ../Doc/library/importlib.rst:1388 +#: ../Doc/library/importlib.rst:1391 msgid "" "The *debug_override* parameter is deprecated and can be used to override the " "system's value for ``__debug__``. A ``True`` value is the equivalent of " @@ -1638,18 +1641,18 @@ msgid "" "are not ``None`` then :exc:`TypeError` is raised." msgstr "" -#: ../Doc/library/importlib.rst:1396 +#: ../Doc/library/importlib.rst:1399 msgid "" "The *optimization* parameter was added and the *debug_override* parameter " "was deprecated." msgstr "" -#: ../Doc/library/importlib.rst:1400 ../Doc/library/importlib.rst:1416 -#: ../Doc/library/importlib.rst:1560 +#: ../Doc/library/importlib.rst:1403 ../Doc/library/importlib.rst:1419 +#: ../Doc/library/importlib.rst:1563 msgid "Accepts a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." -#: ../Doc/library/importlib.rst:1406 +#: ../Doc/library/importlib.rst:1409 msgid "" "Given the *path* to a :pep:`3147` file name, return the associated source " "code file path. For example, if *path* is ``/foo/bar/__pycache__/baz." @@ -1659,25 +1662,25 @@ msgid "" "cache_tag` is not defined, :exc:`NotImplementedError` is raised." msgstr "" -#: ../Doc/library/importlib.rst:1421 +#: ../Doc/library/importlib.rst:1424 msgid "" "Decode the given bytes representing source code and return it as a string " "with universal newlines (as required by :meth:`importlib.abc.InspectLoader." "get_source`)." msgstr "" -#: ../Doc/library/importlib.rst:1429 +#: ../Doc/library/importlib.rst:1432 msgid "Resolve a relative module name to an absolute one." msgstr "" -#: ../Doc/library/importlib.rst:1431 +#: ../Doc/library/importlib.rst:1434 msgid "" "If **name** has no leading dots, then **name** is simply returned. This " "allows for usage such as ``importlib.util.resolve_name('sys', __package__)`` " "without doing a check to see if the **package** argument is needed." msgstr "" -#: ../Doc/library/importlib.rst:1436 +#: ../Doc/library/importlib.rst:1439 msgid "" ":exc:`ValueError` is raised if **name** is a relative module name but " "package is a false value (e.g. ``None`` or the empty string). :exc:" @@ -1685,7 +1688,7 @@ msgid "" "package (e.g. requesting ``..bacon`` from within the ``spam`` package)." msgstr "" -#: ../Doc/library/importlib.rst:1445 +#: ../Doc/library/importlib.rst:1448 msgid "" "Find the :term:`spec ` for a module, optionally relative to the " "specified **package** name. If the module is in :attr:`sys.modules`, then " @@ -1695,30 +1698,30 @@ msgid "" "if no spec is found." msgstr "" -#: ../Doc/library/importlib.rst:1452 +#: ../Doc/library/importlib.rst:1455 msgid "" "If **name** is for a submodule (contains a dot), the parent module is " "automatically imported." msgstr "" -#: ../Doc/library/importlib.rst:1455 +#: ../Doc/library/importlib.rst:1458 msgid "**name** and **package** work the same as for :func:`import_module`." msgstr "" -#: ../Doc/library/importlib.rst:1459 +#: ../Doc/library/importlib.rst:1462 msgid "" "Raises :exc:`ModuleNotFoundError` instead of :exc:`AttributeError` if " "**package** is in fact not a package (i.e. lacks a :attr:`__path__` " "attribute)." msgstr "" -#: ../Doc/library/importlib.rst:1466 +#: ../Doc/library/importlib.rst:1469 msgid "" "Create a new module based on **spec** and :meth:`spec.loader.create_module " "`." msgstr "" -#: ../Doc/library/importlib.rst:1469 +#: ../Doc/library/importlib.rst:1472 msgid "" "If :meth:`spec.loader.create_module ` " "does not return ``None``, then any pre-existing attributes will not be " @@ -1726,14 +1729,14 @@ msgid "" "accessing **spec** or setting an attribute on the module." msgstr "" -#: ../Doc/library/importlib.rst:1474 +#: ../Doc/library/importlib.rst:1477 msgid "" "This function is preferred over using :class:`types.ModuleType` to create a " "new module as **spec** is used to set as many import-controlled attributes " "on the module as possible." msgstr "" -#: ../Doc/library/importlib.rst:1482 +#: ../Doc/library/importlib.rst:1485 msgid "" "A :term:`decorator` for :meth:`importlib.abc.Loader.load_module` to handle " "selecting the proper module object to load with. The decorated method is " @@ -1743,7 +1746,7 @@ msgid "" "work on static methods because of the assumption of two arguments." msgstr "" -#: ../Doc/library/importlib.rst:1491 +#: ../Doc/library/importlib.rst:1494 msgid "" "The decorated method will take in the **name** of the module to be loaded as " "expected for a :term:`loader`. If the module is not found in :data:`sys." @@ -1753,7 +1756,7 @@ msgid "" "available). These attributes are set unconditionally to support reloading." msgstr "" -#: ../Doc/library/importlib.rst:1499 +#: ../Doc/library/importlib.rst:1502 msgid "" "If an exception is raised by the decorated method and a module was added to :" "data:`sys.modules`, then the module will be removed to prevent a partially " @@ -1761,25 +1764,25 @@ msgid "" "was already in :data:`sys.modules` then it is left alone." msgstr "" -#: ../Doc/library/importlib.rst:1504 +#: ../Doc/library/importlib.rst:1507 msgid "" ":attr:`__loader__` and :attr:`__package__` are automatically set (when " "possible)." msgstr "" -#: ../Doc/library/importlib.rst:1508 +#: ../Doc/library/importlib.rst:1511 msgid "" "Set :attr:`__name__`, :attr:`__loader__` :attr:`__package__` unconditionally " "to support reloading." msgstr "" -#: ../Doc/library/importlib.rst:1512 +#: ../Doc/library/importlib.rst:1515 msgid "" "The import machinery now directly performs all the functionality provided by " "this function." msgstr "" -#: ../Doc/library/importlib.rst:1518 +#: ../Doc/library/importlib.rst:1521 msgid "" "A :term:`decorator` for :meth:`importlib.abc.Loader.load_module` to set the :" "attr:`__loader__` attribute on the returned module. If the attribute is " @@ -1788,23 +1791,23 @@ msgid "" "`__loader__` should be set to." msgstr "" -#: ../Doc/library/importlib.rst:1525 +#: ../Doc/library/importlib.rst:1528 msgid "" "Set ``__loader__`` if set to ``None``, as if the attribute does not exist." msgstr "" -#: ../Doc/library/importlib.rst:1529 ../Doc/library/importlib.rst:1538 +#: ../Doc/library/importlib.rst:1532 ../Doc/library/importlib.rst:1541 msgid "The import machinery takes care of this automatically." msgstr "" -#: ../Doc/library/importlib.rst:1534 +#: ../Doc/library/importlib.rst:1537 msgid "" "A :term:`decorator` for :meth:`importlib.abc.Loader.load_module` to set the :" "attr:`__package__` attribute on the returned module. If :attr:`__package__` " "is set and has a value other than ``None`` it will not be changed." msgstr "" -#: ../Doc/library/importlib.rst:1543 +#: ../Doc/library/importlib.rst:1546 msgid "" "A factory function for creating a :class:`ModuleSpec` instance based on a " "loader. The parameters have the same meaning as they do for ModuleSpec. " @@ -1812,27 +1815,27 @@ msgid "" "`InspectLoader.is_package`, to fill in any missing information on the spec." msgstr "" -#: ../Doc/library/importlib.rst:1553 +#: ../Doc/library/importlib.rst:1556 msgid "" "A factory function for creating a :class:`ModuleSpec` instance based on the " "path to a file. Missing information will be filled in on the spec by making " "use of loader APIs and by the implication that the module will be file-based." msgstr "" -#: ../Doc/library/importlib.rst:1565 +#: ../Doc/library/importlib.rst:1568 msgid "" "Return the hash of *source_bytes* as bytes. A hash-based ``.pyc`` file " "embeds the :func:`source_hash` of the corresponding source file's contents " "in its header." msgstr "" -#: ../Doc/library/importlib.rst:1573 +#: ../Doc/library/importlib.rst:1576 msgid "" "A class which postpones the execution of the loader of a module until the " "module has an attribute accessed." msgstr "" -#: ../Doc/library/importlib.rst:1576 +#: ../Doc/library/importlib.rst:1579 msgid "" "This class **only** works with loaders that define :meth:`~importlib.abc." "Loader.exec_module` as control over what module type is used for the module " @@ -1845,7 +1848,7 @@ msgid "" "raised if such a substitution is detected." msgstr "" -#: ../Doc/library/importlib.rst:1587 +#: ../Doc/library/importlib.rst:1590 msgid "" "For projects where startup time is critical, this class allows for " "potentially minimizing the cost of loading a module if it is never used. For " @@ -1854,58 +1857,58 @@ msgid "" "postponed and thus occurring out of context." msgstr "" -#: ../Doc/library/importlib.rst:1595 +#: ../Doc/library/importlib.rst:1598 msgid "" "Began calling :meth:`~importlib.abc.Loader.create_module`, removing the " "compatibility warning for :class:`importlib.machinery.BuiltinImporter` and :" "class:`importlib.machinery.ExtensionFileLoader`." msgstr "" -#: ../Doc/library/importlib.rst:1602 +#: ../Doc/library/importlib.rst:1605 msgid "" "A static method which returns a callable that creates a lazy loader. This is " "meant to be used in situations where the loader is passed by class instead " "of by instance. ::" msgstr "" -#: ../Doc/library/importlib.rst:1615 +#: ../Doc/library/importlib.rst:1618 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/importlib.rst:1618 +#: ../Doc/library/importlib.rst:1621 msgid "Importing programmatically" msgstr "" -#: ../Doc/library/importlib.rst:1620 +#: ../Doc/library/importlib.rst:1623 msgid "" "To programmatically import a module, use :func:`importlib.import_module`. ::" msgstr "" -#: ../Doc/library/importlib.rst:1629 +#: ../Doc/library/importlib.rst:1632 msgid "Checking if a module can be imported" msgstr "" -#: ../Doc/library/importlib.rst:1631 +#: ../Doc/library/importlib.rst:1634 msgid "" "If you need to find out if a module can be imported without actually doing " "the import, then you should use :func:`importlib.util.find_spec`. ::" msgstr "" -#: ../Doc/library/importlib.rst:1654 +#: ../Doc/library/importlib.rst:1657 msgid "Importing a source file directly" msgstr "" -#: ../Doc/library/importlib.rst:1656 +#: ../Doc/library/importlib.rst:1659 msgid "" "To import a Python source file directly, use the following recipe (Python " "3.5 and newer only)::" msgstr "" -#: ../Doc/library/importlib.rst:1675 +#: ../Doc/library/importlib.rst:1678 msgid "Setting up an importer" msgstr "" -#: ../Doc/library/importlib.rst:1677 +#: ../Doc/library/importlib.rst:1680 msgid "" "For deep customizations of import, you typically want to implement an :term:" "`importer`. This means managing both the :term:`finder` and :term:`loader` " @@ -1919,11 +1922,11 @@ msgid "" "for the appropriate classes defined within this package)::" msgstr "" -#: ../Doc/library/importlib.rst:1709 +#: ../Doc/library/importlib.rst:1712 msgid "Approximating :func:`importlib.import_module`" msgstr "" -#: ../Doc/library/importlib.rst:1711 +#: ../Doc/library/importlib.rst:1714 msgid "" "Import itself is implemented in Python code, making it possible to expose " "most of the import machinery through importlib. The following helps " diff --git a/library/itertools.po b/library/itertools.po index bbab38ff8..d0fa8e097 100644 --- a/library/itertools.po +++ b/library/itertools.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-09-28 14:32+0200\n" "Last-Translator: Raphaël Gomès \n" "Language-Team: FRENCH \n" @@ -917,6 +917,13 @@ msgstr "" #: ../Doc/library/itertools.rst:648 msgid "" +"``tee`` iterators are not threadsafe. A :exc:`RuntimeError` may be raised " +"when using simultaneously iterators returned by the same :func:`tee` call, " +"even if the original *iterable* is threadsafe." +msgstr "" + +#: ../Doc/library/itertools.rst:652 +msgid "" "This itertool may require significant auxiliary storage (depending on how " "much temporary data needs to be stored). In general, if one iterator uses " "most or all of the data before another iterator starts, it is faster to use :" @@ -928,7 +935,7 @@ msgstr "" "itérateur ne commence, il est plus rapide d'utiliser :func:`list` à la place " "de :func:`tee`." -#: ../Doc/library/itertools.rst:656 +#: ../Doc/library/itertools.rst:660 msgid "" "Make an iterator that aggregates elements from each of the iterables. If the " "iterables are of uneven length, missing values are filled-in with " @@ -940,7 +947,7 @@ msgstr "" "remplacées par *fillvalue*. L'itération continue jusqu'à ce que l'itérable " "le plus long soit épuisé. Sensiblement équivalent à : ::" -#: ../Doc/library/itertools.rst:680 +#: ../Doc/library/itertools.rst:684 msgid "" "If one of the iterables is potentially infinite, then the :func:" "`zip_longest` function should be wrapped with something that limits the " @@ -952,11 +959,11 @@ msgstr "" "d'appels (par exemple, :func:`islice` ou :func:`takewhile`). Si *fillvalue* " "n'est pas spécifié, il vaut ``None`` par défaut." -#: ../Doc/library/itertools.rst:689 +#: ../Doc/library/itertools.rst:693 msgid "Itertools Recipes" msgstr "Recettes *itertools*" -#: ../Doc/library/itertools.rst:691 +#: ../Doc/library/itertools.rst:695 msgid "" "This section shows recipes for creating an extended toolset using the " "existing itertools as building blocks." @@ -964,14 +971,14 @@ msgstr "" "Cette section montre des recettes pour créer une boîte à outil étendue en se " "servant des *itertools* existants comme de briques." -#: ../Doc/library/itertools.rst:694 +#: ../Doc/library/itertools.rst:698 msgid "" "Substantially all of these recipes and many, many others can be installed " "from the `more-itertools project `_ found on the Python Package Index::" msgstr "" -#: ../Doc/library/itertools.rst:700 +#: ../Doc/library/itertools.rst:704 msgid "" "The extended tools offer the same high performance as the underlying " "toolset. The superior memory performance is kept by processing elements one " diff --git a/library/logging.handlers.po b/library/logging.handlers.po index 3290678e9..cb63e829a 100644 --- a/library/logging.handlers.po +++ b/library/logging.handlers.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -1431,7 +1431,7 @@ msgid "" msgstr "" #: ../Doc/library/logging.handlers.rst:1048 -msgid "The ``respect_handler_levels`` argument was added." +msgid "The ``respect_handler_level`` argument was added." msgstr "" #: ../Doc/library/logging.handlers.rst:1053 diff --git a/library/logging.po b/library/logging.po index dd256711c..97fb20c5a 100644 --- a/library/logging.po +++ b/library/logging.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-07-05 11:54+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -206,10 +206,10 @@ msgstr "" #: ../Doc/library/logging.rst:129 msgid "" -"Indicates if a message of severity *lvl* would be processed by this logger. " -"This method checks first the module-level level set by ``logging." -"disable(lvl)`` and then the logger's effective level as determined by :meth:" -"`getEffectiveLevel`." +"Indicates if a message of severity *level* would be processed by this " +"logger. This method checks first the module-level level set by ``logging." +"disable(level)`` and then the logger's effective level as determined by :" +"meth:`getEffectiveLevel`." msgstr "" #: ../Doc/library/logging.rst:137 @@ -378,8 +378,8 @@ msgstr "" #: ../Doc/library/logging.rst:274 msgid "" -"Logs a message with integer level *lvl* on this logger. The other arguments " -"are interpreted as for :meth:`debug`." +"Logs a message with integer level *level* on this logger. The other " +"arguments are interpreted as for :meth:`debug`." msgstr "" #: ../Doc/library/logging.rst:280 @@ -1500,10 +1500,10 @@ msgstr "" #: ../Doc/library/logging.rst:1068 msgid "" -"Provides an overriding level *lvl* for all loggers which takes precedence " +"Provides an overriding level *level* for all loggers which takes precedence " "over the logger's own level. When the need arises to temporarily throttle " "logging output down across the whole application, this function can be " -"useful. Its effect is to disable all logging calls of severity *lvl* and " +"useful. Its effect is to disable all logging calls of severity *level* and " "below, so that if you call it with a value of INFO, then all INFO and DEBUG " "events would be discarded, whereas those of severity WARNING and above would " "be processed according to the logger's effective level. If ``logging." @@ -1516,19 +1516,19 @@ msgstr "" msgid "" "Note that if you have defined any custom logging level higher than " "``CRITICAL`` (this is not recommended), you won't be able to rely on the " -"default value for the *lvl* parameter, but will have to explicitly supply a " -"suitable value." +"default value for the *level* parameter, but will have to explicitly supply " +"a suitable value." msgstr "" #: ../Doc/library/logging.rst:1084 msgid "" -"The *lvl* parameter was defaulted to level ``CRITICAL``. See Issue #28524 " +"The *level* parameter was defaulted to level ``CRITICAL``. See Issue #28524 " "for more information about this change." msgstr "" #: ../Doc/library/logging.rst:1090 msgid "" -"Associates level *lvl* with text *levelName* in an internal dictionary, " +"Associates level *level* with text *levelName* in an internal dictionary, " "which is used to map numeric levels to a textual representation, for example " "when a :class:`Formatter` formats a message. This function can also be used " "to define your own levels. The only constraints are that all levels used " @@ -1544,14 +1544,14 @@ msgstr "" #: ../Doc/library/logging.rst:1102 msgid "" -"Returns the textual representation of logging level *lvl*. If the level is " +"Returns the textual representation of logging level *level*. If the level is " "one of the predefined levels :const:`CRITICAL`, :const:`ERROR`, :const:" "`WARNING`, :const:`INFO` or :const:`DEBUG` then you get the corresponding " "string. If you have associated levels with names using :func:`addLevelName` " -"then the name you have associated with *lvl* is returned. If a numeric value " -"corresponding to one of the defined levels is passed in, the corresponding " -"string representation is returned. Otherwise, the string 'Level %s' % lvl is " -"returned." +"then the name you have associated with *level* is returned. If a numeric " +"value corresponding to one of the defined levels is passed in, the " +"corresponding string representation is returned. Otherwise, the string " +"'Level %s' % level is returned." msgstr "" #: ../Doc/library/logging.rst:1110 diff --git a/library/os.path.po b/library/os.path.po index 162da2ac8..823889cf1 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-11-29 18:28+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -133,11 +133,11 @@ msgstr "" #: ../Doc/library/os.path.rst:242 ../Doc/library/os.path.rst:252 #: ../Doc/library/os.path.rst:262 ../Doc/library/os.path.rst:272 #: ../Doc/library/os.path.rst:282 ../Doc/library/os.path.rst:301 -#: ../Doc/library/os.path.rst:334 ../Doc/library/os.path.rst:346 -#: ../Doc/library/os.path.rst:360 ../Doc/library/os.path.rst:378 -#: ../Doc/library/os.path.rst:396 ../Doc/library/os.path.rst:409 -#: ../Doc/library/os.path.rst:425 ../Doc/library/os.path.rst:441 -#: ../Doc/library/os.path.rst:462 ../Doc/library/os.path.rst:473 +#: ../Doc/library/os.path.rst:332 ../Doc/library/os.path.rst:344 +#: ../Doc/library/os.path.rst:358 ../Doc/library/os.path.rst:376 +#: ../Doc/library/os.path.rst:394 ../Doc/library/os.path.rst:407 +#: ../Doc/library/os.path.rst:423 ../Doc/library/os.path.rst:439 +#: ../Doc/library/os.path.rst:460 ../Doc/library/os.path.rst:471 msgid "Accepts a :term:`path-like object`." msgstr "Accepte un :term:`path-like object`." @@ -163,9 +163,9 @@ msgid "" "empty. Unlike :func:`commonprefix`, this returns a valid path." msgstr "" -#: ../Doc/library/os.path.rst:96 ../Doc/library/os.path.rst:377 -#: ../Doc/library/os.path.rst:389 ../Doc/library/os.path.rst:405 -#: ../Doc/library/os.path.rst:421 +#: ../Doc/library/os.path.rst:96 ../Doc/library/os.path.rst:375 +#: ../Doc/library/os.path.rst:387 ../Doc/library/os.path.rst:403 +#: ../Doc/library/os.path.rst:419 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." @@ -364,12 +364,10 @@ msgstr "" msgid "" "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)." +"On other operating systems, return the path unchanged." msgstr "" -#: ../Doc/library/os.path.rst:340 +#: ../Doc/library/os.path.rst:338 msgid "" "Normalize a pathname by collapsing redundant separators and up-level " "references so that ``A//B``, ``A/B/``, ``A/./B`` and ``A/foo/../B`` all " @@ -378,24 +376,24 @@ msgid "" "backward slashes. To normalize case, use :func:`normcase`." msgstr "" -#: ../Doc/library/os.path.rst:352 +#: ../Doc/library/os.path.rst:350 msgid "" "Return the canonical path of the specified filename, eliminating any " "symbolic links encountered in the path (if they are supported by the " "operating system)." msgstr "" -#: ../Doc/library/os.path.rst:357 +#: ../Doc/library/os.path.rst:355 msgid "" "When symbolic link cycles occur, the returned path will be one member of the " "cycle, but no guarantee is made about which member that will be." msgstr "" -#: ../Doc/library/os.path.rst:363 +#: ../Doc/library/os.path.rst:361 msgid "Symbolic links and junctions are now resolved on Windows." msgstr "" -#: ../Doc/library/os.path.rst:369 +#: ../Doc/library/os.path.rst:367 msgid "" "Return a relative filepath to *path* either from the current directory or " "from an optional *start* directory. This is a path computation: the " @@ -403,33 +401,33 @@ msgid "" "*start*." msgstr "" -#: ../Doc/library/os.path.rst:374 +#: ../Doc/library/os.path.rst:372 msgid "*start* defaults to :attr:`os.curdir`." msgstr "" -#: ../Doc/library/os.path.rst:384 +#: ../Doc/library/os.path.rst:382 msgid "" "Return ``True`` if both pathname arguments refer to the same file or " "directory. This is determined by the device number and i-node number and " "raises an exception if an :func:`os.stat` call on either pathname fails." msgstr "" -#: ../Doc/library/os.path.rst:390 ../Doc/library/os.path.rst:406 -#: ../Doc/library/os.path.rst:422 +#: ../Doc/library/os.path.rst:388 ../Doc/library/os.path.rst:404 +#: ../Doc/library/os.path.rst:420 msgid "Added Windows support." msgstr "Prise en charge de Windows." -#: ../Doc/library/os.path.rst:393 +#: ../Doc/library/os.path.rst:391 msgid "Windows now uses the same implementation as all other platforms." msgstr "" -#: ../Doc/library/os.path.rst:402 +#: ../Doc/library/os.path.rst:400 msgid "" "Return ``True`` if the file descriptors *fp1* and *fp2* refer to the same " "file." msgstr "" -#: ../Doc/library/os.path.rst:415 +#: ../Doc/library/os.path.rst:413 msgid "" "Return ``True`` if the stat tuples *stat1* and *stat2* refer to the same " "file. These structures may have been returned by :func:`os.fstat`, :func:`os." @@ -437,7 +435,7 @@ msgid "" "comparison used by :func:`samefile` and :func:`sameopenfile`." msgstr "" -#: ../Doc/library/os.path.rst:431 +#: ../Doc/library/os.path.rst:429 msgid "" "Split the pathname *path* into a pair, ``(head, tail)`` where *tail* is the " "last pathname component and *head* is everything leading up to that. The " @@ -450,7 +448,7 @@ msgid "" "and :func:`basename`." msgstr "" -#: ../Doc/library/os.path.rst:447 +#: ../Doc/library/os.path.rst:445 msgid "" "Split the pathname *path* into a pair ``(drive, tail)`` where *drive* is " "either a mount point or the empty string. On systems which do not use drive " @@ -458,26 +456,26 @@ msgid "" "``drive + tail`` will be the same as *path*." msgstr "" -#: ../Doc/library/os.path.rst:452 +#: ../Doc/library/os.path.rst:450 msgid "" "On Windows, splits a pathname into drive/UNC sharepoint and relative path." msgstr "" -#: ../Doc/library/os.path.rst:454 +#: ../Doc/library/os.path.rst:452 msgid "" "If the path contains a drive letter, drive will contain everything up to and " "including the colon. e.g. ``splitdrive(\"c:/dir\")`` returns ``(\"c:\", \"/" "dir\")``" msgstr "" -#: ../Doc/library/os.path.rst:458 +#: ../Doc/library/os.path.rst:456 msgid "" "If the path contains a UNC path, drive will contain the host name and share, " "up to but not including the fourth separator. e.g. ``splitdrive(\"//host/" "computer/dir\")`` returns ``(\"//host/computer\", \"/dir\")``" msgstr "" -#: ../Doc/library/os.path.rst:468 +#: ../Doc/library/os.path.rst:466 msgid "" "Split the pathname *path* into a pair ``(root, ext)`` such that ``root + " "ext == path``, and *ext* is empty or begins with a period and contains at " @@ -485,7 +483,7 @@ msgid "" "cshrc')`` returns ``('.cshrc', '')``." msgstr "" -#: ../Doc/library/os.path.rst:479 +#: ../Doc/library/os.path.rst:477 msgid "" "``True`` if arbitrary Unicode strings can be used as file names (within " "limitations imposed by the file system)." diff --git a/library/os.po b/library/os.po index 302adde11..13125875a 100644 --- a/library/os.po +++ b/library/os.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-18 22:02+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -232,17 +232,17 @@ msgstr "" #: ../Doc/library/os.rst:3484 ../Doc/library/os.rst:3529 #: ../Doc/library/os.rst:3536 ../Doc/library/os.rst:3544 #: ../Doc/library/os.rst:3653 ../Doc/library/os.rst:3699 -#: ../Doc/library/os.rst:3901 ../Doc/library/os.rst:3917 -#: ../Doc/library/os.rst:3928 ../Doc/library/os.rst:3939 -#: ../Doc/library/os.rst:3952 ../Doc/library/os.rst:3998 -#: ../Doc/library/os.rst:4009 ../Doc/library/os.rst:4017 -#: ../Doc/library/os.rst:4033 ../Doc/library/os.rst:4045 -#: ../Doc/library/os.rst:4053 ../Doc/library/os.rst:4061 -#: ../Doc/library/os.rst:4069 ../Doc/library/os.rst:4077 -#: ../Doc/library/os.rst:4085 ../Doc/library/os.rst:4092 -#: ../Doc/library/os.rst:4099 ../Doc/library/os.rst:4245 -#: ../Doc/library/os.rst:4254 ../Doc/library/os.rst:4275 -#: ../Doc/library/os.rst:4285 ../Doc/library/os.rst:4294 +#: ../Doc/library/os.rst:3903 ../Doc/library/os.rst:3919 +#: ../Doc/library/os.rst:3930 ../Doc/library/os.rst:3941 +#: ../Doc/library/os.rst:3954 ../Doc/library/os.rst:4000 +#: ../Doc/library/os.rst:4011 ../Doc/library/os.rst:4019 +#: ../Doc/library/os.rst:4035 ../Doc/library/os.rst:4047 +#: ../Doc/library/os.rst:4055 ../Doc/library/os.rst:4063 +#: ../Doc/library/os.rst:4071 ../Doc/library/os.rst:4079 +#: ../Doc/library/os.rst:4087 ../Doc/library/os.rst:4094 +#: ../Doc/library/os.rst:4101 ../Doc/library/os.rst:4247 +#: ../Doc/library/os.rst:4256 ../Doc/library/os.rst:4277 +#: ../Doc/library/os.rst:4287 ../Doc/library/os.rst:4296 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." @@ -570,7 +570,7 @@ msgstr "" #: ../Doc/library/os.rst:2824 ../Doc/library/os.rst:2858 #: ../Doc/library/os.rst:3317 ../Doc/library/os.rst:3782 #: ../Doc/library/os.rst:3793 ../Doc/library/os.rst:3863 -#: ../Doc/library/os.rst:3887 +#: ../Doc/library/os.rst:3889 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." @@ -894,7 +894,7 @@ msgstr "" msgid ":ref:`Availability `: recent flavors of Unix." msgstr ":ref:`Disponibilité ` : dérivés récents de Unix." -#: ../Doc/library/os.rst:628 ../Doc/library/os.rst:3888 +#: ../Doc/library/os.rst:628 ../Doc/library/os.rst:3890 msgid "" "Return type changed from a tuple to a tuple-like object with named " "attributes." @@ -1364,7 +1364,7 @@ msgid "The *dir_fd* argument." msgstr "L'argument *dir_fd*." #: ../Doc/library/os.rst:956 ../Doc/library/os.rst:1248 -#: ../Doc/library/os.rst:1371 ../Doc/library/os.rst:3983 +#: ../Doc/library/os.rst:1371 ../Doc/library/os.rst:3985 msgid "" "If the system call is interrupted and the signal handler does not raise an " "exception, the function now retries the system call instead of raising an :" @@ -5599,16 +5599,19 @@ msgstr "" "`children_user`, :attr:`children_system`, et :attr:`elapsed` dans cet ordre." #: ../Doc/library/os.rst:3881 +#, fuzzy msgid "" -"See the Unix manual page :manpage:`times(2)` or the corresponding Windows " -"Platform API documentation. On Windows, only :attr:`user` and :attr:`system` " -"are known; the other attributes are zero." +"See the Unix manual page :manpage:`times(2)` and :manpage:`times(3)` manual " +"page on Unix or `the GetProcessTimes MSDN ` _ " +"on Windows. On Windows, only :attr:`user` and :attr:`system` are known; the " +"other attributes are zero." msgstr "" "Voir la page de manuel Unix :manpage:`times(2)` ou la documentation de l'API " "Windows correspondante. Sur Windows, seuls :attr:`user` et :attr:`system` " "sont connus. Les autres attributs sont nuls." -#: ../Doc/library/os.rst:3895 +#: ../Doc/library/os.rst:3897 msgid "" "Wait for completion of a child process, and return a tuple containing its " "pid and exit status indication: a 16-bit number, whose low byte is the " @@ -5623,7 +5626,7 @@ msgstr "" "Le bit de poids fort du *byte* de poids faible est mis à 1 si un (fichier " "système) *core file* a été produit." -#: ../Doc/library/os.rst:3905 +#: ../Doc/library/os.rst:3907 msgid "" "Wait for the completion of one or more child processes. *idtype* can be :" "data:`P_PID`, :data:`P_PGID` or :data:`P_ALL`. *id* specifies the pid to " @@ -5646,7 +5649,7 @@ msgstr "" "`si_code` ou ``None`` si :data:`WNOHANG` est spécifié et qu'il n'y a pas " "d'enfant dans un état que l'on peut attendre." -#: ../Doc/library/os.rst:3924 +#: ../Doc/library/os.rst:3926 msgid "" "These are the possible values for *idtype* in :func:`waitid`. They affect " "how *id* is interpreted." @@ -5654,7 +5657,7 @@ msgstr "" "Les valeurs possibles pour *idtypes* pour la fonction :func:`waitid`. Elles " "affectent l'interprétation de *id*." -#: ../Doc/library/os.rst:3935 +#: ../Doc/library/os.rst:3937 msgid "" "Flags that can be used in *options* in :func:`waitid` that specify what " "child signal to wait for." @@ -5662,7 +5665,7 @@ msgstr "" "Marqueurs qui peuvent être utilisés pour la fonction :func:`waitid` qui " "spécifient quel signal attendre du fils." -#: ../Doc/library/os.rst:3948 +#: ../Doc/library/os.rst:3950 msgid "" "These are the possible values for :attr:`si_code` in the result returned by :" "func:`waitid`." @@ -5670,11 +5673,11 @@ msgstr "" "Les valeurs possibles pour :attr:`si_code` dans le résultat renvoyé par :" "func:`waitid`." -#: ../Doc/library/os.rst:3958 +#: ../Doc/library/os.rst:3960 msgid "The details of this function differ on Unix and Windows." msgstr "Les détails de cette fonction diffèrent sur Unix et Windows." -#: ../Doc/library/os.rst:3960 +#: ../Doc/library/os.rst:3962 msgid "" "On Unix: Wait for completion of a child process given by process id *pid*, " "and return a tuple containing its process id and exit status indication " @@ -5688,7 +5691,7 @@ msgstr "" "affecté par la valeur de l'argument entier *options*, qui devrait valoir " "``0`` pour les opérations normales." -#: ../Doc/library/os.rst:3965 +#: ../Doc/library/os.rst:3967 msgid "" "If *pid* is greater than ``0``, :func:`waitpid` requests status information " "for that specific process. If *pid* is ``0``, the request is for the status " @@ -5705,7 +5708,7 @@ msgstr "" "``-1``, une requête est faite pour le statut de chaque processus du groupe " "de processus donné par ``-pid`` (la valeur absolue de *pid*)." -#: ../Doc/library/os.rst:3972 +#: ../Doc/library/os.rst:3974 msgid "" "An :exc:`OSError` is raised with the value of errno when the syscall returns " "-1." @@ -5713,7 +5716,7 @@ msgstr "" "Une :exc:`OSError` est levée avec la valeur de *errno* quand l'appel système " "renvoie ``-1``." -#: ../Doc/library/os.rst:3975 +#: ../Doc/library/os.rst:3977 msgid "" "On Windows: Wait for completion of a process given by process handle *pid*, " "and return a tuple containing *pid*, and its exit status shifted left by 8 " @@ -5735,7 +5738,7 @@ msgstr "" "appelées avec :const:`P_NOWAIT` renvoient des identificateurs de processus " "appropriés." -#: ../Doc/library/os.rst:3991 +#: ../Doc/library/os.rst:3993 msgid "" "Similar to :func:`waitpid`, except no process id argument is given and a 3-" "element tuple containing the child's process id, exit status indication, and " @@ -5751,7 +5754,7 @@ msgstr "" "ressources. L'argument *options* est le même que celui fourni à :func:" "`waitpid` et :func:`wait4`." -#: ../Doc/library/os.rst:4003 +#: ../Doc/library/os.rst:4005 msgid "" "Similar to :func:`waitpid`, except a 3-element tuple, containing the child's " "process id, exit status indication, and resource usage information is " @@ -5766,7 +5769,7 @@ msgstr "" "d'utilisation des ressources. Les arguments de :func:`wait4` sont les mêmes " "que ceux fournis à :func:`waitpid`." -#: ../Doc/library/os.rst:4014 +#: ../Doc/library/os.rst:4016 msgid "" "The option for :func:`waitpid` to return immediately if no child process " "status is available immediately. The function returns ``(0, 0)`` in this " @@ -5776,7 +5779,7 @@ msgstr "" "processus fils n'est disponible dans l'immédiat. La fonction renvoie ``(0, " "0)`` dans ce cas." -#: ../Doc/library/os.rst:4022 +#: ../Doc/library/os.rst:4024 msgid "" "This option causes child processes to be reported if they have been " "continued from a job control stop since their status was last reported." @@ -5785,11 +5788,11 @@ msgstr "" "continués après un arrêt du *job control* depuis leurs derniers reports de " "statuts." -#: ../Doc/library/os.rst:4025 +#: ../Doc/library/os.rst:4027 msgid ":ref:`Availability `: some Unix systems." msgstr ":ref:`Disponibilité ` : certains systèmes Unix." -#: ../Doc/library/os.rst:4030 +#: ../Doc/library/os.rst:4032 msgid "" "This option causes child processes to be reported if they have been stopped " "but their current state has not been reported since they were stopped." @@ -5797,7 +5800,7 @@ msgstr "" "Cette option cause les processus fils à être reportés s'ils ont été stoppés " "mais que leur état actuel n'a pas été reporté depuis qu'ils ont été stoppés." -#: ../Doc/library/os.rst:4036 +#: ../Doc/library/os.rst:4038 msgid "" "The following functions take a process status code as returned by :func:" "`system`, :func:`wait`, or :func:`waitpid` as a parameter. They may be used " @@ -5807,7 +5810,7 @@ msgstr "" "`system`, :func:`wait`, ou :func:`waitpid` en paramètre. Ils peuvent être " "utilisés pour déterminer la disposition d'un processus." -#: ../Doc/library/os.rst:4042 +#: ../Doc/library/os.rst:4044 msgid "" "Return ``True`` if a core dump was generated for the process, otherwise " "return ``False``." @@ -5815,7 +5818,7 @@ msgstr "" "Renvoie ``True`` si un vidage système (*core dump*) a été généré pour le " "processus, sinon, renvoie ``False``." -#: ../Doc/library/os.rst:4050 +#: ../Doc/library/os.rst:4052 msgid "" "Return ``True`` if the process has been continued from a job control stop, " "otherwise return ``False``." @@ -5823,13 +5826,13 @@ msgstr "" "Renvoie ``True`` si le processus a été continué après un arrêt du *job " "control*, renvoie ``False`` autrement." -#: ../Doc/library/os.rst:4058 +#: ../Doc/library/os.rst:4060 msgid "" "Return ``True`` if the process has been stopped, otherwise return ``False``." msgstr "" "Renvoie ``True`` si le processus a été arrête, sinon renvoie ``False``." -#: ../Doc/library/os.rst:4066 +#: ../Doc/library/os.rst:4068 msgid "" "Return ``True`` if the process exited due to a signal, otherwise return " "``False``." @@ -5837,7 +5840,7 @@ msgstr "" "Renvoie ``True`` si le processus s'est terminé à cause d'un signal, sinon, " "renvoie ``False``." -#: ../Doc/library/os.rst:4074 +#: ../Doc/library/os.rst:4076 msgid "" "Return ``True`` if the process exited using the :manpage:`exit(2)` system " "call, otherwise return ``False``." @@ -5845,7 +5848,7 @@ msgstr "" "Renvoie ``True`` si le processus s'est terminé en faisant un appel système :" "manpage:`exit(2)`, sinon, renvoie ``False``." -#: ../Doc/library/os.rst:4082 +#: ../Doc/library/os.rst:4084 msgid "" "If ``WIFEXITED(status)`` is true, return the integer parameter to the :" "manpage:`exit(2)` system call. Otherwise, the return value is meaningless." @@ -5854,19 +5857,19 @@ msgstr "" "l'appel système :manpage:`exit(2)`. Sinon, la valeur de retour n'a pas de " "signification." -#: ../Doc/library/os.rst:4090 +#: ../Doc/library/os.rst:4092 msgid "Return the signal which caused the process to stop." msgstr "Renvoie le signal qui a causé l'arrêt du processus." -#: ../Doc/library/os.rst:4097 +#: ../Doc/library/os.rst:4099 msgid "Return the signal which caused the process to exit." msgstr "Renvoie le signal qui a amené le processus à quitter." -#: ../Doc/library/os.rst:4103 +#: ../Doc/library/os.rst:4105 msgid "Interface to the scheduler" msgstr "Interface pour l'ordonnanceur" -#: ../Doc/library/os.rst:4105 +#: ../Doc/library/os.rst:4107 msgid "" "These functions control how a process is allocated CPU time by the operating " "system. They are only available on some Unix platforms. For more detailed " @@ -5877,7 +5880,7 @@ msgstr "" "plate-formes Unix. Pour des informations plus détaillées, consultez les " "pages de manuels Unix." -#: ../Doc/library/os.rst:4111 +#: ../Doc/library/os.rst:4113 msgid "" "The following scheduling policies are exposed if they are supported by the " "operating system." @@ -5885,11 +5888,11 @@ msgstr "" "Les polices d'ordonnancement suivantes sont exposées si elles sont gérées " "par le système d'exploitation." -#: ../Doc/library/os.rst:4116 +#: ../Doc/library/os.rst:4118 msgid "The default scheduling policy." msgstr "La police d'ordonnancement par défaut." -#: ../Doc/library/os.rst:4120 +#: ../Doc/library/os.rst:4122 msgid "" "Scheduling policy for CPU-intensive processes that tries to preserve " "interactivity on the rest of the computer." @@ -5898,25 +5901,25 @@ msgstr "" "processeur. Cette police essaye de préserver l'interactivité pour le reste " "de l'ordinateur." -#: ../Doc/library/os.rst:4125 +#: ../Doc/library/os.rst:4127 msgid "Scheduling policy for extremely low priority background tasks." msgstr "" "Police d'ordonnancement pour les tâches de fond avec une priorité " "extrêmement faible." -#: ../Doc/library/os.rst:4129 +#: ../Doc/library/os.rst:4131 msgid "Scheduling policy for sporadic server programs." msgstr "Police d'ordonnancement pour des programmes serveurs sporadiques." -#: ../Doc/library/os.rst:4133 +#: ../Doc/library/os.rst:4135 msgid "A First In First Out scheduling policy." msgstr "Une police d'ordonnancement *FIFO* (dernier arrivé, premier servi)." -#: ../Doc/library/os.rst:4137 +#: ../Doc/library/os.rst:4139 msgid "A round-robin scheduling policy." msgstr "Une police d'ordonnancement *round-robin* (tourniquet)." -#: ../Doc/library/os.rst:4141 +#: ../Doc/library/os.rst:4143 msgid "" "This flag can be OR'ed with any other scheduling policy. When a process with " "this flag set forks, its child's scheduling policy and priority are reset to " @@ -5927,7 +5930,7 @@ msgstr "" "d'ordonnancement et la priorité du processus fils sont remises aux valeurs " "par défaut." -#: ../Doc/library/os.rst:4148 +#: ../Doc/library/os.rst:4150 msgid "" "This class represents tunable scheduling parameters used in :func:" "`sched_setparam`, :func:`sched_setscheduler`, and :func:`sched_getparam`. It " @@ -5937,15 +5940,15 @@ msgstr "" "pour :func:`sched_setparam`, :func:`sched_setscheduler`, et :func:" "`sched_getparam`. Un objet de ce type est immuable." -#: ../Doc/library/os.rst:4152 +#: ../Doc/library/os.rst:4154 msgid "At the moment, there is only one possible parameter:" msgstr "Pour le moment, il n'y a qu'un seul paramètre possible :" -#: ../Doc/library/os.rst:4156 +#: ../Doc/library/os.rst:4158 msgid "The scheduling priority for a scheduling policy." msgstr "La priorité d'ordonnancement pour une police d'ordonnancement." -#: ../Doc/library/os.rst:4161 +#: ../Doc/library/os.rst:4163 msgid "" "Get the minimum priority value for *policy*. *policy* is one of the " "scheduling policy constants above." @@ -5953,7 +5956,7 @@ msgstr "" "Récupère la valeur minimum pour une priorité pour la police *policy*. " "*policy* est une des constantes de police définies ci-dessus." -#: ../Doc/library/os.rst:4167 +#: ../Doc/library/os.rst:4169 msgid "" "Get the maximum priority value for *policy*. *policy* is one of the " "scheduling policy constants above." @@ -5961,7 +5964,7 @@ msgstr "" "Récupère la valeur maximum pour une priorité pour la police *policy*. " "*policy* est une des constantes de police définies ci-dessus." -#: ../Doc/library/os.rst:4173 +#: ../Doc/library/os.rst:4175 msgid "" "Set the scheduling policy for the process with PID *pid*. A *pid* of 0 means " "the calling process. *policy* is one of the scheduling policy constants " @@ -5972,7 +5975,7 @@ msgstr "" "police définies ci-dessus. *param* est une instance de la classe :class:" "`sched_param`." -#: ../Doc/library/os.rst:4180 +#: ../Doc/library/os.rst:4182 msgid "" "Return the scheduling policy for the process with PID *pid*. A *pid* of 0 " "means the calling process. The result is one of the scheduling policy " @@ -5982,7 +5985,7 @@ msgstr "" "de 0 signifie le processus appelant. Le résultat est une des constantes de " "police définies ci-dessus." -#: ../Doc/library/os.rst:4187 +#: ../Doc/library/os.rst:4189 msgid "" "Set a scheduling parameters for the process with PID *pid*. A *pid* of 0 " "means the calling process. *param* is a :class:`sched_param` instance." @@ -5991,7 +5994,7 @@ msgstr "" "*pid* de ``0`` signifie le processus appelant. *param* est une instance de :" "class:`sched_param`." -#: ../Doc/library/os.rst:4193 +#: ../Doc/library/os.rst:4195 msgid "" "Return the scheduling parameters as a :class:`sched_param` instance for the " "process with PID *pid*. A *pid* of 0 means the calling process." @@ -6000,7 +6003,7 @@ msgstr "" "pour le processus de PID *pid*. Un *pid* de ``0`` signifie le processus " "appelant." -#: ../Doc/library/os.rst:4199 +#: ../Doc/library/os.rst:4201 msgid "" "Return the round-robin quantum in seconds for the process with PID *pid*. A " "*pid* of 0 means the calling process." @@ -6008,11 +6011,11 @@ msgstr "" "Renvoie le quantum de temps du *round-robin* (en secondes) pour le processus " "de PID *pid*. Un *pid* de ``0`` signifie le processus appelant." -#: ../Doc/library/os.rst:4205 +#: ../Doc/library/os.rst:4207 msgid "Voluntarily relinquish the CPU." msgstr "Abandonne volontairement le processeur." -#: ../Doc/library/os.rst:4210 +#: ../Doc/library/os.rst:4212 msgid "" "Restrict the process with PID *pid* (or the current process if zero) to a " "set of CPUs. *mask* is an iterable of integers representing the set of CPUs " @@ -6022,7 +6025,7 @@ msgstr "" "``0``) à un ensemble de CPUs. *mask* est un itérable d'entiers représentant " "l'ensemble de CPUs auquel le processus doit être restreint." -#: ../Doc/library/os.rst:4217 +#: ../Doc/library/os.rst:4219 msgid "" "Return the set of CPUs the process with PID *pid* (or the current process if " "zero) is restricted to." @@ -6030,11 +6033,11 @@ msgstr "" "Renvoie l'ensemble de CPUs auquel le processus de PID *pid* (ou le processus " "actuel si *pid* vaut ``0``) est restreint." -#: ../Doc/library/os.rst:4224 +#: ../Doc/library/os.rst:4226 msgid "Miscellaneous System Information" msgstr "Diverses informations sur le système" -#: ../Doc/library/os.rst:4229 +#: ../Doc/library/os.rst:4231 msgid "" "Return string-valued system configuration values. *name* specifies the " "configuration value to retrieve; it may be a string which is the name of a " @@ -6054,7 +6057,7 @@ msgstr "" "incluses dans ce *mapping*, passer un entier pour *name* est également " "accepté." -#: ../Doc/library/os.rst:4237 +#: ../Doc/library/os.rst:4239 msgid "" "If the configuration value specified by *name* isn't defined, ``None`` is " "returned." @@ -6062,7 +6065,7 @@ msgstr "" "Si la valeur de configuration spécifiée par *name* n'est pas définie, " "``None`` est renvoyé." -#: ../Doc/library/os.rst:4240 +#: ../Doc/library/os.rst:4242 msgid "" "If *name* is a string and is not known, :exc:`ValueError` is raised. If a " "specific value for *name* is not supported by the host system, even if it is " @@ -6074,7 +6077,7 @@ msgstr "" "par le système hôte, même si elle est incluse dans ``confstr_names``, une :" "exc:`OSError` est levée avec :const:`errno.EINVAL` pour numéro d'erreur." -#: ../Doc/library/os.rst:4250 +#: ../Doc/library/os.rst:4252 msgid "" "Dictionary mapping names accepted by :func:`confstr` to the integer values " "defined for those names by the host operating system. This can be used to " @@ -6084,13 +6087,13 @@ msgstr "" "entières définies pour ces noms par le système d'exploitation hôte. Cela " "peut être utilisé pour déterminer l'ensemble des noms connus du système." -#: ../Doc/library/os.rst:4259 +#: ../Doc/library/os.rst:4261 msgid "" "Return the number of CPUs in the system. Returns ``None`` if undetermined." msgstr "" "Renvoie le nombre de CPUs dans le système. Renvoie ``None`` si indéterminé." -#: ../Doc/library/os.rst:4261 +#: ../Doc/library/os.rst:4263 msgid "" "This number is not equivalent to the number of CPUs the current process can " "use. The number of usable CPUs can be obtained with ``len(os." @@ -6100,7 +6103,7 @@ msgstr "" "peut utiliser. Le nombre de CPUs utilisables peut être obtenu avec ``len(os." "sched_getaffinity(0))``" -#: ../Doc/library/os.rst:4271 +#: ../Doc/library/os.rst:4273 msgid "" "Return the number of processes in the system run queue averaged over the " "last 1, 5, and 15 minutes or raises :exc:`OSError` if the load average was " @@ -6110,7 +6113,7 @@ msgstr "" "moyenne dans les dernières 1, 5, et 15 minutes, ou lève une :exc:`OSError` " "si la charge moyenne est impossible à récupérer." -#: ../Doc/library/os.rst:4280 +#: ../Doc/library/os.rst:4282 msgid "" "Return integer-valued system configuration values. If the configuration " "value specified by *name* isn't defined, ``-1`` is returned. The comments " @@ -6124,7 +6127,7 @@ msgstr "" "s'appliquent également ici, le dictionnaire qui fournit les informations sur " "les noms connus est donné par ``sysconf_names``." -#: ../Doc/library/os.rst:4290 +#: ../Doc/library/os.rst:4292 msgid "" "Dictionary mapping names accepted by :func:`sysconf` to the integer values " "defined for those names by the host operating system. This can be used to " @@ -6134,7 +6137,7 @@ msgstr "" "entières définies pour ces noms par le système d'exploitation hôte. Cela " "peut être utilisé pour déterminer l'ensemble des noms connus du système." -#: ../Doc/library/os.rst:4296 +#: ../Doc/library/os.rst:4298 msgid "" "The following data values are used to support path manipulation operations. " "These are defined for all platforms." @@ -6142,7 +6145,7 @@ msgstr "" "Les valeurs suivantes sont utilisées pour gérer les opérations de " "manipulations de chemins. Elles sont définies pour toutes les plate-formes." -#: ../Doc/library/os.rst:4299 +#: ../Doc/library/os.rst:4301 msgid "" "Higher-level operations on pathnames are defined in the :mod:`os.path` " "module." @@ -6150,7 +6153,7 @@ msgstr "" "Des opérations de plus haut niveau sur les chemins sont définies dans le " "module :mod:`os.path`." -#: ../Doc/library/os.rst:4305 +#: ../Doc/library/os.rst:4307 msgid "" "The constant string used by the operating system to refer to the current " "directory. This is ``'.'`` for Windows and POSIX. Also available via :mod:" @@ -6160,7 +6163,7 @@ msgstr "" "référencer le répertoire actuel. Ça vaut ``'.'`` pour Windows et POSIX. " "Également disponible par :mod:`os.path`." -#: ../Doc/library/os.rst:4313 +#: ../Doc/library/os.rst:4315 msgid "" "The constant string used by the operating system to refer to the parent " "directory. This is ``'..'`` for Windows and POSIX. Also available via :mod:" @@ -6170,7 +6173,7 @@ msgstr "" "référencer le répertoire parent. Ça vaut ``'..'`` pour Windows et POSIX. " "Également disponible par :mod:`os.path`." -#: ../Doc/library/os.rst:4322 +#: ../Doc/library/os.rst:4324 msgid "" "The character used by the operating system to separate pathname components. " "This is ``'/'`` for POSIX and ``'\\\\'`` for Windows. Note that knowing " @@ -6185,7 +6188,7 @@ msgstr "" "et :func:`os.path.join`), mais ça peut s'avérer utile occasionnellement. " "Également disponible par :mod:`os.path`." -#: ../Doc/library/os.rst:4332 +#: ../Doc/library/os.rst:4334 msgid "" "An alternative character used by the operating system to separate pathname " "components, or ``None`` if only one separator character exists. This is set " @@ -6197,7 +6200,7 @@ msgstr "" "vaut ``'/'`` sur Windows où ``sep`` est un antislash ``'\\'``. Également " "disponible par :mod:`os.path`." -#: ../Doc/library/os.rst:4341 +#: ../Doc/library/os.rst:4343 msgid "" "The character which separates the base filename from the extension; for " "example, the ``'.'`` in :file:`os.py`. Also available via :mod:`os.path`." @@ -6206,7 +6209,7 @@ msgstr "" "exemple, le ``'.'`` de :file:`os.py`. Également disponible par :mod:`os." "path`." -#: ../Doc/library/os.rst:4349 +#: ../Doc/library/os.rst:4351 msgid "" "The character conventionally used by the operating system to separate search " "path components (as in :envvar:`PATH`), such as ``':'`` for POSIX or ``';'`` " @@ -6217,7 +6220,7 @@ msgstr "" "d'environnement :envvar:`PATH`). Cela vaut ``':'`` pour POSIX, ou ``';'`` " "pour Windows. Également disponible par :mod:`os.path`." -#: ../Doc/library/os.rst:4356 +#: ../Doc/library/os.rst:4358 msgid "" "The default search path used by :func:`exec\\*p\\* ` and :func:`spawn" "\\*p\\* ` if the environment doesn't have a ``'PATH'`` key. Also " @@ -6227,7 +6230,7 @@ msgstr "" "func:`spawn\\* ` si l'environnement n'a pas une clef ``'PATH'``. " "Également disponible par :mod:`os.path`." -#: ../Doc/library/os.rst:4363 +#: ../Doc/library/os.rst:4365 msgid "" "The string used to separate (or, rather, terminate) lines on the current " "platform. This may be a single character, such as ``'\\n'`` for POSIX, or " @@ -6242,7 +6245,7 @@ msgstr "" "écrivez dans un fichier ouvert en mode *texte* (par défaut). Utilisez un " "unique ``'\\n'`` à la place, sur toutes les plate-formes." -#: ../Doc/library/os.rst:4372 +#: ../Doc/library/os.rst:4374 msgid "" "The file path of the null device. For example: ``'/dev/null'`` for POSIX, " "``'nul'`` for Windows. Also available via :mod:`os.path`." @@ -6250,7 +6253,7 @@ msgstr "" "Le chemin de fichier du périphérique *null*. Par exemple : ``'/dev/null'`` " "pour POSIX, ``'nul'`` pour Windows. Également disponible par :mod:`os.path`." -#: ../Doc/library/os.rst:4383 +#: ../Doc/library/os.rst:4385 msgid "" "Flags for use with the :func:`~sys.setdlopenflags` and :func:`~sys." "getdlopenflags` functions. See the Unix manual page :manpage:`dlopen(3)` " @@ -6260,11 +6263,11 @@ msgstr "" "`~sys.getdlopenflags`. Voir les pages de manuel Unix :manpage:`dlopen(3)` " "pour les différences de significations entre les marqueurs." -#: ../Doc/library/os.rst:4391 +#: ../Doc/library/os.rst:4393 msgid "Random numbers" msgstr "Nombres aléatoires" -#: ../Doc/library/os.rst:4396 +#: ../Doc/library/os.rst:4398 msgid "" "Get up to *size* random bytes. The function can return less bytes than " "requested." @@ -6272,7 +6275,7 @@ msgstr "" "Obtient *size* octets aléatoires. La fonction renvoie éventuellement moins " "d'octets que demandé." -#: ../Doc/library/os.rst:4399 +#: ../Doc/library/os.rst:4401 msgid "" "These bytes can be used to seed user-space random number generators or for " "cryptographic purposes." @@ -6280,7 +6283,7 @@ msgstr "" "Ces octets peuvent être utilisés pour initialiser un générateur de nombres " "aléatoires dans l'espace utilisateur ou pour des raisons cryptographiques." -#: ../Doc/library/os.rst:4402 +#: ../Doc/library/os.rst:4404 msgid "" "``getrandom()`` relies on entropy gathered from device drivers and other " "sources of environmental noise. Unnecessarily reading large quantities of " @@ -6292,7 +6295,7 @@ msgstr "" "grosses quantités de données aura un impact négatif sur les autres " "utilisateurs des périphériques ``/dev/random`` et ``/dev/urandom``." -#: ../Doc/library/os.rst:4407 +#: ../Doc/library/os.rst:4409 msgid "" "The flags argument is a bit mask that can contain zero or more of the " "following values ORed together: :py:data:`os.GRND_RANDOM` and :py:data:" @@ -6302,7 +6305,7 @@ msgstr "" "valeurs suivantes combinées avec un OU bit-à-bit : :py:data:`os.GRND_RANDOM` " "et :py:data:`GRND_NONBLOCK`." -#: ../Doc/library/os.rst:4411 +#: ../Doc/library/os.rst:4413 msgid "" "See also the `Linux getrandom() manual page `_." @@ -6310,17 +6313,17 @@ msgstr "" "Voir aussi la `page de manuel Linux pour getrandom() `_." -#: ../Doc/library/os.rst:4415 +#: ../Doc/library/os.rst:4417 msgid ":ref:`Availability `: Linux 3.17 and newer." msgstr ":ref:`Disponibilité ` : Linux 3.17 et ultérieures." -#: ../Doc/library/os.rst:4420 +#: ../Doc/library/os.rst:4422 msgid "Return a string of *size* random bytes suitable for cryptographic use." msgstr "" "Renvoie une chaîne de *size* octets aléatoires utilisable dans un cadre " "cryptographique." -#: ../Doc/library/os.rst:4422 +#: ../Doc/library/os.rst:4424 msgid "" "This function returns random bytes from an OS-specific randomness source. " "The returned data should be unpredictable enough for cryptographic " @@ -6331,7 +6334,7 @@ msgstr "" "pour les applications cryptographiques, bien que la qualité dépende de " "l'implémentation du système." -#: ../Doc/library/os.rst:4426 +#: ../Doc/library/os.rst:4428 msgid "" "On Linux, if the ``getrandom()`` syscall is available, it is used in " "blocking mode: block until the system urandom entropy pool is initialized " @@ -6348,7 +6351,7 @@ msgstr "" "aléatoires en mode non-bloquant (avec l'option :data:`GRND_NONBLOCK`) ou " "attendre jusqu'à ce que la réserve d'entropie d'*urandom* soit initialisée." -#: ../Doc/library/os.rst:4433 +#: ../Doc/library/os.rst:4435 msgid "" "On a Unix-like system, random bytes are read from the ``/dev/urandom`` " "device. If the ``/dev/urandom`` device is not available or not readable, " @@ -6359,11 +6362,11 @@ msgstr "" "disponible ou n'est pas lisible, l'exception :exc:`NotImplementedError` est " "levée." -#: ../Doc/library/os.rst:4437 +#: ../Doc/library/os.rst:4439 msgid "On Windows, it will use ``CryptGenRandom()``." msgstr "Sous Windows, ``CryptGenRandom()`` est utilisée." -#: ../Doc/library/os.rst:4440 +#: ../Doc/library/os.rst:4442 msgid "" "The :mod:`secrets` module provides higher level functions. For an easy-to-" "use interface to the random number generator provided by your platform, " @@ -6373,7 +6376,7 @@ msgstr "" "interface facile à utiliser du générateur de nombres aléatoires fourni par " "votre plate-forme, veuillez regarder :class:`random.SystemRandom`." -#: ../Doc/library/os.rst:4444 +#: ../Doc/library/os.rst:4446 msgid "" "On Linux, ``getrandom()`` is now used in blocking mode to increase the " "security." @@ -6381,7 +6384,7 @@ msgstr "" "Sous Linux, ``getrandom()`` est maintenant utilisé en mode bloquant pour " "renforcer la sécurité." -#: ../Doc/library/os.rst:4448 +#: ../Doc/library/os.rst:4450 msgid "" "On Linux, if the ``getrandom()`` syscall blocks (the urandom entropy pool is " "not initialized yet), fall back on reading ``/dev/urandom``." @@ -6390,7 +6393,7 @@ msgstr "" "d'*urandom* n'est pas encore initialisée), réalise à la place une lecture de " "``/dev/urandom``." -#: ../Doc/library/os.rst:4452 +#: ../Doc/library/os.rst:4454 msgid "" "On Linux 3.17 and newer, the ``getrandom()`` syscall is now used when " "available. On OpenBSD 5.6 and newer, the C ``getentropy()`` function is now " @@ -6401,7 +6404,7 @@ msgstr "" "la fonction C ``getentropy()`` est utilisée. Ces fonctions évitent " "l'utilisation interne d'un descripteur de fichier." -#: ../Doc/library/os.rst:4460 +#: ../Doc/library/os.rst:4462 msgid "" "By default, when reading from ``/dev/random``, :func:`getrandom` blocks if " "no random bytes are available, and when reading from ``/dev/urandom``, it " @@ -6412,7 +6415,7 @@ msgstr "" "urandom``, elle bloque si la réserve d'entropie n'a pas encore été " "initialisée." -#: ../Doc/library/os.rst:4464 +#: ../Doc/library/os.rst:4466 msgid "" "If the :py:data:`GRND_NONBLOCK` flag is set, then :func:`getrandom` does not " "block in these cases, but instead immediately raises :exc:`BlockingIOError`." @@ -6420,7 +6423,7 @@ msgstr "" "Si l'option :py:data:`GRND_NONBLOCK` est activée, :func:`getrandom` ne " "bloque pas dans ces cas, mais lève immédiatement une :exc:`BlockingIOError`." -#: ../Doc/library/os.rst:4471 +#: ../Doc/library/os.rst:4473 msgid "" "If this bit is set, then random bytes are drawn from the ``/dev/" "random`` pool instead of the ``/dev/urandom`` pool." diff --git a/library/parser.po b/library/parser.po index eecbd1e10..d15f32af9 100644 --- a/library/parser.po +++ b/library/parser.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-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-20 14:07+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -59,6 +59,7 @@ msgstr "" "`parser` sont présentés." #: ../Doc/library/parser.rst:39 +#, fuzzy msgid "" "Most importantly, a good understanding of the Python grammar processed by " "the internal parser is required. For full information on the language " @@ -75,8 +76,8 @@ msgid "" "trees to be created in the target version, with the only restriction being " "that migrating to an older version of the interpreter will not support more " "recent language constructs. The parse trees are not typically compatible " -"from one version to another, whereas source code has always been forward-" -"compatible." +"from one version to another, though source code has usually been forward-" +"compatible within a major release series." msgstr "" "Le prérequis le plus important est une bonne compréhension de la grammaire " "Python utilisée par l'analyseur interne dont la syntaxe est documentée " @@ -95,7 +96,7 @@ msgstr "" "à eux ne sont généralement pas compatibles d'une version à l'autre, alors " "que le code source a toujours conservé la compatibilité ascendante." -#: ../Doc/library/parser.rst:56 +#: ../Doc/library/parser.rst:57 msgid "" "Each element of the sequences returned by :func:`st2list` or :func:" "`st2tuple` has a simple form. Sequences representing non-terminal elements " @@ -133,7 +134,7 @@ msgstr "" "lexème peut être représenté : ``(1, 'if', 12)``, où ``12`` est le numéro de " "la ligne sur laquelle le dernier symbole se trouve." -#: ../Doc/library/parser.rst:73 +#: ../Doc/library/parser.rst:74 msgid "" "Terminal elements are represented in much the same way, but without any " "child elements and the addition of the source text which was identified. " @@ -142,7 +143,7 @@ msgid "" "`Include/token.h` and the Python module :mod:`token`." msgstr "" -#: ../Doc/library/parser.rst:79 +#: ../Doc/library/parser.rst:80 msgid "" "The ST objects are not required to support the functionality of this module, " "but are provided for three purposes: to allow an application to amortize the " @@ -153,7 +154,7 @@ msgid "" "Python to hide the use of ST objects." msgstr "" -#: ../Doc/library/parser.rst:87 +#: ../Doc/library/parser.rst:88 msgid "" "The :mod:`parser` module defines functions for a few distinct purposes. The " "most important purposes are to create ST objects and to convert ST objects " @@ -162,36 +163,36 @@ msgid "" "represented by an ST object." msgstr "" -#: ../Doc/library/parser.rst:97 +#: ../Doc/library/parser.rst:98 msgid "Module :mod:`symbol`" msgstr "" -#: ../Doc/library/parser.rst:97 +#: ../Doc/library/parser.rst:98 msgid "Useful constants representing internal nodes of the parse tree." msgstr "" -#: ../Doc/library/parser.rst:100 +#: ../Doc/library/parser.rst:101 msgid "Module :mod:`token`" msgstr "" -#: ../Doc/library/parser.rst:100 +#: ../Doc/library/parser.rst:101 msgid "" "Useful constants representing leaf nodes of the parse tree and functions for " "testing node values." msgstr "" -#: ../Doc/library/parser.rst:107 +#: ../Doc/library/parser.rst:108 msgid "Creating ST Objects" msgstr "" -#: ../Doc/library/parser.rst:109 +#: ../Doc/library/parser.rst:110 msgid "" "ST objects may be created from source code or from a parse tree. When " "creating an ST object from source, different functions are used to create " "the ``'eval'`` and ``'exec'`` forms." msgstr "" -#: ../Doc/library/parser.rst:116 +#: ../Doc/library/parser.rst:117 msgid "" "The :func:`expr` function parses the parameter *source* as if it were an " "input to ``compile(source, 'file.py', 'eval')``. If the parse succeeds, an " @@ -199,7 +200,7 @@ msgid "" "otherwise an appropriate exception is raised." msgstr "" -#: ../Doc/library/parser.rst:124 +#: ../Doc/library/parser.rst:125 msgid "" "The :func:`suite` function parses the parameter *source* as if it were an " "input to ``compile(source, 'file.py', 'exec')``. If the parse succeeds, an " @@ -207,7 +208,7 @@ msgid "" "otherwise an appropriate exception is raised." msgstr "" -#: ../Doc/library/parser.rst:132 +#: ../Doc/library/parser.rst:133 msgid "" "This function accepts a parse tree represented as a sequence and builds an " "internal representation if possible. If it can validate that the tree " @@ -224,7 +225,7 @@ msgid "" "compiler." msgstr "" -#: ../Doc/library/parser.rst:145 +#: ../Doc/library/parser.rst:146 msgid "" "Sequences representing terminal tokens may be represented as either two-" "element lists of the form ``(1, 'name')`` or as three-element lists of the " @@ -233,17 +234,17 @@ msgid "" "the terminal symbols in the input tree." msgstr "" -#: ../Doc/library/parser.rst:154 +#: ../Doc/library/parser.rst:155 msgid "" "This is the same function as :func:`sequence2st`. This entry point is " "maintained for backward compatibility." msgstr "" -#: ../Doc/library/parser.rst:161 +#: ../Doc/library/parser.rst:162 msgid "Converting ST Objects" msgstr "" -#: ../Doc/library/parser.rst:163 +#: ../Doc/library/parser.rst:164 msgid "" "ST objects, regardless of the input used to create them, may be converted to " "parse trees represented as list- or tuple- trees, or may be compiled into " @@ -251,7 +252,7 @@ msgid "" "numbering information." msgstr "" -#: ../Doc/library/parser.rst:171 +#: ../Doc/library/parser.rst:172 msgid "" "This function accepts an ST object from the caller in *st* and returns a " "Python list representing the equivalent parse tree. The resulting list " @@ -264,7 +265,7 @@ msgid "" "representation and converting that to nested lists." msgstr "" -#: ../Doc/library/parser.rst:181 +#: ../Doc/library/parser.rst:182 msgid "" "If *line_info* is true, line number information will be included for all " "terminal tokens as a third element of the list representing the token. Note " @@ -272,21 +273,21 @@ msgid "" "This information is omitted if the flag is false or omitted." msgstr "" -#: ../Doc/library/parser.rst:189 +#: ../Doc/library/parser.rst:190 msgid "" "This function accepts an ST object from the caller in *st* and returns a " "Python tuple representing the equivalent parse tree. Other than returning a " "tuple instead of a list, this function is identical to :func:`st2list`." msgstr "" -#: ../Doc/library/parser.rst:193 +#: ../Doc/library/parser.rst:194 msgid "" "If *line_info* is true, line number information will be included for all " "terminal tokens as a third element of the list representing the token. This " "information is omitted if the flag is false or omitted." msgstr "" -#: ../Doc/library/parser.rst:204 +#: ../Doc/library/parser.rst:205 msgid "" "The Python byte compiler can be invoked on an ST object to produce code " "objects which can be used as part of a call to the built-in :func:`exec` or :" @@ -296,7 +297,7 @@ msgid "" "for *filename* indicates that the source was an ST object." msgstr "" -#: ../Doc/library/parser.rst:211 +#: ../Doc/library/parser.rst:212 msgid "" "Compiling an ST object may result in exceptions related to compilation; an " "example would be a :exc:`SyntaxError` caused by the parse tree for ``del " @@ -308,11 +309,11 @@ msgid "" "programmatically by inspection of the parse tree." msgstr "" -#: ../Doc/library/parser.rst:224 +#: ../Doc/library/parser.rst:225 msgid "Queries on ST Objects" msgstr "" -#: ../Doc/library/parser.rst:226 +#: ../Doc/library/parser.rst:227 msgid "" "Two functions are provided which allow an application to determine if an ST " "was created as an expression or a suite. Neither of these functions can be " @@ -320,7 +321,7 @@ msgid "" "func:`suite` or from a parse tree via :func:`sequence2st`." msgstr "" -#: ../Doc/library/parser.rst:236 +#: ../Doc/library/parser.rst:237 msgid "" "When *st* represents an ``'eval'`` form, this function returns true, " "otherwise it returns false. This is useful, since code objects normally " @@ -330,7 +331,7 @@ msgid "" "`compile` function." msgstr "" -#: ../Doc/library/parser.rst:245 +#: ../Doc/library/parser.rst:246 msgid "" "This function mirrors :func:`isexpr` in that it reports whether an ST object " "represents an ``'exec'`` form, commonly known as a \"suite.\" It is not " @@ -338,18 +339,18 @@ msgid "" "additional syntactic fragments may be supported in the future." msgstr "" -#: ../Doc/library/parser.rst:254 +#: ../Doc/library/parser.rst:255 msgid "Exceptions and Error Handling" msgstr "" -#: ../Doc/library/parser.rst:256 +#: ../Doc/library/parser.rst:257 msgid "" "The parser module defines a single exception, but may also pass other built-" "in exceptions from other portions of the Python runtime environment. See " "each function for information about the exceptions it can raise." msgstr "" -#: ../Doc/library/parser.rst:263 +#: ../Doc/library/parser.rst:264 msgid "" "Exception raised when a failure occurs within the parser module. This is " "generally produced for validation failures rather than the built-in :exc:" @@ -361,7 +362,7 @@ msgid "" "module will only need to be aware of the simple string values." msgstr "" -#: ../Doc/library/parser.rst:272 +#: ../Doc/library/parser.rst:273 msgid "" "Note that the functions :func:`compilest`, :func:`expr`, and :func:`suite` " "may raise exceptions which are normally raised by the parsing and " @@ -372,51 +373,51 @@ msgid "" "for detailed information." msgstr "" -#: ../Doc/library/parser.rst:283 +#: ../Doc/library/parser.rst:284 msgid "ST Objects" msgstr "" -#: ../Doc/library/parser.rst:285 +#: ../Doc/library/parser.rst:286 msgid "" "Ordered and equality comparisons are supported between ST objects. Pickling " "of ST objects (using the :mod:`pickle` module) is also supported." msgstr "" -#: ../Doc/library/parser.rst:291 +#: ../Doc/library/parser.rst:292 msgid "" "The type of the objects returned by :func:`expr`, :func:`suite` and :func:" "`sequence2st`." msgstr "" -#: ../Doc/library/parser.rst:294 +#: ../Doc/library/parser.rst:295 msgid "ST objects have the following methods:" msgstr "" -#: ../Doc/library/parser.rst:299 +#: ../Doc/library/parser.rst:300 msgid "Same as ``compilest(st, filename)``." msgstr "" -#: ../Doc/library/parser.rst:304 +#: ../Doc/library/parser.rst:305 msgid "Same as ``isexpr(st)``." msgstr "" -#: ../Doc/library/parser.rst:309 +#: ../Doc/library/parser.rst:310 msgid "Same as ``issuite(st)``." msgstr "" -#: ../Doc/library/parser.rst:314 +#: ../Doc/library/parser.rst:315 msgid "Same as ``st2list(st, line_info, col_info)``." msgstr "" -#: ../Doc/library/parser.rst:319 +#: ../Doc/library/parser.rst:320 msgid "Same as ``st2tuple(st, line_info, col_info)``." msgstr "" -#: ../Doc/library/parser.rst:323 +#: ../Doc/library/parser.rst:324 msgid "Example: Emulation of :func:`compile`" msgstr "" -#: ../Doc/library/parser.rst:325 +#: ../Doc/library/parser.rst:326 msgid "" "While many useful operations may take place between parsing and bytecode " "generation, the simplest operation is to do nothing. For this purpose, " @@ -424,14 +425,14 @@ msgid "" "equivalent to the code ::" msgstr "" -#: ../Doc/library/parser.rst:335 +#: ../Doc/library/parser.rst:336 msgid "" "The equivalent operation using the :mod:`parser` module is somewhat longer, " "and allows the intermediate internal parse tree to be retained as an ST " "object::" msgstr "" -#: ../Doc/library/parser.rst:345 +#: ../Doc/library/parser.rst:346 msgid "" "An application which needs both ST and code objects can package this code " "into readily available functions::" diff --git a/library/pathlib.po b/library/pathlib.po index 46ae15041..83c9804cf 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-18 21:54+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -883,26 +883,34 @@ msgstr "" "signification que dans :func:`open`." #: ../Doc/library/pathlib.rst:936 +#, fuzzy msgid "" -"Rename this file or directory to the given *target*. On Unix, if *target* " -"exists and is a file, it will be replaced silently if the user has " -"permission. *target* can be either a string or another path object::" +"Rename this file or directory to the given *target*, and return a new Path " +"instance pointing to *target*. On Unix, if *target* exists and is a file, " +"it will be replaced silently if the user has permission. *target* can be " +"either a string or another path object::" msgstr "" "Renomme ce fichier ou dossier vers la cible *target* fournie. Sur Unix, si " "*target* existe et que c'est un fichier, il sera remplacé silencieusement si " "l'utilisateur a la permission. *target* peut être soit une chaîne de " "caractères, soit un autre chemin ::" -#: ../Doc/library/pathlib.rst:951 +#: ../Doc/library/pathlib.rst:950 ../Doc/library/pathlib.rst:960 +msgid "Added return value, return the new Path instance." +msgstr "" + +#: ../Doc/library/pathlib.rst:956 +#, fuzzy msgid "" -"Rename this file or directory to the given *target*. If *target* points to " -"an existing file or directory, it will be unconditionally replaced." +"Rename this file or directory to the given *target*, and return a new Path " +"instance pointing to *target*. If *target* points to an existing file or " +"directory, it will be unconditionally replaced." msgstr "" "Renomme ce fichier ou dossier vers la cible *target* fournie. Si *target* " "pointe sur un fichier ou un dossier existant, il sera remplacé de manière " "inconditionnelle." -#: ../Doc/library/pathlib.rst:957 +#: ../Doc/library/pathlib.rst:966 msgid "" "Make the path absolute, resolving any symlinks. A new path object is " "returned::" @@ -910,7 +918,7 @@ msgstr "" "Rend le chemin absolu, résolvant les liens symboliques. Un nouveau chemin " "est renvoyé ::" -#: ../Doc/library/pathlib.rst:966 +#: ../Doc/library/pathlib.rst:975 msgid "" "\"``..``\" components are also eliminated (this is the only method to do " "so)::" @@ -918,7 +926,7 @@ msgstr "" "Les composantes \"``..``\" sont aussi éliminées (c'est la seule méthode pour " "le faire) ::" -#: ../Doc/library/pathlib.rst:972 +#: ../Doc/library/pathlib.rst:981 msgid "" "If the path doesn't exist and *strict* is ``True``, :exc:`FileNotFoundError` " "is raised. If *strict* is ``False``, the path is resolved as far as " @@ -932,11 +940,11 @@ msgstr "" "sans vérifier s'il existe. Si une boucle infinie est rencontrée lors de la " "résolution du chemin, :exc:`RuntimeError` est levée." -#: ../Doc/library/pathlib.rst:978 +#: ../Doc/library/pathlib.rst:987 msgid "The *strict* argument (pre-3.6 behavior is strict)." msgstr "L'argument *strict* (le comportement *pré-3.6* est strict)." -#: ../Doc/library/pathlib.rst:983 +#: ../Doc/library/pathlib.rst:992 msgid "" "This is like calling :func:`Path.glob` with \"``**/``\" added in front of " "the given relative *pattern*::" @@ -944,11 +952,11 @@ msgstr "" "C'est similaire à appeler :func:`Path.glob` avec \"``**/``\" ajouté au début " "du *pattern* relatif ::" -#: ../Doc/library/pathlib.rst:996 +#: ../Doc/library/pathlib.rst:1005 msgid "Remove this directory. The directory must be empty." msgstr "Supprime ce dossier. Le dossier doit être vide." -#: ../Doc/library/pathlib.rst:1001 +#: ../Doc/library/pathlib.rst:1010 msgid "" "Return whether this path points to the same file as *other_path*, which can " "be either a Path object, or a string. The semantics are similar to :func:" @@ -958,7 +966,7 @@ msgstr "" "être soit un chemin, soit une chaîne de caractères. La sémantique est " "similaire à :func:`os.path.samefile` et :func:`os.path.samestat`." -#: ../Doc/library/pathlib.rst:1005 +#: ../Doc/library/pathlib.rst:1014 msgid "" "An :exc:`OSError` can be raised if either file cannot be accessed for some " "reason." @@ -966,7 +974,7 @@ msgstr "" ":exc:`OSError` peut être levée si l'un des fichier ne peut être accédé pour " "quelque raison." -#: ../Doc/library/pathlib.rst:1022 +#: ../Doc/library/pathlib.rst:1031 msgid "" "Make this path a symbolic link to *target*. Under Windows, " "*target_is_directory* must be true (default ``False``) if the link's target " @@ -977,14 +985,14 @@ msgstr "" "si la cible du lien est un dossier. Sous POSIX, la valeur de " "*target_is_directory* est ignorée." -#: ../Doc/library/pathlib.rst:1038 +#: ../Doc/library/pathlib.rst:1047 msgid "" "The order of arguments (link, target) is the reverse of :func:`os.symlink`'s." msgstr "" "L'ordre des arguments (lien, cible) est l'opposé de ceux de :func:`os." "symlink`." -#: ../Doc/library/pathlib.rst:1044 +#: ../Doc/library/pathlib.rst:1053 msgid "" "Create a file at this given path. If *mode* is given, it is combined with " "the process' ``umask`` value to determine the file mode and access flags. " @@ -998,7 +1006,7 @@ msgstr "" "*exist_ok* est vrai (et si l'heure de modification est mise à jour avec " "l'heure courante), sinon :exc:`FileExistsError` est levée." -#: ../Doc/library/pathlib.rst:1053 +#: ../Doc/library/pathlib.rst:1062 msgid "" "Remove this file or symbolic link. If the path points to a directory, use :" "func:`Path.rmdir` instead." @@ -1006,7 +1014,7 @@ msgstr "" "Supprime ce fichier ou lien symbolique. Si le chemin pointe vers un dossier, " "utilisez :func:`Path.rmdir` à la place." -#: ../Doc/library/pathlib.rst:1056 +#: ../Doc/library/pathlib.rst:1065 #, fuzzy msgid "" "If *missing_ok* is false (the default), :exc:`FileNotFoundError` is raised " @@ -1015,7 +1023,7 @@ msgstr "" "Si *exist_ok* est faux (valeur par défaut), :exc:`FileExistsError` est levé " "si le dossier cible existe déjà." -#: ../Doc/library/pathlib.rst:1059 +#: ../Doc/library/pathlib.rst:1068 #, fuzzy msgid "" "If *missing_ok* is true, :exc:`FileNotFoundError` exceptions will be ignored " @@ -1025,16 +1033,16 @@ msgstr "" "ignorée (même comportement que la commande POSIX ``mkdir -p``), mais " "seulement si le dernier segment de chemin existe et n'est pas un dossier." -#: ../Doc/library/pathlib.rst:1062 +#: ../Doc/library/pathlib.rst:1071 #, fuzzy msgid "The *missing_ok* parameter was added." msgstr "Le paramètre *exist_ok* a été ajouté." -#: ../Doc/library/pathlib.rst:1068 +#: ../Doc/library/pathlib.rst:1077 msgid "Create a hard link pointing to a path named *target*." msgstr "" -#: ../Doc/library/pathlib.rst:1075 +#: ../Doc/library/pathlib.rst:1084 msgid "" "Open the file pointed to in bytes mode, write *data* to it, and close the " "file::" @@ -1042,11 +1050,11 @@ msgstr "" "Ouvre le fichier pointé en mode binaire, écrit *data* dedans, et ferme le " "fichier ::" -#: ../Doc/library/pathlib.rst:1084 +#: ../Doc/library/pathlib.rst:1093 msgid "An existing file of the same name is overwritten." msgstr "Un fichier existant au même nom est écrasé." -#: ../Doc/library/pathlib.rst:1091 +#: ../Doc/library/pathlib.rst:1100 msgid "" "Open the file pointed to in text mode, write *data* to it, and close the " "file::" @@ -1054,11 +1062,20 @@ msgstr "" "Ouvre le fichier pointé en mode texte, écrit *data* dedans, et ferme le " "fichier ::" -#: ../Doc/library/pathlib.rst:1103 +#: ../Doc/library/pathlib.rst:1109 +#, fuzzy +msgid "" +"An existing file of the same name is overwritten. The optional parameters " +"have the same meaning as in :func:`open`." +msgstr "" +"Le fichier est ouvert, puis fermé. Les paramètres optionnels ont la même " +"signification que dans :func:`open`." + +#: ../Doc/library/pathlib.rst:1115 msgid "Correspondence to tools in the :mod:`os` module" msgstr "Correspondance des outils du module :mod:`os`" -#: ../Doc/library/pathlib.rst:1105 +#: ../Doc/library/pathlib.rst:1117 msgid "" "Below is a table mapping various :mod:`os` functions to their corresponding :" "class:`PurePath`/:class:`Path` equivalent." @@ -1066,7 +1083,7 @@ msgstr "" "Ci-dessous se trouve un tableau associant diverses fonctions :mod:`os` à " "leur équivalent :class:`PurePath` / :class:`Path` correspondant." -#: ../Doc/library/pathlib.rst:1110 +#: ../Doc/library/pathlib.rst:1122 msgid "" "Although :func:`os.path.relpath` and :meth:`PurePath.relative_to` have some " "overlapping use-cases, their semantics differ enough to warrant not " @@ -1076,170 +1093,170 @@ msgstr "" "cas d'utilisation qui se chevauchent, leur sémantique diffère suffisamment " "pour ne pas les considérer comme équivalentes." -#: ../Doc/library/pathlib.rst:1115 +#: ../Doc/library/pathlib.rst:1127 msgid "os and os.path" msgstr "*os* et *os.path*" -#: ../Doc/library/pathlib.rst:1115 +#: ../Doc/library/pathlib.rst:1127 msgid "pathlib" msgstr "pathlib" -#: ../Doc/library/pathlib.rst:1117 +#: ../Doc/library/pathlib.rst:1129 msgid ":func:`os.path.abspath`" msgstr ":func:`os.path.abspath`" -#: ../Doc/library/pathlib.rst:1117 +#: ../Doc/library/pathlib.rst:1129 msgid ":meth:`Path.resolve`" msgstr ":meth:`Path.resolve`" -#: ../Doc/library/pathlib.rst:1118 +#: ../Doc/library/pathlib.rst:1130 msgid ":func:`os.chmod`" msgstr ":func:`os.chmod`" -#: ../Doc/library/pathlib.rst:1118 +#: ../Doc/library/pathlib.rst:1130 msgid ":meth:`Path.chmod`" msgstr ":meth:`Path.chmod`" -#: ../Doc/library/pathlib.rst:1119 +#: ../Doc/library/pathlib.rst:1131 msgid ":func:`os.mkdir`" msgstr ":func:`os.mkdir`" -#: ../Doc/library/pathlib.rst:1119 +#: ../Doc/library/pathlib.rst:1131 msgid ":meth:`Path.mkdir`" msgstr ":meth:`Path.mkdir`" -#: ../Doc/library/pathlib.rst:1120 +#: ../Doc/library/pathlib.rst:1132 msgid ":func:`os.rename`" msgstr ":func:`os.rename`" -#: ../Doc/library/pathlib.rst:1120 +#: ../Doc/library/pathlib.rst:1132 msgid ":meth:`Path.rename`" msgstr ":meth:`Path.rename`" -#: ../Doc/library/pathlib.rst:1121 +#: ../Doc/library/pathlib.rst:1133 msgid ":func:`os.replace`" msgstr ":func:`os.replace`" -#: ../Doc/library/pathlib.rst:1121 +#: ../Doc/library/pathlib.rst:1133 msgid ":meth:`Path.replace`" msgstr ":meth:`Path.replace`" -#: ../Doc/library/pathlib.rst:1122 +#: ../Doc/library/pathlib.rst:1134 msgid ":func:`os.rmdir`" msgstr ":func:`os.rmdir`" -#: ../Doc/library/pathlib.rst:1122 +#: ../Doc/library/pathlib.rst:1134 msgid ":meth:`Path.rmdir`" msgstr ":meth:`Path.rmdir`" -#: ../Doc/library/pathlib.rst:1123 +#: ../Doc/library/pathlib.rst:1135 msgid ":func:`os.remove`, :func:`os.unlink`" msgstr ":func:`os.remove`, :func:`os.unlink`" -#: ../Doc/library/pathlib.rst:1123 +#: ../Doc/library/pathlib.rst:1135 msgid ":meth:`Path.unlink`" msgstr ":meth:`Path.unlink`" -#: ../Doc/library/pathlib.rst:1124 +#: ../Doc/library/pathlib.rst:1136 msgid ":func:`os.getcwd`" msgstr ":func:`os.getcwd`" -#: ../Doc/library/pathlib.rst:1124 +#: ../Doc/library/pathlib.rst:1136 msgid ":func:`Path.cwd`" msgstr ":func:`Path.cwd`" -#: ../Doc/library/pathlib.rst:1125 +#: ../Doc/library/pathlib.rst:1137 msgid ":func:`os.path.exists`" msgstr ":func:`os.path.exists`" -#: ../Doc/library/pathlib.rst:1125 +#: ../Doc/library/pathlib.rst:1137 msgid ":meth:`Path.exists`" msgstr ":meth:`Path.exists`" -#: ../Doc/library/pathlib.rst:1126 +#: ../Doc/library/pathlib.rst:1138 msgid ":func:`os.path.expanduser`" msgstr ":func:`os.path.expanduser`" -#: ../Doc/library/pathlib.rst:1126 +#: ../Doc/library/pathlib.rst:1138 msgid ":meth:`Path.expanduser` and :meth:`Path.home`" msgstr ":meth:`Path.expanduser` et :meth:`Path.home`" -#: ../Doc/library/pathlib.rst:1128 +#: ../Doc/library/pathlib.rst:1140 msgid ":func:`os.path.isdir`" msgstr ":func:`os.path.isdir`" -#: ../Doc/library/pathlib.rst:1128 +#: ../Doc/library/pathlib.rst:1140 msgid ":meth:`Path.is_dir`" msgstr ":meth:`Path.is_dir`" -#: ../Doc/library/pathlib.rst:1129 +#: ../Doc/library/pathlib.rst:1141 msgid ":func:`os.path.isfile`" msgstr ":func:`os.path.isfile`" -#: ../Doc/library/pathlib.rst:1129 +#: ../Doc/library/pathlib.rst:1141 msgid ":meth:`Path.is_file`" msgstr ":meth:`Path.is_file`" -#: ../Doc/library/pathlib.rst:1130 +#: ../Doc/library/pathlib.rst:1142 msgid ":func:`os.path.islink`" msgstr ":func:`os.path.islink`" -#: ../Doc/library/pathlib.rst:1130 +#: ../Doc/library/pathlib.rst:1142 msgid ":meth:`Path.is_symlink`" msgstr ":meth:`Path.is_symlink`" -#: ../Doc/library/pathlib.rst:1131 +#: ../Doc/library/pathlib.rst:1143 msgid ":func:`os.stat`" msgstr ":func:`os.stat`" -#: ../Doc/library/pathlib.rst:1131 +#: ../Doc/library/pathlib.rst:1143 msgid ":meth:`Path.stat`, :meth:`Path.owner`, :meth:`Path.group`" msgstr ":meth:`Path.stat`, :meth:`Path.owner`, :meth:`Path.group`" -#: ../Doc/library/pathlib.rst:1134 +#: ../Doc/library/pathlib.rst:1146 msgid ":func:`os.path.isabs`" msgstr ":func:`os.path.isabs`" -#: ../Doc/library/pathlib.rst:1134 +#: ../Doc/library/pathlib.rst:1146 msgid ":meth:`PurePath.is_absolute`" msgstr ":meth:`PurePath.is_absolute`" -#: ../Doc/library/pathlib.rst:1135 +#: ../Doc/library/pathlib.rst:1147 msgid ":func:`os.path.join`" msgstr ":func:`os.path.join`" -#: ../Doc/library/pathlib.rst:1135 +#: ../Doc/library/pathlib.rst:1147 msgid ":func:`PurePath.joinpath`" msgstr ":func:`PurePath.joinpath`" -#: ../Doc/library/pathlib.rst:1136 +#: ../Doc/library/pathlib.rst:1148 msgid ":func:`os.path.basename`" msgstr ":func:`os.path.basename`" -#: ../Doc/library/pathlib.rst:1136 +#: ../Doc/library/pathlib.rst:1148 msgid ":data:`PurePath.name`" msgstr ":data:`PurePath.name`" -#: ../Doc/library/pathlib.rst:1137 +#: ../Doc/library/pathlib.rst:1149 msgid ":func:`os.path.dirname`" msgstr ":func:`os.path.dirname`" -#: ../Doc/library/pathlib.rst:1137 +#: ../Doc/library/pathlib.rst:1149 msgid ":data:`PurePath.parent`" msgstr ":data:`PurePath.parent`" -#: ../Doc/library/pathlib.rst:1138 +#: ../Doc/library/pathlib.rst:1150 msgid ":func:`os.path.samefile`" msgstr ":func:`os.path.samefile`" -#: ../Doc/library/pathlib.rst:1138 +#: ../Doc/library/pathlib.rst:1150 msgid ":meth:`Path.samefile`" msgstr ":meth:`Path.samefile`" -#: ../Doc/library/pathlib.rst:1139 +#: ../Doc/library/pathlib.rst:1151 msgid ":func:`os.path.splitext`" msgstr ":func:`os.path.splitext`" -#: ../Doc/library/pathlib.rst:1139 +#: ../Doc/library/pathlib.rst:1151 msgid ":data:`PurePath.suffix`" msgstr ":data:`PurePath.suffix`" diff --git a/library/pickle.po b/library/pickle.po index d70e86011..4f3fbdda7 100644 --- a/library/pickle.po +++ b/library/pickle.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-02-26 12:09+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -330,110 +330,110 @@ msgstr "" #: ../Doc/library/pickle.rst:214 msgid "" -"Write a pickled representation of *obj* to the open :term:`file object` " -"*file*. This is equivalent to ``Pickler(file, protocol).dump(obj)``." +"Write the pickled representation of the object *obj* to the open :term:`file " +"object` *file*. This is equivalent to ``Pickler(file, protocol).dump(obj)``." msgstr "" -#: ../Doc/library/pickle.rst:217 +#: ../Doc/library/pickle.rst:218 msgid "" "Arguments *file*, *protocol*, *fix_imports* and *buffer_callback* have the " "same meaning as in the :class:`Pickler` constructor." msgstr "" -#: ../Doc/library/pickle.rst:220 ../Doc/library/pickle.rst:231 -#: ../Doc/library/pickle.rst:323 +#: ../Doc/library/pickle.rst:221 ../Doc/library/pickle.rst:232 +#: ../Doc/library/pickle.rst:324 msgid "The *buffer_callback* argument was added." msgstr "" -#: ../Doc/library/pickle.rst:225 +#: ../Doc/library/pickle.rst:226 msgid "" -"Return the pickled representation of the object as a :class:`bytes` object, " -"instead of writing it to a file." +"Return the pickled representation of the object *obj* as a :class:`bytes` " +"object, instead of writing it to a file." msgstr "" -#: ../Doc/library/pickle.rst:228 +#: ../Doc/library/pickle.rst:229 msgid "" "Arguments *protocol*, *fix_imports* and *buffer_callback* have the same " "meaning as in the :class:`Pickler` constructor." msgstr "" -#: ../Doc/library/pickle.rst:236 +#: ../Doc/library/pickle.rst:237 msgid "" -"Read a pickled object representation from the open :term:`file object` " -"*file* and return the reconstituted object hierarchy specified therein. This " -"is equivalent to ``Unpickler(file).load()``." +"Read the pickled representation of an object from the open :term:`file " +"object` *file* and return the reconstituted object hierarchy specified " +"therein. This is equivalent to ``Unpickler(file).load()``." msgstr "" -#: ../Doc/library/pickle.rst:240 ../Doc/library/pickle.rst:255 +#: ../Doc/library/pickle.rst:241 ../Doc/library/pickle.rst:256 msgid "" "The protocol version of the pickle is detected automatically, so no protocol " -"argument is needed. Bytes past the pickled object's representation are " +"argument is needed. Bytes past the pickled representation of the object are " "ignored." msgstr "" -#: ../Doc/library/pickle.rst:244 ../Doc/library/pickle.rst:259 +#: ../Doc/library/pickle.rst:245 ../Doc/library/pickle.rst:260 msgid "" "Arguments *file*, *fix_imports*, *encoding*, *errors*, *strict* and " "*buffers* have the same meaning as in the :class:`Unpickler` constructor." msgstr "" -#: ../Doc/library/pickle.rst:247 ../Doc/library/pickle.rst:262 -#: ../Doc/library/pickle.rst:424 +#: ../Doc/library/pickle.rst:248 ../Doc/library/pickle.rst:263 +#: ../Doc/library/pickle.rst:425 msgid "The *buffers* argument was added." msgstr "" -#: ../Doc/library/pickle.rst:252 +#: ../Doc/library/pickle.rst:253 msgid "" -"Read a pickled object hierarchy from a :class:`bytes` object and return the " -"reconstituted object hierarchy specified therein." +"Return the reconstituted object hierarchy of the pickled representation " +"*bytes_object* of an object." msgstr "" -#: ../Doc/library/pickle.rst:266 +#: ../Doc/library/pickle.rst:267 msgid "The :mod:`pickle` module defines three exceptions:" msgstr "" -#: ../Doc/library/pickle.rst:270 +#: ../Doc/library/pickle.rst:271 msgid "" "Common base class for the other pickling exceptions. It inherits :exc:" "`Exception`." msgstr "" -#: ../Doc/library/pickle.rst:275 +#: ../Doc/library/pickle.rst:276 msgid "" "Error raised when an unpicklable object is encountered by :class:`Pickler`. " "It inherits :exc:`PickleError`." msgstr "" -#: ../Doc/library/pickle.rst:278 +#: ../Doc/library/pickle.rst:279 msgid "" "Refer to :ref:`pickle-picklable` to learn what kinds of objects can be " "pickled." msgstr "" -#: ../Doc/library/pickle.rst:283 +#: ../Doc/library/pickle.rst:284 msgid "" "Error raised when there is a problem unpickling an object, such as a data " "corruption or a security violation. It inherits :exc:`PickleError`." msgstr "" -#: ../Doc/library/pickle.rst:286 +#: ../Doc/library/pickle.rst:287 msgid "" "Note that other exceptions may also be raised during unpickling, including " "(but not necessarily limited to) AttributeError, EOFError, ImportError, and " "IndexError." msgstr "" -#: ../Doc/library/pickle.rst:291 +#: ../Doc/library/pickle.rst:292 msgid "" "The :mod:`pickle` module exports three classes, :class:`Pickler`, :class:" "`Unpickler` and :class:`PickleBuffer`:" msgstr "" -#: ../Doc/library/pickle.rst:296 +#: ../Doc/library/pickle.rst:297 msgid "This takes a binary file for writing a pickle data stream." msgstr "" -#: ../Doc/library/pickle.rst:298 +#: ../Doc/library/pickle.rst:299 msgid "" "The optional *protocol* argument, an integer, tells the pickler to use the " "given protocol; supported protocols are 0 to :data:`HIGHEST_PROTOCOL`. If " @@ -441,7 +441,7 @@ msgid "" "number is specified, :data:`HIGHEST_PROTOCOL` is selected." msgstr "" -#: ../Doc/library/pickle.rst:303 +#: ../Doc/library/pickle.rst:304 msgid "" "The *file* argument must have a write() method that accepts a single bytes " "argument. It can thus be an on-disk file opened for binary writing, an :" @@ -449,20 +449,20 @@ msgid "" "interface." msgstr "" -#: ../Doc/library/pickle.rst:308 +#: ../Doc/library/pickle.rst:309 msgid "" "If *fix_imports* is true and *protocol* is less than 3, pickle will try to " "map the new Python 3 names to the old module names used in Python 2, so that " "the pickle data stream is readable with Python 2." msgstr "" -#: ../Doc/library/pickle.rst:312 +#: ../Doc/library/pickle.rst:313 msgid "" "If *buffer_callback* is None (the default), buffer views are serialized into " "*file* as part of the pickle stream." msgstr "" -#: ../Doc/library/pickle.rst:315 +#: ../Doc/library/pickle.rst:316 msgid "" "If *buffer_callback* is not None, then it can be called any number of times " "with a buffer view. If the callback returns a false value (such as None), " @@ -470,23 +470,23 @@ msgid "" "serialized in-band, i.e. inside the pickle stream." msgstr "" -#: ../Doc/library/pickle.rst:320 +#: ../Doc/library/pickle.rst:321 msgid "" "It is an error if *buffer_callback* is not None and *protocol* is None or " "smaller than 5." msgstr "" -#: ../Doc/library/pickle.rst:328 +#: ../Doc/library/pickle.rst:329 msgid "" -"Write a pickled representation of *obj* to the open file object given in the " -"constructor." +"Write the pickled representation of *obj* to the open file object given in " +"the constructor." msgstr "" -#: ../Doc/library/pickle.rst:333 +#: ../Doc/library/pickle.rst:334 msgid "Do nothing by default. This exists so a subclass can override it." msgstr "" -#: ../Doc/library/pickle.rst:335 +#: ../Doc/library/pickle.rst:336 msgid "" "If :meth:`persistent_id` returns ``None``, *obj* is pickled as usual. Any " "other value causes :class:`Pickler` to emit the returned value as a " @@ -495,11 +495,11 @@ msgid "" "by :meth:`persistent_id` cannot itself have a persistent ID." msgstr "" -#: ../Doc/library/pickle.rst:341 ../Doc/library/pickle.rst:441 +#: ../Doc/library/pickle.rst:342 ../Doc/library/pickle.rst:443 msgid "See :ref:`pickle-persistent` for details and examples of uses." msgstr "" -#: ../Doc/library/pickle.rst:345 +#: ../Doc/library/pickle.rst:346 msgid "" "A pickler object's dispatch table is a registry of *reduction functions* of " "the kind which can be declared using :func:`copyreg.pickle`. It is a " @@ -508,7 +508,7 @@ msgid "" "should conform to the same interface as a :meth:`__reduce__` method." msgstr "" -#: ../Doc/library/pickle.rst:353 +#: ../Doc/library/pickle.rst:354 msgid "" "By default, a pickler object will not have a :attr:`dispatch_table` " "attribute, and it will instead use the global dispatch table managed by the :" @@ -519,11 +519,11 @@ msgid "" "table for instances of that class." msgstr "" -#: ../Doc/library/pickle.rst:362 +#: ../Doc/library/pickle.rst:363 msgid "See :ref:`pickle-dispatch` for usage examples." msgstr "" -#: ../Doc/library/pickle.rst:368 +#: ../Doc/library/pickle.rst:369 msgid "" "Special reducer that can be defined in :class:`Pickler` subclasses. This " "method has priority over any reducer in the :attr:`dispatch_table`. It " @@ -532,11 +532,11 @@ msgid "" "registered reducers to pickle ``obj``." msgstr "" -#: ../Doc/library/pickle.rst:374 +#: ../Doc/library/pickle.rst:375 msgid "For a detailed example, see :ref:`reducer_override`." msgstr "" -#: ../Doc/library/pickle.rst:380 +#: ../Doc/library/pickle.rst:381 msgid "" "Deprecated. Enable fast mode if set to a true value. The fast mode disables " "the usage of memo, therefore speeding the pickling process by not generating " @@ -544,21 +544,21 @@ msgid "" "objects, doing otherwise will cause :class:`Pickler` to recurse infinitely." msgstr "" -#: ../Doc/library/pickle.rst:386 +#: ../Doc/library/pickle.rst:387 msgid "Use :func:`pickletools.optimize` if you need more compact pickles." msgstr "" -#: ../Doc/library/pickle.rst:391 +#: ../Doc/library/pickle.rst:392 msgid "This takes a binary file for reading a pickle data stream." msgstr "" -#: ../Doc/library/pickle.rst:393 +#: ../Doc/library/pickle.rst:394 msgid "" "The protocol version of the pickle is detected automatically, so no protocol " "argument is needed." msgstr "" -#: ../Doc/library/pickle.rst:396 +#: ../Doc/library/pickle.rst:397 msgid "" "The argument *file* must have three methods, a read() method that takes an " "integer argument, a readinto() method that takes a buffer argument and a " @@ -568,7 +568,7 @@ msgid "" "that meets this interface." msgstr "" -#: ../Doc/library/pickle.rst:403 +#: ../Doc/library/pickle.rst:404 msgid "" "The optional arguments *fix_imports*, *encoding* and *errors* are used to " "control compatibility support for pickle stream generated by Python 2. If " @@ -582,7 +582,7 @@ msgid "" "Python 2." msgstr "" -#: ../Doc/library/pickle.rst:414 +#: ../Doc/library/pickle.rst:415 msgid "" "If *buffers* is None (the default), then all data necessary for " "deserialization must be contained in the pickle stream. This means that the " @@ -590,7 +590,7 @@ msgid "" "(or when :func:`dump` or :func:`dumps` was called)." msgstr "" -#: ../Doc/library/pickle.rst:419 +#: ../Doc/library/pickle.rst:420 msgid "" "If *buffers* is not None, it should be an iterable of buffer-enabled objects " "that is consumed each time the pickle stream references an :ref:`out-of-band " @@ -598,25 +598,25 @@ msgid "" "*buffer_callback* of a Pickler object." msgstr "" -#: ../Doc/library/pickle.rst:429 +#: ../Doc/library/pickle.rst:430 msgid "" -"Read a pickled object representation from the open file object given in the " -"constructor, and return the reconstituted object hierarchy specified " -"therein. Bytes past the pickled object's representation are ignored." +"Read the pickled representation of an object from the open file object given " +"in the constructor, and return the reconstituted object hierarchy specified " +"therein. Bytes past the pickled representation of the object are ignored." msgstr "" -#: ../Doc/library/pickle.rst:435 +#: ../Doc/library/pickle.rst:437 msgid "Raise an :exc:`UnpicklingError` by default." msgstr "" -#: ../Doc/library/pickle.rst:437 +#: ../Doc/library/pickle.rst:439 msgid "" "If defined, :meth:`persistent_load` should return the object specified by " "the persistent ID *pid*. If an invalid persistent ID is encountered, an :" "exc:`UnpicklingError` should be raised." msgstr "" -#: ../Doc/library/pickle.rst:445 +#: ../Doc/library/pickle.rst:447 msgid "" "Import *module* if necessary and return the object called *name* from it, " "where the *module* and *name* arguments are :class:`str` objects. Note, " @@ -624,41 +624,41 @@ msgid "" "functions." msgstr "" -#: ../Doc/library/pickle.rst:450 +#: ../Doc/library/pickle.rst:452 msgid "" "Subclasses may override this to gain control over what type of objects and " "how they can be loaded, potentially reducing security risks. Refer to :ref:" "`pickle-restrict` for details." msgstr "" -#: ../Doc/library/pickle.rst:454 +#: ../Doc/library/pickle.rst:456 msgid "" "Raises an :ref:`auditing event ` ``pickle.find_class`` with " "arguments ``module``, ``name``." msgstr "" -#: ../Doc/library/pickle.rst:458 +#: ../Doc/library/pickle.rst:460 msgid "" "A wrapper for a buffer representing picklable data. *buffer* must be a :ref:" "`buffer-providing ` object, such as a :term:`bytes-like " "object` or a N-dimensional array." msgstr "" -#: ../Doc/library/pickle.rst:462 +#: ../Doc/library/pickle.rst:464 msgid "" ":class:`PickleBuffer` is itself a buffer provider, therefore it is possible " "to pass it to other APIs expecting a buffer-providing object, such as :class:" "`memoryview`." msgstr "" -#: ../Doc/library/pickle.rst:466 +#: ../Doc/library/pickle.rst:468 msgid "" ":class:`PickleBuffer` objects can only be serialized using pickle protocol 5 " "or higher. They are eligible for :ref:`out-of-band serialization `." msgstr "" -#: ../Doc/library/pickle.rst:474 +#: ../Doc/library/pickle.rst:476 msgid "" "Return a :class:`memoryview` of the memory area underlying this buffer. The " "returned object is a one-dimensional, C-contiguous memoryview with format " @@ -666,56 +666,56 @@ msgid "" "neither C- nor Fortran-contiguous." msgstr "" -#: ../Doc/library/pickle.rst:481 +#: ../Doc/library/pickle.rst:483 msgid "Release the underlying buffer exposed by the PickleBuffer object." msgstr "" -#: ../Doc/library/pickle.rst:487 +#: ../Doc/library/pickle.rst:489 msgid "What can be pickled and unpickled?" msgstr "" -#: ../Doc/library/pickle.rst:489 +#: ../Doc/library/pickle.rst:491 msgid "The following types can be pickled:" msgstr "" -#: ../Doc/library/pickle.rst:491 +#: ../Doc/library/pickle.rst:493 msgid "``None``, ``True``, and ``False``" msgstr "``None``, ``True``, and ``False``" -#: ../Doc/library/pickle.rst:493 +#: ../Doc/library/pickle.rst:495 msgid "integers, floating point numbers, complex numbers" msgstr "" -#: ../Doc/library/pickle.rst:495 +#: ../Doc/library/pickle.rst:497 msgid "strings, bytes, bytearrays" msgstr "" -#: ../Doc/library/pickle.rst:497 +#: ../Doc/library/pickle.rst:499 msgid "tuples, lists, sets, and dictionaries containing only picklable objects" msgstr "" -#: ../Doc/library/pickle.rst:499 +#: ../Doc/library/pickle.rst:501 msgid "" "functions defined at the top level of a module (using :keyword:`def`, not :" "keyword:`lambda`)" msgstr "" -#: ../Doc/library/pickle.rst:502 +#: ../Doc/library/pickle.rst:504 msgid "built-in functions defined at the top level of a module" msgstr "" -#: ../Doc/library/pickle.rst:504 +#: ../Doc/library/pickle.rst:506 msgid "classes that are defined at the top level of a module" msgstr "" -#: ../Doc/library/pickle.rst:506 +#: ../Doc/library/pickle.rst:508 msgid "" "instances of such classes whose :attr:`~object.__dict__` or the result of " "calling :meth:`__getstate__` is picklable (see section :ref:`pickle-inst` " "for details)." msgstr "" -#: ../Doc/library/pickle.rst:510 +#: ../Doc/library/pickle.rst:512 msgid "" "Attempts to pickle unpicklable objects will raise the :exc:`PicklingError` " "exception; when this happens, an unspecified number of bytes may have " @@ -725,7 +725,7 @@ msgid "" "limit with :func:`sys.setrecursionlimit`." msgstr "" -#: ../Doc/library/pickle.rst:517 +#: ../Doc/library/pickle.rst:519 msgid "" "Note that functions (built-in and user-defined) are pickled by \"fully " "qualified\" name reference, not by value. [#]_ This means that only the " @@ -736,7 +736,7 @@ msgid "" "exception will be raised. [#]_" msgstr "" -#: ../Doc/library/pickle.rst:524 +#: ../Doc/library/pickle.rst:526 msgid "" "Similarly, classes are pickled by named reference, so the same restrictions " "in the unpickling environment apply. Note that none of the class's code or " @@ -744,13 +744,13 @@ msgid "" "not restored in the unpickling environment::" msgstr "" -#: ../Doc/library/pickle.rst:534 +#: ../Doc/library/pickle.rst:536 msgid "" "These restrictions are why picklable functions and classes must be defined " "in the top level of a module." msgstr "" -#: ../Doc/library/pickle.rst:537 +#: ../Doc/library/pickle.rst:539 msgid "" "Similarly, when class instances are pickled, their class's code and data are " "not pickled along with them. Only the instance data are pickled. This is " @@ -762,17 +762,17 @@ msgid "" "method." msgstr "" -#: ../Doc/library/pickle.rst:549 +#: ../Doc/library/pickle.rst:551 msgid "Pickling Class Instances" msgstr "" -#: ../Doc/library/pickle.rst:553 +#: ../Doc/library/pickle.rst:555 msgid "" "In this section, we describe the general mechanisms available to you to " "define, customize, and control how class instances are pickled and unpickled." msgstr "" -#: ../Doc/library/pickle.rst:556 +#: ../Doc/library/pickle.rst:558 msgid "" "In most cases, no additional code is needed to make instances picklable. By " "default, pickle will retrieve the class and the attributes of an instance " @@ -782,13 +782,13 @@ msgid "" "following code shows an implementation of this behaviour::" msgstr "" -#: ../Doc/library/pickle.rst:571 +#: ../Doc/library/pickle.rst:573 msgid "" "Classes can alter the default behaviour by providing one or several special " "methods:" msgstr "" -#: ../Doc/library/pickle.rst:576 +#: ../Doc/library/pickle.rst:578 msgid "" "In protocols 2 and newer, classes that implements the :meth:" "`__getnewargs_ex__` method can dictate the values passed to the :meth:" @@ -798,37 +798,37 @@ msgid "" "passed to the :meth:`__new__` method upon unpickling." msgstr "" -#: ../Doc/library/pickle.rst:584 +#: ../Doc/library/pickle.rst:586 msgid "" "You should implement this method if the :meth:`__new__` method of your class " "requires keyword-only arguments. Otherwise, it is recommended for " "compatibility to implement :meth:`__getnewargs__`." msgstr "" -#: ../Doc/library/pickle.rst:588 +#: ../Doc/library/pickle.rst:590 msgid ":meth:`__getnewargs_ex__` is now used in protocols 2 and 3." msgstr "" -#: ../Doc/library/pickle.rst:594 +#: ../Doc/library/pickle.rst:596 msgid "" "This method serves a similar purpose as :meth:`__getnewargs_ex__`, but " "supports only positional arguments. It must return a tuple of arguments " "``args`` which will be passed to the :meth:`__new__` method upon unpickling." msgstr "" -#: ../Doc/library/pickle.rst:598 +#: ../Doc/library/pickle.rst:600 msgid "" ":meth:`__getnewargs__` will not be called if :meth:`__getnewargs_ex__` is " "defined." msgstr "" -#: ../Doc/library/pickle.rst:601 +#: ../Doc/library/pickle.rst:603 msgid "" "Before Python 3.6, :meth:`__getnewargs__` was called instead of :meth:" "`__getnewargs_ex__` in protocols 2 and 3." msgstr "" -#: ../Doc/library/pickle.rst:608 +#: ../Doc/library/pickle.rst:610 msgid "" "Classes can further influence how their instances are pickled; if the class " "defines the method :meth:`__getstate__`, it is called and the returned " @@ -837,7 +837,7 @@ msgid "" "the instance's :attr:`~object.__dict__` is pickled as usual." msgstr "" -#: ../Doc/library/pickle.rst:617 +#: ../Doc/library/pickle.rst:619 msgid "" "Upon unpickling, if the class defines :meth:`__setstate__`, it is called " "with the unpickled state. In that case, there is no requirement for the " @@ -845,19 +845,19 @@ msgid "" "dictionary and its items are assigned to the new instance's dictionary." msgstr "" -#: ../Doc/library/pickle.rst:624 +#: ../Doc/library/pickle.rst:626 msgid "" "If :meth:`__getstate__` returns a false value, the :meth:`__setstate__` " "method will not be called upon unpickling." msgstr "" -#: ../Doc/library/pickle.rst:628 +#: ../Doc/library/pickle.rst:630 msgid "" "Refer to the section :ref:`pickle-state` for more information about how to " "use the methods :meth:`__getstate__` and :meth:`__setstate__`." msgstr "" -#: ../Doc/library/pickle.rst:633 +#: ../Doc/library/pickle.rst:635 msgid "" "At unpickling time, some methods like :meth:`__getattr__`, :meth:" "`__getattribute__`, or :meth:`__setattr__` may be called upon the instance. " @@ -867,7 +867,7 @@ msgid "" "`__init__` will be called." msgstr "" -#: ../Doc/library/pickle.rst:642 +#: ../Doc/library/pickle.rst:644 msgid "" "As we shall see, pickle does not use directly the methods described above. " "In fact, these methods are part of the copy protocol which implements the :" @@ -876,7 +876,7 @@ msgid "" "objects. [#]_" msgstr "" -#: ../Doc/library/pickle.rst:648 +#: ../Doc/library/pickle.rst:650 msgid "" "Although powerful, implementing :meth:`__reduce__` directly in your classes " "is error prone. For this reason, class designers should use the high-level " @@ -886,14 +886,14 @@ msgid "" "pickling or both." msgstr "" -#: ../Doc/library/pickle.rst:657 +#: ../Doc/library/pickle.rst:659 msgid "" "The interface is currently defined as follows. The :meth:`__reduce__` " "method takes no argument and shall return either a string or preferably a " "tuple (the returned object is often referred to as the \"reduce value\")." msgstr "" -#: ../Doc/library/pickle.rst:661 +#: ../Doc/library/pickle.rst:663 msgid "" "If a string is returned, the string should be interpreted as the name of a " "global variable. It should be the object's local name relative to its " @@ -901,26 +901,26 @@ msgid "" "object's module. This behaviour is typically useful for singletons." msgstr "" -#: ../Doc/library/pickle.rst:666 +#: ../Doc/library/pickle.rst:668 msgid "" "When a tuple is returned, it must be between two and six items long. " "Optional items can either be omitted, or ``None`` can be provided as their " "value. The semantics of each item are in order:" msgstr "" -#: ../Doc/library/pickle.rst:672 +#: ../Doc/library/pickle.rst:674 msgid "" "A callable object that will be called to create the initial version of the " "object." msgstr "" -#: ../Doc/library/pickle.rst:675 +#: ../Doc/library/pickle.rst:677 msgid "" "A tuple of arguments for the callable object. An empty tuple must be given " "if the callable does not accept any argument." msgstr "" -#: ../Doc/library/pickle.rst:678 +#: ../Doc/library/pickle.rst:680 msgid "" "Optionally, the object's state, which will be passed to the object's :meth:" "`__setstate__` method as previously described. If the object has no such " @@ -928,7 +928,7 @@ msgid "" "object's :attr:`~object.__dict__` attribute." msgstr "" -#: ../Doc/library/pickle.rst:683 +#: ../Doc/library/pickle.rst:685 msgid "" "Optionally, an iterator (and not a sequence) yielding successive items. " "These items will be appended to the object either using ``obj.append(item)`` " @@ -940,7 +940,7 @@ msgid "" "must be supported.)" msgstr "" -#: ../Doc/library/pickle.rst:692 +#: ../Doc/library/pickle.rst:694 msgid "" "Optionally, an iterator (not a sequence) yielding successive key-value " "pairs. These items will be stored to the object using ``obj[key] = " @@ -948,7 +948,7 @@ msgid "" "by other classes as long as they implement :meth:`__setitem__`." msgstr "" -#: ../Doc/library/pickle.rst:697 +#: ../Doc/library/pickle.rst:699 msgid "" "Optionally, a callable with a ``(obj, state)`` signature. This callable " "allows the user to programmatically control the state-updating behavior of a " @@ -957,11 +957,11 @@ msgid "" "meth:`__setstate__`." msgstr "" -#: ../Doc/library/pickle.rst:703 +#: ../Doc/library/pickle.rst:705 msgid "The optional sixth tuple item, ``(obj, state)``, was added." msgstr "" -#: ../Doc/library/pickle.rst:709 +#: ../Doc/library/pickle.rst:711 msgid "" "Alternatively, a :meth:`__reduce_ex__` method may be defined. The only " "difference is this method should take a single integer argument, the " @@ -971,11 +971,11 @@ msgid "" "provide backwards-compatible reduce values for older Python releases." msgstr "" -#: ../Doc/library/pickle.rst:721 +#: ../Doc/library/pickle.rst:723 msgid "Persistence of External Objects" msgstr "" -#: ../Doc/library/pickle.rst:727 +#: ../Doc/library/pickle.rst:729 msgid "" "For the benefit of object persistence, the :mod:`pickle` module supports the " "notion of a reference to an object outside the pickled data stream. Such " @@ -984,78 +984,78 @@ msgid "" "(for any newer protocol)." msgstr "" -#: ../Doc/library/pickle.rst:733 +#: ../Doc/library/pickle.rst:735 msgid "" "The resolution of such persistent IDs is not defined by the :mod:`pickle` " -"module; it will delegate this resolution to the user defined methods on the " +"module; it will delegate this resolution to the user-defined methods on the " "pickler and unpickler, :meth:`~Pickler.persistent_id` and :meth:`~Unpickler." "persistent_load` respectively." msgstr "" -#: ../Doc/library/pickle.rst:738 +#: ../Doc/library/pickle.rst:740 msgid "" -"To pickle objects that have an external persistent id, the pickler must have " +"To pickle objects that have an external persistent ID, the pickler must have " "a custom :meth:`~Pickler.persistent_id` method that takes an object as an " -"argument and returns either ``None`` or the persistent id for that object. " +"argument and returns either ``None`` or the persistent ID for that object. " "When ``None`` is returned, the pickler simply pickles the object as normal. " "When a persistent ID string is returned, the pickler will pickle that " "object, along with a marker so that the unpickler will recognize it as a " "persistent ID." msgstr "" -#: ../Doc/library/pickle.rst:745 +#: ../Doc/library/pickle.rst:747 msgid "" "To unpickle external objects, the unpickler must have a custom :meth:" "`~Unpickler.persistent_load` method that takes a persistent ID object and " "returns the referenced object." msgstr "" -#: ../Doc/library/pickle.rst:749 +#: ../Doc/library/pickle.rst:751 msgid "" "Here is a comprehensive example presenting how persistent ID can be used to " "pickle external objects by reference." msgstr "" -#: ../Doc/library/pickle.rst:757 +#: ../Doc/library/pickle.rst:759 msgid "Dispatch Tables" msgstr "" -#: ../Doc/library/pickle.rst:759 +#: ../Doc/library/pickle.rst:761 msgid "" "If one wants to customize pickling of some classes without disturbing any " "other code which depends on pickling, then one can create a pickler with a " "private dispatch table." msgstr "" -#: ../Doc/library/pickle.rst:763 +#: ../Doc/library/pickle.rst:765 msgid "" "The global dispatch table managed by the :mod:`copyreg` module is available " "as :data:`copyreg.dispatch_table`. Therefore, one may choose to use a " "modified copy of :data:`copyreg.dispatch_table` as a private dispatch table." msgstr "" -#: ../Doc/library/pickle.rst:768 +#: ../Doc/library/pickle.rst:770 msgid "For example ::" msgstr "Par exemple ::" -#: ../Doc/library/pickle.rst:775 +#: ../Doc/library/pickle.rst:777 msgid "" "creates an instance of :class:`pickle.Pickler` with a private dispatch table " "which handles the ``SomeClass`` class specially. Alternatively, the code ::" msgstr "" -#: ../Doc/library/pickle.rst:785 +#: ../Doc/library/pickle.rst:787 msgid "" "does the same, but all instances of ``MyPickler`` will by default share the " "same dispatch table. The equivalent code using the :mod:`copyreg` module " "is ::" msgstr "" -#: ../Doc/library/pickle.rst:796 +#: ../Doc/library/pickle.rst:798 msgid "Handling Stateful Objects" msgstr "" -#: ../Doc/library/pickle.rst:802 +#: ../Doc/library/pickle.rst:804 msgid "" "Here's an example that shows how to modify pickling behavior for a class. " "The :class:`TextReader` class opens a text file, and returns the line number " @@ -1067,15 +1067,15 @@ msgid "" "behavior. ::" msgstr "" -#: ../Doc/library/pickle.rst:848 +#: ../Doc/library/pickle.rst:850 msgid "A sample usage might be something like this::" msgstr "" -#: ../Doc/library/pickle.rst:862 +#: ../Doc/library/pickle.rst:864 msgid "Custom Reduction for Types, Functions, and Other Objects" msgstr "" -#: ../Doc/library/pickle.rst:866 +#: ../Doc/library/pickle.rst:868 msgid "" "Sometimes, :attr:`~Pickler.dispatch_table` may not be flexible enough. In " "particular we may want to customize pickling based on another criterion than " @@ -1083,7 +1083,7 @@ msgid "" "classes." msgstr "" -#: ../Doc/library/pickle.rst:871 +#: ../Doc/library/pickle.rst:873 msgid "" "For those cases, it is possible to subclass from the :class:`Pickler` class " "and implement a :meth:`~Pickler.reducer_override` method. This method can " @@ -1092,14 +1092,14 @@ msgid "" "behavior." msgstr "" -#: ../Doc/library/pickle.rst:876 +#: ../Doc/library/pickle.rst:878 msgid "" "If both the :attr:`~Pickler.dispatch_table` and :meth:`~Pickler." "reducer_override` are defined, then :meth:`~Pickler.reducer_override` method " "takes priority." msgstr "" -#: ../Doc/library/pickle.rst:881 +#: ../Doc/library/pickle.rst:883 msgid "" "For performance reasons, :meth:`~Pickler.reducer_override` may not be called " "for the following objects: ``None``, ``True``, ``False``, and exact " @@ -1108,17 +1108,17 @@ msgid "" "`tuple`." msgstr "" -#: ../Doc/library/pickle.rst:887 +#: ../Doc/library/pickle.rst:889 msgid "" "Here is a simple example where we allow pickling and reconstructing a given " "class::" msgstr "" -#: ../Doc/library/pickle.rst:922 +#: ../Doc/library/pickle.rst:924 msgid "Out-of-band Buffers" msgstr "" -#: ../Doc/library/pickle.rst:926 +#: ../Doc/library/pickle.rst:928 msgid "" "In some contexts, the :mod:`pickle` module is used to transfer massive " "amounts of data. Therefore, it can be important to minimize the number of " @@ -1128,7 +1128,7 @@ msgid "" "involves copying data to and from the pickle stream." msgstr "" -#: ../Doc/library/pickle.rst:933 +#: ../Doc/library/pickle.rst:935 msgid "" "This constraint can be eschewed if both the *provider* (the implementation " "of the object types to be transferred) and the *consumer* (the " @@ -1136,11 +1136,11 @@ msgid "" "transfer facilities provided by pickle protocol 5 and higher." msgstr "" -#: ../Doc/library/pickle.rst:939 +#: ../Doc/library/pickle.rst:941 msgid "Provider API" msgstr "" -#: ../Doc/library/pickle.rst:941 +#: ../Doc/library/pickle.rst:943 msgid "" "The large data objects to be pickled must implement a :meth:`__reduce_ex__` " "method specialized for protocol 5 and higher, which returns a :class:" @@ -1148,7 +1148,7 @@ msgid "" "large data." msgstr "" -#: ../Doc/library/pickle.rst:946 +#: ../Doc/library/pickle.rst:948 msgid "" "A :class:`PickleBuffer` object *signals* that the underlying buffer is " "eligible for out-of-band data transfer. Those objects remain compatible " @@ -1157,17 +1157,17 @@ msgid "" "themselves." msgstr "" -#: ../Doc/library/pickle.rst:953 +#: ../Doc/library/pickle.rst:955 msgid "Consumer API" msgstr "" -#: ../Doc/library/pickle.rst:955 +#: ../Doc/library/pickle.rst:957 msgid "" "A communications system can enable custom handling of the :class:" "`PickleBuffer` objects generated when serializing an object graph." msgstr "" -#: ../Doc/library/pickle.rst:958 +#: ../Doc/library/pickle.rst:960 msgid "" "On the sending side, it needs to pass a *buffer_callback* argument to :class:" "`Pickler` (or to the :func:`dump` or :func:`dumps` function), which will be " @@ -1176,7 +1176,7 @@ msgid "" "copied into the pickle stream, only a cheap marker will be inserted." msgstr "" -#: ../Doc/library/pickle.rst:965 +#: ../Doc/library/pickle.rst:967 msgid "" "On the receiving side, it needs to pass a *buffers* argument to :class:" "`Unpickler` (or to the :func:`load` or :func:`loads` function), which is an " @@ -1187,7 +1187,7 @@ msgid "" "`PickleBuffer` objects." msgstr "" -#: ../Doc/library/pickle.rst:973 +#: ../Doc/library/pickle.rst:975 msgid "" "Between the sending side and the receiving side, the communications system " "is free to implement its own transfer mechanism for out-of-band buffers. " @@ -1195,37 +1195,37 @@ msgid "" "dependent compression." msgstr "" -#: ../Doc/library/pickle.rst:979 +#: ../Doc/library/pickle.rst:981 #, fuzzy msgid "Example" msgstr "Exemples" -#: ../Doc/library/pickle.rst:981 +#: ../Doc/library/pickle.rst:983 msgid "" "Here is a trivial example where we implement a :class:`bytearray` subclass " "able to participate in out-of-band buffer pickling::" msgstr "" -#: ../Doc/library/pickle.rst:1005 +#: ../Doc/library/pickle.rst:1007 msgid "" "The reconstructor (the ``_reconstruct`` class method) returns the buffer's " "providing object if it has the right type. This is an easy way to simulate " "zero-copy behaviour on this toy example." msgstr "" -#: ../Doc/library/pickle.rst:1009 +#: ../Doc/library/pickle.rst:1011 msgid "" "On the consumer side, we can pickle those objects the usual way, which when " "unserialized will give us a copy of the original object::" msgstr "" -#: ../Doc/library/pickle.rst:1018 +#: ../Doc/library/pickle.rst:1020 msgid "" "But if we pass a *buffer_callback* and then give back the accumulated " "buffers when unserializing, we are able to get back the original object::" msgstr "" -#: ../Doc/library/pickle.rst:1028 +#: ../Doc/library/pickle.rst:1030 msgid "" "This example is limited by the fact that :class:`bytearray` allocates its " "own memory: you cannot create a :class:`bytearray` instance that is backed " @@ -1235,15 +1235,15 @@ msgid "" "processes or systems." msgstr "" -#: ../Doc/library/pickle.rst:1035 +#: ../Doc/library/pickle.rst:1037 msgid ":pep:`574` -- Pickle protocol 5 with out-of-band data" msgstr "" -#: ../Doc/library/pickle.rst:1041 +#: ../Doc/library/pickle.rst:1043 msgid "Restricting Globals" msgstr "" -#: ../Doc/library/pickle.rst:1046 +#: ../Doc/library/pickle.rst:1048 msgid "" "By default, unpickling will import any class or function that it finds in " "the pickle data. For many applications, this behaviour is unacceptable as " @@ -1251,7 +1251,7 @@ msgid "" "what this hand-crafted pickle data stream does when loaded::" msgstr "" -#: ../Doc/library/pickle.rst:1056 +#: ../Doc/library/pickle.rst:1058 msgid "" "In this example, the unpickler imports the :func:`os.system` function and " "then apply the string argument \"echo hello world\". Although this example " @@ -1259,7 +1259,7 @@ msgid "" "system." msgstr "" -#: ../Doc/library/pickle.rst:1060 +#: ../Doc/library/pickle.rst:1062 msgid "" "For this reason, you may want to control what gets unpickled by customizing :" "meth:`Unpickler.find_class`. Unlike its name suggests, :meth:`Unpickler." @@ -1268,17 +1268,17 @@ msgid "" "restrict them to a safe subset." msgstr "" -#: ../Doc/library/pickle.rst:1066 +#: ../Doc/library/pickle.rst:1068 msgid "" "Here is an example of an unpickler allowing only few safe classes from the :" "mod:`builtins` module to be loaded::" msgstr "" -#: ../Doc/library/pickle.rst:1095 +#: ../Doc/library/pickle.rst:1097 msgid "A sample usage of our unpickler working has intended::" msgstr "" -#: ../Doc/library/pickle.rst:1114 +#: ../Doc/library/pickle.rst:1116 msgid "" "As our examples shows, you have to be careful with what you allow to be " "unpickled. Therefore if security is a concern, you may want to consider " @@ -1286,97 +1286,97 @@ msgid "" "party solutions." msgstr "" -#: ../Doc/library/pickle.rst:1121 +#: ../Doc/library/pickle.rst:1123 msgid "Performance" msgstr "Performances" -#: ../Doc/library/pickle.rst:1123 +#: ../Doc/library/pickle.rst:1125 msgid "" "Recent versions of the pickle protocol (from protocol 2 and upwards) feature " "efficient binary encodings for several common features and built-in types. " "Also, the :mod:`pickle` module has a transparent optimizer written in C." msgstr "" -#: ../Doc/library/pickle.rst:1131 +#: ../Doc/library/pickle.rst:1133 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/pickle.rst:1133 +#: ../Doc/library/pickle.rst:1135 msgid "" "For the simplest code, use the :func:`dump` and :func:`load` functions. ::" msgstr "" -#: ../Doc/library/pickle.rst:1149 +#: ../Doc/library/pickle.rst:1151 msgid "The following example reads the resulting pickled data. ::" msgstr "" -#: ../Doc/library/pickle.rst:1166 +#: ../Doc/library/pickle.rst:1168 msgid "Module :mod:`copyreg`" msgstr "" -#: ../Doc/library/pickle.rst:1166 +#: ../Doc/library/pickle.rst:1168 msgid "Pickle interface constructor registration for extension types." msgstr "" -#: ../Doc/library/pickle.rst:1169 +#: ../Doc/library/pickle.rst:1171 msgid "Module :mod:`pickletools`" msgstr "" -#: ../Doc/library/pickle.rst:1169 +#: ../Doc/library/pickle.rst:1171 msgid "Tools for working with and analyzing pickled data." msgstr "" -#: ../Doc/library/pickle.rst:1172 +#: ../Doc/library/pickle.rst:1174 msgid "Module :mod:`shelve`" msgstr "" -#: ../Doc/library/pickle.rst:1172 +#: ../Doc/library/pickle.rst:1174 msgid "Indexed databases of objects; uses :mod:`pickle`." msgstr "" -#: ../Doc/library/pickle.rst:1175 +#: ../Doc/library/pickle.rst:1177 msgid "Module :mod:`copy`" msgstr "" -#: ../Doc/library/pickle.rst:1175 +#: ../Doc/library/pickle.rst:1177 msgid "Shallow and deep object copying." msgstr "" -#: ../Doc/library/pickle.rst:1177 +#: ../Doc/library/pickle.rst:1179 msgid "Module :mod:`marshal`" msgstr "" -#: ../Doc/library/pickle.rst:1178 +#: ../Doc/library/pickle.rst:1180 msgid "High-performance serialization of built-in types." msgstr "" -#: ../Doc/library/pickle.rst:1182 +#: ../Doc/library/pickle.rst:1184 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/pickle.rst:1183 +#: ../Doc/library/pickle.rst:1185 msgid "Don't confuse this with the :mod:`marshal` module" msgstr "" -#: ../Doc/library/pickle.rst:1185 +#: ../Doc/library/pickle.rst:1187 msgid "" "This is why :keyword:`lambda` functions cannot be pickled: all :keyword:`!" "lambda` functions share the same name: ````." msgstr "" -#: ../Doc/library/pickle.rst:1188 +#: ../Doc/library/pickle.rst:1190 msgid "" "The exception raised will likely be an :exc:`ImportError` or an :exc:" "`AttributeError` but it could be something else." msgstr "" -#: ../Doc/library/pickle.rst:1191 +#: ../Doc/library/pickle.rst:1193 msgid "" "The :mod:`copy` module uses this protocol for shallow and deep copying " "operations." msgstr "" -#: ../Doc/library/pickle.rst:1194 +#: ../Doc/library/pickle.rst:1196 msgid "" "The limitation on alphanumeric characters is due to the fact the persistent " "IDs, in protocol 0, are delimited by the newline character. Therefore if " diff --git a/library/re.po b/library/re.po index fd08cdc00..557a15687 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-03-27 15:23+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -214,7 +214,7 @@ msgstr "" msgid "The special characters are:" msgstr "Les caractères spéciaux sont :" -#: ../Doc/library/re.rst:104 ../Doc/library/re.rst:1407 +#: ../Doc/library/re.rst:104 ../Doc/library/re.rst:1409 msgid "``.``" msgstr "``.``" @@ -1109,11 +1109,12 @@ msgid "``\\W``" msgstr "``\\W``" #: ../Doc/library/re.rst:540 +#, fuzzy msgid "" "Matches any character which is not a word character. This is the opposite of " "``\\w``. If the :const:`ASCII` flag is used this becomes the equivalent of " "``[^a-zA-Z0-9_]``. If the :const:`LOCALE` flag is used, matches characters " -"considered alphanumeric in the current locale and the underscore." +"which are neither alphanumeric in the current locale nor the underscore." msgstr "" "Valide tout caractère qui n'est pas un caractère de mot. C'est l'opposé de ``" "\\w``. Si l'option :const:`ASCII` est utilisée, cela devient équivalent à " @@ -1651,7 +1652,7 @@ msgstr "" "remplacée par la sous-chaîne entière validée par l'expression rationnelle." #: ../Doc/library/re.rst:900 ../Doc/library/re.rst:924 -#: ../Doc/library/re.rst:1153 +#: ../Doc/library/re.rst:1155 msgid "Unmatched groups are replaced with an empty string." msgstr "Les groupes sans correspondance sont remplacés par une chaîne vide." @@ -1714,16 +1715,16 @@ msgstr "Le caractère ``'_'`` n'est plus échappé." #: ../Doc/library/re.rst:956 msgid "" "Only characters that can have special meaning in a regular expression are " -"escaped." +"escaped. As a result, ``'!'``, ``'\"'``, ``'%'``, ``\"'\"``, ``','``, " +"``'/'``, ``':'``, ``';'``, ``'<'``, ``'='``, ``'>'``, ``'@'``, and ``\"`\"`` " +"are no longer escaped." 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:963 +#: ../Doc/library/re.rst:965 msgid "Clear the regular expression cache." msgstr "Vide le cache d'expressions rationnelles." -#: ../Doc/library/re.rst:968 +#: ../Doc/library/re.rst:970 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 " @@ -1738,36 +1739,36 @@ msgstr "" "contient aucune correspondance pour un motif. Les instances de l'erreur ont " "les attributs additionnels suivants :" -#: ../Doc/library/re.rst:976 +#: ../Doc/library/re.rst:978 msgid "The unformatted error message." msgstr "Le message d'erreur non formaté." -#: ../Doc/library/re.rst:980 +#: ../Doc/library/re.rst:982 msgid "The regular expression pattern." msgstr "Le motif d'expression rationnelle." -#: ../Doc/library/re.rst:984 +#: ../Doc/library/re.rst:986 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:988 +#: ../Doc/library/re.rst:990 msgid "The line corresponding to *pos* (may be ``None``)." msgstr "La ligne correspondant à *pos* (peut valoir ``None``)." -#: ../Doc/library/re.rst:992 +#: ../Doc/library/re.rst:994 msgid "The column corresponding to *pos* (may be ``None``)." msgstr "La colonne correspondant à *pos* (peut valoir ``None``)." -#: ../Doc/library/re.rst:994 +#: ../Doc/library/re.rst:996 msgid "Added additional attributes." msgstr "Ajout des attributs additionnels." -#: ../Doc/library/re.rst:1000 +#: ../Doc/library/re.rst:1002 msgid "Regular Expression Objects" msgstr "Objets d'expressions rationnelles" -#: ../Doc/library/re.rst:1002 +#: ../Doc/library/re.rst:1004 msgid "" "Compiled regular expression objects support the following methods and " "attributes:" @@ -1775,7 +1776,7 @@ msgstr "" "Les expressions rationnelles compilées supportent les méthodes et attributs " "suivants :" -#: ../Doc/library/re.rst:1007 +#: ../Doc/library/re.rst:1009 msgid "" "Scan through *string* looking for the first location where this regular " "expression produces a match, and return a corresponding :ref:`match object " @@ -1789,7 +1790,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:1013 +#: ../Doc/library/re.rst:1015 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 " @@ -1803,7 +1804,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:1019 +#: ../Doc/library/re.rst:1021 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 " @@ -1820,7 +1821,7 @@ msgstr "" "expression rationnelle compilée, ``rx.search(string, 0, 50)`` est équivalent " "à ``rx.search(string[:50], 0)``. ::" -#: ../Doc/library/re.rst:1034 +#: ../Doc/library/re.rst:1036 msgid "" "If zero or more characters at the *beginning* of *string* match this regular " "expression, return a corresponding :ref:`match object `. " @@ -1832,7 +1833,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:1039 ../Doc/library/re.rst:1057 +#: ../Doc/library/re.rst:1041 ../Doc/library/re.rst:1059 msgid "" "The optional *pos* and *endpos* parameters have the same meaning as for the :" "meth:`~Pattern.search` method. ::" @@ -1840,7 +1841,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:1047 +#: ../Doc/library/re.rst:1049 msgid "" "If you want to locate a match anywhere in *string*, use :meth:`~Pattern." "search` instead (see also :ref:`search-vs-match`)." @@ -1848,7 +1849,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:1053 +#: ../Doc/library/re.rst:1055 msgid "" "If the whole *string* matches this regular expression, return a " "corresponding :ref:`match object `. Return ``None`` if the " @@ -1860,11 +1861,11 @@ msgstr "" "la chaîne ne correspond pas au motif ; notez que cela est différent d'une " "correspondance vide." -#: ../Doc/library/re.rst:1071 +#: ../Doc/library/re.rst:1073 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:1076 +#: ../Doc/library/re.rst:1078 msgid "" "Similar to the :func:`findall` function, using the compiled pattern, but " "also accepts optional *pos* and *endpos* parameters that limit the search " @@ -1874,7 +1875,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:1083 +#: ../Doc/library/re.rst:1085 msgid "" "Similar to the :func:`finditer` function, using the compiled pattern, but " "also accepts optional *pos* and *endpos* parameters that limit the search " @@ -1884,15 +1885,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:1090 +#: ../Doc/library/re.rst:1092 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:1095 +#: ../Doc/library/re.rst:1097 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:1100 +#: ../Doc/library/re.rst:1102 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 " @@ -1903,11 +1904,11 @@ msgstr "" "``(?...)`` dans le motif, et des options implicites comme :data:`UNICODE` si " "le motif est une chaîne Unicode." -#: ../Doc/library/re.rst:1107 +#: ../Doc/library/re.rst:1109 msgid "The number of capturing groups in the pattern." msgstr "Le nombre de groupes de capture dans le motif." -#: ../Doc/library/re.rst:1112 +#: ../Doc/library/re.rst:1114 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 " @@ -1917,11 +1918,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:1119 +#: ../Doc/library/re.rst:1121 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:1122 +#: ../Doc/library/re.rst:1124 msgid "" "Added support of :func:`copy.copy` and :func:`copy.deepcopy`. Compiled " "regular expression objects are considered atomic." @@ -1929,11 +1930,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:1130 +#: ../Doc/library/re.rst:1132 msgid "Match Objects" msgstr "Objets de correspondance" -#: ../Doc/library/re.rst:1132 +#: ../Doc/library/re.rst:1134 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, " @@ -1944,12 +1945,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:1141 +#: ../Doc/library/re.rst:1143 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:1146 +#: ../Doc/library/re.rst:1148 msgid "" "Return the string obtained by doing backslash substitution on the template " "string *template*, as done by the :meth:`~Pattern.sub` method. Escapes such " @@ -1964,7 +1965,7 @@ msgstr "" "\\g<1>``, ``\\g``) sont remplacées par les contenus des groupes " "correspondant." -#: ../Doc/library/re.rst:1158 +#: ../Doc/library/re.rst:1160 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 " @@ -1991,7 +1992,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:1180 +#: ../Doc/library/re.rst:1182 msgid "" "If the regular expression uses the ``(?P...)`` syntax, the *groupN* " "arguments may also be strings identifying groups by their group name. If a " @@ -2003,20 +2004,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:1185 +#: ../Doc/library/re.rst:1187 msgid "A moderately complicated example::" msgstr "Un exemple modérément compliqué ::" -#: ../Doc/library/re.rst:1193 +#: ../Doc/library/re.rst:1195 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:1200 +#: ../Doc/library/re.rst:1202 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:1209 +#: ../Doc/library/re.rst:1211 msgid "" "This is identical to ``m.group(g)``. This allows easier access to an " "individual group from a match::" @@ -2024,7 +2025,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:1225 +#: ../Doc/library/re.rst:1227 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 " @@ -2034,11 +2035,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:1229 ../Doc/library/re.rst:1451 +#: ../Doc/library/re.rst:1231 ../Doc/library/re.rst:1453 msgid "For example::" msgstr "Par exemple ::" -#: ../Doc/library/re.rst:1235 +#: ../Doc/library/re.rst:1237 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 " @@ -2049,7 +2050,7 @@ msgstr "" "correspondance vaudront ``None`` sauf si une autre valeur est donnée à " "l'argument *default* ::" -#: ../Doc/library/re.rst:1248 +#: ../Doc/library/re.rst:1250 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 " @@ -2060,7 +2061,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:1260 +#: ../Doc/library/re.rst:1262 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 " @@ -2075,7 +2076,7 @@ msgstr "" "groupe *g* qui y figure, la sous-chaîne correspondant au groupe *g* " "(équivalente à ``m.group(g)``) est : ::" -#: ../Doc/library/re.rst:1268 +#: ../Doc/library/re.rst:1270 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." @@ -2088,11 +2089,11 @@ msgstr "" "end(1)`` valent tous deux 2, et ``m.start(2)`` lève une exception :exc:" "`IndexError`." -#: ../Doc/library/re.rst:1273 +#: ../Doc/library/re.rst:1275 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:1283 +#: ../Doc/library/re.rst:1285 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)``. " @@ -2103,7 +2104,7 @@ msgstr "" "``(-1, -1)`` est renvoyé. *group* vaut par défaut zéro, pour la " "correspondance entière." -#: ../Doc/library/re.rst:1290 +#: ../Doc/library/re.rst:1292 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 " @@ -2114,7 +2115,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:1297 +#: ../Doc/library/re.rst:1299 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 " @@ -2125,7 +2126,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:1304 +#: ../Doc/library/re.rst:1306 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)" @@ -2139,7 +2140,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:1313 +#: ../Doc/library/re.rst:1315 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." @@ -2147,7 +2148,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:1319 +#: ../Doc/library/re.rst:1321 msgid "" "The :ref:`regular expression object ` whose :meth:`~Pattern." "match` or :meth:`~Pattern.search` method produced this match instance." @@ -2155,11 +2156,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:1325 +#: ../Doc/library/re.rst:1327 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:1328 +#: ../Doc/library/re.rst:1330 msgid "" "Added support of :func:`copy.copy` and :func:`copy.deepcopy`. Match objects " "are considered atomic." @@ -2167,15 +2168,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:1336 +#: ../Doc/library/re.rst:1338 msgid "Regular Expression Examples" msgstr "Exemples d'expressions rationnelles" -#: ../Doc/library/re.rst:1340 +#: ../Doc/library/re.rst:1342 msgid "Checking for a Pair" msgstr "Rechercher une paire" -#: ../Doc/library/re.rst:1342 +#: ../Doc/library/re.rst:1344 #, fuzzy msgid "" "In this example, we'll use the following helper function to display match " @@ -2184,7 +2185,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:1350 +#: ../Doc/library/re.rst:1352 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 " @@ -2198,13 +2199,13 @@ msgstr "" "(*ten*), et les caractères de \"2\" à \"9\" représentant les cartes avec ces " "valeurs." -#: ../Doc/library/re.rst:1355 +#: ../Doc/library/re.rst:1357 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:1365 +#: ../Doc/library/re.rst:1367 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 " @@ -2214,7 +2215,7 @@ msgstr "" "valeur. Pour valider cela avec une expression rationnelle, on pourrait " "utiliser des références arrière comme ::" -#: ../Doc/library/re.rst:1375 +#: ../Doc/library/re.rst:1377 #, fuzzy msgid "" "To find out what card the pair consists of, one could use the :meth:`~Match." @@ -2224,11 +2225,11 @@ msgstr "" "méthode :meth:`~Match.group` de l'objet de correspondance de la manière " "suivante :" -#: ../Doc/library/re.rst:1394 +#: ../Doc/library/re.rst:1396 msgid "Simulating scanf()" msgstr "Simuler *scanf()*" -#: ../Doc/library/re.rst:1398 +#: ../Doc/library/re.rst:1400 msgid "" "Python does not currently have an equivalent to :c:func:`scanf`. Regular " "expressions are generally more powerful, though also more verbose, than :c:" @@ -2242,100 +2243,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:1405 +#: ../Doc/library/re.rst:1407 msgid ":c:func:`scanf` Token" msgstr "Élément de :c:func:`scanf`" -#: ../Doc/library/re.rst:1405 +#: ../Doc/library/re.rst:1407 msgid "Regular Expression" msgstr "Expression rationnelle" -#: ../Doc/library/re.rst:1407 +#: ../Doc/library/re.rst:1409 msgid "``%c``" msgstr "``%c``" -#: ../Doc/library/re.rst:1409 +#: ../Doc/library/re.rst:1411 msgid "``%5c``" msgstr "``%5c``" -#: ../Doc/library/re.rst:1409 +#: ../Doc/library/re.rst:1411 msgid "``.{5}``" msgstr "``.{5}``" -#: ../Doc/library/re.rst:1411 +#: ../Doc/library/re.rst:1413 msgid "``%d``" msgstr "``%d``" -#: ../Doc/library/re.rst:1411 +#: ../Doc/library/re.rst:1413 msgid "``[-+]?\\d+``" msgstr "``[-+]?\\d+``" -#: ../Doc/library/re.rst:1413 +#: ../Doc/library/re.rst:1415 msgid "``%e``, ``%E``, ``%f``, ``%g``" msgstr "``%e``, ``%E``, ``%f``, ``%g``" -#: ../Doc/library/re.rst:1413 +#: ../Doc/library/re.rst:1415 msgid "``[-+]?(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?``" msgstr "``[-+]?(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?``" -#: ../Doc/library/re.rst:1415 +#: ../Doc/library/re.rst:1417 msgid "``%i``" msgstr "``%i``" -#: ../Doc/library/re.rst:1415 +#: ../Doc/library/re.rst:1417 msgid "``[-+]?(0[xX][\\dA-Fa-f]+|0[0-7]*|\\d+)``" msgstr "``[-+]?(0[xX][\\dA-Fa-f]+|0[0-7]*|\\d+)``" -#: ../Doc/library/re.rst:1417 +#: ../Doc/library/re.rst:1419 msgid "``%o``" msgstr "``%o``" -#: ../Doc/library/re.rst:1417 +#: ../Doc/library/re.rst:1419 msgid "``[-+]?[0-7]+``" msgstr "``[-+]?[0-7]+``" -#: ../Doc/library/re.rst:1419 +#: ../Doc/library/re.rst:1421 msgid "``%s``" msgstr "``%s``" -#: ../Doc/library/re.rst:1419 +#: ../Doc/library/re.rst:1421 msgid "``\\S+``" msgstr "``\\S+``" -#: ../Doc/library/re.rst:1421 +#: ../Doc/library/re.rst:1423 msgid "``%u``" msgstr "``%u``" -#: ../Doc/library/re.rst:1421 +#: ../Doc/library/re.rst:1423 msgid "``\\d+``" msgstr "``\\d+``" -#: ../Doc/library/re.rst:1423 +#: ../Doc/library/re.rst:1425 msgid "``%x``, ``%X``" msgstr "``%x``, ``%X``" -#: ../Doc/library/re.rst:1423 +#: ../Doc/library/re.rst:1425 msgid "``[-+]?(0[xX])?[\\dA-Fa-f]+``" msgstr "``[-+]?(0[xX])?[\\dA-Fa-f]+``" -#: ../Doc/library/re.rst:1426 +#: ../Doc/library/re.rst:1428 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:1430 +#: ../Doc/library/re.rst:1432 msgid "you would use a :c:func:`scanf` format like ::" msgstr "vous utiliseriez un format :c:func:`scanf` comme : ::" -#: ../Doc/library/re.rst:1434 +#: ../Doc/library/re.rst:1436 msgid "The equivalent regular expression would be ::" msgstr "L'expression rationnelle équivalente serait : ::" -#: ../Doc/library/re.rst:1442 +#: ../Doc/library/re.rst:1444 msgid "search() vs. match()" msgstr "search() vs. match()" -#: ../Doc/library/re.rst:1446 +#: ../Doc/library/re.rst:1448 msgid "" "Python offers two different primitive operations based on regular " "expressions: :func:`re.match` checks for a match only at the beginning of " @@ -2347,7 +2348,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:1457 +#: ../Doc/library/re.rst:1459 msgid "" "Regular expressions beginning with ``'^'`` can be used with :func:`search` " "to restrict the match at the beginning of the string::" @@ -2355,7 +2356,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:1465 +#: ../Doc/library/re.rst:1467 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 " @@ -2366,11 +2367,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:1475 +#: ../Doc/library/re.rst:1477 msgid "Making a Phonebook" msgstr "Construire un répertoire téléphonique" -#: ../Doc/library/re.rst:1477 +#: ../Doc/library/re.rst:1479 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 " @@ -2382,7 +2383,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:1482 +#: ../Doc/library/re.rst:1484 #, fuzzy msgid "" "First, here is the input. Normally it may come from a file, here we are " @@ -2391,7 +2392,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:1495 +#: ../Doc/library/re.rst:1497 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:" @@ -2400,7 +2401,7 @@ msgstr "" "maintenant la chaîne en une liste où chaque ligne non vide aura sa propre " "entrée :" -#: ../Doc/library/re.rst:1508 +#: ../Doc/library/re.rst:1510 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` " @@ -2411,7 +2412,7 @@ msgstr "" "`split` parce que l'adresse contient des espaces, qui sont notre motif de " "séparation :" -#: ../Doc/library/re.rst:1521 +#: ../Doc/library/re.rst:1523 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 " @@ -2421,11 +2422,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:1536 +#: ../Doc/library/re.rst:1538 msgid "Text Munging" msgstr "Mélanger les lettres des mots" -#: ../Doc/library/re.rst:1538 +#: ../Doc/library/re.rst:1540 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 " @@ -2437,11 +2438,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:1555 +#: ../Doc/library/re.rst:1557 msgid "Finding all Adverbs" msgstr "Trouver tous les adverbes" -#: ../Doc/library/re.rst:1557 +#: ../Doc/library/re.rst:1559 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 " @@ -2453,11 +2454,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:1568 +#: ../Doc/library/re.rst:1570 msgid "Finding all Adverbs and their Positions" msgstr "Trouver tous les adverbes et leurs positions" -#: ../Doc/library/re.rst:1570 +#: ../Doc/library/re.rst:1572 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 " @@ -2472,11 +2473,11 @@ msgstr "" "leurs positions* dans un texte, il/elle utiliserait :func:`finditer` de la " "manière suivante ::" -#: ../Doc/library/re.rst:1584 +#: ../Doc/library/re.rst:1586 msgid "Raw String Notation" msgstr "Notation brutes de chaînes" -#: ../Doc/library/re.rst:1586 +#: ../Doc/library/re.rst:1588 msgid "" "Raw string notation (``r\"text\"``) keeps regular expressions sane. Without " "it, every backslash (``'\\'``) in a regular expression would have to be " @@ -2489,7 +2490,7 @@ msgstr "" "Par exemple, les deux lignes de code suivantes sont fonctionnellement " "identiques ::" -#: ../Doc/library/re.rst:1596 +#: ../Doc/library/re.rst:1598 msgid "" "When one wants to match a literal backslash, it must be escaped in the " "regular expression. With raw string notation, this means ``r\"\\\\\"``. " @@ -2501,11 +2502,11 @@ msgstr "" "\"``. Sans elle, il faudrait utiliser ``\"\\\\\\\\\"``, faisant que les " "deux lignes de code suivantes sont fonctionnellement identiques ::" -#: ../Doc/library/re.rst:1608 +#: ../Doc/library/re.rst:1610 msgid "Writing a Tokenizer" msgstr "Écrire un analyseur lexical" -#: ../Doc/library/re.rst:1610 +#: ../Doc/library/re.rst:1612 msgid "" "A `tokenizer or scanner `_ " "analyzes a string to categorize groups of characters. This is a useful " @@ -2516,7 +2517,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:1614 +#: ../Doc/library/re.rst:1616 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 " @@ -2526,11 +2527,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:1666 +#: ../Doc/library/re.rst:1668 msgid "The tokenizer produces the following output::" msgstr "L'analyseur produit la sortie suivante : ::" -#: ../Doc/library/re.rst:1689 +#: ../Doc/library/re.rst:1691 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 " @@ -2541,3 +2542,10 @@ msgstr "" "2009*. La troisième édition de ce livre ne couvre plus du tout Python, mais " "la première version explique en détails comment écrire de bonnes expressions " "rationnelles." + +#~ msgid "" +#~ "Only characters that can have special meaning in a regular expression are " +#~ "escaped." +#~ msgstr "" +#~ "Seuls les caractères qui peuvent avoir une signification spécifique dans " +#~ "une expression régulière sont échappés." diff --git a/library/secrets.po b/library/secrets.po index cb3b67d5e..2d3d0f08c 100644 --- a/library/secrets.po +++ b/library/secrets.po @@ -5,14 +5,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-16 15:20+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/library/secrets.rst:2 diff --git a/library/shlex.po b/library/shlex.po index 0c3db6b6d..4149f535f 100644 --- a/library/shlex.po +++ b/library/shlex.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -108,31 +108,33 @@ msgid "" "token. If set to a non-empty string of characters, those characters will be " "used as the punctuation characters. Any characters in the :attr:`wordchars` " "attribute that appear in *punctuation_chars* will be removed from :attr:" -"`wordchars`. See :ref:`improved-shell-compatibility` for more information." +"`wordchars`. See :ref:`improved-shell-compatibility` for more information. " +"*punctuation_chars* can be set only upon :class:`~shlex.shlex` instance " +"creation and can't be modified later." msgstr "" -#: ../Doc/library/shlex.rst:118 +#: ../Doc/library/shlex.rst:120 msgid "The *punctuation_chars* parameter was added." msgstr "" -#: ../Doc/library/shlex.rst:123 +#: ../Doc/library/shlex.rst:125 msgid "Module :mod:`configparser`" msgstr "" -#: ../Doc/library/shlex.rst:124 +#: ../Doc/library/shlex.rst:126 msgid "" "Parser for configuration files similar to the Windows :file:`.ini` files." msgstr "" -#: ../Doc/library/shlex.rst:130 +#: ../Doc/library/shlex.rst:132 msgid "shlex Objects" msgstr "" -#: ../Doc/library/shlex.rst:132 +#: ../Doc/library/shlex.rst:134 msgid "A :class:`~shlex.shlex` instance has the following methods:" msgstr "" -#: ../Doc/library/shlex.rst:137 +#: ../Doc/library/shlex.rst:139 msgid "" "Return a token. If tokens have been stacked using :meth:`push_token`, pop a " "token off the stack. Otherwise, read one from the input stream. If reading " @@ -140,25 +142,25 @@ msgid "" "string (``''``) in non-POSIX mode, and ``None`` in POSIX mode)." msgstr "" -#: ../Doc/library/shlex.rst:145 +#: ../Doc/library/shlex.rst:147 msgid "Push the argument onto the token stack." msgstr "" -#: ../Doc/library/shlex.rst:150 +#: ../Doc/library/shlex.rst:152 msgid "" "Read a raw token. Ignore the pushback stack, and do not interpret source " "requests. (This is not ordinarily a useful entry point, and is documented " "here only for the sake of completeness.)" msgstr "" -#: ../Doc/library/shlex.rst:157 +#: ../Doc/library/shlex.rst:159 msgid "" "When :class:`~shlex.shlex` detects a source request (see :attr:`source` " "below) this method is given the following token as argument, and expected to " "return a tuple consisting of a filename and an open file-like object." msgstr "" -#: ../Doc/library/shlex.rst:161 +#: ../Doc/library/shlex.rst:163 msgid "" "Normally, this method first strips any quotes off the argument. If the " "result is an absolute pathname, or there was no previous source request in " @@ -169,7 +171,7 @@ msgid "" "preprocessor handles ``#include \"file.h\"``)." msgstr "" -#: ../Doc/library/shlex.rst:169 +#: ../Doc/library/shlex.rst:171 msgid "" "The result of the manipulations is treated as a filename, and returned as " "the first component of the tuple, with :func:`open` called on it to yield " @@ -177,7 +179,7 @@ msgid "" "in instance initialization!)" msgstr "" -#: ../Doc/library/shlex.rst:174 +#: ../Doc/library/shlex.rst:176 msgid "" "This hook is exposed so that you can use it to implement directory search " "paths, addition of file extensions, and other namespace hacks. There is no " @@ -185,26 +187,26 @@ msgid "" "IOBase.close` method of the sourced input stream when it returns EOF." msgstr "" -#: ../Doc/library/shlex.rst:180 +#: ../Doc/library/shlex.rst:182 msgid "" "For more explicit control of source stacking, use the :meth:`push_source` " "and :meth:`pop_source` methods." msgstr "" -#: ../Doc/library/shlex.rst:186 +#: ../Doc/library/shlex.rst:188 msgid "" "Push an input source stream onto the input stack. If the filename argument " "is specified it will later be available for use in error messages. This is " "the same method used internally by the :meth:`sourcehook` method." msgstr "" -#: ../Doc/library/shlex.rst:193 +#: ../Doc/library/shlex.rst:195 msgid "" "Pop the last-pushed input source from the input stack. This is the same " "method used internally when the lexer reaches EOF on a stacked input stream." msgstr "" -#: ../Doc/library/shlex.rst:199 +#: ../Doc/library/shlex.rst:201 msgid "" "This method generates an error message leader in the format of a Unix C " "compiler error label; the format is ``'\"%s\", line %d: '``, where the ``" @@ -213,27 +215,27 @@ msgid "" "override these)." msgstr "" -#: ../Doc/library/shlex.rst:204 +#: ../Doc/library/shlex.rst:206 msgid "" "This convenience is provided to encourage :mod:`shlex` users to generate " "error messages in the standard, parseable format understood by Emacs and " "other Unix tools." msgstr "" -#: ../Doc/library/shlex.rst:208 +#: ../Doc/library/shlex.rst:210 msgid "" "Instances of :class:`~shlex.shlex` subclasses have some public instance " "variables which either control lexical analysis or can be used for debugging:" msgstr "" -#: ../Doc/library/shlex.rst:214 +#: ../Doc/library/shlex.rst:216 msgid "" "The string of characters that are recognized as comment beginners. All " "characters from the comment beginner to end of line are ignored. Includes " "just ``'#'`` by default." msgstr "" -#: ../Doc/library/shlex.rst:221 +#: ../Doc/library/shlex.rst:223 msgid "" "The string of characters that will accumulate into multi-character tokens. " "By default, includes all ASCII alphanumerics and underscore. In POSIX mode, " @@ -246,20 +248,20 @@ msgid "" "effect." msgstr "" -#: ../Doc/library/shlex.rst:234 +#: ../Doc/library/shlex.rst:236 msgid "" "Characters that will be considered whitespace and skipped. Whitespace " "bounds tokens. By default, includes space, tab, linefeed and carriage-" "return." msgstr "" -#: ../Doc/library/shlex.rst:240 +#: ../Doc/library/shlex.rst:242 msgid "" "Characters that will be considered as escape. This will be only used in " "POSIX mode, and includes just ``'\\'`` by default." msgstr "" -#: ../Doc/library/shlex.rst:246 +#: ../Doc/library/shlex.rst:248 msgid "" "Characters that will be considered string quotes. The token accumulates " "until the same quote is encountered again (thus, different quote types " @@ -267,14 +269,14 @@ msgid "" "double quotes." msgstr "" -#: ../Doc/library/shlex.rst:253 +#: ../Doc/library/shlex.rst:255 msgid "" "Characters in :attr:`quotes` that will interpret escape characters defined " "in :attr:`escape`. This is only used in POSIX mode, and includes just " "``'\"'`` by default." msgstr "" -#: ../Doc/library/shlex.rst:260 +#: ../Doc/library/shlex.rst:262 msgid "" "If ``True``, tokens will only be split in whitespaces. This is useful, for " "example, for parsing command lines with :class:`~shlex.shlex`, getting " @@ -283,26 +285,26 @@ msgid "" "those characters." msgstr "" -#: ../Doc/library/shlex.rst:266 +#: ../Doc/library/shlex.rst:268 msgid "" "The :attr:`punctuation_chars` attribute was made compatible with the :attr:" "`whitespace_split` attribute." msgstr "" -#: ../Doc/library/shlex.rst:273 +#: ../Doc/library/shlex.rst:275 msgid "" "The name of the current input file, as initially set at class instantiation " "time or stacked by later source requests. It may be useful to examine this " "when constructing error messages." msgstr "" -#: ../Doc/library/shlex.rst:280 +#: ../Doc/library/shlex.rst:282 msgid "" "The input stream from which this :class:`~shlex.shlex` instance is reading " "characters." msgstr "" -#: ../Doc/library/shlex.rst:286 +#: ../Doc/library/shlex.rst:288 msgid "" "This attribute is ``None`` by default. If you assign a string to it, that " "string will be recognized as a lexical-level inclusion request similar to " @@ -314,69 +316,70 @@ msgid "" "deep." msgstr "" -#: ../Doc/library/shlex.rst:297 +#: ../Doc/library/shlex.rst:299 msgid "" "If this attribute is numeric and ``1`` or more, a :class:`~shlex.shlex` " "instance will print verbose progress output on its behavior. If you need to " "use this, you can read the module source code to learn the details." msgstr "" -#: ../Doc/library/shlex.rst:304 +#: ../Doc/library/shlex.rst:306 msgid "Source line number (count of newlines seen so far plus one)." msgstr "" -#: ../Doc/library/shlex.rst:309 +#: ../Doc/library/shlex.rst:311 msgid "" "The token buffer. It may be useful to examine this when catching exceptions." msgstr "" -#: ../Doc/library/shlex.rst:314 +#: ../Doc/library/shlex.rst:316 msgid "" "Token used to determine end of file. This will be set to the empty string " "(``''``), in non-POSIX mode, and to ``None`` in POSIX mode." msgstr "" -#: ../Doc/library/shlex.rst:320 +#: ../Doc/library/shlex.rst:322 msgid "" -"Characters that will be considered punctuation. Runs of punctuation " -"characters will be returned as a single token. However, note that no " -"semantic validity checking will be performed: for example, '>>>' could be " -"returned as a token, even though it may not be recognised as such by shells." +"A read-only property. Characters that will be considered punctuation. Runs " +"of punctuation characters will be returned as a single token. However, note " +"that no semantic validity checking will be performed: for example, '>>>' " +"could be returned as a token, even though it may not be recognised as such " +"by shells." msgstr "" -#: ../Doc/library/shlex.rst:331 +#: ../Doc/library/shlex.rst:333 msgid "Parsing Rules" msgstr "" -#: ../Doc/library/shlex.rst:333 +#: ../Doc/library/shlex.rst:335 msgid "" "When operating in non-POSIX mode, :class:`~shlex.shlex` will try to obey to " "the following rules." msgstr "" -#: ../Doc/library/shlex.rst:336 +#: ../Doc/library/shlex.rst:338 msgid "" "Quote characters are not recognized within words (``Do\"Not\"Separate`` is " "parsed as the single word ``Do\"Not\"Separate``);" msgstr "" -#: ../Doc/library/shlex.rst:339 +#: ../Doc/library/shlex.rst:341 msgid "Escape characters are not recognized;" msgstr "" -#: ../Doc/library/shlex.rst:341 +#: ../Doc/library/shlex.rst:343 msgid "" "Enclosing characters in quotes preserve the literal value of all characters " "within the quotes;" msgstr "" -#: ../Doc/library/shlex.rst:344 +#: ../Doc/library/shlex.rst:346 msgid "" "Closing quotes separate words (``\"Do\"Separate`` is parsed as ``\"Do\"`` " "and ``Separate``);" msgstr "" -#: ../Doc/library/shlex.rst:347 +#: ../Doc/library/shlex.rst:349 msgid "" "If :attr:`~shlex.whitespace_split` is ``False``, any character not declared " "to be a word character, whitespace, or a quote will be returned as a single-" @@ -384,40 +387,40 @@ msgid "" "words in whitespaces;" msgstr "" -#: ../Doc/library/shlex.rst:352 +#: ../Doc/library/shlex.rst:354 msgid "EOF is signaled with an empty string (``''``);" msgstr "" -#: ../Doc/library/shlex.rst:354 +#: ../Doc/library/shlex.rst:356 msgid "It's not possible to parse empty strings, even if quoted." msgstr "" -#: ../Doc/library/shlex.rst:356 +#: ../Doc/library/shlex.rst:358 msgid "" "When operating in POSIX mode, :class:`~shlex.shlex` will try to obey to the " "following parsing rules." msgstr "" -#: ../Doc/library/shlex.rst:359 +#: ../Doc/library/shlex.rst:361 msgid "" "Quotes are stripped out, and do not separate words (``\"Do\"Not\"Separate" "\"`` is parsed as the single word ``DoNotSeparate``);" msgstr "" -#: ../Doc/library/shlex.rst:362 +#: ../Doc/library/shlex.rst:364 msgid "" "Non-quoted escape characters (e.g. ``'\\'``) preserve the literal value of " "the next character that follows;" msgstr "" -#: ../Doc/library/shlex.rst:365 +#: ../Doc/library/shlex.rst:367 msgid "" "Enclosing characters in quotes which are not part of :attr:`~shlex." "escapedquotes` (e.g. ``\"'\"``) preserve the literal value of all characters " "within the quotes;" msgstr "" -#: ../Doc/library/shlex.rst:369 +#: ../Doc/library/shlex.rst:371 msgid "" "Enclosing characters in quotes which are part of :attr:`~shlex." "escapedquotes` (e.g. ``'\"'``) preserves the literal value of all characters " @@ -427,19 +430,19 @@ msgid "" "escape character will be considered a normal character." msgstr "" -#: ../Doc/library/shlex.rst:377 +#: ../Doc/library/shlex.rst:379 msgid "EOF is signaled with a :const:`None` value;" msgstr "" -#: ../Doc/library/shlex.rst:379 +#: ../Doc/library/shlex.rst:381 msgid "Quoted empty strings (``''``) are allowed." msgstr "" -#: ../Doc/library/shlex.rst:384 +#: ../Doc/library/shlex.rst:386 msgid "Improved Compatibility with Shells" msgstr "" -#: ../Doc/library/shlex.rst:388 +#: ../Doc/library/shlex.rst:390 msgid "" "The :class:`shlex` class provides compatibility with the parsing performed " "by common Unix shells like ``bash``, ``dash``, and ``sh``. To take " @@ -454,20 +457,20 @@ msgid "" "following snippet:" msgstr "" -#: ../Doc/library/shlex.rst:414 +#: ../Doc/library/shlex.rst:416 msgid "" "Of course, tokens will be returned which are not valid for shells, and " "you'll need to implement your own error checks on the returned tokens." msgstr "" -#: ../Doc/library/shlex.rst:417 +#: ../Doc/library/shlex.rst:419 msgid "" "Instead of passing ``True`` as the value for the punctuation_chars " "parameter, you can pass a string with specific characters, which will be " "used to determine which characters constitute punctuation. For example::" msgstr "" -#: ../Doc/library/shlex.rst:426 +#: ../Doc/library/shlex.rst:428 msgid "" "When ``punctuation_chars`` is specified, the :attr:`~shlex.wordchars` " "attribute is augmented with the characters ``~-./*?=``. That is because " @@ -475,7 +478,7 @@ msgid "" "line arguments (e.g. ``--color=auto``). Hence::" msgstr "" -#: ../Doc/library/shlex.rst:437 +#: ../Doc/library/shlex.rst:439 msgid "" "However, to match the shell as closely as possible, it is recommended to " "always use ``posix`` and :attr:`~shlex.whitespace_split` when using :attr:" @@ -483,7 +486,7 @@ msgid "" "entirely." msgstr "" -#: ../Doc/library/shlex.rst:442 +#: ../Doc/library/shlex.rst:444 msgid "" "For best effect, ``punctuation_chars`` should be set in conjunction with " "``posix=True``. (Note that ``posix=False`` is the default for :class:`~shlex." diff --git a/library/shutil.po b/library/shutil.po index ec98e8c77..215262872 100644 --- a/library/shutil.po +++ b/library/shutil.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-11-29 18:26+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -83,7 +83,7 @@ msgstr "" msgid "" "Copy the contents (no metadata) of the file named *src* to a file named " "*dst* and return *dst* in the most efficient way possible. *src* and *dst* " -"are path names given as strings." +"are path-like objects or path names given as strings." msgstr "" #: ../Doc/library/shutil.rst:57 @@ -136,9 +136,9 @@ msgstr "" "Lève :exc:`SameFileError` au lieu de :exc:`Error`. Puisque la première est " "une sous-classe de la seconde, le changement assure la rétrocompatibilité." -#: ../Doc/library/shutil.rst:79 ../Doc/library/shutil.rst:172 -#: ../Doc/library/shutil.rst:199 ../Doc/library/shutil.rst:264 -#: ../Doc/library/shutil.rst:350 +#: ../Doc/library/shutil.rst:79 ../Doc/library/shutil.rst:174 +#: ../Doc/library/shutil.rst:202 ../Doc/library/shutil.rst:267 +#: ../Doc/library/shutil.rst:353 msgid "" "Platform-specific fast-copy syscalls may be used internally in order to copy " "the file more efficiently. See :ref:`shutil-platform-dependent-efficient-" @@ -154,15 +154,16 @@ msgstr "" "`copyfile` sont le même fichier." #: ../Doc/library/shutil.rst:94 +#, fuzzy msgid "" "Copy the permission bits from *src* to *dst*. The file contents, owner, and " -"group are unaffected. *src* and *dst* are path names given as strings. If " -"*follow_symlinks* is false, and both *src* and *dst* are symbolic links, :" -"func:`copymode` will attempt to modify the mode of *dst* itself (rather than " -"the file it points to). This functionality is not available on every " -"platform; please see :func:`copystat` for more information. If :func:" -"`copymode` cannot modify symbolic links on the local platform, and it is " -"asked to do so, it will do nothing and return." +"group are unaffected. *src* and *dst* are path-like objects or path names " +"given as strings. If *follow_symlinks* is false, and both *src* and *dst* " +"are symbolic links, :func:`copymode` will attempt to modify the mode of " +"*dst* itself (rather than the file it points to). This functionality is not " +"available on every platform; please see :func:`copystat` for more " +"information. If :func:`copymode` cannot modify symbolic links on the local " +"platform, and it is asked to do so, it will do nothing and return." msgstr "" "Copie les octets de permission de *src* vers *dst*. Le contenu du fichier, " "le propriétaire et le groupe ne sont pas modifiés. *src* et *dst* sont des " @@ -173,16 +174,18 @@ msgstr "" "plus d'informations. Si :func:`copymode` ne peut pas modifier les liens " "symboliques sur la plateforme cible alors que c'est demandé, il ne fait rien." -#: ../Doc/library/shutil.rst:103 +#: ../Doc/library/shutil.rst:104 msgid "Added *follow_symlinks* argument." msgstr "L'argument *follow_symlinks* a été ajouté." -#: ../Doc/library/shutil.rst:108 +#: ../Doc/library/shutil.rst:109 +#, fuzzy msgid "" "Copy the permission bits, last access time, last modification time, and " "flags from *src* to *dst*. On Linux, :func:`copystat` also copies the " "\"extended attributes\" where possible. The file contents, owner, and group " -"are unaffected. *src* and *dst* are path names given as strings." +"are unaffected. *src* and *dst* are path-like objects or path names given " +"as strings." msgstr "" "Copie les bits définissant les droits d'accès, la date du dernier accès, de " "la dernière modification et les drapeaux (*flags* en anglais) de *src* vers " @@ -191,7 +194,7 @@ msgstr "" "groupe ne sont pas affectés. *src* et *dst* sont des chaînes spécifiant les " "chemins." -#: ../Doc/library/shutil.rst:113 +#: ../Doc/library/shutil.rst:115 msgid "" "If *follow_symlinks* is false, and *src* and *dst* both refer to symbolic " "links, :func:`copystat` will operate on the symbolic links themselves rather " @@ -203,7 +206,7 @@ msgstr "" "fichiers cibles — elle lit les informations du lien symbolique de *src* et " "les écrit vers la destination pointée par *dst*." -#: ../Doc/library/shutil.rst:122 +#: ../Doc/library/shutil.rst:124 msgid "" "Not all platforms provide the ability to examine and modify symbolic links. " "Python itself can tell you what functionality is locally available." @@ -212,7 +215,7 @@ msgstr "" "les liens symboliques. Python peut vous informer des fonctionnalités " "effectivement disponibles." -#: ../Doc/library/shutil.rst:126 +#: ../Doc/library/shutil.rst:128 msgid "" "If ``os.chmod in os.supports_follow_symlinks`` is ``True``, :func:`copystat` " "can modify the permission bits of a symbolic link." @@ -220,36 +223,36 @@ msgstr "" "Si ``os.chmod in os.supports_follow_symlinks`` est ``True``, :func:" "`copystat` peut modifier les octets de droits d'accès du lien symbolique." -#: ../Doc/library/shutil.rst:130 +#: ../Doc/library/shutil.rst:132 msgid "" "If ``os.utime in os.supports_follow_symlinks`` is ``True``, :func:`copystat` " "can modify the last access and modification times of a symbolic link." msgstr "" -#: ../Doc/library/shutil.rst:134 +#: ../Doc/library/shutil.rst:136 msgid "" "If ``os.chflags in os.supports_follow_symlinks`` is ``True``, :func:" "`copystat` can modify the flags of a symbolic link. (``os.chflags`` is not " "available on all platforms.)" msgstr "" -#: ../Doc/library/shutil.rst:139 +#: ../Doc/library/shutil.rst:141 msgid "" "On platforms where some or all of this functionality is unavailable, when " "asked to modify a symbolic link, :func:`copystat` will copy everything it " "can. :func:`copystat` never returns failure." msgstr "" -#: ../Doc/library/shutil.rst:144 +#: ../Doc/library/shutil.rst:146 msgid "Please see :data:`os.supports_follow_symlinks` for more information." msgstr "" -#: ../Doc/library/shutil.rst:147 +#: ../Doc/library/shutil.rst:149 msgid "" "Added *follow_symlinks* argument and support for Linux extended attributes." msgstr "" -#: ../Doc/library/shutil.rst:152 +#: ../Doc/library/shutil.rst:154 msgid "" "Copies the file *src* to the file or directory *dst*. *src* and *dst* " "should be strings. If *dst* specifies a directory, the file will be copied " @@ -257,14 +260,14 @@ msgid "" "newly created file." msgstr "" -#: ../Doc/library/shutil.rst:157 +#: ../Doc/library/shutil.rst:159 msgid "" "If *follow_symlinks* is false, and *src* is a symbolic link, *dst* will be " "created as a symbolic link. If *follow_symlinks* is true and *src* is a " "symbolic link, *dst* will be a copy of the file *src* refers to." msgstr "" -#: ../Doc/library/shutil.rst:162 +#: ../Doc/library/shutil.rst:164 msgid "" ":func:`~shutil.copy` copies the file data and the file's permission mode " "(see :func:`os.chmod`). Other metadata, like the file's creation and " @@ -272,49 +275,49 @@ msgid "" "original, use :func:`~shutil.copy2` instead." msgstr "" -#: ../Doc/library/shutil.rst:168 +#: ../Doc/library/shutil.rst:170 msgid "" "Added *follow_symlinks* argument. Now returns path to the newly created file." msgstr "" -#: ../Doc/library/shutil.rst:179 +#: ../Doc/library/shutil.rst:181 msgid "" "Identical to :func:`~shutil.copy` except that :func:`copy2` also attempts to " "preserve file metadata." msgstr "" -#: ../Doc/library/shutil.rst:182 +#: ../Doc/library/shutil.rst:184 msgid "" "When *follow_symlinks* is false, and *src* is a symbolic link, :func:`copy2` " "attempts to copy all metadata from the *src* symbolic link to the newly-" "created *dst* symbolic link. However, this functionality is not available on " "all platforms. On platforms where some or all of this functionality is " "unavailable, :func:`copy2` will preserve all the metadata it can; :func:" -"`copy2` never returns failure." +"`copy2` never raises an exception because it cannot preserve file metadata." msgstr "" -#: ../Doc/library/shutil.rst:190 +#: ../Doc/library/shutil.rst:193 msgid "" ":func:`copy2` uses :func:`copystat` to copy the file metadata. Please see :" "func:`copystat` for more information about platform support for modifying " "symbolic link metadata." msgstr "" -#: ../Doc/library/shutil.rst:194 +#: ../Doc/library/shutil.rst:197 msgid "" "Added *follow_symlinks* argument, try to copy extended file system " "attributes too (currently Linux only). Now returns path to the newly created " "file." msgstr "" -#: ../Doc/library/shutil.rst:206 +#: ../Doc/library/shutil.rst:209 msgid "" "This factory function creates a function that can be used as a callable for :" "func:`copytree`\\'s *ignore* argument, ignoring files and directories that " "match one of the glob-style *patterns* provided. See the example below." msgstr "" -#: ../Doc/library/shutil.rst:215 +#: ../Doc/library/shutil.rst:218 msgid "" "Recursively copy an entire directory tree rooted at *src* to a directory " "named *dst* and return the destination directory. *dirs_exist_ok* dictates " @@ -322,13 +325,13 @@ msgid "" "already exists." msgstr "" -#: ../Doc/library/shutil.rst:220 +#: ../Doc/library/shutil.rst:223 msgid "" "Permissions and times of directories are copied with :func:`copystat`, " "individual files are copied using :func:`~shutil.copy2`." msgstr "" -#: ../Doc/library/shutil.rst:223 +#: ../Doc/library/shutil.rst:226 msgid "" "If *symlinks* is true, symbolic links in the source tree are represented as " "symbolic links in the new tree and the metadata of the original links will " @@ -336,7 +339,7 @@ msgid "" "and metadata of the linked files are copied to the new tree." msgstr "" -#: ../Doc/library/shutil.rst:228 +#: ../Doc/library/shutil.rst:231 msgid "" "When *symlinks* is false, if the file pointed by the symlink doesn't exist, " "an exception will be added in the list of errors raised in an :exc:`Error` " @@ -346,7 +349,7 @@ msgid "" "support :func:`os.symlink`." msgstr "" -#: ../Doc/library/shutil.rst:235 +#: ../Doc/library/shutil.rst:238 msgid "" "If *ignore* is given, it must be a callable that will receive as its " "arguments the directory being visited by :func:`copytree`, and a list of its " @@ -359,12 +362,12 @@ msgid "" "ignores names based on glob-style patterns." msgstr "" -#: ../Doc/library/shutil.rst:245 +#: ../Doc/library/shutil.rst:248 msgid "" "If exception(s) occur, an :exc:`Error` is raised with a list of reasons." msgstr "" -#: ../Doc/library/shutil.rst:247 +#: ../Doc/library/shutil.rst:250 msgid "" "If *copy_function* is given, it must be a callable that will be used to copy " "each file. It will be called with the source path and the destination path " @@ -372,28 +375,28 @@ msgid "" "that supports the same signature (like :func:`~shutil.copy`) can be used." msgstr "" -#: ../Doc/library/shutil.rst:253 +#: ../Doc/library/shutil.rst:256 msgid "" "Raises an :ref:`auditing event ` ``shutil.copytree`` with " "arguments ``src``, ``dst``." msgstr "" -#: ../Doc/library/shutil.rst:254 +#: ../Doc/library/shutil.rst:257 msgid "Copy metadata when *symlinks* is false. Now returns *dst*." msgstr "" -#: ../Doc/library/shutil.rst:258 +#: ../Doc/library/shutil.rst:261 msgid "" "Added the *copy_function* argument to be able to provide a custom copy " "function. Added the *ignore_dangling_symlinks* argument to silent dangling " "symlinks errors when *symlinks* is false." msgstr "" -#: ../Doc/library/shutil.rst:269 +#: ../Doc/library/shutil.rst:272 msgid "The *dirs_exist_ok* parameter." msgstr "" -#: ../Doc/library/shutil.rst:276 +#: ../Doc/library/shutil.rst:279 msgid "" "Delete an entire directory tree; *path* must point to a directory (but not a " "symbolic link to a directory). If *ignore_errors* is true, errors resulting " @@ -402,7 +405,7 @@ msgid "" "they raise an exception." msgstr "" -#: ../Doc/library/shutil.rst:284 +#: ../Doc/library/shutil.rst:287 msgid "" "On platforms that support the necessary fd-based functions a symlink attack " "resistant version of :func:`rmtree` is used by default. On other platforms, " @@ -413,13 +416,13 @@ msgid "" "attribute to determine which case applies." msgstr "" -#: ../Doc/library/shutil.rst:292 +#: ../Doc/library/shutil.rst:295 msgid "" "If *onerror* is provided, it must be a callable that accepts three " "parameters: *function*, *path*, and *excinfo*." msgstr "" -#: ../Doc/library/shutil.rst:295 +#: ../Doc/library/shutil.rst:298 msgid "" "The first parameter, *function*, is the function which raised the exception; " "it depends on the platform and implementation. The second parameter, " @@ -428,45 +431,45 @@ msgid "" "exc_info`. Exceptions raised by *onerror* will not be caught." msgstr "" -#: ../Doc/library/shutil.rst:302 +#: ../Doc/library/shutil.rst:305 msgid "" "Raises an :ref:`auditing event ` ``shutil.rmtree`` with argument " "``path``." msgstr "" -#: ../Doc/library/shutil.rst:303 +#: ../Doc/library/shutil.rst:306 msgid "" "Added a symlink attack resistant version that is used automatically if " "platform supports fd-based functions." msgstr "" -#: ../Doc/library/shutil.rst:307 +#: ../Doc/library/shutil.rst:310 msgid "" "On Windows, will no longer delete the contents of a directory junction " "before removing the junction." msgstr "" -#: ../Doc/library/shutil.rst:313 +#: ../Doc/library/shutil.rst:316 msgid "" "Indicates whether the current platform and implementation provides a symlink " "attack resistant version of :func:`rmtree`. Currently this is only true for " "platforms supporting fd-based directory access functions." msgstr "" -#: ../Doc/library/shutil.rst:322 +#: ../Doc/library/shutil.rst:325 msgid "" "Recursively move a file or directory (*src*) to another location (*dst*) and " "return the destination." msgstr "" -#: ../Doc/library/shutil.rst:325 +#: ../Doc/library/shutil.rst:328 msgid "" "If the destination is an existing directory, then *src* is moved inside that " "directory. If the destination already exists but is not a directory, it may " "be overwritten depending on :func:`os.rename` semantics." msgstr "" -#: ../Doc/library/shutil.rst:329 +#: ../Doc/library/shutil.rst:332 msgid "" "If the destination is on the current filesystem, then :func:`os.rename` is " "used. Otherwise, *src* is copied to *dst* using *copy_function* and then " @@ -474,7 +477,7 @@ msgid "" "will be created in or as *dst* and *src* will be removed." msgstr "" -#: ../Doc/library/shutil.rst:334 +#: ../Doc/library/shutil.rst:337 msgid "" "If *copy_function* is given, it must be a callable that takes two arguments " "*src* and *dst*, and will be used to copy *src* to *dest* if :func:`os." @@ -485,68 +488,68 @@ msgid "" "the expense of not copying any of the metadata." msgstr "" -#: ../Doc/library/shutil.rst:342 +#: ../Doc/library/shutil.rst:345 msgid "" "Added explicit symlink handling for foreign filesystems, thus adapting it to " "the behavior of GNU's :program:`mv`. Now returns *dst*." msgstr "" -#: ../Doc/library/shutil.rst:347 +#: ../Doc/library/shutil.rst:350 msgid "Added the *copy_function* keyword argument." msgstr "" -#: ../Doc/library/shutil.rst:357 +#: ../Doc/library/shutil.rst:360 msgid "" "Return disk usage statistics about the given path as a :term:`named tuple` " "with the attributes *total*, *used* and *free*, which are the amount of " "total, used and free space, in bytes. *path* may be a file or a directory." msgstr "" -#: ../Doc/library/shutil.rst:364 +#: ../Doc/library/shutil.rst:367 msgid "On Windows, *path* can now be a file or directory." msgstr "" -#: ../Doc/library/shutil.rst:367 +#: ../Doc/library/shutil.rst:370 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." -#: ../Doc/library/shutil.rst:371 +#: ../Doc/library/shutil.rst:374 msgid "Change owner *user* and/or *group* of the given *path*." msgstr "" -#: ../Doc/library/shutil.rst:373 +#: ../Doc/library/shutil.rst:376 msgid "" "*user* can be a system user name or a uid; the same applies to *group*. At " "least one argument is required." msgstr "" -#: ../Doc/library/shutil.rst:376 +#: ../Doc/library/shutil.rst:379 msgid "See also :func:`os.chown`, the underlying function." msgstr "" -#: ../Doc/library/shutil.rst:379 +#: ../Doc/library/shutil.rst:382 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: ../Doc/library/shutil.rst:385 +#: ../Doc/library/shutil.rst:388 msgid "" "Return the path to an executable which would be run if the given *cmd* was " "called. If no *cmd* would be called, return ``None``." msgstr "" -#: ../Doc/library/shutil.rst:388 +#: ../Doc/library/shutil.rst:391 msgid "" "*mode* is a permission mask passed to :func:`os.access`, by default " "determining if the file exists and executable." msgstr "" -#: ../Doc/library/shutil.rst:391 +#: ../Doc/library/shutil.rst:394 msgid "" "When no *path* is specified, the results of :func:`os.environ` are used, " "returning either the \"PATH\" value or a fallback of :attr:`os.defpath`." msgstr "" -#: ../Doc/library/shutil.rst:394 +#: ../Doc/library/shutil.rst:397 msgid "" "On Windows, the current directory is always prepended to the *path* whether " "or not you use the default or provide your own, which is the behavior the " @@ -557,24 +560,24 @@ msgid "" "directories. For example, on Windows::" msgstr "" -#: ../Doc/library/shutil.rst:407 +#: ../Doc/library/shutil.rst:410 msgid "" "The :class:`bytes` type is now accepted. If *cmd* type is :class:`bytes`, " "the result type is also :class:`bytes`." msgstr "" -#: ../Doc/library/shutil.rst:413 +#: ../Doc/library/shutil.rst:416 msgid "" "This exception collects exceptions that are raised during a multi-file " "operation. For :func:`copytree`, the exception argument is a list of 3-" "tuples (*srcname*, *dstname*, *exception*)." msgstr "" -#: ../Doc/library/shutil.rst:420 +#: ../Doc/library/shutil.rst:423 msgid "Platform-dependent efficient copy operations" msgstr "" -#: ../Doc/library/shutil.rst:422 +#: ../Doc/library/shutil.rst:425 msgid "" "Starting from Python 3.8 all functions involving a file copy (:func:" "`copyfile`, :func:`copy`, :func:`copy2`, :func:`copytree`, and :func:`move`) " @@ -584,58 +587,58 @@ msgid "" "Python as in \"``outfd.write(infd.read())``\"." msgstr "" -#: ../Doc/library/shutil.rst:429 +#: ../Doc/library/shutil.rst:432 msgid "On macOS `fcopyfile`_ is used to copy the file content (not metadata)." msgstr "" -#: ../Doc/library/shutil.rst:431 +#: ../Doc/library/shutil.rst:434 msgid "On Linux :func:`os.sendfile` is used." msgstr "" -#: ../Doc/library/shutil.rst:433 +#: ../Doc/library/shutil.rst:436 msgid "" "On Windows :func:`shutil.copyfile` uses a bigger default buffer size (1 MiB " "instead of 64 KiB) and a :func:`memoryview`-based variant of :func:`shutil." "copyfileobj` is used." msgstr "" -#: ../Doc/library/shutil.rst:437 +#: ../Doc/library/shutil.rst:440 msgid "" "If the fast-copy operation fails and no data was written in the destination " "file then shutil will silently fallback on using less efficient :func:" "`copyfileobj` function internally." msgstr "" -#: ../Doc/library/shutil.rst:446 +#: ../Doc/library/shutil.rst:449 msgid "copytree example" msgstr "" -#: ../Doc/library/shutil.rst:448 +#: ../Doc/library/shutil.rst:451 msgid "" "This example is the implementation of the :func:`copytree` function, " "described above, with the docstring omitted. It demonstrates many of the " "other functions provided by this module. ::" msgstr "" -#: ../Doc/library/shutil.rst:483 +#: ../Doc/library/shutil.rst:486 msgid "Another example that uses the :func:`ignore_patterns` helper::" msgstr "" -#: ../Doc/library/shutil.rst:489 +#: ../Doc/library/shutil.rst:492 msgid "" "This will copy everything except ``.pyc`` files and files or directories " "whose name starts with ``tmp``." msgstr "" -#: ../Doc/library/shutil.rst:492 +#: ../Doc/library/shutil.rst:495 msgid "Another example that uses the *ignore* argument to add a logging call::" msgstr "" -#: ../Doc/library/shutil.rst:507 +#: ../Doc/library/shutil.rst:510 msgid "rmtree example" msgstr "" -#: ../Doc/library/shutil.rst:509 +#: ../Doc/library/shutil.rst:512 msgid "" "This example shows how to remove a directory tree on Windows where some of " "the files have their read-only bit set. It uses the onerror callback to " @@ -643,25 +646,25 @@ msgid "" "propagate. ::" msgstr "" -#: ../Doc/library/shutil.rst:527 +#: ../Doc/library/shutil.rst:530 msgid "Archiving operations" msgstr "" -#: ../Doc/library/shutil.rst:531 +#: ../Doc/library/shutil.rst:534 msgid "Added support for the *xztar* format." msgstr "" -#: ../Doc/library/shutil.rst:535 +#: ../Doc/library/shutil.rst:538 msgid "" "High-level utilities to create and read compressed and archived files are " "also provided. They rely on the :mod:`zipfile` and :mod:`tarfile` modules." msgstr "" -#: ../Doc/library/shutil.rst:540 +#: ../Doc/library/shutil.rst:543 msgid "Create an archive file (such as zip or tar) and return its name." msgstr "" -#: ../Doc/library/shutil.rst:542 +#: ../Doc/library/shutil.rst:545 msgid "" "*base_name* is the name of the file to create, including the path, minus any " "format-specific extension. *format* is the archive format: one of \"zip" @@ -670,98 +673,98 @@ msgid "" "available), or \"xztar\" (if the :mod:`lzma` module is available)." msgstr "" -#: ../Doc/library/shutil.rst:548 +#: ../Doc/library/shutil.rst:551 msgid "" "*root_dir* is a directory that will be the root directory of the archive; " "for example, we typically chdir into *root_dir* before creating the archive." msgstr "" -#: ../Doc/library/shutil.rst:552 +#: ../Doc/library/shutil.rst:555 msgid "" "*base_dir* is the directory where we start archiving from; i.e. *base_dir* " "will be the common prefix of all files and directories in the archive." msgstr "" -#: ../Doc/library/shutil.rst:556 +#: ../Doc/library/shutil.rst:559 msgid "*root_dir* and *base_dir* both default to the current directory." msgstr "" -#: ../Doc/library/shutil.rst:558 +#: ../Doc/library/shutil.rst:561 msgid "" "If *dry_run* is true, no archive is created, but the operations that would " "be executed are logged to *logger*." msgstr "" -#: ../Doc/library/shutil.rst:561 +#: ../Doc/library/shutil.rst:564 msgid "" "*owner* and *group* are used when creating a tar archive. By default, uses " "the current owner and group." msgstr "" -#: ../Doc/library/shutil.rst:564 +#: ../Doc/library/shutil.rst:567 msgid "" "*logger* must be an object compatible with :pep:`282`, usually an instance " "of :class:`logging.Logger`." msgstr "" -#: ../Doc/library/shutil.rst:567 +#: ../Doc/library/shutil.rst:570 msgid "The *verbose* argument is unused and deprecated." msgstr "" -#: ../Doc/library/shutil.rst:570 +#: ../Doc/library/shutil.rst:573 msgid "" "Raises an :ref:`auditing event ` ``shutil.make_archive`` with " "arguments ``base_name``, ``format``, ``root_dir``, ``base_dir``." msgstr "" -#: ../Doc/library/shutil.rst:571 +#: ../Doc/library/shutil.rst:574 msgid "" "The modern pax (POSIX.1-2001) format is now used instead of the legacy GNU " "format for archives created with ``format=\"tar\"``." msgstr "" -#: ../Doc/library/shutil.rst:578 +#: ../Doc/library/shutil.rst:581 msgid "" "Return a list of supported formats for archiving. Each element of the " "returned sequence is a tuple ``(name, description)``." msgstr "" -#: ../Doc/library/shutil.rst:581 ../Doc/library/shutil.rst:661 +#: ../Doc/library/shutil.rst:584 ../Doc/library/shutil.rst:664 msgid "By default :mod:`shutil` provides these formats:" msgstr "" -#: ../Doc/library/shutil.rst:583 +#: ../Doc/library/shutil.rst:586 msgid "*zip*: ZIP file (if the :mod:`zlib` module is available)." msgstr "" -#: ../Doc/library/shutil.rst:584 +#: ../Doc/library/shutil.rst:587 msgid "" "*tar*: Uncompressed tar file. Uses POSIX.1-2001 pax format for new archives." msgstr "" -#: ../Doc/library/shutil.rst:585 ../Doc/library/shutil.rst:666 +#: ../Doc/library/shutil.rst:588 ../Doc/library/shutil.rst:669 msgid "*gztar*: gzip'ed tar-file (if the :mod:`zlib` module is available)." msgstr "" -#: ../Doc/library/shutil.rst:586 ../Doc/library/shutil.rst:667 +#: ../Doc/library/shutil.rst:589 ../Doc/library/shutil.rst:670 msgid "*bztar*: bzip2'ed tar-file (if the :mod:`bz2` module is available)." msgstr "" -#: ../Doc/library/shutil.rst:587 ../Doc/library/shutil.rst:668 +#: ../Doc/library/shutil.rst:590 ../Doc/library/shutil.rst:671 msgid "*xztar*: xz'ed tar-file (if the :mod:`lzma` module is available)." msgstr "" -#: ../Doc/library/shutil.rst:589 +#: ../Doc/library/shutil.rst:592 msgid "" "You can register new formats or provide your own archiver for any existing " "formats, by using :func:`register_archive_format`." msgstr "" -#: ../Doc/library/shutil.rst:595 +#: ../Doc/library/shutil.rst:598 msgid "Register an archiver for the format *name*." msgstr "" -#: ../Doc/library/shutil.rst:597 +#: ../Doc/library/shutil.rst:600 msgid "" "*function* is the callable that will be used to unpack archives. The " "callable will receive the *base_name* of the file to create, followed by the " @@ -770,33 +773,33 @@ msgid "" "*dry_run* and *logger* (as passed in :func:`make_archive`)." msgstr "" -#: ../Doc/library/shutil.rst:603 +#: ../Doc/library/shutil.rst:606 msgid "" "If given, *extra_args* is a sequence of ``(name, value)`` pairs that will be " "used as extra keywords arguments when the archiver callable is used." msgstr "" -#: ../Doc/library/shutil.rst:606 +#: ../Doc/library/shutil.rst:609 msgid "" "*description* is used by :func:`get_archive_formats` which returns the list " "of archivers. Defaults to an empty string." msgstr "" -#: ../Doc/library/shutil.rst:612 +#: ../Doc/library/shutil.rst:615 msgid "Remove the archive format *name* from the list of supported formats." msgstr "" -#: ../Doc/library/shutil.rst:617 +#: ../Doc/library/shutil.rst:620 msgid "Unpack an archive. *filename* is the full path of the archive." msgstr "" -#: ../Doc/library/shutil.rst:619 +#: ../Doc/library/shutil.rst:622 msgid "" "*extract_dir* is the name of the target directory where the archive is " "unpacked. If not provided, the current working directory is used." msgstr "" -#: ../Doc/library/shutil.rst:622 +#: ../Doc/library/shutil.rst:625 msgid "" "*format* is the archive format: one of \"zip\", \"tar\", \"gztar\", \"bztar" "\", or \"xztar\". Or any other format registered with :func:" @@ -805,99 +808,99 @@ msgid "" "that extension. In case none is found, a :exc:`ValueError` is raised." msgstr "" -#: ../Doc/library/shutil.rst:629 +#: ../Doc/library/shutil.rst:632 msgid "Accepts a :term:`path-like object` for *filename* and *extract_dir*." msgstr "" -#: ../Doc/library/shutil.rst:635 +#: ../Doc/library/shutil.rst:638 msgid "" "Registers an unpack format. *name* is the name of the format and " "*extensions* is a list of extensions corresponding to the format, like ``." "zip`` for Zip files." msgstr "" -#: ../Doc/library/shutil.rst:639 +#: ../Doc/library/shutil.rst:642 msgid "" "*function* is the callable that will be used to unpack archives. The " "callable will receive the path of the archive, followed by the directory the " "archive must be extracted to." msgstr "" -#: ../Doc/library/shutil.rst:643 +#: ../Doc/library/shutil.rst:646 msgid "" "When provided, *extra_args* is a sequence of ``(name, value)`` tuples that " "will be passed as keywords arguments to the callable." msgstr "" -#: ../Doc/library/shutil.rst:646 +#: ../Doc/library/shutil.rst:649 msgid "" "*description* can be provided to describe the format, and will be returned " "by the :func:`get_unpack_formats` function." msgstr "" -#: ../Doc/library/shutil.rst:652 +#: ../Doc/library/shutil.rst:655 msgid "Unregister an unpack format. *name* is the name of the format." msgstr "" -#: ../Doc/library/shutil.rst:657 +#: ../Doc/library/shutil.rst:660 msgid "" "Return a list of all registered formats for unpacking. Each element of the " "returned sequence is a tuple ``(name, extensions, description)``." msgstr "" -#: ../Doc/library/shutil.rst:663 +#: ../Doc/library/shutil.rst:666 msgid "" "*zip*: ZIP file (unpacking compressed files works only if the corresponding " "module is available)." msgstr "" -#: ../Doc/library/shutil.rst:665 +#: ../Doc/library/shutil.rst:668 msgid "*tar*: uncompressed tar file." msgstr "" -#: ../Doc/library/shutil.rst:670 +#: ../Doc/library/shutil.rst:673 msgid "" "You can register new formats or provide your own unpacker for any existing " "formats, by using :func:`register_unpack_format`." msgstr "" -#: ../Doc/library/shutil.rst:677 +#: ../Doc/library/shutil.rst:680 msgid "Archiving example" msgstr "" -#: ../Doc/library/shutil.rst:679 +#: ../Doc/library/shutil.rst:682 msgid "" "In this example, we create a gzip'ed tar-file archive containing all files " "found in the :file:`.ssh` directory of the user::" msgstr "" -#: ../Doc/library/shutil.rst:689 +#: ../Doc/library/shutil.rst:692 msgid "The resulting archive contains:" msgstr "" -#: ../Doc/library/shutil.rst:705 +#: ../Doc/library/shutil.rst:708 msgid "Querying the size of the output terminal" msgstr "" -#: ../Doc/library/shutil.rst:709 +#: ../Doc/library/shutil.rst:712 msgid "Get the size of the terminal window." msgstr "" -#: ../Doc/library/shutil.rst:711 +#: ../Doc/library/shutil.rst:714 msgid "" "For each of the two dimensions, the environment variable, ``COLUMNS`` and " "``LINES`` respectively, is checked. If the variable is defined and the value " "is a positive integer, it is used." msgstr "" -#: ../Doc/library/shutil.rst:715 +#: ../Doc/library/shutil.rst:718 msgid "" "When ``COLUMNS`` or ``LINES`` is not defined, which is the common case, the " "terminal connected to :data:`sys.__stdout__` is queried by invoking :func:" "`os.get_terminal_size`." msgstr "" -#: ../Doc/library/shutil.rst:719 +#: ../Doc/library/shutil.rst:722 msgid "" "If the terminal size cannot be successfully queried, either because the " "system doesn't support querying, or because we are not connected to a " @@ -906,11 +909,11 @@ msgid "" "emulators." msgstr "" -#: ../Doc/library/shutil.rst:725 +#: ../Doc/library/shutil.rst:728 msgid "The value returned is a named tuple of type :class:`os.terminal_size`." msgstr "" -#: ../Doc/library/shutil.rst:727 +#: ../Doc/library/shutil.rst:730 msgid "" "See also: The Single UNIX Specification, Version 2, `Other Environment " "Variables`_." diff --git a/library/site.po b/library/site.po index 6f18bbbab..bcb7dca88 100644 --- a/library/site.po +++ b/library/site.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -84,7 +84,19 @@ msgid "" "executed." msgstr "" -#: ../Doc/library/site.rst:68 +#: ../Doc/library/site.rst:66 +msgid "" +"An executable line in a :file:`.pth` file is run at every Python startup, " +"regardless of whether a particular module is actually going to be used. Its " +"impact should thus be kept to a minimum. The primary intended purpose of " +"executable lines is to make the corresponding module(s) importable (load 3rd-" +"party import hooks, adjust :envvar:`PATH` etc). Any other initialization is " +"supposed to be done upon a module's actual import, if and when it happens. " +"Limiting a code chunk to a single line is a deliberate measure to discourage " +"putting anything more complex here." +msgstr "" + +#: ../Doc/library/site.rst:81 msgid "" "For example, suppose ``sys.prefix`` and ``sys.exec_prefix`` are set to :file:" "`/usr/local`. The Python X.Y library is then installed in :file:`/usr/local/" @@ -94,17 +106,17 @@ msgid "" "and :file:`bar.pth`. Assume :file:`foo.pth` contains the following::" msgstr "" -#: ../Doc/library/site.rst:82 +#: ../Doc/library/site.rst:95 msgid "and :file:`bar.pth` contains::" msgstr "" -#: ../Doc/library/site.rst:88 +#: ../Doc/library/site.rst:101 msgid "" "Then the following version-specific directories are added to ``sys.path``, " "in this order::" msgstr "" -#: ../Doc/library/site.rst:94 +#: ../Doc/library/site.rst:107 msgid "" "Note that :file:`bletch` is omitted because it doesn't exist; the :file:" "`bar` directory precedes the :file:`foo` directory because :file:`bar.pth` " @@ -112,7 +124,7 @@ msgid "" "because it is not mentioned in either path configuration file." msgstr "" -#: ../Doc/library/site.rst:101 +#: ../Doc/library/site.rst:114 msgid "" "After these path manipulations, an attempt is made to import a module named :" "mod:`sitecustomize`, which can perform arbitrary site-specific " @@ -126,7 +138,7 @@ msgid "" "failure of the process." msgstr "" -#: ../Doc/library/site.rst:113 +#: ../Doc/library/site.rst:126 msgid "" "After this, an attempt is made to import a module named :mod:" "`usercustomize`, which can perform arbitrary user-specific customizations, " @@ -137,18 +149,18 @@ msgid "" "attribute equals to ``'usercustomize'``, it is silently ignored." msgstr "" -#: ../Doc/library/site.rst:121 +#: ../Doc/library/site.rst:134 msgid "" "Note that for some non-Unix systems, ``sys.prefix`` and ``sys.exec_prefix`` " "are empty, and the path manipulations are skipped; however the import of :" "mod:`sitecustomize` and :mod:`usercustomize` is still attempted." msgstr "" -#: ../Doc/library/site.rst:129 +#: ../Doc/library/site.rst:142 msgid "Readline configuration" msgstr "" -#: ../Doc/library/site.rst:131 +#: ../Doc/library/site.rst:144 msgid "" "On systems that support :mod:`readline`, this module will also import and " "configure the :mod:`rlcompleter` module, if Python is started in :ref:" @@ -160,19 +172,19 @@ msgid "" "`PYTHONSTARTUP` file." msgstr "" -#: ../Doc/library/site.rst:140 +#: ../Doc/library/site.rst:153 msgid "Activation of rlcompleter and history was made automatic." msgstr "" -#: ../Doc/library/site.rst:145 +#: ../Doc/library/site.rst:158 msgid "Module contents" msgstr "" -#: ../Doc/library/site.rst:149 +#: ../Doc/library/site.rst:162 msgid "A list of prefixes for site-packages directories." msgstr "" -#: ../Doc/library/site.rst:154 +#: ../Doc/library/site.rst:167 msgid "" "Flag showing the status of the user site-packages directory. ``True`` means " "that it is enabled and was added to ``sys.path``. ``False`` means that it " @@ -181,7 +193,7 @@ msgid "" "(mismatch between user or group id and effective id) or by an administrator." msgstr "" -#: ../Doc/library/site.rst:164 +#: ../Doc/library/site.rst:177 msgid "" "Path to the user site-packages for the running Python. Can be ``None`` if :" "func:`getusersitepackages` hasn't been called yet. Default value is :file:" @@ -192,7 +204,7 @@ msgid "" "file:`.pth` files in it will be processed." msgstr "" -#: ../Doc/library/site.rst:175 +#: ../Doc/library/site.rst:188 msgid "" "Path to the base directory for the user site-packages. Can be ``None`` if :" "func:`getuserbase` hasn't been called yet. Default value is :file:`~/." @@ -204,48 +216,48 @@ msgid "" "`PYTHONUSERBASE`." msgstr "" -#: ../Doc/library/site.rst:187 +#: ../Doc/library/site.rst:200 msgid "" "Adds all the standard site-specific directories to the module search path. " "This function is called automatically when this module is imported, unless " "the Python interpreter was started with the :option:`-S` flag." msgstr "" -#: ../Doc/library/site.rst:191 +#: ../Doc/library/site.rst:204 msgid "This function used to be called unconditionally." msgstr "" -#: ../Doc/library/site.rst:197 +#: ../Doc/library/site.rst:210 msgid "" "Add a directory to sys.path and process its :file:`.pth` files. Typically " "used in :mod:`sitecustomize` or :mod:`usercustomize` (see above)." msgstr "" -#: ../Doc/library/site.rst:203 +#: ../Doc/library/site.rst:216 msgid "Return a list containing all global site-packages directories." msgstr "" -#: ../Doc/library/site.rst:210 +#: ../Doc/library/site.rst:223 msgid "" "Return the path of the user base directory, :data:`USER_BASE`. If it is not " "initialized yet, this function will also set it, respecting :envvar:" "`PYTHONUSERBASE`." msgstr "" -#: ../Doc/library/site.rst:219 +#: ../Doc/library/site.rst:232 msgid "" "Return the path of the user-specific site-packages directory, :data:" "`USER_SITE`. If it is not initialized yet, this function will also set it, " "respecting :envvar:`PYTHONNOUSERSITE` and :data:`USER_BASE`." msgstr "" -#: ../Doc/library/site.rst:226 +#: ../Doc/library/site.rst:239 msgid "" "The :mod:`site` module also provides a way to get the user directories from " "the command line:" msgstr "" -#: ../Doc/library/site.rst:236 +#: ../Doc/library/site.rst:249 msgid "" "If it is called without arguments, it will print the contents of :data:`sys." "path` on the standard output, followed by the value of :data:`USER_BASE` and " @@ -253,21 +265,21 @@ msgid "" "finally the value of :data:`ENABLE_USER_SITE`." msgstr "" -#: ../Doc/library/site.rst:243 +#: ../Doc/library/site.rst:256 msgid "Print the path to the user base directory." msgstr "" -#: ../Doc/library/site.rst:247 +#: ../Doc/library/site.rst:260 msgid "Print the path to the user site-packages directory." msgstr "" -#: ../Doc/library/site.rst:249 +#: ../Doc/library/site.rst:262 msgid "" "If both options are given, user base and user site will be printed (always " "in this order), separated by :data:`os.pathsep`." msgstr "" -#: ../Doc/library/site.rst:252 +#: ../Doc/library/site.rst:265 msgid "" "If any option is given, the script will exit with one of these values: ``0`` " "if the user site-packages directory is enabled, ``1`` if it was disabled by " @@ -275,6 +287,6 @@ msgid "" "administrator, and a value greater than 2 if there is an error." msgstr "" -#: ../Doc/library/site.rst:259 +#: ../Doc/library/site.rst:272 msgid ":pep:`370` -- Per user site-packages directory" msgstr ":pep:`370` -- Répertoire site-packages propre à l'utilisateur." diff --git a/library/ssl.po b/library/ssl.po index eb654a557..392e4dc16 100644 --- a/library/ssl.po +++ b/library/ssl.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-11-29 18:27+0100\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -538,7 +538,7 @@ msgid "" msgstr "" #: ../Doc/library/ssl.rst:489 ../Doc/library/ssl.rst:1574 -#: ../Doc/library/ssl.rst:1887 +#: ../Doc/library/ssl.rst:1889 msgid "Example::" msgstr "Exemple ::" @@ -616,7 +616,7 @@ msgid "" "does not send any for client cert authentication." msgstr "" -#: ../Doc/library/ssl.rst:560 ../Doc/library/ssl.rst:2308 +#: ../Doc/library/ssl.rst:560 ../Doc/library/ssl.rst:2314 msgid "See the discussion of :ref:`ssl-security` below." msgstr "" @@ -678,9 +678,9 @@ msgstr "" #: ../Doc/library/ssl.rst:615 msgid "" "Possible value for :attr:`SSLContext.verify_flags`. In this mode, only the " -"peer cert is check but non of the intermediate CA certificates. The mode " +"peer cert is checked but none of the intermediate CA certificates. The mode " "requires a valid CRL that is signed by the peer cert's issuer (its direct " -"ancestor CA). If no proper has been loaded :attr:`SSLContext." +"ancestor CA). If no proper CRL has has been loaded with :attr:`SSLContext." "load_verify_locations`, validation will fail." msgstr "" @@ -2104,10 +2104,12 @@ msgid "" "the hostname. Enabling hostname checking automatically sets :attr:" "`~SSLContext.verify_mode` from :data:`CERT_NONE` to :data:`CERT_REQUIRED`. " "It cannot be set back to :data:`CERT_NONE` as long as hostname checking is " -"enabled." +"enabled. The :data:`PROTOCOL_TLS_CLIENT` protocol enables hostname checking " +"by default. With other protocols, hostname checking must be enabled " +"explicitly." msgstr "" -#: ../Doc/library/ssl.rst:1904 +#: ../Doc/library/ssl.rst:1906 msgid "" ":attr:`~SSLContext.verify_mode` is now automatically changed to :data:" "`CERT_REQUIRED` when hostname checking is enabled and :attr:`~SSLContext." @@ -2115,11 +2117,11 @@ msgid "" "failed with a :exc:`ValueError`." msgstr "" -#: ../Doc/library/ssl.rst:1911 +#: ../Doc/library/ssl.rst:1913 msgid "This features requires OpenSSL 0.9.8f or newer." msgstr "" -#: ../Doc/library/ssl.rst:1915 +#: ../Doc/library/ssl.rst:1917 msgid "" "Write TLS keys to a keylog file, whenever key material is generated or " "received. The keylog file is designed for debugging purposes only. The file " @@ -2128,11 +2130,11 @@ msgid "" "synchronized between threads, but not between processes." msgstr "" -#: ../Doc/library/ssl.rst:1925 +#: ../Doc/library/ssl.rst:1927 msgid "This features requires OpenSSL 1.1.1 or newer." msgstr "" -#: ../Doc/library/ssl.rst:1929 +#: ../Doc/library/ssl.rst:1931 msgid "" "A :class:`TLSVersion` enum member representing the highest supported TLS " "version. The value defaults to :attr:`TLSVersion.MAXIMUM_SUPPORTED`. The " @@ -2140,7 +2142,7 @@ msgid "" "`PROTOCOL_TLS_CLIENT`, and :attr:`PROTOCOL_TLS_SERVER`." msgstr "" -#: ../Doc/library/ssl.rst:1934 +#: ../Doc/library/ssl.rst:1936 msgid "" "The attributes :attr:`~SSLContext.maximum_version`, :attr:`~SSLContext." "minimum_version` and :attr:`SSLContext.options` all affect the supported SSL " @@ -2150,50 +2152,50 @@ msgid "" "`TLSVersion.TLSv1_2` will not be able to establish a TLS 1.2 connection." msgstr "" -#: ../Doc/library/ssl.rst:1945 ../Doc/library/ssl.rst:1957 +#: ../Doc/library/ssl.rst:1947 ../Doc/library/ssl.rst:1959 msgid "" "This attribute is not available unless the ssl module is compiled with " "OpenSSL 1.1.0g or newer." msgstr "" -#: ../Doc/library/ssl.rst:1952 +#: ../Doc/library/ssl.rst:1954 msgid "" "Like :attr:`SSLContext.maximum_version` except it is the lowest supported " "version or :attr:`TLSVersion.MINIMUM_SUPPORTED`." msgstr "" -#: ../Doc/library/ssl.rst:1964 +#: ../Doc/library/ssl.rst:1966 msgid "" "Control the number of TLS 1.3 session tickets of a :attr:" "`TLS_PROTOCOL_SERVER` context. The setting has no impact on TLS 1.0 to 1.2 " "connections." msgstr "" -#: ../Doc/library/ssl.rst:1970 +#: ../Doc/library/ssl.rst:1972 msgid "" "This attribute is not available unless the ssl module is compiled with " "OpenSSL 1.1.1 or newer." msgstr "" -#: ../Doc/library/ssl.rst:1977 +#: ../Doc/library/ssl.rst:1979 msgid "" "An integer representing the set of SSL options enabled on this context. The " "default value is :data:`OP_ALL`, but you can specify other options such as :" "data:`OP_NO_SSLv2` by ORing them together." msgstr "" -#: ../Doc/library/ssl.rst:1982 +#: ../Doc/library/ssl.rst:1984 msgid "" "With versions of OpenSSL older than 0.9.8m, it is only possible to set " "options, not to clear them. Attempting to clear an option (by resetting the " "corresponding bits) will raise a :exc:`ValueError`." msgstr "" -#: ../Doc/library/ssl.rst:1986 +#: ../Doc/library/ssl.rst:1988 msgid ":attr:`SSLContext.options` returns :class:`Options` flags:" msgstr "" -#: ../Doc/library/ssl.rst:1994 +#: ../Doc/library/ssl.rst:1996 msgid "" "Enable TLS 1.3 post-handshake client authentication. Post-handshake auth is " "disabled by default and a server can only request a TLS client certificate " @@ -2201,13 +2203,13 @@ msgid "" "client certificate at any time after the handshake." msgstr "" -#: ../Doc/library/ssl.rst:1999 +#: ../Doc/library/ssl.rst:2001 msgid "" "When enabled on client-side sockets, the client signals the server that it " "supports post-handshake authentication." msgstr "" -#: ../Doc/library/ssl.rst:2002 +#: ../Doc/library/ssl.rst:2004 msgid "" "When enabled on server-side sockets, :attr:`SSLContext.verify_mode` must be " "set to :data:`CERT_OPTIONAL` or :data:`CERT_REQUIRED`, too. The actual " @@ -2215,30 +2217,30 @@ msgid "" "verify_client_post_handshake` is called and some I/O is performed." msgstr "" -#: ../Doc/library/ssl.rst:2009 +#: ../Doc/library/ssl.rst:2011 msgid "" "Only available with OpenSSL 1.1.1 and TLS 1.3 enabled. Without TLS 1.3 " "support, the property value is None and can't be modified" msgstr "" -#: ../Doc/library/ssl.rst:2016 +#: ../Doc/library/ssl.rst:2018 msgid "" "The protocol version chosen when constructing the context. This attribute " "is read-only." msgstr "" -#: ../Doc/library/ssl.rst:2021 +#: ../Doc/library/ssl.rst:2023 msgid "" "Whether :attr:`~SSLContext.check_hostname` falls back to verify the cert's " "subject common name in the absence of a subject alternative name extension " "(default: true)." msgstr "" -#: ../Doc/library/ssl.rst:2026 +#: ../Doc/library/ssl.rst:2028 msgid "Only writeable with OpenSSL 1.1.0 or higher." msgstr "" -#: ../Doc/library/ssl.rst:2032 +#: ../Doc/library/ssl.rst:2034 msgid "" "The flags for certificate verification operations. You can set flags like :" "data:`VERIFY_CRL_CHECK_LEAF` by ORing them together. By default OpenSSL does " @@ -2246,26 +2248,26 @@ msgid "" "only with openssl version 0.9.8+." msgstr "" -#: ../Doc/library/ssl.rst:2039 +#: ../Doc/library/ssl.rst:2041 msgid ":attr:`SSLContext.verify_flags` returns :class:`VerifyFlags` flags:" msgstr "" -#: ../Doc/library/ssl.rst:2047 +#: ../Doc/library/ssl.rst:2049 msgid "" "Whether to try to verify other peers' certificates and how to behave if " "verification fails. This attribute must be one of :data:`CERT_NONE`, :data:" "`CERT_OPTIONAL` or :data:`CERT_REQUIRED`." msgstr "" -#: ../Doc/library/ssl.rst:2051 +#: ../Doc/library/ssl.rst:2053 msgid ":attr:`SSLContext.verify_mode` returns :class:`VerifyMode` enum:" msgstr "" -#: ../Doc/library/ssl.rst:2064 +#: ../Doc/library/ssl.rst:2066 msgid "Certificates" msgstr "" -#: ../Doc/library/ssl.rst:2066 +#: ../Doc/library/ssl.rst:2068 msgid "" "Certificates in general are part of a public-key / private-key system. In " "this system, each *principal*, (which may be a machine, or a person, or an " @@ -2276,7 +2278,7 @@ msgid "" "other part, and **only** with the other part." msgstr "" -#: ../Doc/library/ssl.rst:2074 +#: ../Doc/library/ssl.rst:2076 msgid "" "A certificate contains information about two principals. It contains the " "name of a *subject*, and the subject's public key. It also contains a " @@ -2290,7 +2292,7 @@ msgid "" "as two fields, called \"notBefore\" and \"notAfter\"." msgstr "" -#: ../Doc/library/ssl.rst:2084 +#: ../Doc/library/ssl.rst:2086 msgid "" "In the Python use of certificates, a client or server can use a certificate " "to prove who they are. The other side of a network connection can also be " @@ -2303,18 +2305,18 @@ msgid "" "take place." msgstr "" -#: ../Doc/library/ssl.rst:2094 +#: ../Doc/library/ssl.rst:2096 msgid "" "Python uses files to contain certificates. They should be formatted as \"PEM" "\" (see :rfc:`1422`), which is a base-64 encoded form wrapped with a header " "line and a footer line::" msgstr "" -#: ../Doc/library/ssl.rst:2103 +#: ../Doc/library/ssl.rst:2105 msgid "Certificate chains" msgstr "" -#: ../Doc/library/ssl.rst:2105 +#: ../Doc/library/ssl.rst:2107 msgid "" "The Python files which contain certificates can contain a sequence of " "certificates, sometimes called a *certificate chain*. This chain should " @@ -2330,11 +2332,11 @@ msgid "" "agency which issued the certification authority's certificate::" msgstr "" -#: ../Doc/library/ssl.rst:2129 +#: ../Doc/library/ssl.rst:2131 msgid "CA certificates" msgstr "" -#: ../Doc/library/ssl.rst:2131 +#: ../Doc/library/ssl.rst:2133 msgid "" "If you are going to require validation of the other side of the connection's " "certificate, you need to provide a \"CA certs\" file, filled with the " @@ -2346,11 +2348,11 @@ msgid "" "create_default_context`." msgstr "" -#: ../Doc/library/ssl.rst:2140 +#: ../Doc/library/ssl.rst:2142 msgid "Combined key and certificate" msgstr "" -#: ../Doc/library/ssl.rst:2142 +#: ../Doc/library/ssl.rst:2144 msgid "" "Often the private key is stored in the same file as the certificate; in this " "case, only the ``certfile`` parameter to :meth:`SSLContext.load_cert_chain` " @@ -2359,11 +2361,11 @@ msgid "" "certificate chain::" msgstr "" -#: ../Doc/library/ssl.rst:2156 +#: ../Doc/library/ssl.rst:2158 msgid "Self-signed certificates" msgstr "" -#: ../Doc/library/ssl.rst:2158 +#: ../Doc/library/ssl.rst:2160 msgid "" "If you are going to create a server that provides SSL-encrypted connection " "services, you will need to acquire a certificate for that service. There " @@ -2373,38 +2375,38 @@ msgid "" "package, using something like the following::" msgstr "" -#: ../Doc/library/ssl.rst:2187 +#: ../Doc/library/ssl.rst:2189 msgid "" "The disadvantage of a self-signed certificate is that it is its own root " "certificate, and no one else will have it in their cache of known (and " "trusted) root certificates." msgstr "" -#: ../Doc/library/ssl.rst:2193 +#: ../Doc/library/ssl.rst:2195 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/ssl.rst:2196 +#: ../Doc/library/ssl.rst:2198 msgid "Testing for SSL support" msgstr "" -#: ../Doc/library/ssl.rst:2198 +#: ../Doc/library/ssl.rst:2200 msgid "" "To test for the presence of SSL support in a Python installation, user code " "should use the following idiom::" msgstr "" -#: ../Doc/library/ssl.rst:2209 +#: ../Doc/library/ssl.rst:2211 msgid "Client-side operation" msgstr "" -#: ../Doc/library/ssl.rst:2211 +#: ../Doc/library/ssl.rst:2213 msgid "" "This example creates a SSL context with the recommended security settings " "for client sockets, including automatic certificate verification::" msgstr "" -#: ../Doc/library/ssl.rst:2216 +#: ../Doc/library/ssl.rst:2218 msgid "" "If you prefer to tune security settings yourself, you might create a context " "from scratch (but beware that you might not get the settings right)::" @@ -2419,33 +2421,42 @@ msgstr "" #: ../Doc/library/ssl.rst:2229 msgid "" -"When you use the context to connect to a server, :const:`CERT_REQUIRED` " -"validates the server certificate: it ensures that the server certificate was " -"signed with one of the CA certificates, and checks the signature for " -"correctness::" +"The :data:`PROTOCOL_TLS_CLIENT` protocol configures the context for cert " +"validation and hostname verification. :attr:`~SSLContext.verify_mode` is set " +"to :data:`CERT_REQUIRED` and :attr:`~SSLContext.check_hostname` is set to " +"``True``. All other protocols create SSL contexts with insecure defaults." +msgstr "" + +#: ../Doc/library/ssl.rst:2234 +msgid "" +"When you use the context to connect to a server, :const:`CERT_REQUIRED` and :" +"attr:`~SSLContext.check_hostname` validate the server certificate: it " +"ensures that the server certificate was signed with one of the CA " +"certificates, checks the signature for correctness, and verifies other " +"properties like validity and identity of the hostname::" msgstr "" -#: ../Doc/library/ssl.rst:2238 +#: ../Doc/library/ssl.rst:2244 msgid "You may then fetch the certificate::" msgstr "" -#: ../Doc/library/ssl.rst:2242 +#: ../Doc/library/ssl.rst:2248 msgid "" "Visual inspection shows that the certificate does identify the desired " "service (that is, the HTTPS host ``www.python.org``)::" msgstr "" -#: ../Doc/library/ssl.rst:2285 +#: ../Doc/library/ssl.rst:2291 msgid "" "Now the SSL channel is established and the certificate verified, you can " "proceed to talk with the server::" msgstr "" -#: ../Doc/library/ssl.rst:2312 +#: ../Doc/library/ssl.rst:2318 msgid "Server-side operation" msgstr "" -#: ../Doc/library/ssl.rst:2314 +#: ../Doc/library/ssl.rst:2320 msgid "" "For server operation, typically you'll need to have a server certificate, " "and private key, each in a file. You'll first create a context holding the " @@ -2454,20 +2465,20 @@ msgid "" "start waiting for clients to connect::" msgstr "" -#: ../Doc/library/ssl.rst:2329 +#: ../Doc/library/ssl.rst:2335 msgid "" "When a client connects, you'll call :meth:`accept` on the socket to get the " "new socket from the other end, and use the context's :meth:`SSLContext." "wrap_socket` method to create a server-side SSL socket for the connection::" msgstr "" -#: ../Doc/library/ssl.rst:2342 +#: ../Doc/library/ssl.rst:2348 msgid "" "Then you'll read data from the ``connstream`` and do something with it till " "you are finished with the client (or the client is finished with you)::" msgstr "" -#: ../Doc/library/ssl.rst:2356 +#: ../Doc/library/ssl.rst:2362 msgid "" "And go back to listening for new client connections (of course, a real " "server would probably handle each client connection in a separate thread, or " @@ -2475,18 +2486,18 @@ msgid "" "event loop)." msgstr "" -#: ../Doc/library/ssl.rst:2364 +#: ../Doc/library/ssl.rst:2370 msgid "Notes on non-blocking sockets" msgstr "" -#: ../Doc/library/ssl.rst:2366 +#: ../Doc/library/ssl.rst:2372 msgid "" "SSL sockets behave slightly different than regular sockets in non-blocking " "mode. When working with non-blocking sockets, there are thus several things " "you need to be aware of:" msgstr "" -#: ../Doc/library/ssl.rst:2370 +#: ../Doc/library/ssl.rst:2376 msgid "" "Most :class:`SSLSocket` methods will raise either :exc:`SSLWantWriteError` " "or :exc:`SSLWantReadError` instead of :exc:`BlockingIOError` if an I/O " @@ -2498,13 +2509,13 @@ msgid "" "require a prior *write* to the underlying socket." msgstr "" -#: ../Doc/library/ssl.rst:2382 +#: ../Doc/library/ssl.rst:2388 msgid "" "In earlier Python versions, the :meth:`!SSLSocket.send` method returned zero " "instead of raising :exc:`SSLWantWriteError` or :exc:`SSLWantReadError`." msgstr "" -#: ../Doc/library/ssl.rst:2386 +#: ../Doc/library/ssl.rst:2392 msgid "" "Calling :func:`~select.select` tells you that the OS-level socket can be " "read from (or written to), but it does not imply that there is sufficient " @@ -2514,7 +2525,7 @@ msgid "" "`~select.select`." msgstr "" -#: ../Doc/library/ssl.rst:2393 +#: ../Doc/library/ssl.rst:2399 msgid "" "Conversely, since the SSL layer has its own framing, a SSL socket may still " "have data available for reading without :func:`~select.select` being aware " @@ -2523,13 +2534,13 @@ msgid "" "call if still necessary." msgstr "" -#: ../Doc/library/ssl.rst:2399 +#: ../Doc/library/ssl.rst:2405 msgid "" "(of course, similar provisions apply when using other primitives such as :" "func:`~select.poll`, or those in the :mod:`selectors` module)" msgstr "" -#: ../Doc/library/ssl.rst:2402 +#: ../Doc/library/ssl.rst:2408 msgid "" "The SSL handshake itself will be non-blocking: the :meth:`SSLSocket." "do_handshake` method has to be retried until it returns successfully. Here " @@ -2537,7 +2548,7 @@ msgid "" "readiness::" msgstr "" -#: ../Doc/library/ssl.rst:2418 +#: ../Doc/library/ssl.rst:2424 msgid "" "The :mod:`asyncio` module supports :ref:`non-blocking SSL sockets ` and provides a higher level API. It polls for events using " @@ -2546,26 +2557,26 @@ msgid "" "handshake asynchronously as well." msgstr "" -#: ../Doc/library/ssl.rst:2427 +#: ../Doc/library/ssl.rst:2433 msgid "Memory BIO Support" msgstr "" -#: ../Doc/library/ssl.rst:2431 +#: ../Doc/library/ssl.rst:2437 msgid "" "Ever since the SSL module was introduced in Python 2.6, the :class:" "`SSLSocket` class has provided two related but distinct areas of " "functionality:" msgstr "" -#: ../Doc/library/ssl.rst:2434 +#: ../Doc/library/ssl.rst:2440 msgid "SSL protocol handling" msgstr "" -#: ../Doc/library/ssl.rst:2435 +#: ../Doc/library/ssl.rst:2441 msgid "Network IO" msgstr "" -#: ../Doc/library/ssl.rst:2437 +#: ../Doc/library/ssl.rst:2443 msgid "" "The network IO API is identical to that provided by :class:`socket.socket`, " "from which :class:`SSLSocket` also inherits. This allows an SSL socket to be " @@ -2573,7 +2584,7 @@ msgid "" "add SSL support to an existing application." msgstr "" -#: ../Doc/library/ssl.rst:2442 +#: ../Doc/library/ssl.rst:2448 msgid "" "Combining SSL protocol handling and network IO usually works well, but there " "are some cases where it doesn't. An example is async IO frameworks that want " @@ -2585,7 +2596,7 @@ msgid "" "`SSLObject` is provided." msgstr "" -#: ../Doc/library/ssl.rst:2453 +#: ../Doc/library/ssl.rst:2459 msgid "" "A reduced-scope variant of :class:`SSLSocket` representing an SSL protocol " "instance that does not contain any network IO methods. This class is " @@ -2593,7 +2604,7 @@ msgid "" "for SSL through memory buffers." msgstr "" -#: ../Doc/library/ssl.rst:2458 +#: ../Doc/library/ssl.rst:2464 msgid "" "This class implements an interface on top of a low-level SSL object as " "implemented by OpenSSL. This object captures the state of an SSL connection " @@ -2601,7 +2612,7 @@ msgid "" "separate \"BIO\" objects which are OpenSSL's IO abstraction layer." msgstr "" -#: ../Doc/library/ssl.rst:2463 +#: ../Doc/library/ssl.rst:2469 msgid "" "This class has no public constructor. An :class:`SSLObject` instance must " "be created using the :meth:`~SSLContext.wrap_bio` method. This method will " @@ -2610,202 +2621,202 @@ msgid "" "instance, while the *outgoing* BIO is used to pass data the other way around." msgstr "" -#: ../Doc/library/ssl.rst:2470 +#: ../Doc/library/ssl.rst:2476 msgid "The following methods are available:" msgstr "" -#: ../Doc/library/ssl.rst:2472 +#: ../Doc/library/ssl.rst:2478 msgid ":attr:`~SSLSocket.context`" msgstr "" -#: ../Doc/library/ssl.rst:2473 +#: ../Doc/library/ssl.rst:2479 msgid ":attr:`~SSLSocket.server_side`" msgstr "" -#: ../Doc/library/ssl.rst:2474 +#: ../Doc/library/ssl.rst:2480 msgid ":attr:`~SSLSocket.server_hostname`" msgstr "" -#: ../Doc/library/ssl.rst:2475 +#: ../Doc/library/ssl.rst:2481 msgid ":attr:`~SSLSocket.session`" msgstr "" -#: ../Doc/library/ssl.rst:2476 +#: ../Doc/library/ssl.rst:2482 msgid ":attr:`~SSLSocket.session_reused`" msgstr "" -#: ../Doc/library/ssl.rst:2477 +#: ../Doc/library/ssl.rst:2483 msgid ":meth:`~SSLSocket.read`" msgstr "" -#: ../Doc/library/ssl.rst:2478 +#: ../Doc/library/ssl.rst:2484 msgid ":meth:`~SSLSocket.write`" msgstr "" -#: ../Doc/library/ssl.rst:2479 +#: ../Doc/library/ssl.rst:2485 msgid ":meth:`~SSLSocket.getpeercert`" msgstr "" -#: ../Doc/library/ssl.rst:2480 +#: ../Doc/library/ssl.rst:2486 msgid ":meth:`~SSLSocket.selected_npn_protocol`" msgstr "" -#: ../Doc/library/ssl.rst:2481 +#: ../Doc/library/ssl.rst:2487 msgid ":meth:`~SSLSocket.cipher`" msgstr "" -#: ../Doc/library/ssl.rst:2482 +#: ../Doc/library/ssl.rst:2488 msgid ":meth:`~SSLSocket.shared_ciphers`" msgstr "" -#: ../Doc/library/ssl.rst:2483 +#: ../Doc/library/ssl.rst:2489 msgid ":meth:`~SSLSocket.compression`" msgstr "" -#: ../Doc/library/ssl.rst:2484 +#: ../Doc/library/ssl.rst:2490 msgid ":meth:`~SSLSocket.pending`" msgstr "" -#: ../Doc/library/ssl.rst:2485 +#: ../Doc/library/ssl.rst:2491 msgid ":meth:`~SSLSocket.do_handshake`" msgstr "" -#: ../Doc/library/ssl.rst:2486 +#: ../Doc/library/ssl.rst:2492 msgid ":meth:`~SSLSocket.unwrap`" msgstr "" -#: ../Doc/library/ssl.rst:2487 +#: ../Doc/library/ssl.rst:2493 msgid ":meth:`~SSLSocket.get_channel_binding`" msgstr "" -#: ../Doc/library/ssl.rst:2489 +#: ../Doc/library/ssl.rst:2495 msgid "" "When compared to :class:`SSLSocket`, this object lacks the following " "features:" msgstr "" -#: ../Doc/library/ssl.rst:2492 +#: ../Doc/library/ssl.rst:2498 msgid "" "Any form of network IO; ``recv()`` and ``send()`` read and write only to the " "underlying :class:`MemoryBIO` buffers." msgstr "" -#: ../Doc/library/ssl.rst:2495 +#: ../Doc/library/ssl.rst:2501 msgid "" "There is no *do_handshake_on_connect* machinery. You must always manually " "call :meth:`~SSLSocket.do_handshake` to start the handshake." msgstr "" -#: ../Doc/library/ssl.rst:2498 +#: ../Doc/library/ssl.rst:2504 msgid "" "There is no handling of *suppress_ragged_eofs*. All end-of-file conditions " "that are in violation of the protocol are reported via the :exc:" "`SSLEOFError` exception." msgstr "" -#: ../Doc/library/ssl.rst:2502 +#: ../Doc/library/ssl.rst:2508 msgid "" "The method :meth:`~SSLSocket.unwrap` call does not return anything, unlike " "for an SSL socket where it returns the underlying socket." msgstr "" -#: ../Doc/library/ssl.rst:2505 +#: ../Doc/library/ssl.rst:2511 msgid "" "The *server_name_callback* callback passed to :meth:`SSLContext." "set_servername_callback` will get an :class:`SSLObject` instance instead of " "a :class:`SSLSocket` instance as its first parameter." msgstr "" -#: ../Doc/library/ssl.rst:2509 +#: ../Doc/library/ssl.rst:2515 msgid "Some notes related to the use of :class:`SSLObject`:" msgstr "" -#: ../Doc/library/ssl.rst:2511 +#: ../Doc/library/ssl.rst:2517 msgid "" "All IO on an :class:`SSLObject` is :ref:`non-blocking `. " "This means that for example :meth:`~SSLSocket.read` will raise an :exc:" "`SSLWantReadError` if it needs more data than the incoming BIO has available." msgstr "" -#: ../Doc/library/ssl.rst:2516 +#: ../Doc/library/ssl.rst:2522 msgid "" "There is no module-level ``wrap_bio()`` call like there is for :meth:" "`~SSLContext.wrap_socket`. An :class:`SSLObject` is always created via an :" "class:`SSLContext`." msgstr "" -#: ../Doc/library/ssl.rst:2520 +#: ../Doc/library/ssl.rst:2526 msgid "" ":class:`SSLObject` instances must to created with :meth:`~SSLContext." "wrap_bio`. In earlier versions, it was possible to create instances " "directly. This was never documented or officially supported." msgstr "" -#: ../Doc/library/ssl.rst:2526 +#: ../Doc/library/ssl.rst:2532 msgid "" "An SSLObject communicates with the outside world using memory buffers. The " "class :class:`MemoryBIO` provides a memory buffer that can be used for this " "purpose. It wraps an OpenSSL memory BIO (Basic IO) object:" msgstr "" -#: ../Doc/library/ssl.rst:2532 +#: ../Doc/library/ssl.rst:2538 msgid "" "A memory buffer that can be used to pass data between Python and an SSL " "protocol instance." msgstr "" -#: ../Doc/library/ssl.rst:2537 +#: ../Doc/library/ssl.rst:2543 msgid "Return the number of bytes currently in the memory buffer." msgstr "" -#: ../Doc/library/ssl.rst:2541 +#: ../Doc/library/ssl.rst:2547 msgid "" "A boolean indicating whether the memory BIO is current at the end-of-file " "position." msgstr "" -#: ../Doc/library/ssl.rst:2546 +#: ../Doc/library/ssl.rst:2552 msgid "" "Read up to *n* bytes from the memory buffer. If *n* is not specified or " "negative, all bytes are returned." msgstr "" -#: ../Doc/library/ssl.rst:2551 +#: ../Doc/library/ssl.rst:2557 msgid "" "Write the bytes from *buf* to the memory BIO. The *buf* argument must be an " "object supporting the buffer protocol." msgstr "" -#: ../Doc/library/ssl.rst:2554 +#: ../Doc/library/ssl.rst:2560 msgid "" "The return value is the number of bytes written, which is always equal to " "the length of *buf*." msgstr "" -#: ../Doc/library/ssl.rst:2559 +#: ../Doc/library/ssl.rst:2565 msgid "" "Write an EOF marker to the memory BIO. After this method has been called, it " "is illegal to call :meth:`~MemoryBIO.write`. The attribute :attr:`eof` will " "become true after all data currently in the buffer has been read." msgstr "" -#: ../Doc/library/ssl.rst:2565 +#: ../Doc/library/ssl.rst:2571 msgid "SSL session" msgstr "" -#: ../Doc/library/ssl.rst:2571 +#: ../Doc/library/ssl.rst:2577 msgid "Session object used by :attr:`~SSLSocket.session`." msgstr "" -#: ../Doc/library/ssl.rst:2583 +#: ../Doc/library/ssl.rst:2589 msgid "Security considerations" msgstr "" -#: ../Doc/library/ssl.rst:2586 +#: ../Doc/library/ssl.rst:2592 msgid "Best defaults" msgstr "" -#: ../Doc/library/ssl.rst:2588 +#: ../Doc/library/ssl.rst:2594 msgid "" "For **client use**, if you don't have any special requirements for your " "security policy, it is highly recommended that you use the :func:" @@ -2815,19 +2826,19 @@ msgid "" "settings." msgstr "" -#: ../Doc/library/ssl.rst:2595 +#: ../Doc/library/ssl.rst:2601 msgid "" "For example, here is how you would use the :class:`smtplib.SMTP` class to " "create a trusted, secure connection to a SMTP server::" msgstr "" -#: ../Doc/library/ssl.rst:2604 +#: ../Doc/library/ssl.rst:2610 msgid "" "If a client certificate is needed for the connection, it can be added with :" "meth:`SSLContext.load_cert_chain`." msgstr "" -#: ../Doc/library/ssl.rst:2607 +#: ../Doc/library/ssl.rst:2613 msgid "" "By contrast, if you create the SSL context by calling the :class:" "`SSLContext` constructor yourself, it will not have certificate validation " @@ -2835,15 +2846,15 @@ msgid "" "paragraphs below to achieve a good security level." msgstr "" -#: ../Doc/library/ssl.rst:2613 +#: ../Doc/library/ssl.rst:2619 msgid "Manual settings" msgstr "" -#: ../Doc/library/ssl.rst:2616 +#: ../Doc/library/ssl.rst:2622 msgid "Verifying certificates" msgstr "" -#: ../Doc/library/ssl.rst:2618 +#: ../Doc/library/ssl.rst:2624 msgid "" "When calling the :class:`SSLContext` constructor directly, :const:" "`CERT_NONE` is the default. Since it does not authenticate the other peer, " @@ -2858,13 +2869,13 @@ msgid "" "automatically performed when :attr:`SSLContext.check_hostname` is enabled." msgstr "" -#: ../Doc/library/ssl.rst:2631 +#: ../Doc/library/ssl.rst:2637 msgid "" "Hostname matchings is now performed by OpenSSL. Python no longer uses :func:" "`match_hostname`." msgstr "" -#: ../Doc/library/ssl.rst:2635 +#: ../Doc/library/ssl.rst:2641 msgid "" "In server mode, if you want to authenticate your clients using the SSL layer " "(rather than using a higher-level authentication mechanism), you'll also " @@ -2872,11 +2883,11 @@ msgid "" "certificate." msgstr "" -#: ../Doc/library/ssl.rst:2641 +#: ../Doc/library/ssl.rst:2647 msgid "Protocol versions" msgstr "" -#: ../Doc/library/ssl.rst:2643 +#: ../Doc/library/ssl.rst:2649 msgid "" "SSL versions 2 and 3 are considered insecure and are therefore dangerous to " "use. If you want maximum compatibility between clients and servers, it is " @@ -2885,7 +2896,7 @@ msgid "" "by default." msgstr "" -#: ../Doc/library/ssl.rst:2656 +#: ../Doc/library/ssl.rst:2662 msgid "" "The SSL context created above will only allow TLSv1.2 and later (if " "supported by your system) connections to a server. :const:" @@ -2893,11 +2904,11 @@ msgid "" "default. You have to load certificates into the context." msgstr "" -#: ../Doc/library/ssl.rst:2663 +#: ../Doc/library/ssl.rst:2669 msgid "Cipher selection" msgstr "" -#: ../Doc/library/ssl.rst:2665 +#: ../Doc/library/ssl.rst:2671 msgid "" "If you have advanced security requirements, fine-tuning of the ciphers " "enabled when negotiating a SSL session is possible through the :meth:" @@ -2910,11 +2921,11 @@ msgid "" "ciphers`` command on your system." msgstr "" -#: ../Doc/library/ssl.rst:2676 +#: ../Doc/library/ssl.rst:2682 msgid "Multi-processing" msgstr "" -#: ../Doc/library/ssl.rst:2678 +#: ../Doc/library/ssl.rst:2684 msgid "" "If using this module as part of a multi-processed application (using, for " "example the :mod:`multiprocessing` or :mod:`concurrent.futures` modules), be " @@ -2925,18 +2936,18 @@ msgid "" "`~ssl.RAND_pseudo_bytes` is sufficient." msgstr "" -#: ../Doc/library/ssl.rst:2690 +#: ../Doc/library/ssl.rst:2696 msgid "TLS 1.3" msgstr "" -#: ../Doc/library/ssl.rst:2694 +#: ../Doc/library/ssl.rst:2700 msgid "" "Python has provisional and experimental support for TLS 1.3 with OpenSSL " "1.1.1. The new protocol behaves slightly differently than previous version " "of TLS/SSL. Some new TLS 1.3 features are not yet available." msgstr "" -#: ../Doc/library/ssl.rst:2698 +#: ../Doc/library/ssl.rst:2704 msgid "" "TLS 1.3 uses a disjunct set of cipher suites. All AES-GCM and ChaCha20 " "cipher suites are enabled by default. The method :meth:`SSLContext." @@ -2944,14 +2955,14 @@ msgid "" "`SSLContext.get_ciphers` returns them." msgstr "" -#: ../Doc/library/ssl.rst:2702 +#: ../Doc/library/ssl.rst:2708 msgid "" "Session tickets are no longer sent as part of the initial handshake and are " "handled differently. :attr:`SSLSocket.session` and :class:`SSLSession` are " "not compatible with TLS 1.3." msgstr "" -#: ../Doc/library/ssl.rst:2705 +#: ../Doc/library/ssl.rst:2711 msgid "" "Client-side certificates are also no longer verified during the initial " "handshake. A server can request a certificate at any time. Clients process " @@ -2959,127 +2970,127 @@ msgid "" "server." msgstr "" -#: ../Doc/library/ssl.rst:2709 +#: ../Doc/library/ssl.rst:2715 msgid "" "TLS 1.3 features like early data, deferred TLS client cert request, " "signature algorithm configuration, and rekeying are not supported yet." msgstr "" -#: ../Doc/library/ssl.rst:2716 +#: ../Doc/library/ssl.rst:2722 msgid "LibreSSL support" msgstr "" -#: ../Doc/library/ssl.rst:2718 +#: ../Doc/library/ssl.rst:2724 msgid "" "LibreSSL is a fork of OpenSSL 1.0.1. The ssl module has limited support for " "LibreSSL. Some features are not available when the ssl module is compiled " "with LibreSSL." msgstr "" -#: ../Doc/library/ssl.rst:2722 +#: ../Doc/library/ssl.rst:2728 msgid "" "LibreSSL >= 2.6.1 no longer supports NPN. The methods :meth:`SSLContext." "set_npn_protocols` and :meth:`SSLSocket.selected_npn_protocol` are not " "available." msgstr "" -#: ../Doc/library/ssl.rst:2725 +#: ../Doc/library/ssl.rst:2731 msgid "" ":meth:`SSLContext.set_default_verify_paths` ignores the env vars :envvar:" "`SSL_CERT_FILE` and :envvar:`SSL_CERT_PATH` although :func:" "`get_default_verify_paths` still reports them." msgstr "" -#: ../Doc/library/ssl.rst:2733 +#: ../Doc/library/ssl.rst:2739 msgid "Class :class:`socket.socket`" msgstr "" -#: ../Doc/library/ssl.rst:2733 +#: ../Doc/library/ssl.rst:2739 msgid "Documentation of underlying :mod:`socket` class" msgstr "" -#: ../Doc/library/ssl.rst:2736 +#: ../Doc/library/ssl.rst:2742 msgid "" "`SSL/TLS Strong Encryption: An Introduction `_" msgstr "" -#: ../Doc/library/ssl.rst:2736 +#: ../Doc/library/ssl.rst:2742 msgid "Intro from the Apache HTTP Server documentation" msgstr "" -#: ../Doc/library/ssl.rst:2739 +#: ../Doc/library/ssl.rst:2745 msgid "" ":rfc:`RFC 1422: Privacy Enhancement for Internet Electronic Mail: Part II: " "Certificate-Based Key Management <1422>`" msgstr "" -#: ../Doc/library/ssl.rst:2739 +#: ../Doc/library/ssl.rst:2745 msgid "Steve Kent" msgstr "" -#: ../Doc/library/ssl.rst:2742 +#: ../Doc/library/ssl.rst:2748 msgid ":rfc:`RFC 4086: Randomness Requirements for Security <4086>`" msgstr "" -#: ../Doc/library/ssl.rst:2742 +#: ../Doc/library/ssl.rst:2748 msgid "Donald E., Jeffrey I. Schiller" msgstr "" -#: ../Doc/library/ssl.rst:2745 +#: ../Doc/library/ssl.rst:2751 msgid "" ":rfc:`RFC 5280: Internet X.509 Public Key Infrastructure Certificate and " "Certificate Revocation List (CRL) Profile <5280>`" msgstr "" -#: ../Doc/library/ssl.rst:2745 +#: ../Doc/library/ssl.rst:2751 msgid "D. Cooper" msgstr "" -#: ../Doc/library/ssl.rst:2748 +#: ../Doc/library/ssl.rst:2754 msgid "" ":rfc:`RFC 5246: The Transport Layer Security (TLS) Protocol Version 1.2 " "<5246>`" msgstr "" -#: ../Doc/library/ssl.rst:2748 +#: ../Doc/library/ssl.rst:2754 msgid "T. Dierks et. al." msgstr "" -#: ../Doc/library/ssl.rst:2751 +#: ../Doc/library/ssl.rst:2757 msgid ":rfc:`RFC 6066: Transport Layer Security (TLS) Extensions <6066>`" msgstr "" -#: ../Doc/library/ssl.rst:2751 +#: ../Doc/library/ssl.rst:2757 msgid "D. Eastlake" msgstr "" -#: ../Doc/library/ssl.rst:2754 +#: ../Doc/library/ssl.rst:2760 msgid "" "`IANA TLS: Transport Layer Security (TLS) Parameters `_" msgstr "" -#: ../Doc/library/ssl.rst:2754 +#: ../Doc/library/ssl.rst:2760 msgid "IANA" msgstr "" -#: ../Doc/library/ssl.rst:2757 +#: ../Doc/library/ssl.rst:2763 msgid "" ":rfc:`RFC 7525: Recommendations for Secure Use of Transport Layer Security " "(TLS) and Datagram Transport Layer Security (DTLS) <7525>`" msgstr "" -#: ../Doc/library/ssl.rst:2757 +#: ../Doc/library/ssl.rst:2763 msgid "IETF" msgstr "" -#: ../Doc/library/ssl.rst:2759 +#: ../Doc/library/ssl.rst:2765 msgid "" "`Mozilla's Server Side TLS recommendations `_" msgstr "" -#: ../Doc/library/ssl.rst:2760 +#: ../Doc/library/ssl.rst:2766 msgid "Mozilla" msgstr "" diff --git a/library/statistics.po b/library/statistics.po index 3779adaa0..78d792bcd 100644 --- a/library/statistics.po +++ b/library/statistics.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-06 13:32+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -609,34 +609,32 @@ msgstr "" msgid "" "Set *n* to 4 for quartiles (the default). Set *n* to 10 for deciles. Set " "*n* to 100 for percentiles which gives the 99 cuts points that separate " -"*data* in to 100 equal sized groups. Raises :exc:`StatisticsError` if *n* " -"is not least 1." +"*data* into 100 equal sized groups. Raises :exc:`StatisticsError` if *n* is " +"not least 1." msgstr "" #: ../Doc/library/statistics.rst:520 msgid "" -"The *data* can be any iterable containing sample data or it can be an " -"instance of a class that defines an :meth:`~inv_cdf` method. For meaningful " +"The *data* can be any iterable containing sample data. For meaningful " "results, the number of data points in *data* should be larger than *n*. " "Raises :exc:`StatisticsError` if there are not at least two data points." msgstr "" -#: ../Doc/library/statistics.rst:525 +#: ../Doc/library/statistics.rst:524 msgid "" -"For sample data, the cut points are linearly interpolated from the two " -"nearest data points. For example, if a cut point falls one-third of the " -"distance between two sample values, ``100`` and ``112``, the cut-point will " -"evaluate to ``104``." +"The cut points are linearly interpolated from the two nearest data points. " +"For example, if a cut point falls one-third of the distance between two " +"sample values, ``100`` and ``112``, the cut-point will evaluate to ``104``." msgstr "" -#: ../Doc/library/statistics.rst:530 +#: ../Doc/library/statistics.rst:529 msgid "" "The *method* for computing quantiles can be varied depending on whether the " "*data* includes or excludes the lowest and highest possible values from the " "population." msgstr "" -#: ../Doc/library/statistics.rst:534 +#: ../Doc/library/statistics.rst:533 msgid "" "The default *method* is \"exclusive\" and is used for data sampled from a " "population that can have more extreme values than found in the samples. The " @@ -646,7 +644,7 @@ msgid "" "70%, 80%, 90%." msgstr "" -#: ../Doc/library/statistics.rst:541 +#: ../Doc/library/statistics.rst:540 msgid "" "Setting the *method* to \"inclusive\" is used for describing population data " "or for samples that are known to include the most extreme values from the " @@ -658,29 +656,23 @@ msgid "" "80%, 90%, 100%." msgstr "" -#: ../Doc/library/statistics.rst:550 -msgid "" -"If *data* is an instance of a class that defines an :meth:`~inv_cdf` method, " -"setting *method* has no effect." -msgstr "" - -#: ../Doc/library/statistics.rst:573 +#: ../Doc/library/statistics.rst:564 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/library/statistics.rst:575 +#: ../Doc/library/statistics.rst:566 msgid "A single exception is defined:" msgstr "" -#: ../Doc/library/statistics.rst:579 +#: ../Doc/library/statistics.rst:570 msgid "Subclass of :exc:`ValueError` for statistics-related exceptions." msgstr "" -#: ../Doc/library/statistics.rst:583 +#: ../Doc/library/statistics.rst:574 msgid ":class:`NormalDist` objects" msgstr "" -#: ../Doc/library/statistics.rst:585 +#: ../Doc/library/statistics.rst:576 msgid "" ":class:`NormalDist` is a tool for creating and manipulating normal " "distributions of a `random variable `_ and have a wide range of " "applications in statistics." msgstr "" -#: ../Doc/library/statistics.rst:597 +#: ../Doc/library/statistics.rst:588 msgid "" "Returns a new *NormalDist* object where *mu* represents the `arithmetic mean " "`_ and *sigma* represents the " "`standard deviation `_." msgstr "" -#: ../Doc/library/statistics.rst:602 +#: ../Doc/library/statistics.rst:593 msgid "If *sigma* is negative, raises :exc:`StatisticsError`." msgstr "" -#: ../Doc/library/statistics.rst:606 +#: ../Doc/library/statistics.rst:597 msgid "" "A read-only property for the `arithmetic mean `_ of a normal distribution." msgstr "" -#: ../Doc/library/statistics.rst:612 +#: ../Doc/library/statistics.rst:603 +msgid "" +"A read-only property for the `median `_ of a normal distribution." +msgstr "" + +#: ../Doc/library/statistics.rst:609 +msgid "" +"A read-only property for the `mode `_ of a normal distribution." +msgstr "" + +#: ../Doc/library/statistics.rst:615 msgid "" "A read-only property for the `standard deviation `_ of a normal distribution." msgstr "" -#: ../Doc/library/statistics.rst:618 +#: ../Doc/library/statistics.rst:621 msgid "" "A read-only property for the `variance `_ of a normal distribution. Equal to the square of the standard " "deviation." msgstr "" -#: ../Doc/library/statistics.rst:624 +#: ../Doc/library/statistics.rst:627 msgid "" "Makes a normal distribution instance with *mu* and *sigma* parameters " "estimated from the *data* using :func:`fmean` and :func:`stdev`." msgstr "" -#: ../Doc/library/statistics.rst:627 +#: ../Doc/library/statistics.rst:630 msgid "" "The *data* can be any :term:`iterable` and should consist of values that can " "be converted to type :class:`float`. If *data* does not contain at least " @@ -740,20 +744,20 @@ msgid "" "dispersion." msgstr "" -#: ../Doc/library/statistics.rst:635 +#: ../Doc/library/statistics.rst:638 msgid "" "Generates *n* random samples for a given mean and standard deviation. " "Returns a :class:`list` of :class:`float` values." msgstr "" -#: ../Doc/library/statistics.rst:638 +#: ../Doc/library/statistics.rst:641 msgid "" "If *seed* is given, creates a new instance of the underlying random number " "generator. This is useful for creating reproducible results, even in a " "multi-threading context." msgstr "" -#: ../Doc/library/statistics.rst:644 +#: ../Doc/library/statistics.rst:647 msgid "" "Using a `probability density function (pdf) `_, compute the relative likelihood that a " @@ -761,7 +765,7 @@ msgid "" "the limit of the ratio ``P(x <= X < x+dx) / dx`` as *dx* approaches zero." msgstr "" -#: ../Doc/library/statistics.rst:650 +#: ../Doc/library/statistics.rst:653 msgid "" "The relative likelihood is computed as the probability of a sample occurring " "in a narrow range divided by the width of the range (hence the word \"density" @@ -769,7 +773,7 @@ msgid "" "greater than `1.0`." msgstr "" -#: ../Doc/library/statistics.rst:657 +#: ../Doc/library/statistics.rst:660 msgid "" "Using a `cumulative distribution function (cdf) `_, compute the probability that a " @@ -777,7 +781,7 @@ msgid "" "is written ``P(X <= x)``." msgstr "" -#: ../Doc/library/statistics.rst:664 +#: ../Doc/library/statistics.rst:667 msgid "" "Compute the inverse cumulative distribution function, also known as the " "`quantile function `_ or " @@ -786,34 +790,47 @@ msgid "" "``x : P(X <= x) = p``." msgstr "" -#: ../Doc/library/statistics.rst:670 +#: ../Doc/library/statistics.rst:673 msgid "" "Finds the value *x* of the random variable *X* such that the probability of " "the variable being less than or equal to that value equals the given " "probability *p*." msgstr "" -#: ../Doc/library/statistics.rst:676 +#: ../Doc/library/statistics.rst:679 msgid "" "Measures the agreement between two normal probability distributions. Returns " "a value between 0.0 and 1.0 giving `the overlapping area for the two " "probability density functions `_." msgstr "" -#: ../Doc/library/statistics.rst:681 +#: ../Doc/library/statistics.rst:686 +msgid "" +"Divide the normal distribution into *n* continuous intervals with equal " +"probability. Returns a list of (n - 1) cut points separating the intervals." +msgstr "" + +#: ../Doc/library/statistics.rst:690 +msgid "" +"Set *n* to 4 for quartiles (the default). Set *n* to 10 for deciles. Set " +"*n* to 100 for percentiles which gives the 99 cuts points that separate the " +"normal distribution into 100 equal sized groups." +msgstr "" + +#: ../Doc/library/statistics.rst:694 msgid "" "Instances of :class:`NormalDist` support addition, subtraction, " "multiplication and division by a constant. These operations are used for " "translation and scaling. For example:" msgstr "" -#: ../Doc/library/statistics.rst:691 +#: ../Doc/library/statistics.rst:704 msgid "" "Dividing a constant by an instance of :class:`NormalDist` is not supported " "because the result wouldn't be normally distributed." msgstr "" -#: ../Doc/library/statistics.rst:694 +#: ../Doc/library/statistics.rst:707 msgid "" "Since normal distributions arise from additive effects of independent " "variables, it is possible to `add and subtract two independent normally " @@ -822,15 +839,15 @@ msgid "" "class:`NormalDist`. For example:" msgstr "" -#: ../Doc/library/statistics.rst:714 +#: ../Doc/library/statistics.rst:727 msgid ":class:`NormalDist` Examples and Recipes" msgstr "" -#: ../Doc/library/statistics.rst:716 +#: ../Doc/library/statistics.rst:729 msgid ":class:`NormalDist` readily solves classic probability problems." msgstr "" -#: ../Doc/library/statistics.rst:718 +#: ../Doc/library/statistics.rst:731 msgid "" "For example, given `historical data for SAT exams `_ showing that scores are normally distributed " @@ -839,24 +856,24 @@ msgid "" "rounding to the nearest whole number:" msgstr "" -#: ../Doc/library/statistics.rst:731 +#: ../Doc/library/statistics.rst:744 msgid "" "Find the `quartiles `_ and `deciles " "`_ for the SAT scores:" msgstr "" -#: ../Doc/library/statistics.rst:741 +#: ../Doc/library/statistics.rst:754 msgid "" "To estimate the distribution for a model than isn't easy to solve " "analytically, :class:`NormalDist` can generate input samples for a `Monte " "Carlo simulation `_:" msgstr "" -#: ../Doc/library/statistics.rst:757 +#: ../Doc/library/statistics.rst:770 msgid "Normal distributions commonly arise in machine learning problems." msgstr "" -#: ../Doc/library/statistics.rst:759 +#: ../Doc/library/statistics.rst:772 msgid "" "Wikipedia has a `nice example of a Naive Bayesian Classifier `_. The " @@ -864,20 +881,20 @@ msgid "" "distributed features including height, weight, and foot size." msgstr "" -#: ../Doc/library/statistics.rst:764 +#: ../Doc/library/statistics.rst:777 msgid "" "We're given a training dataset with measurements for eight people. The " "measurements are assumed to be normally distributed, so we summarize the " "data with :class:`NormalDist`:" msgstr "" -#: ../Doc/library/statistics.rst:777 +#: ../Doc/library/statistics.rst:790 msgid "" "Next, we encounter a new person whose feature measurements are known but " "whose gender is unknown:" msgstr "" -#: ../Doc/library/statistics.rst:786 +#: ../Doc/library/statistics.rst:799 msgid "" "Starting with a 50% `prior probability `_ of being male or female, we compute the posterior as " @@ -885,7 +902,7 @@ msgid "" "given the gender:" msgstr "" -#: ../Doc/library/statistics.rst:801 +#: ../Doc/library/statistics.rst:814 msgid "" "The final prediction goes to the largest posterior. This is known as the " "`maximum a posteriori \n" "Language-Team: FRENCH \n" @@ -129,22 +129,22 @@ msgid "These are the Boolean operations, ordered by ascending priority:" msgstr "Ce sont les opérations booléennes, classées par priorité ascendante :" #: ../Doc/library/stdtypes.rst:85 ../Doc/library/stdtypes.rst:143 -#: ../Doc/library/stdtypes.rst:273 ../Doc/library/stdtypes.rst:362 -#: ../Doc/library/stdtypes.rst:412 ../Doc/library/stdtypes.rst:862 -#: ../Doc/library/stdtypes.rst:1057 +#: ../Doc/library/stdtypes.rst:272 ../Doc/library/stdtypes.rst:361 +#: ../Doc/library/stdtypes.rst:411 ../Doc/library/stdtypes.rst:861 +#: ../Doc/library/stdtypes.rst:1056 msgid "Operation" msgstr "Opération" -#: ../Doc/library/stdtypes.rst:85 ../Doc/library/stdtypes.rst:273 -#: ../Doc/library/stdtypes.rst:362 ../Doc/library/stdtypes.rst:412 -#: ../Doc/library/stdtypes.rst:862 ../Doc/library/stdtypes.rst:1057 +#: ../Doc/library/stdtypes.rst:85 ../Doc/library/stdtypes.rst:272 +#: ../Doc/library/stdtypes.rst:361 ../Doc/library/stdtypes.rst:411 +#: ../Doc/library/stdtypes.rst:861 ../Doc/library/stdtypes.rst:1056 msgid "Result" msgstr "Résultat" -#: ../Doc/library/stdtypes.rst:85 ../Doc/library/stdtypes.rst:273 -#: ../Doc/library/stdtypes.rst:412 ../Doc/library/stdtypes.rst:862 -#: ../Doc/library/stdtypes.rst:1057 ../Doc/library/stdtypes.rst:2227 -#: ../Doc/library/stdtypes.rst:3377 +#: ../Doc/library/stdtypes.rst:85 ../Doc/library/stdtypes.rst:272 +#: ../Doc/library/stdtypes.rst:411 ../Doc/library/stdtypes.rst:861 +#: ../Doc/library/stdtypes.rst:1056 ../Doc/library/stdtypes.rst:2226 +#: ../Doc/library/stdtypes.rst:3376 msgid "Notes" msgstr "Notes" @@ -156,10 +156,10 @@ msgstr "``x or y``" msgid "if *x* is false, then *y*, else *x*" msgstr "si *x* est faux, alors *y*, sinon *x*" -#: ../Doc/library/stdtypes.rst:87 ../Doc/library/stdtypes.rst:283 -#: ../Doc/library/stdtypes.rst:864 ../Doc/library/stdtypes.rst:867 -#: ../Doc/library/stdtypes.rst:1068 ../Doc/library/stdtypes.rst:2233 -#: ../Doc/library/stdtypes.rst:3383 +#: ../Doc/library/stdtypes.rst:87 ../Doc/library/stdtypes.rst:282 +#: ../Doc/library/stdtypes.rst:863 ../Doc/library/stdtypes.rst:866 +#: ../Doc/library/stdtypes.rst:1067 ../Doc/library/stdtypes.rst:2232 +#: ../Doc/library/stdtypes.rst:3382 msgid "\\(1)" msgstr "\\(1)" @@ -171,10 +171,10 @@ msgstr "``x and y``" msgid "if *x* is false, then *x*, else *y*" msgstr "si *x* est faux, alors *x*, sinon *y*" -#: ../Doc/library/stdtypes.rst:90 ../Doc/library/stdtypes.rst:286 -#: ../Doc/library/stdtypes.rst:306 ../Doc/library/stdtypes.rst:1096 -#: ../Doc/library/stdtypes.rst:2237 ../Doc/library/stdtypes.rst:2239 -#: ../Doc/library/stdtypes.rst:3387 ../Doc/library/stdtypes.rst:3389 +#: ../Doc/library/stdtypes.rst:90 ../Doc/library/stdtypes.rst:285 +#: ../Doc/library/stdtypes.rst:305 ../Doc/library/stdtypes.rst:1095 +#: ../Doc/library/stdtypes.rst:2236 ../Doc/library/stdtypes.rst:2238 +#: ../Doc/library/stdtypes.rst:3386 ../Doc/library/stdtypes.rst:3388 msgid "\\(2)" msgstr "\\(2)" @@ -186,19 +186,19 @@ msgstr "``not x``" msgid "if *x* is false, then ``True``, else ``False``" msgstr "si *x* est faux, alors ``True``, sinon ``False``" -#: ../Doc/library/stdtypes.rst:93 ../Doc/library/stdtypes.rst:876 -#: ../Doc/library/stdtypes.rst:1099 ../Doc/library/stdtypes.rst:2241 -#: ../Doc/library/stdtypes.rst:2243 ../Doc/library/stdtypes.rst:2245 -#: ../Doc/library/stdtypes.rst:2247 ../Doc/library/stdtypes.rst:3391 -#: ../Doc/library/stdtypes.rst:3393 ../Doc/library/stdtypes.rst:3395 -#: ../Doc/library/stdtypes.rst:3397 +#: ../Doc/library/stdtypes.rst:93 ../Doc/library/stdtypes.rst:875 +#: ../Doc/library/stdtypes.rst:1098 ../Doc/library/stdtypes.rst:2240 +#: ../Doc/library/stdtypes.rst:2242 ../Doc/library/stdtypes.rst:2244 +#: ../Doc/library/stdtypes.rst:2246 ../Doc/library/stdtypes.rst:3390 +#: ../Doc/library/stdtypes.rst:3392 ../Doc/library/stdtypes.rst:3394 +#: ../Doc/library/stdtypes.rst:3396 msgid "\\(3)" msgstr "\\(3)" -#: ../Doc/library/stdtypes.rst:102 ../Doc/library/stdtypes.rst:317 -#: ../Doc/library/stdtypes.rst:430 ../Doc/library/stdtypes.rst:903 -#: ../Doc/library/stdtypes.rst:1107 ../Doc/library/stdtypes.rst:2273 -#: ../Doc/library/stdtypes.rst:3427 +#: ../Doc/library/stdtypes.rst:102 ../Doc/library/stdtypes.rst:316 +#: ../Doc/library/stdtypes.rst:429 ../Doc/library/stdtypes.rst:902 +#: ../Doc/library/stdtypes.rst:1106 ../Doc/library/stdtypes.rst:2272 +#: ../Doc/library/stdtypes.rst:3426 msgid "Notes:" msgstr "Notes :" @@ -250,9 +250,9 @@ msgstr "" msgid "This table summarizes the comparison operations:" msgstr "Ce tableau résume les opérations de comparaison :" -#: ../Doc/library/stdtypes.rst:143 ../Doc/library/stdtypes.rst:2204 -#: ../Doc/library/stdtypes.rst:2227 ../Doc/library/stdtypes.rst:3354 -#: ../Doc/library/stdtypes.rst:3377 +#: ../Doc/library/stdtypes.rst:143 ../Doc/library/stdtypes.rst:2203 +#: ../Doc/library/stdtypes.rst:2226 ../Doc/library/stdtypes.rst:3353 +#: ../Doc/library/stdtypes.rst:3376 msgid "Meaning" msgstr "Signification" @@ -446,132 +446,132 @@ msgstr "" "spécifique." #: ../Doc/library/stdtypes.rst:268 +#, fuzzy msgid "" -"All numeric types (except complex) support the following operations, sorted " -"by ascending priority (all numeric operations have a higher priority than " -"comparison operations):" +"All numeric types (except complex) support the following operations (for " +"priorities of the operations, see :ref:`operator-summary`):" msgstr "" "Tous les types numériques (sauf complexe) gèrent les opérations suivantes, " "classées par priorité ascendante (toutes les opérations numériques ont une " "priorité plus élevée que les opérations de comparaison) :" -#: ../Doc/library/stdtypes.rst:273 +#: ../Doc/library/stdtypes.rst:272 msgid "Full documentation" msgstr "Documentation complète" -#: ../Doc/library/stdtypes.rst:275 +#: ../Doc/library/stdtypes.rst:274 msgid "``x + y``" msgstr "``x + y``" -#: ../Doc/library/stdtypes.rst:275 +#: ../Doc/library/stdtypes.rst:274 msgid "sum of *x* and *y*" msgstr "somme de *x* et *y*" -#: ../Doc/library/stdtypes.rst:277 +#: ../Doc/library/stdtypes.rst:276 msgid "``x - y``" msgstr "``x - y``" -#: ../Doc/library/stdtypes.rst:277 +#: ../Doc/library/stdtypes.rst:276 msgid "difference of *x* and *y*" msgstr "différence de *x* et *y*" -#: ../Doc/library/stdtypes.rst:279 +#: ../Doc/library/stdtypes.rst:278 msgid "``x * y``" msgstr "``x * y``" -#: ../Doc/library/stdtypes.rst:279 +#: ../Doc/library/stdtypes.rst:278 msgid "product of *x* and *y*" msgstr "produit de *x* et *y*" -#: ../Doc/library/stdtypes.rst:281 +#: ../Doc/library/stdtypes.rst:280 msgid "``x / y``" msgstr "``x / y``" -#: ../Doc/library/stdtypes.rst:281 +#: ../Doc/library/stdtypes.rst:280 msgid "quotient of *x* and *y*" msgstr "quotient de *x* et *y*" -#: ../Doc/library/stdtypes.rst:283 +#: ../Doc/library/stdtypes.rst:282 msgid "``x // y``" msgstr "``x // y``" -#: ../Doc/library/stdtypes.rst:283 +#: ../Doc/library/stdtypes.rst:282 msgid "floored quotient of *x* and *y*" msgstr "quotient entier de *x* et *y*" -#: ../Doc/library/stdtypes.rst:286 +#: ../Doc/library/stdtypes.rst:285 msgid "``x % y``" msgstr "``x % y``" -#: ../Doc/library/stdtypes.rst:286 +#: ../Doc/library/stdtypes.rst:285 msgid "remainder of ``x / y``" msgstr "reste de ``x / y``" -#: ../Doc/library/stdtypes.rst:288 +#: ../Doc/library/stdtypes.rst:287 msgid "``-x``" msgstr "``-x``" -#: ../Doc/library/stdtypes.rst:288 +#: ../Doc/library/stdtypes.rst:287 msgid "*x* negated" msgstr "négatif de *x*" -#: ../Doc/library/stdtypes.rst:290 +#: ../Doc/library/stdtypes.rst:289 msgid "``+x``" msgstr "``+x``" -#: ../Doc/library/stdtypes.rst:290 +#: ../Doc/library/stdtypes.rst:289 msgid "*x* unchanged" msgstr "*x* inchangé" -#: ../Doc/library/stdtypes.rst:292 +#: ../Doc/library/stdtypes.rst:291 msgid "``abs(x)``" msgstr "``abs(x)``" -#: ../Doc/library/stdtypes.rst:292 +#: ../Doc/library/stdtypes.rst:291 msgid "absolute value or magnitude of *x*" msgstr "valeur absolue de *x*" -#: ../Doc/library/stdtypes.rst:292 +#: ../Doc/library/stdtypes.rst:291 msgid ":func:`abs`" msgstr ":func:`abs`" -#: ../Doc/library/stdtypes.rst:295 +#: ../Doc/library/stdtypes.rst:294 msgid "``int(x)``" msgstr "``int(x)``" -#: ../Doc/library/stdtypes.rst:295 +#: ../Doc/library/stdtypes.rst:294 msgid "*x* converted to integer" msgstr "*x* converti en nombre entier" -#: ../Doc/library/stdtypes.rst:295 +#: ../Doc/library/stdtypes.rst:294 msgid "\\(3)\\(6)" msgstr "\\(3)\\(6)" -#: ../Doc/library/stdtypes.rst:295 +#: ../Doc/library/stdtypes.rst:294 msgid ":func:`int`" msgstr ":func:`int`" -#: ../Doc/library/stdtypes.rst:297 +#: ../Doc/library/stdtypes.rst:296 msgid "``float(x)``" msgstr "``float(x)``" -#: ../Doc/library/stdtypes.rst:297 +#: ../Doc/library/stdtypes.rst:296 msgid "*x* converted to floating point" msgstr "*x* converti en nombre à virgule flottante" -#: ../Doc/library/stdtypes.rst:297 +#: ../Doc/library/stdtypes.rst:296 msgid "\\(4)\\(6)" msgstr "\\(4)\\(6)" -#: ../Doc/library/stdtypes.rst:297 +#: ../Doc/library/stdtypes.rst:296 msgid ":func:`float`" msgstr ":func:`float`" -#: ../Doc/library/stdtypes.rst:299 +#: ../Doc/library/stdtypes.rst:298 msgid "``complex(re, im)``" msgstr "``complex(re, im)``" -#: ../Doc/library/stdtypes.rst:299 +#: ../Doc/library/stdtypes.rst:298 msgid "" "a complex number with real part *re*, imaginary part *im*. *im* defaults to " "zero." @@ -579,60 +579,60 @@ msgstr "" "un nombre complexe avec *re* pour partie réelle et *im* pour partie " "imaginaire. *im* vaut zéro par défaut." -#: ../Doc/library/stdtypes.rst:299 ../Doc/library/stdtypes.rst:1089 -#: ../Doc/library/stdtypes.rst:2235 ../Doc/library/stdtypes.rst:3414 +#: ../Doc/library/stdtypes.rst:298 ../Doc/library/stdtypes.rst:1088 +#: ../Doc/library/stdtypes.rst:2234 ../Doc/library/stdtypes.rst:3413 msgid "\\(6)" msgstr "\\(6)" -#: ../Doc/library/stdtypes.rst:299 +#: ../Doc/library/stdtypes.rst:298 msgid ":func:`complex`" msgstr ":func:`complex`" -#: ../Doc/library/stdtypes.rst:303 +#: ../Doc/library/stdtypes.rst:302 msgid "``c.conjugate()``" msgstr "``c.conjugate()``" -#: ../Doc/library/stdtypes.rst:303 +#: ../Doc/library/stdtypes.rst:302 msgid "conjugate of the complex number *c*" msgstr "conjugué du nombre complexe *c*" -#: ../Doc/library/stdtypes.rst:306 +#: ../Doc/library/stdtypes.rst:305 msgid "``divmod(x, y)``" msgstr "``divmod(x, y)``" -#: ../Doc/library/stdtypes.rst:306 +#: ../Doc/library/stdtypes.rst:305 msgid "the pair ``(x // y, x % y)``" msgstr "la paire ``(x // y, x % y)``" -#: ../Doc/library/stdtypes.rst:306 +#: ../Doc/library/stdtypes.rst:305 msgid ":func:`divmod`" msgstr ":func:`divmod`" -#: ../Doc/library/stdtypes.rst:308 +#: ../Doc/library/stdtypes.rst:307 msgid "``pow(x, y)``" msgstr "``pow(x, y)``" -#: ../Doc/library/stdtypes.rst:308 ../Doc/library/stdtypes.rst:310 +#: ../Doc/library/stdtypes.rst:307 ../Doc/library/stdtypes.rst:309 msgid "*x* to the power *y*" msgstr "*x* à la puissance *y*" -#: ../Doc/library/stdtypes.rst:308 ../Doc/library/stdtypes.rst:310 -#: ../Doc/library/stdtypes.rst:1078 ../Doc/library/stdtypes.rst:1081 -#: ../Doc/library/stdtypes.rst:2260 ../Doc/library/stdtypes.rst:2263 -#: ../Doc/library/stdtypes.rst:2266 ../Doc/library/stdtypes.rst:3410 -#: ../Doc/library/stdtypes.rst:3417 +#: ../Doc/library/stdtypes.rst:307 ../Doc/library/stdtypes.rst:309 +#: ../Doc/library/stdtypes.rst:1077 ../Doc/library/stdtypes.rst:1080 +#: ../Doc/library/stdtypes.rst:2259 ../Doc/library/stdtypes.rst:2262 +#: ../Doc/library/stdtypes.rst:2265 ../Doc/library/stdtypes.rst:3409 +#: ../Doc/library/stdtypes.rst:3416 msgid "\\(5)" msgstr "\\(5)" -#: ../Doc/library/stdtypes.rst:308 +#: ../Doc/library/stdtypes.rst:307 msgid ":func:`pow`" msgstr ":func:`pow`" -#: ../Doc/library/stdtypes.rst:310 +#: ../Doc/library/stdtypes.rst:309 msgid "``x ** y``" msgstr "``x ** y``" -#: ../Doc/library/stdtypes.rst:320 +#: ../Doc/library/stdtypes.rst:319 msgid "" "Also referred to as integer division. The resultant value is a whole " "integer, though the result's type is not necessarily int. The result is " @@ -645,7 +645,7 @@ msgstr "" "``(-1)//2`` vaut ``-1``, ``1//(-2)`` vaut ``-1``, et ``(-1)//(-2)`` vaut " "``0``." -#: ../Doc/library/stdtypes.rst:326 +#: ../Doc/library/stdtypes.rst:325 msgid "" "Not for complex numbers. Instead convert to floats using :func:`abs` if " "appropriate." @@ -653,7 +653,7 @@ msgstr "" "Pas pour les nombres complexes. Convertissez-les plutôt en nombres flottants " "à l'aide de :func:`abs` si c'est approprié." -#: ../Doc/library/stdtypes.rst:338 +#: ../Doc/library/stdtypes.rst:337 msgid "" "Conversion from floating point to integer may round or truncate as in C; see " "functions :func:`math.floor` and :func:`math.ceil` for well-defined " @@ -663,7 +663,7 @@ msgstr "" "en C ; voir les fonctions :func:`math.floor` et :func:`math.ceil` pour des " "conversions bien définies." -#: ../Doc/library/stdtypes.rst:343 +#: ../Doc/library/stdtypes.rst:342 msgid "" "float also accepts the strings \"nan\" and \"inf\" with an optional prefix " "\"+\" or \"-\" for Not a Number (NaN) and positive or negative infinity." @@ -671,7 +671,7 @@ msgstr "" "*float* accepte aussi les chaînes *nan* et *inf* avec un préfixe optionnel ``" "+`` ou ``-`` pour *Not a Number* (*NaN*) et les infinis positif ou négatif." -#: ../Doc/library/stdtypes.rst:347 +#: ../Doc/library/stdtypes.rst:346 msgid "" "Python defines ``pow(0, 0)`` and ``0 ** 0`` to be ``1``, as is common for " "programming languages." @@ -679,7 +679,7 @@ msgstr "" "Python définit ``pow(0, 0)`` et ``0 ** 0`` valant ``1``, puisque c'est " "courant pour les langages de programmation, et logique." -#: ../Doc/library/stdtypes.rst:351 +#: ../Doc/library/stdtypes.rst:350 msgid "" "The numeric literals accepted include the digits ``0`` to ``9`` or any " "Unicode equivalent (code points with the ``Nd`` property)." @@ -687,7 +687,7 @@ msgstr "" "Les littéraux numériques acceptés comprennent les chiffres ``0`` à ``9`` ou " "tout équivalent Unicode (caractères avec la propriété ``Nd``)." -#: ../Doc/library/stdtypes.rst:354 +#: ../Doc/library/stdtypes.rst:353 #, fuzzy msgid "" "See http://www.unicode.org/Public/12.1.0/ucd/extracted/DerivedNumericType." @@ -696,7 +696,7 @@ msgstr "" "Voir http://www.unicode.org/Public/10.0.0/ucd/extracted/DerivedNumericType." "txt pour une liste complète des caractères avec la propriété ``Nd``." -#: ../Doc/library/stdtypes.rst:358 +#: ../Doc/library/stdtypes.rst:357 msgid "" "All :class:`numbers.Real` types (:class:`int` and :class:`float`) also " "include the following operations:" @@ -704,19 +704,19 @@ msgstr "" "Tous types :class:`numbers.Real` (:class:`int` et :class:`float`) " "comprennent également les opérations suivantes :" -#: ../Doc/library/stdtypes.rst:364 +#: ../Doc/library/stdtypes.rst:363 msgid ":func:`math.trunc(\\ x) `" msgstr ":func:`math.trunc(\\ x) `" -#: ../Doc/library/stdtypes.rst:364 +#: ../Doc/library/stdtypes.rst:363 msgid "*x* truncated to :class:`~numbers.Integral`" msgstr "*x* tronqué à l':class:`~numbers.Integral`" -#: ../Doc/library/stdtypes.rst:367 +#: ../Doc/library/stdtypes.rst:366 msgid ":func:`round(x[, n]) `" msgstr ":func:`round(x[, n]) `" -#: ../Doc/library/stdtypes.rst:367 +#: ../Doc/library/stdtypes.rst:366 msgid "" "*x* rounded to *n* digits, rounding half to even. If *n* is omitted, it " "defaults to 0." @@ -724,23 +724,23 @@ msgstr "" "*x* arrondi à *n* chiffres, arrondissant la moitié au pair. Si *n* est omis, " "la valeur par défaut à 0." -#: ../Doc/library/stdtypes.rst:371 +#: ../Doc/library/stdtypes.rst:370 msgid ":func:`math.floor(\\ x) `" msgstr ":func:`math.floor(\\ x) `" -#: ../Doc/library/stdtypes.rst:371 +#: ../Doc/library/stdtypes.rst:370 msgid "the greatest :class:`~numbers.Integral` <= *x*" msgstr "le plus grand :class:`~numbers.Integral` <= *x*" -#: ../Doc/library/stdtypes.rst:374 +#: ../Doc/library/stdtypes.rst:373 msgid ":func:`math.ceil(x) `" msgstr ":func:`math.ceil(x) `" -#: ../Doc/library/stdtypes.rst:374 +#: ../Doc/library/stdtypes.rst:373 msgid "the least :class:`~numbers.Integral` >= *x*" msgstr "le plus petit :class:`~numbers.Integral` >= *x*" -#: ../Doc/library/stdtypes.rst:378 +#: ../Doc/library/stdtypes.rst:377 msgid "" "For additional numeric operations see the :mod:`math` and :mod:`cmath` " "modules." @@ -748,11 +748,11 @@ msgstr "" "Pour d'autres opérations numériques voir les modules :mod:`math` et :mod:" "`cmath`." -#: ../Doc/library/stdtypes.rst:387 +#: ../Doc/library/stdtypes.rst:386 msgid "Bitwise Operations on Integer Types" msgstr "Opérations sur les bits des nombres entiers" -#: ../Doc/library/stdtypes.rst:401 +#: ../Doc/library/stdtypes.rst:400 msgid "" "Bitwise operations only make sense for integers. The result of bitwise " "operations is calculated as though carried out in two's complement with an " @@ -762,7 +762,7 @@ msgstr "" "résultat d'une opération bit à bit est calculé comme si elle était effectuée " "en complément à deux avec un nombre infini de bits de signe." -#: ../Doc/library/stdtypes.rst:405 +#: ../Doc/library/stdtypes.rst:404 msgid "" "The priorities of the binary bitwise operations are all lower than the " "numeric operations and higher than the comparisons; the unary operation " @@ -774,83 +774,83 @@ msgstr "" "l'opération unaire ``~`` a la même priorité que les autres opérations " "numériques unaires (``+`` et ``-``)." -#: ../Doc/library/stdtypes.rst:409 +#: ../Doc/library/stdtypes.rst:408 msgid "This table lists the bitwise operations sorted in ascending priority:" msgstr "" "Ce tableau répertorie les opérations binaires triées par priorité " "ascendante :" -#: ../Doc/library/stdtypes.rst:414 +#: ../Doc/library/stdtypes.rst:413 msgid "``x | y``" msgstr "``x | y``" -#: ../Doc/library/stdtypes.rst:414 +#: ../Doc/library/stdtypes.rst:413 msgid "bitwise :dfn:`or` of *x* and *y*" msgstr ":dfn:`ou ` binaire de *x* et *y*" -#: ../Doc/library/stdtypes.rst:414 ../Doc/library/stdtypes.rst:417 -#: ../Doc/library/stdtypes.rst:420 ../Doc/library/stdtypes.rst:1102 -#: ../Doc/library/stdtypes.rst:2249 ../Doc/library/stdtypes.rst:2253 -#: ../Doc/library/stdtypes.rst:3399 ../Doc/library/stdtypes.rst:3403 +#: ../Doc/library/stdtypes.rst:413 ../Doc/library/stdtypes.rst:416 +#: ../Doc/library/stdtypes.rst:419 ../Doc/library/stdtypes.rst:1101 +#: ../Doc/library/stdtypes.rst:2248 ../Doc/library/stdtypes.rst:2252 +#: ../Doc/library/stdtypes.rst:3398 ../Doc/library/stdtypes.rst:3402 msgid "\\(4)" msgstr "\\(4)" -#: ../Doc/library/stdtypes.rst:417 +#: ../Doc/library/stdtypes.rst:416 msgid "``x ^ y``" msgstr "``x ^ y``" -#: ../Doc/library/stdtypes.rst:417 +#: ../Doc/library/stdtypes.rst:416 msgid "bitwise :dfn:`exclusive or` of *x* and *y*" msgstr ":dfn:`ou ` exclusive binaire de *x* et *y*" -#: ../Doc/library/stdtypes.rst:420 +#: ../Doc/library/stdtypes.rst:419 msgid "``x & y``" msgstr "``x & y``" -#: ../Doc/library/stdtypes.rst:420 +#: ../Doc/library/stdtypes.rst:419 msgid "bitwise :dfn:`and` of *x* and *y*" msgstr ":dfn:`et binaire ` de *x* et *y*" -#: ../Doc/library/stdtypes.rst:423 +#: ../Doc/library/stdtypes.rst:422 msgid "``x << n``" msgstr "``x << n``" -#: ../Doc/library/stdtypes.rst:423 +#: ../Doc/library/stdtypes.rst:422 msgid "*x* shifted left by *n* bits" msgstr "*x* décalé vers la gauche de *n* bits" -#: ../Doc/library/stdtypes.rst:423 +#: ../Doc/library/stdtypes.rst:422 msgid "(1)(2)" msgstr "(1)(2)" -#: ../Doc/library/stdtypes.rst:425 +#: ../Doc/library/stdtypes.rst:424 msgid "``x >> n``" msgstr "``x >> n``" -#: ../Doc/library/stdtypes.rst:425 +#: ../Doc/library/stdtypes.rst:424 msgid "*x* shifted right by *n* bits" msgstr "*x* décalé vers la droite de *n* bits" -#: ../Doc/library/stdtypes.rst:425 +#: ../Doc/library/stdtypes.rst:424 msgid "(1)(3)" msgstr "(1)(3)" -#: ../Doc/library/stdtypes.rst:427 +#: ../Doc/library/stdtypes.rst:426 msgid "``~x``" msgstr "``~x``" -#: ../Doc/library/stdtypes.rst:427 +#: ../Doc/library/stdtypes.rst:426 msgid "the bits of *x* inverted" msgstr "les bits de *x*, inversés" -#: ../Doc/library/stdtypes.rst:433 +#: ../Doc/library/stdtypes.rst:432 msgid "" "Negative shift counts are illegal and cause a :exc:`ValueError` to be raised." msgstr "" "Des valeurs de décalage négatives sont illégales et provoquent une " "exception :exc:`ValueError`." -#: ../Doc/library/stdtypes.rst:436 +#: ../Doc/library/stdtypes.rst:435 msgid "" "A left shift by *n* bits is equivalent to multiplication by ``pow(2, n)`` " "without overflow check." @@ -858,7 +858,7 @@ msgstr "" "Un décalage à gauche de *n* bits est équivalent à la multiplication par " "``pow(2, n)`` sans vérification de débordement." -#: ../Doc/library/stdtypes.rst:440 +#: ../Doc/library/stdtypes.rst:439 msgid "" "A right shift by *n* bits is equivalent to division by ``pow(2, n)`` without " "overflow check." @@ -866,7 +866,7 @@ msgstr "" "Un décalage à droite de *n* les bits est équivalent à la division par " "``pow(2, n)`` sans vérification de débordement." -#: ../Doc/library/stdtypes.rst:444 +#: ../Doc/library/stdtypes.rst:443 msgid "" "Performing these calculations with at least one extra sign extension bit in " "a finite two's complement representation (a working bit-width of ``1 + max(x." @@ -879,11 +879,11 @@ msgstr "" "bit_length()`` ou plus) est suffisante pour obtenir le même résultat que " "s'il y avait un nombre infini de bits de signe." -#: ../Doc/library/stdtypes.rst:451 +#: ../Doc/library/stdtypes.rst:450 msgid "Additional Methods on Integer Types" msgstr "Méthodes supplémentaires sur les entiers" -#: ../Doc/library/stdtypes.rst:453 +#: ../Doc/library/stdtypes.rst:452 msgid "" "The int type implements the :class:`numbers.Integral` :term:`abstract base " "class`. In addition, it provides a few more methods:" @@ -892,7 +892,7 @@ msgstr "" "class>` :class:`numbers.Integral`. Il fournit aussi quelques autres " "méthodes :" -#: ../Doc/library/stdtypes.rst:458 +#: ../Doc/library/stdtypes.rst:457 msgid "" "Return the number of bits necessary to represent an integer in binary, " "excluding the sign and leading zeros::" @@ -900,7 +900,7 @@ msgstr "" "Renvoie le nombre de bits nécessaires pour représenter un nombre entier en " "binaire, à l'exclusion du signe et des zéros non significatifs ::" -#: ../Doc/library/stdtypes.rst:467 +#: ../Doc/library/stdtypes.rst:466 msgid "" "More precisely, if ``x`` is nonzero, then ``x.bit_length()`` is the unique " "positive integer ``k`` such that ``2**(k-1) <= abs(x) < 2**k``. " @@ -914,15 +914,15 @@ msgstr "" "correctement arrondi, ``k = 1 + int(log(abs(x), 2))``. Si ``x`` est nul, " "alors ``x.bit_length()`` donne ``0``." -#: ../Doc/library/stdtypes.rst:473 +#: ../Doc/library/stdtypes.rst:472 msgid "Equivalent to::" msgstr "Équivalent à ::" -#: ../Doc/library/stdtypes.rst:484 +#: ../Doc/library/stdtypes.rst:483 msgid "Return an array of bytes representing an integer." msgstr "Renvoie un tableau d'octets représentant un nombre entier." -#: ../Doc/library/stdtypes.rst:496 +#: ../Doc/library/stdtypes.rst:495 msgid "" "The integer is represented using *length* bytes. An :exc:`OverflowError` is " "raised if the integer is not representable with the given number of bytes." @@ -931,7 +931,7 @@ msgstr "" "`OverflowError` est levée s'il n'est pas possible de représenter l'entier " "avec le nombre d'octets donnés." -#: ../Doc/library/stdtypes.rst:500 ../Doc/library/stdtypes.rst:532 +#: ../Doc/library/stdtypes.rst:499 ../Doc/library/stdtypes.rst:531 msgid "" "The *byteorder* argument determines the byte order used to represent the " "integer. If *byteorder* is ``\"big\"``, the most significant byte is at the " @@ -947,7 +947,7 @@ msgstr "" "demander l'ordre natif des octets du système hôte, donnez :data:`sys." "byteorder` comme *byteorder*." -#: ../Doc/library/stdtypes.rst:507 +#: ../Doc/library/stdtypes.rst:506 msgid "" "The *signed* argument determines whether two's complement is used to " "represent the integer. If *signed* is ``False`` and a negative integer is " @@ -959,11 +959,11 @@ msgstr "" "négatif est donné, une exception :exc:`OverflowError` est levée. La valeur " "par défaut pour *signed* est ``False``." -#: ../Doc/library/stdtypes.rst:516 +#: ../Doc/library/stdtypes.rst:515 msgid "Return the integer represented by the given array of bytes." msgstr "Donne le nombre entier représenté par le tableau d'octets fourni." -#: ../Doc/library/stdtypes.rst:529 +#: ../Doc/library/stdtypes.rst:528 msgid "" "The argument *bytes* must either be a :term:`bytes-like object` or an " "iterable producing bytes." @@ -971,7 +971,7 @@ msgstr "" "L'argument *bytes* doit être soit un :term:`bytes-like object` soit un " "itérable produisant des *bytes*." -#: ../Doc/library/stdtypes.rst:539 +#: ../Doc/library/stdtypes.rst:538 msgid "" "The *signed* argument indicates whether two's complement is used to " "represent the integer." @@ -979,7 +979,7 @@ msgstr "" "L'argument *signed* indique si le complément à deux est utilisé pour " "représenter le nombre entier." -#: ../Doc/library/stdtypes.rst:546 +#: ../Doc/library/stdtypes.rst:545 #, fuzzy msgid "" "Return a pair of integers whose ratio is exactly equal to the original " @@ -991,11 +991,11 @@ msgstr "" "nombre d'origine et avec un dénominateur positif. Lève :exc:`OverflowError` " "avec un infini et :exc:`ValueError` avec un NaN." -#: ../Doc/library/stdtypes.rst:554 +#: ../Doc/library/stdtypes.rst:553 msgid "Additional Methods on Float" msgstr "Méthodes supplémentaires sur les nombres à virgule flottante" -#: ../Doc/library/stdtypes.rst:556 +#: ../Doc/library/stdtypes.rst:555 msgid "" "The float type implements the :class:`numbers.Real` :term:`abstract base " "class`. float also has the following additional methods." @@ -1003,7 +1003,7 @@ msgstr "" "Le type *float* implémente la :term:`classe de base abstraite ` :class:`numbers.Real` et a également les méthodes suivantes." -#: ../Doc/library/stdtypes.rst:561 +#: ../Doc/library/stdtypes.rst:560 msgid "" "Return a pair of integers whose ratio is exactly equal to the original float " "and with a positive denominator. Raises :exc:`OverflowError` on infinities " @@ -1013,7 +1013,7 @@ msgstr "" "nombre d'origine et avec un dénominateur positif. Lève :exc:`OverflowError` " "avec un infini et :exc:`ValueError` avec un NaN." -#: ../Doc/library/stdtypes.rst:568 +#: ../Doc/library/stdtypes.rst:567 msgid "" "Return ``True`` if the float instance is finite with integral value, and " "``False`` otherwise::" @@ -1021,7 +1021,7 @@ msgstr "" "Donne ``True`` si l'instance de *float* est finie avec une valeur entière, " "et ``False`` autrement ::" -#: ../Doc/library/stdtypes.rst:576 +#: ../Doc/library/stdtypes.rst:575 msgid "" "Two methods support conversion to and from hexadecimal strings. Since " "Python's floats are stored internally as binary numbers, converting a float " @@ -1038,7 +1038,7 @@ msgstr "" "nombres à virgule flottante. Cela peut être utile lors du débogage, et dans " "un travail numérique." -#: ../Doc/library/stdtypes.rst:587 +#: ../Doc/library/stdtypes.rst:586 msgid "" "Return a representation of a floating-point number as a hexadecimal string. " "For finite floating-point numbers, this representation will always include a " @@ -1049,7 +1049,7 @@ msgstr "" "représentation comprendra toujours un préfixe ``0x``, un suffixe ``p``, et " "un exposant." -#: ../Doc/library/stdtypes.rst:595 +#: ../Doc/library/stdtypes.rst:594 msgid "" "Class method to return the float represented by a hexadecimal string *s*. " "The string *s* may have leading and trailing whitespace." @@ -1058,7 +1058,7 @@ msgstr "" "caractères hexadécimale *s*. La chaîne *s* peut contenir des espaces avant " "et après le chiffre." -#: ../Doc/library/stdtypes.rst:600 +#: ../Doc/library/stdtypes.rst:599 msgid "" "Note that :meth:`float.hex` is an instance method, while :meth:`float." "fromhex` is a class method." @@ -1066,11 +1066,11 @@ msgstr "" "Notez que :meth:`float.hex` est une méthode d'instance, alors que :meth:" "`float.fromhex` est une méthode de classe." -#: ../Doc/library/stdtypes.rst:603 +#: ../Doc/library/stdtypes.rst:602 msgid "A hexadecimal string takes the form::" msgstr "Une chaîne hexadécimale prend la forme ::" -#: ../Doc/library/stdtypes.rst:607 +#: ../Doc/library/stdtypes.rst:606 msgid "" "where the optional ``sign`` may by either ``+`` or ``-``, ``integer`` and " "``fraction`` are strings of hexadecimal digits, and ``exponent`` is a " @@ -1094,7 +1094,7 @@ msgstr "" "chaînes hexadécimales produites en C via un format ``%a`` ou Java via " "``Double.toHexString`` sont acceptées par :meth:`float.fromhex`." -#: ../Doc/library/stdtypes.rst:620 +#: ../Doc/library/stdtypes.rst:619 msgid "" "Note that the exponent is written in decimal rather than hexadecimal, and " "that it gives the power of 2 by which to multiply the coefficient. For " @@ -1106,7 +1106,7 @@ msgstr "" "la chaîne hexadécimale ``0x3.a7p10`` représente le nombre à virgule " "flottante ``(3 + 10./16 + 7./16**2) *2.0**10``, ou ``3740.0`` ::" -#: ../Doc/library/stdtypes.rst:630 +#: ../Doc/library/stdtypes.rst:629 msgid "" "Applying the reverse conversion to ``3740.0`` gives a different hexadecimal " "string representing the same number::" @@ -1114,11 +1114,11 @@ msgstr "" "L'application de la conversion inverse à ``3740.0`` donne une chaîne " "hexadécimale différente représentant le même nombre ::" -#: ../Doc/library/stdtypes.rst:640 +#: ../Doc/library/stdtypes.rst:639 msgid "Hashing of numeric types" msgstr "Hachage des types numériques" -#: ../Doc/library/stdtypes.rst:642 +#: ../Doc/library/stdtypes.rst:641 msgid "" "For numbers ``x`` and ``y``, possibly of different types, it's a requirement " "that ``hash(x) == hash(y)`` whenever ``x == y`` (see the :meth:`__hash__` " @@ -1146,7 +1146,7 @@ msgstr "" "réduction modulo ``P`` pour un nombre ``P`` premier fixe. La valeur de ``P`` " "est disponible comme attribut :attr:`modulus` de :data:`sys.hash_info`." -#: ../Doc/library/stdtypes.rst:657 +#: ../Doc/library/stdtypes.rst:656 msgid "" "Currently, the prime used is ``P = 2**31 - 1`` on machines with 32-bit C " "longs and ``P = 2**61 - 1`` on machines with 64-bit C longs." @@ -1155,11 +1155,11 @@ msgstr "" "dont les *longs* en C sont de 32 bits ``P = 2 ** 61 - 1`` sur des machines " "dont les *longs* en C font 64 bits." -#: ../Doc/library/stdtypes.rst:660 +#: ../Doc/library/stdtypes.rst:659 msgid "Here are the rules in detail:" msgstr "Voici les règles en détail :" -#: ../Doc/library/stdtypes.rst:662 +#: ../Doc/library/stdtypes.rst:661 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is not divisible " "by ``P``, define ``hash(x)`` as ``m * invmod(n, P) % P``, where ``invmod(n, " @@ -1169,7 +1169,7 @@ msgstr "" "divisible par ``P``, définir ``hash(x)`` comme ``m * invmod(n, P) % P``, où " "``invmod(n, P)`` donne l'inverse de ``n`` modulo ``P``." -#: ../Doc/library/stdtypes.rst:666 +#: ../Doc/library/stdtypes.rst:665 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is divisible by " "``P`` (but ``m`` is not) then ``n`` has no inverse modulo ``P`` and the rule " @@ -1181,7 +1181,7 @@ msgstr "" "``P`` et la règle ci-dessus n'est pas applicable ; dans ce cas définir " "``hash(x)`` comme étant la valeur de la constante ``sys.hash_info.inf``." -#: ../Doc/library/stdtypes.rst:671 +#: ../Doc/library/stdtypes.rst:670 msgid "" "If ``x = m / n`` is a negative rational number define ``hash(x)`` as ``-" "hash(-x)``. If the resulting hash is ``-1``, replace it with ``-2``." @@ -1189,7 +1189,7 @@ msgstr "" "Si ``x = m / n`` est un nombre rationnel négatif définir ``hash(x)`` comme " "``-hash(-x)``. Si le résultat est ``-1``, le remplacer par ``-2``." -#: ../Doc/library/stdtypes.rst:675 +#: ../Doc/library/stdtypes.rst:674 msgid "" "The particular values ``sys.hash_info.inf``, ``-sys.hash_info.inf`` and " "``sys.hash_info.nan`` are used as hash values for positive infinity, " @@ -1201,7 +1201,7 @@ msgstr "" "positif, l'infini négatif, ou *nans* (respectivement). (Tous les *nans* " "hachables ont la même valeur de hachage.)" -#: ../Doc/library/stdtypes.rst:680 +#: ../Doc/library/stdtypes.rst:679 msgid "" "For a :class:`complex` number ``z``, the hash values of the real and " "imaginary parts are combined by computing ``hash(z.real) + sys.hash_info." @@ -1216,7 +1216,7 @@ msgstr "" "2**(sys.hash_info.width - 1))``. Encore une fois, si le résultat est ``-1``, " "il est remplacé par ``-2``." -#: ../Doc/library/stdtypes.rst:688 +#: ../Doc/library/stdtypes.rst:687 msgid "" "To clarify the above rules, here's some example Python code, equivalent to " "the built-in hash, for computing the hash of a rational number, :class:" @@ -1226,11 +1226,11 @@ msgstr "" "Python, équivalent à la fonction de hachage native, pour calculer le hachage " "d'un nombre rationnel, d'un :class:`float`, ou d'un :class:`complex` ::" -#: ../Doc/library/stdtypes.rst:743 +#: ../Doc/library/stdtypes.rst:742 msgid "Iterator Types" msgstr "Les types itérateurs" -#: ../Doc/library/stdtypes.rst:751 +#: ../Doc/library/stdtypes.rst:750 msgid "" "Python supports a concept of iteration over containers. This is implemented " "using two distinct methods; these are used to allow user-defined classes to " @@ -1242,7 +1242,7 @@ msgstr "" "par l'utilisateur de devenir itérables. Les séquences, décrites plus bas en " "détail, supportent toujours les méthodes d'itération." -#: ../Doc/library/stdtypes.rst:756 +#: ../Doc/library/stdtypes.rst:755 msgid "" "One method needs to be defined for container objects to provide iteration " "support:" @@ -1250,7 +1250,7 @@ msgstr "" "Une méthode doit être définie afin que les objets conteneurs supportent " "l'itération :" -#: ../Doc/library/stdtypes.rst:763 +#: ../Doc/library/stdtypes.rst:762 msgid "" "Return an iterator object. The object is required to support the iterator " "protocol described below. If a container supports different types of " @@ -1270,7 +1270,7 @@ msgstr "" "correspond à l'attribut :c:member:`~PyTypeObject.tp_iter` de la structure du " "type des objets Python dans l'API Python/C." -#: ../Doc/library/stdtypes.rst:772 +#: ../Doc/library/stdtypes.rst:771 msgid "" "The iterator objects themselves are required to support the following two " "methods, which together form the :dfn:`iterator protocol`:" @@ -1278,7 +1278,7 @@ msgstr "" "Les itérateurs eux-mêmes doivent implémenter les deux méthodes suivantes, " "qui forment ensemble le :dfn:`protocole d'itérateur ` :" -#: ../Doc/library/stdtypes.rst:778 +#: ../Doc/library/stdtypes.rst:777 msgid "" "Return the iterator object itself. This is required to allow both " "containers and iterators to be used with the :keyword:`for` and :keyword:" @@ -1291,7 +1291,7 @@ msgstr "" "l'attribut :c:member:`~PyTypeObject.tp_iter` de la structure des types des " "objets Python dans l'API Python/C." -#: ../Doc/library/stdtypes.rst:786 +#: ../Doc/library/stdtypes.rst:785 msgid "" "Return the next item from the container. If there are no further items, " "raise the :exc:`StopIteration` exception. This method corresponds to the :c:" @@ -1303,7 +1303,7 @@ msgstr "" "l'attribut :c:member:`PyTypeObject.tp_iternext` de la structure du type des " "objets Python dans l'API Python/C." -#: ../Doc/library/stdtypes.rst:791 +#: ../Doc/library/stdtypes.rst:790 msgid "" "Python defines several iterator objects to support iteration over general " "and specific sequence types, dictionaries, and other more specialized " @@ -1315,7 +1315,7 @@ msgstr "" "plus spécialisées. Les types spécifiques ne sont pas importants au-delà de " "leur implémentation du protocole d'itération." -#: ../Doc/library/stdtypes.rst:796 +#: ../Doc/library/stdtypes.rst:795 msgid "" "Once an iterator's :meth:`~iterator.__next__` method raises :exc:" "`StopIteration`, it must continue to do so on subsequent calls. " @@ -1326,11 +1326,11 @@ msgstr "" "Implémentations qui ne respectent pas cette propriété sont considérées " "cassées." -#: ../Doc/library/stdtypes.rst:804 +#: ../Doc/library/stdtypes.rst:803 msgid "Generator Types" msgstr "Types générateurs" -#: ../Doc/library/stdtypes.rst:806 +#: ../Doc/library/stdtypes.rst:805 msgid "" "Python's :term:`generator`\\s provide a convenient way to implement the " "iterator protocol. If a container object's :meth:`__iter__` method is " @@ -1347,11 +1347,11 @@ msgstr "" "générateurs peuvent être trouvés dans :ref:`la documentation de l'expression " "yield `." -#: ../Doc/library/stdtypes.rst:818 +#: ../Doc/library/stdtypes.rst:817 msgid "Sequence Types --- :class:`list`, :class:`tuple`, :class:`range`" msgstr "Types séquentiels — :class:`list`, :class:`tuple`, :class:`range`" -#: ../Doc/library/stdtypes.rst:820 +#: ../Doc/library/stdtypes.rst:819 msgid "" "There are three basic sequence types: lists, tuples, and range objects. " "Additional sequence types tailored for processing of :ref:`binary data " @@ -1363,11 +1363,11 @@ msgstr "" "`données binaires ` et :ref:`chaînes de caractères ` " "sont décrits dans des sections dédiées." -#: ../Doc/library/stdtypes.rst:829 +#: ../Doc/library/stdtypes.rst:828 msgid "Common Sequence Operations" msgstr "Opérations communes sur les séquences" -#: ../Doc/library/stdtypes.rst:833 +#: ../Doc/library/stdtypes.rst:832 msgid "" "The operations in the following table are supported by most sequence types, " "both mutable and immutable. The :class:`collections.abc.Sequence` ABC is " @@ -1379,7 +1379,7 @@ msgstr "" "class:`collections.abc.Sequence` est fournie pour aider à implémenter " "correctement ces opérations sur les types séquentiels personnalisés." -#: ../Doc/library/stdtypes.rst:838 +#: ../Doc/library/stdtypes.rst:837 msgid "" "This table lists the sequence operations sorted in ascending priority. In " "the table, *s* and *t* are sequences of the same type, *n*, *i*, *j* and *k* " @@ -1391,7 +1391,7 @@ msgstr "" "*n*, *i*, *j* et *k* sont des nombres entiers et *x* est un objet arbitraire " "qui répond à toutes les restrictions de type et de valeur imposée par *s*." -#: ../Doc/library/stdtypes.rst:843 +#: ../Doc/library/stdtypes.rst:842 msgid "" "The ``in`` and ``not in`` operations have the same priorities as the " "comparison operations. The ``+`` (concatenation) and ``*`` (repetition) " @@ -1403,107 +1403,107 @@ msgstr "" "(répétition) ont la même priorité que les opérations numériques " "correspondantes. [3]_" -#: ../Doc/library/stdtypes.rst:864 +#: ../Doc/library/stdtypes.rst:863 msgid "``x in s``" msgstr "``x in s``" -#: ../Doc/library/stdtypes.rst:864 +#: ../Doc/library/stdtypes.rst:863 msgid "``True`` if an item of *s* is equal to *x*, else ``False``" msgstr "``True`` si un élément de *s* est égal à *x*, sinon ``False``" -#: ../Doc/library/stdtypes.rst:867 +#: ../Doc/library/stdtypes.rst:866 msgid "``x not in s``" msgstr "``x not in s``" -#: ../Doc/library/stdtypes.rst:867 +#: ../Doc/library/stdtypes.rst:866 msgid "``False`` if an item of *s* is equal to *x*, else ``True``" msgstr "``False`` si un élément de *s* est égal à *x*, sinon ``True``" -#: ../Doc/library/stdtypes.rst:870 +#: ../Doc/library/stdtypes.rst:869 msgid "``s + t``" msgstr "``s + t``" -#: ../Doc/library/stdtypes.rst:870 +#: ../Doc/library/stdtypes.rst:869 msgid "the concatenation of *s* and *t*" msgstr "la concaténation de *s* et *t*" -#: ../Doc/library/stdtypes.rst:870 +#: ../Doc/library/stdtypes.rst:869 msgid "(6)(7)" msgstr "(6)(7)" -#: ../Doc/library/stdtypes.rst:873 +#: ../Doc/library/stdtypes.rst:872 msgid "``s * n`` or ``n * s``" msgstr "``s * n`` or ``n * s``" -#: ../Doc/library/stdtypes.rst:873 +#: ../Doc/library/stdtypes.rst:872 msgid "equivalent to adding *s* to itself *n* times" msgstr "équivalent à ajouter *s* *n* fois à lui même" -#: ../Doc/library/stdtypes.rst:873 +#: ../Doc/library/stdtypes.rst:872 msgid "(2)(7)" msgstr "(2)(7)" -#: ../Doc/library/stdtypes.rst:876 +#: ../Doc/library/stdtypes.rst:875 msgid "``s[i]``" msgstr "``s[i]``" -#: ../Doc/library/stdtypes.rst:876 +#: ../Doc/library/stdtypes.rst:875 msgid "*i*\\ th item of *s*, origin 0" msgstr "*i*\\ :sup:`e` élément de *s* en commençant par 0" -#: ../Doc/library/stdtypes.rst:878 +#: ../Doc/library/stdtypes.rst:877 msgid "``s[i:j]``" msgstr "``s[i:j]``" -#: ../Doc/library/stdtypes.rst:878 +#: ../Doc/library/stdtypes.rst:877 msgid "slice of *s* from *i* to *j*" msgstr "tranche (*slice*) de *s* de *i* à *j*" -#: ../Doc/library/stdtypes.rst:878 +#: ../Doc/library/stdtypes.rst:877 msgid "(3)(4)" msgstr "(3)(4)" -#: ../Doc/library/stdtypes.rst:880 +#: ../Doc/library/stdtypes.rst:879 msgid "``s[i:j:k]``" msgstr "``s[i:j:k]``" -#: ../Doc/library/stdtypes.rst:880 +#: ../Doc/library/stdtypes.rst:879 msgid "slice of *s* from *i* to *j* with step *k*" msgstr "tranche (*slice*) de *s* de *i* à *j* avec un pas de *k*" -#: ../Doc/library/stdtypes.rst:880 +#: ../Doc/library/stdtypes.rst:879 msgid "(3)(5)" msgstr "(3)(5)" -#: ../Doc/library/stdtypes.rst:883 +#: ../Doc/library/stdtypes.rst:882 msgid "``len(s)``" msgstr "``len(s)``" -#: ../Doc/library/stdtypes.rst:883 +#: ../Doc/library/stdtypes.rst:882 msgid "length of *s*" msgstr "longueur de *s*" -#: ../Doc/library/stdtypes.rst:885 +#: ../Doc/library/stdtypes.rst:884 msgid "``min(s)``" msgstr "``min(s)``" -#: ../Doc/library/stdtypes.rst:885 +#: ../Doc/library/stdtypes.rst:884 msgid "smallest item of *s*" msgstr "plus petit élément de *s*" -#: ../Doc/library/stdtypes.rst:887 +#: ../Doc/library/stdtypes.rst:886 msgid "``max(s)``" msgstr "``max(s)``" -#: ../Doc/library/stdtypes.rst:887 +#: ../Doc/library/stdtypes.rst:886 msgid "largest item of *s*" msgstr "plus grand élément de *s*" -#: ../Doc/library/stdtypes.rst:889 +#: ../Doc/library/stdtypes.rst:888 msgid "``s.index(x[, i[, j]])``" msgstr "``s.index(x[, i[, j]])``" -#: ../Doc/library/stdtypes.rst:889 +#: ../Doc/library/stdtypes.rst:888 msgid "" "index of the first occurrence of *x* in *s* (at or after index *i* and " "before index *j*)" @@ -1511,19 +1511,19 @@ msgstr "" "indice de la première occurrence de *x* dans *s* (à ou après l'indice *i* et " "avant indice *j*)" -#: ../Doc/library/stdtypes.rst:889 ../Doc/library/stdtypes.rst:3385 +#: ../Doc/library/stdtypes.rst:888 ../Doc/library/stdtypes.rst:3384 msgid "\\(8)" msgstr "\\(8)" -#: ../Doc/library/stdtypes.rst:893 +#: ../Doc/library/stdtypes.rst:892 msgid "``s.count(x)``" msgstr "``s.count(x)``" -#: ../Doc/library/stdtypes.rst:893 +#: ../Doc/library/stdtypes.rst:892 msgid "total number of occurrences of *x* in *s*" msgstr "nombre total d'occurrences de *x* dans *s*" -#: ../Doc/library/stdtypes.rst:897 +#: ../Doc/library/stdtypes.rst:896 msgid "" "Sequences of the same type also support comparisons. In particular, tuples " "and lists are compared lexicographically by comparing corresponding " @@ -1539,7 +1539,7 @@ msgstr "" "longueur. (Pour plus de détails voir :ref:`comparisons` dans la référence du " "langage.)" -#: ../Doc/library/stdtypes.rst:906 +#: ../Doc/library/stdtypes.rst:905 msgid "" "While the ``in`` and ``not in`` operations are used only for simple " "containment testing in the general case, some specialised sequences (such " @@ -1551,7 +1551,7 @@ msgstr "" "spécialisées (telles que :class:`str`, :class:`bytes` et :class:`bytearray`) " "les utilisent aussi pour tester l'existence de sous-séquences ::" -#: ../Doc/library/stdtypes.rst:915 +#: ../Doc/library/stdtypes.rst:914 msgid "" "Values of *n* less than ``0`` are treated as ``0`` (which yields an empty " "sequence of the same type as *s*). Note that items in the sequence *s* are " @@ -1563,7 +1563,7 @@ msgstr "" "ne sont pas copiés ; ils sont référencés plusieurs fois. Cela hante souvent " "de nouveaux développeurs Python, typiquement ::" -#: ../Doc/library/stdtypes.rst:927 +#: ../Doc/library/stdtypes.rst:926 msgid "" "What has happened is that ``[[]]`` is a one-element list containing an empty " "list, so all three elements of ``[[]] * 3`` are references to this single " @@ -1576,7 +1576,7 @@ msgstr "" "modifie cette liste unique. Vous pouvez créer une liste des différentes " "listes de cette façon ::" -#: ../Doc/library/stdtypes.rst:939 +#: ../Doc/library/stdtypes.rst:938 msgid "" "Further explanation is available in the FAQ entry :ref:`faq-multidimensional-" "list`." @@ -1584,7 +1584,7 @@ msgstr "" "De plus amples explications sont disponibles dans la FAQ à la question :ref:" "`faq-multidimensional-list`." -#: ../Doc/library/stdtypes.rst:943 +#: ../Doc/library/stdtypes.rst:942 msgid "" "If *i* or *j* is negative, the index is relative to the end of sequence *s*: " "``len(s) + i`` or ``len(s) + j`` is substituted. But note that ``-0`` is " @@ -1594,7 +1594,7 @@ msgstr "" "*s* : ``len(s) + i`` ou ``len(s) + j`` est substitué. Mais notez que ``-0`` " "est toujours ``0``." -#: ../Doc/library/stdtypes.rst:948 +#: ../Doc/library/stdtypes.rst:947 msgid "" "The slice of *s* from *i* to *j* is defined as the sequence of items with " "index *k* such that ``i <= k < j``. If *i* or *j* is greater than " @@ -1608,7 +1608,7 @@ msgstr "" "utilisé. Si *j* est omis ou ``None``, ``len(s)`` est utilisé. Si *i* est " "supérieure ou égale à *j*, la tranche est vide." -#: ../Doc/library/stdtypes.rst:955 +#: ../Doc/library/stdtypes.rst:954 msgid "" "The slice of *s* from *i* to *j* with step *k* is defined as the sequence of " "items with index ``x = i + n*k`` such that ``0 <= n < (j-i)/k``. In other " @@ -1631,7 +1631,7 @@ msgstr "" "Remarquez, *k* ne peut pas valoir zéro. Si *k* est ``None``, il est traité " "comme ``1``." -#: ../Doc/library/stdtypes.rst:966 +#: ../Doc/library/stdtypes.rst:965 msgid "" "Concatenating immutable sequences always results in a new object. This " "means that building up a sequence by repeated concatenation will have a " @@ -1644,7 +1644,7 @@ msgstr "" "totale. Pour obtenir un temps d'exécution linéaire, vous devez utiliser " "l'une des alternatives suivantes :" -#: ../Doc/library/stdtypes.rst:971 +#: ../Doc/library/stdtypes.rst:970 msgid "" "if concatenating :class:`str` objects, you can build a list and use :meth:" "`str.join` at the end or else write to an :class:`io.StringIO` instance and " @@ -1654,7 +1654,7 @@ msgstr "" "utiliser :meth:`str.join` à la fin, ou bien écrire dans une instance de :" "class:`io.StringIO` et récupérer sa valeur lorsque vous avez terminé" -#: ../Doc/library/stdtypes.rst:975 +#: ../Doc/library/stdtypes.rst:974 msgid "" "if concatenating :class:`bytes` objects, you can similarly use :meth:`bytes." "join` or :class:`io.BytesIO`, or you can do in-place concatenation with a :" @@ -1666,18 +1666,18 @@ msgstr "" "sur place avec un objet :class:`bytearray`. Les objets :class:`bytearray` " "sont muables et ont un mécanisme de sur-allocation efficace" -#: ../Doc/library/stdtypes.rst:980 +#: ../Doc/library/stdtypes.rst:979 msgid "if concatenating :class:`tuple` objects, extend a :class:`list` instead" msgstr "" "si vous concaténez des :class:`tuple`, utilisez plutôt *extend* sur une :" "class:`list`" -#: ../Doc/library/stdtypes.rst:982 +#: ../Doc/library/stdtypes.rst:981 msgid "for other types, investigate the relevant class documentation" msgstr "" "pour d'autres types, cherchez dans la documentation de la classe concernée" -#: ../Doc/library/stdtypes.rst:986 +#: ../Doc/library/stdtypes.rst:985 msgid "" "Some sequence types (such as :class:`range`) only support item sequences " "that follow specific patterns, and hence don't support sequence " @@ -1687,7 +1687,7 @@ msgstr "" "séquences qui suivent des modèles spécifiques, et donc ne prennent pas en " "charge la concaténation ou la répétition." -#: ../Doc/library/stdtypes.rst:991 +#: ../Doc/library/stdtypes.rst:990 msgid "" "``index`` raises :exc:`ValueError` when *x* is not found in *s*. Not all " "implementations support passing the additional arguments *i* and *j*. These " @@ -1704,11 +1704,11 @@ msgstr "" "l'indice renvoyé alors relatif au début de la séquence plutôt qu'au début de " "la tranche." -#: ../Doc/library/stdtypes.rst:1002 +#: ../Doc/library/stdtypes.rst:1001 msgid "Immutable Sequence Types" msgstr "Types de séquences immuables" -#: ../Doc/library/stdtypes.rst:1009 +#: ../Doc/library/stdtypes.rst:1008 msgid "" "The only operation that immutable sequence types generally implement that is " "not also implemented by mutable sequence types is support for the :func:" @@ -1718,7 +1718,7 @@ msgstr "" "n'est pas implémentée par les types de séquences muables est le support de " "la fonction native :func:`hash`." -#: ../Doc/library/stdtypes.rst:1013 +#: ../Doc/library/stdtypes.rst:1012 msgid "" "This support allows immutable sequences, such as :class:`tuple` instances, " "to be used as :class:`dict` keys and stored in :class:`set` and :class:" @@ -1728,7 +1728,7 @@ msgstr "" "instances de :class:`tuple`, en tant que clés de :class:`dict` et stockées " "dans les instances de :class:`set` et :class:`frozenset`." -#: ../Doc/library/stdtypes.rst:1017 +#: ../Doc/library/stdtypes.rst:1016 msgid "" "Attempting to hash an immutable sequence that contains unhashable values " "will result in :exc:`TypeError`." @@ -1736,11 +1736,11 @@ msgstr "" "Essayer de hacher une séquence immuable qui contient des valeurs non-" "hachables lèvera une :exc:`TypeError`." -#: ../Doc/library/stdtypes.rst:1024 +#: ../Doc/library/stdtypes.rst:1023 msgid "Mutable Sequence Types" msgstr "Types de séquences muables" -#: ../Doc/library/stdtypes.rst:1031 +#: ../Doc/library/stdtypes.rst:1030 msgid "" "The operations in the following table are defined on mutable sequence types. " "The :class:`collections.abc.MutableSequence` ABC is provided to make it " @@ -1751,7 +1751,7 @@ msgstr "" "MutableSequence` est prévue pour faciliter l'implémentation correcte de ces " "opérations sur les types de séquence personnalisées." -#: ../Doc/library/stdtypes.rst:1035 +#: ../Doc/library/stdtypes.rst:1034 msgid "" "In the table *s* is an instance of a mutable sequence type, *t* is any " "iterable object and *x* is an arbitrary object that meets any type and value " @@ -1764,131 +1764,131 @@ msgstr "" "`bytearray` accepte uniquement des nombres entiers qui répondent à la " "restriction de la valeur ``0 <= x <= 255``)." -#: ../Doc/library/stdtypes.rst:1059 +#: ../Doc/library/stdtypes.rst:1058 msgid "``s[i] = x``" msgstr "``s[i] = x``" -#: ../Doc/library/stdtypes.rst:1059 +#: ../Doc/library/stdtypes.rst:1058 msgid "item *i* of *s* is replaced by *x*" msgstr "élément *i* de *s* est remplacé par *x*" -#: ../Doc/library/stdtypes.rst:1062 +#: ../Doc/library/stdtypes.rst:1061 msgid "``s[i:j] = t``" msgstr "``s[i:j] = t``" -#: ../Doc/library/stdtypes.rst:1062 +#: ../Doc/library/stdtypes.rst:1061 msgid "" "slice of *s* from *i* to *j* is replaced by the contents of the iterable *t*" msgstr "" "tranche de *s* de *i* à *j* est remplacée par le contenu de l'itérable *t*" -#: ../Doc/library/stdtypes.rst:1066 +#: ../Doc/library/stdtypes.rst:1065 msgid "``del s[i:j]``" msgstr "``del s[i:j]``" -#: ../Doc/library/stdtypes.rst:1066 +#: ../Doc/library/stdtypes.rst:1065 msgid "same as ``s[i:j] = []``" msgstr "identique à ``s[i:j] = []``" -#: ../Doc/library/stdtypes.rst:1068 +#: ../Doc/library/stdtypes.rst:1067 msgid "``s[i:j:k] = t``" msgstr "``s[i:j:k] = t``" -#: ../Doc/library/stdtypes.rst:1068 +#: ../Doc/library/stdtypes.rst:1067 msgid "the elements of ``s[i:j:k]`` are replaced by those of *t*" msgstr "les éléments de ``s[i:j:k]`` sont remplacés par ceux de *t*" -#: ../Doc/library/stdtypes.rst:1071 +#: ../Doc/library/stdtypes.rst:1070 msgid "``del s[i:j:k]``" msgstr "``del s[i:j:k]``" -#: ../Doc/library/stdtypes.rst:1071 +#: ../Doc/library/stdtypes.rst:1070 msgid "removes the elements of ``s[i:j:k]`` from the list" msgstr "supprime les éléments de ``s[i:j:k]`` de la liste" -#: ../Doc/library/stdtypes.rst:1074 +#: ../Doc/library/stdtypes.rst:1073 msgid "``s.append(x)``" msgstr "``s.append(x)``" -#: ../Doc/library/stdtypes.rst:1074 +#: ../Doc/library/stdtypes.rst:1073 msgid "" "appends *x* to the end of the sequence (same as ``s[len(s):len(s)] = [x]``)" msgstr "" "ajoute *x* à la fin de la séquence (identique à ``s[len(s):len(s)] = [x]``)" -#: ../Doc/library/stdtypes.rst:1078 +#: ../Doc/library/stdtypes.rst:1077 msgid "``s.clear()``" msgstr "``s.clear()``" -#: ../Doc/library/stdtypes.rst:1078 +#: ../Doc/library/stdtypes.rst:1077 msgid "removes all items from *s* (same as ``del s[:]``)" msgstr "supprime tous les éléments de *s* (identique à ``del s[:]``)" -#: ../Doc/library/stdtypes.rst:1081 +#: ../Doc/library/stdtypes.rst:1080 msgid "``s.copy()``" msgstr "``s.copy()``" -#: ../Doc/library/stdtypes.rst:1081 +#: ../Doc/library/stdtypes.rst:1080 msgid "creates a shallow copy of *s* (same as ``s[:]``)" msgstr "crée une copie superficielle de *s* (identique à ``s[:]``)" -#: ../Doc/library/stdtypes.rst:1084 +#: ../Doc/library/stdtypes.rst:1083 msgid "``s.extend(t)`` or ``s += t``" msgstr "``s.extend(t)`` or ``s += t``" -#: ../Doc/library/stdtypes.rst:1084 +#: ../Doc/library/stdtypes.rst:1083 msgid "" "extends *s* with the contents of *t* (for the most part the same as " "``s[len(s):len(s)] = t``)" msgstr "étend *s* avec le contenu de *t* (proche de ``s[len(s):len(s)] = t``)" -#: ../Doc/library/stdtypes.rst:1089 +#: ../Doc/library/stdtypes.rst:1088 msgid "``s *= n``" msgstr "``s *= n``" -#: ../Doc/library/stdtypes.rst:1089 +#: ../Doc/library/stdtypes.rst:1088 msgid "updates *s* with its contents repeated *n* times" msgstr "met à jour *s* avec son contenu répété *n* fois" -#: ../Doc/library/stdtypes.rst:1092 +#: ../Doc/library/stdtypes.rst:1091 msgid "``s.insert(i, x)``" msgstr "``s.insert(i, x)``" -#: ../Doc/library/stdtypes.rst:1092 +#: ../Doc/library/stdtypes.rst:1091 msgid "" "inserts *x* into *s* at the index given by *i* (same as ``s[i:i] = [x]``)" msgstr "" "insère *x* dans *s* à l'index donné par *i* (identique à ``s[i:i] = [x]``)" -#: ../Doc/library/stdtypes.rst:1096 +#: ../Doc/library/stdtypes.rst:1095 msgid "``s.pop([i])``" msgstr "``s.pop([i])``" -#: ../Doc/library/stdtypes.rst:1096 +#: ../Doc/library/stdtypes.rst:1095 msgid "retrieves the item at *i* and also removes it from *s*" msgstr "récupère l'élément à *i* et le supprime de *s*" -#: ../Doc/library/stdtypes.rst:1099 +#: ../Doc/library/stdtypes.rst:1098 msgid "``s.remove(x)``" msgstr "``s.remove(x)``" -#: ../Doc/library/stdtypes.rst:1099 +#: ../Doc/library/stdtypes.rst:1098 msgid "remove the first item from *s* where ``s[i]`` is equal to *x*" msgstr "supprime le premier élément de *s* pour lequel ``s[i]`` est égal à *x*" -#: ../Doc/library/stdtypes.rst:1102 +#: ../Doc/library/stdtypes.rst:1101 msgid "``s.reverse()``" msgstr "``s.reverse()``" -#: ../Doc/library/stdtypes.rst:1102 +#: ../Doc/library/stdtypes.rst:1101 msgid "reverses the items of *s* in place" msgstr "inverse sur place les éléments de *s*" -#: ../Doc/library/stdtypes.rst:1110 +#: ../Doc/library/stdtypes.rst:1109 msgid "*t* must have the same length as the slice it is replacing." msgstr "*t* doit avoir la même longueur que la tranche qu'il remplace." -#: ../Doc/library/stdtypes.rst:1113 +#: ../Doc/library/stdtypes.rst:1112 msgid "" "The optional argument *i* defaults to ``-1``, so that by default the last " "item is removed and returned." @@ -1896,14 +1896,14 @@ msgstr "" "L'argument optionnel *i* vaut ``-1`` par défaut, afin que, par défaut, le " "dernier élément soit retiré et renvoyé." -#: ../Doc/library/stdtypes.rst:1117 +#: ../Doc/library/stdtypes.rst:1116 #, fuzzy msgid ":meth:`remove` raises :exc:`ValueError` when *x* is not found in *s*." msgstr "" "``remove`` lève une exception :exc:`ValueError` si *x* ne se trouve pas dans " "*s*." -#: ../Doc/library/stdtypes.rst:1120 +#: ../Doc/library/stdtypes.rst:1119 msgid "" "The :meth:`reverse` method modifies the sequence in place for economy of " "space when reversing a large sequence. To remind users that it operates by " @@ -1914,7 +1914,7 @@ msgstr "" "utilisateurs qu'elle a un effet de bord, elle ne renvoie pas la séquence " "inversée." -#: ../Doc/library/stdtypes.rst:1125 +#: ../Doc/library/stdtypes.rst:1124 #, fuzzy msgid "" ":meth:`clear` and :meth:`!copy` are included for consistency with the " @@ -1927,11 +1927,11 @@ msgstr "" "interfaces des conteneurs muables qui ne supportent pas les opérations de " "découpage (comme :class:`dict` et :class:`set`)" -#: ../Doc/library/stdtypes.rst:1131 +#: ../Doc/library/stdtypes.rst:1130 msgid ":meth:`clear` and :meth:`!copy` methods." msgstr "méthodes :meth:`clear` et :meth:`!copy`." -#: ../Doc/library/stdtypes.rst:1135 +#: ../Doc/library/stdtypes.rst:1134 msgid "" "The value *n* is an integer, or an object implementing :meth:`~object." "__index__`. Zero and negative values of *n* clear the sequence. Items in " @@ -1944,11 +1944,11 @@ msgstr "" "référencés plusieurs fois, comme expliqué pour ``s * n`` dans :ref:`typesseq-" "common`." -#: ../Doc/library/stdtypes.rst:1144 +#: ../Doc/library/stdtypes.rst:1143 msgid "Lists" msgstr "Listes" -#: ../Doc/library/stdtypes.rst:1148 +#: ../Doc/library/stdtypes.rst:1147 msgid "" "Lists are mutable sequences, typically used to store collections of " "homogeneous items (where the precise degree of similarity will vary by " @@ -1958,32 +1958,32 @@ msgstr "" "des collections d'éléments homogènes (où le degré de similitude variera " "selon l'usage)." -#: ../Doc/library/stdtypes.rst:1154 +#: ../Doc/library/stdtypes.rst:1153 msgid "Lists may be constructed in several ways:" msgstr "Les listes peuvent être construites de différentes manières :" -#: ../Doc/library/stdtypes.rst:1156 +#: ../Doc/library/stdtypes.rst:1155 msgid "Using a pair of square brackets to denote the empty list: ``[]``" msgstr "" "En utilisant une paire de crochets pour indiquer une liste vide : ``[]``" -#: ../Doc/library/stdtypes.rst:1157 +#: ../Doc/library/stdtypes.rst:1156 msgid "" "Using square brackets, separating items with commas: ``[a]``, ``[a, b, c]``" msgstr "" "Au moyen de crochets, séparant les éléments par des virgules : ``[a]``, " "``[a, b, c]``" -#: ../Doc/library/stdtypes.rst:1158 +#: ../Doc/library/stdtypes.rst:1157 msgid "Using a list comprehension: ``[x for x in iterable]``" msgstr "En utilisant une liste en compréhension : ``[x for x in iterable]``" -#: ../Doc/library/stdtypes.rst:1159 +#: ../Doc/library/stdtypes.rst:1158 msgid "Using the type constructor: ``list()`` or ``list(iterable)``" msgstr "" "En utilisant le constructeur du type : ``list()`` ou ``list(iterable)``" -#: ../Doc/library/stdtypes.rst:1161 +#: ../Doc/library/stdtypes.rst:1160 msgid "" "The constructor builds a list whose items are the same and in the same order " "as *iterable*'s items. *iterable* may be either a sequence, a container " @@ -2001,7 +2001,7 @@ msgstr "" "``list( (1, 2, 3) )`` renvoie ``[1, 2, 3]``. Si aucun argument est donné, le " "constructeur crée une nouvelle liste vide, ``[]``." -#: ../Doc/library/stdtypes.rst:1170 +#: ../Doc/library/stdtypes.rst:1169 msgid "" "Many other operations also produce lists, including the :func:`sorted` built-" "in." @@ -2009,7 +2009,7 @@ msgstr "" "De nombreuses autres opérations produisent des listes, tel que la fonction " "native :func:`sorted`." -#: ../Doc/library/stdtypes.rst:1173 +#: ../Doc/library/stdtypes.rst:1172 msgid "" "Lists implement all of the :ref:`common ` and :ref:`mutable " "` sequence operations. Lists also provide the following " @@ -2019,7 +2019,7 @@ msgstr "" "` et :ref:`muables `. Les listes " "fournissent également la méthode supplémentaire suivante :" -#: ../Doc/library/stdtypes.rst:1179 +#: ../Doc/library/stdtypes.rst:1178 msgid "" "This method sorts the list in place, using only ``<`` comparisons between " "items. Exceptions are not suppressed - if any comparison operations fail, " @@ -2031,7 +2031,7 @@ msgstr "" "si n'importe quelle opération de comparaison échoue, le tri échouera (et la " "liste sera probablement laissée dans un état partiellement modifié)." -#: ../Doc/library/stdtypes.rst:1184 +#: ../Doc/library/stdtypes.rst:1183 msgid "" ":meth:`sort` accepts two arguments that can only be passed by keyword (:ref:" "`keyword-only arguments `):" @@ -2039,7 +2039,7 @@ msgstr "" ":meth:`sort` accepte deux arguments qui ne peuvent être fournis que par mot-" "clé (:ref:`keyword-only arguments `):" -#: ../Doc/library/stdtypes.rst:1187 +#: ../Doc/library/stdtypes.rst:1186 msgid "" "*key* specifies a function of one argument that is used to extract a " "comparison key from each list element (for example, ``key=str.lower``). The " @@ -2054,7 +2054,7 @@ msgstr "" "``None``, signifie que les éléments sont triés directement sans en calculer " "une valeur \"clé\" séparée." -#: ../Doc/library/stdtypes.rst:1194 +#: ../Doc/library/stdtypes.rst:1193 msgid "" "The :func:`functools.cmp_to_key` utility is available to convert a 2.x style " "*cmp* function to a *key* function." @@ -2062,7 +2062,7 @@ msgstr "" "La fonction utilitaire :func:`functools.cmp_to_key` est disponible pour " "convertir une fonction *cmp* du style 2.x à une fonction *key*." -#: ../Doc/library/stdtypes.rst:1197 +#: ../Doc/library/stdtypes.rst:1196 msgid "" "*reverse* is a boolean value. If set to ``True``, then the list elements " "are sorted as if each comparison were reversed." @@ -2070,7 +2070,7 @@ msgstr "" "*reverse*, une valeur booléenne. Si elle est ``True``, la liste d'éléments " "est triée comme si toutes les comparaisons étaient inversées." -#: ../Doc/library/stdtypes.rst:1200 +#: ../Doc/library/stdtypes.rst:1199 msgid "" "This method modifies the sequence in place for economy of space when sorting " "a large sequence. To remind users that it operates by side effect, it does " @@ -2082,7 +2082,7 @@ msgstr "" "bord, elle ne renvoie pas la séquence triée (utilisez :func:`sorted` pour " "demander explicitement une nouvelle instance de liste triée)." -#: ../Doc/library/stdtypes.rst:1205 +#: ../Doc/library/stdtypes.rst:1204 msgid "" "The :meth:`sort` method is guaranteed to be stable. A sort is stable if it " "guarantees not to change the relative order of elements that compare equal " @@ -2094,13 +2094,13 @@ msgstr "" "trier en plusieurs passes (par exemple, trier par département, puis par " "niveau de salaire)." -#: ../Doc/library/stdtypes.rst:1210 +#: ../Doc/library/stdtypes.rst:1209 msgid "" "For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." msgstr "" "Pour des exemples de tris et un bref tutoriel, consultez :ref:`sortinghowto`." -#: ../Doc/library/stdtypes.rst:1214 +#: ../Doc/library/stdtypes.rst:1213 msgid "" "While a list is being sorted, the effect of attempting to mutate, or even " "inspect, the list is undefined. The C implementation of Python makes the " @@ -2112,11 +2112,11 @@ msgstr "" "liste comme vide pour la durée du traitement, et lève :exc:`ValueError` si " "elle détecte que la liste a été modifiée au cours du tri." -#: ../Doc/library/stdtypes.rst:1223 +#: ../Doc/library/stdtypes.rst:1222 msgid "Tuples" msgstr "Tuples" -#: ../Doc/library/stdtypes.rst:1227 +#: ../Doc/library/stdtypes.rst:1226 msgid "" "Tuples are immutable sequences, typically used to store collections of " "heterogeneous data (such as the 2-tuples produced by the :func:`enumerate` " @@ -2131,33 +2131,33 @@ msgstr "" "séquence homogène et immuable de données est nécessaire (pour, par exemple, " "les stocker dans un :class:`set` ou un :class:`dict`)." -#: ../Doc/library/stdtypes.rst:1235 +#: ../Doc/library/stdtypes.rst:1234 msgid "Tuples may be constructed in a number of ways:" msgstr "Les tuples peuvent être construits de différentes façons :" -#: ../Doc/library/stdtypes.rst:1237 +#: ../Doc/library/stdtypes.rst:1236 msgid "Using a pair of parentheses to denote the empty tuple: ``()``" msgstr "" "En utilisant une paire de parenthèses pour désigner le tuple vide : ``()``" -#: ../Doc/library/stdtypes.rst:1238 +#: ../Doc/library/stdtypes.rst:1237 msgid "Using a trailing comma for a singleton tuple: ``a,`` or ``(a,)``" msgstr "" "En utilisant une virgule, pour créer un tuple d'un élément : ``a,`` ou " "``(a,)``" -#: ../Doc/library/stdtypes.rst:1239 +#: ../Doc/library/stdtypes.rst:1238 msgid "Separating items with commas: ``a, b, c`` or ``(a, b, c)``" msgstr "" "En séparant les éléments avec des virgules : ``a, b, c`` ou ``(a, b, c)``" -#: ../Doc/library/stdtypes.rst:1240 +#: ../Doc/library/stdtypes.rst:1239 msgid "Using the :func:`tuple` built-in: ``tuple()`` or ``tuple(iterable)``" msgstr "" "En utilisant la fonction native :func:`tuple` : ``tuple()`` ou " "``tuple(iterable)``" -#: ../Doc/library/stdtypes.rst:1242 +#: ../Doc/library/stdtypes.rst:1241 msgid "" "The constructor builds a tuple whose items are the same and in the same " "order as *iterable*'s items. *iterable* may be either a sequence, a " @@ -2175,7 +2175,7 @@ msgstr "" "renvoie ``(1, 2, 3)``. Si aucun argument est donné, le constructeur crée un " "nouveau tuple vide, ``()``." -#: ../Doc/library/stdtypes.rst:1250 +#: ../Doc/library/stdtypes.rst:1249 msgid "" "Note that it is actually the comma which makes a tuple, not the parentheses. " "The parentheses are optional, except in the empty tuple case, or when they " @@ -2190,7 +2190,7 @@ msgstr "" "que ``f((a, b, c))`` est un appel de fonction avec un tuple de trois " "éléments comme unique argument." -#: ../Doc/library/stdtypes.rst:1256 +#: ../Doc/library/stdtypes.rst:1255 msgid "" "Tuples implement all of the :ref:`common ` sequence " "operations." @@ -2198,7 +2198,7 @@ msgstr "" "Les tuples implémentent toutes les opérations :ref:`communes ` des séquences." -#: ../Doc/library/stdtypes.rst:1259 +#: ../Doc/library/stdtypes.rst:1258 msgid "" "For heterogeneous collections of data where access by name is clearer than " "access by index, :func:`collections.namedtuple` may be a more appropriate " @@ -2208,11 +2208,11 @@ msgstr "" "clair que l'accès par index, :func:`collections.namedtuple` peut être un " "choix plus approprié qu'un simple tuple." -#: ../Doc/library/stdtypes.rst:1267 +#: ../Doc/library/stdtypes.rst:1266 msgid "Ranges" msgstr "*Ranges*" -#: ../Doc/library/stdtypes.rst:1271 +#: ../Doc/library/stdtypes.rst:1270 msgid "" "The :class:`range` type represents an immutable sequence of numbers and is " "commonly used for looping a specific number of times in :keyword:`for` loops." @@ -2221,7 +2221,7 @@ msgstr "" "couramment utilisé pour itérer un certain nombre de fois dans les boucles :" "keyword:`for`." -#: ../Doc/library/stdtypes.rst:1278 +#: ../Doc/library/stdtypes.rst:1277 msgid "" "The arguments to the range constructor must be integers (either built-in :" "class:`int` or any object that implements the ``__index__`` special " @@ -2235,7 +2235,7 @@ msgstr "" "valeur par défaut de l'argument *start* est ``0``. Si *step* est égal à " "zéro, une exception :exc:`ValueError` est levée." -#: ../Doc/library/stdtypes.rst:1284 +#: ../Doc/library/stdtypes.rst:1283 msgid "" "For a positive *step*, the contents of a range ``r`` are determined by the " "formula ``r[i] = start + step*i`` where ``i >= 0`` and ``r[i] < stop``." @@ -2243,7 +2243,7 @@ msgstr "" "Pour un *step* positif, le contenu d'un *range* ``r`` est déterminé par la " "formule ``r[i] = start + step*i`` où ``i >= 0`` et ``r[i] < stop``." -#: ../Doc/library/stdtypes.rst:1288 +#: ../Doc/library/stdtypes.rst:1287 msgid "" "For a negative *step*, the contents of the range are still determined by the " "formula ``r[i] = start + step*i``, but the constraints are ``i >= 0`` and " @@ -2253,7 +2253,7 @@ msgstr "" "formule ``r[i] = start + step*i``, mais les contraintes sont ``i >= 0`` et " "``r[i] > stop``." -#: ../Doc/library/stdtypes.rst:1292 +#: ../Doc/library/stdtypes.rst:1291 msgid "" "A range object will be empty if ``r[0]`` does not meet the value constraint. " "Ranges do support negative indices, but these are interpreted as indexing " @@ -2264,7 +2264,7 @@ msgstr "" "sont interprétées comme une indexation de la fin de la séquence déterminée " "par les indices positifs." -#: ../Doc/library/stdtypes.rst:1297 +#: ../Doc/library/stdtypes.rst:1296 msgid "" "Ranges containing absolute values larger than :data:`sys.maxsize` are " "permitted but some features (such as :func:`len`) may raise :exc:" @@ -2274,11 +2274,11 @@ msgstr "" "maxsize` sont permises, mais certaines fonctionnalités (comme :func:`len`) " "peuvent lever :exc:`OverflowError`." -#: ../Doc/library/stdtypes.rst:1301 +#: ../Doc/library/stdtypes.rst:1300 msgid "Range examples::" msgstr "Exemples avec *range* ::" -#: ../Doc/library/stdtypes.rst:1318 +#: ../Doc/library/stdtypes.rst:1317 msgid "" "Ranges implement all of the :ref:`common ` sequence " "operations except concatenation and repetition (due to the fact that range " @@ -2291,25 +2291,25 @@ msgstr "" "strict et que la répétition et la concaténation les feraient dévier de ce " "motif)." -#: ../Doc/library/stdtypes.rst:1325 +#: ../Doc/library/stdtypes.rst:1324 msgid "" "The value of the *start* parameter (or ``0`` if the parameter was not " "supplied)" msgstr "" "La valeur du paramètre *start* (ou ``0`` si le paramètre n'a pas été fourni)" -#: ../Doc/library/stdtypes.rst:1330 +#: ../Doc/library/stdtypes.rst:1329 msgid "The value of the *stop* parameter" msgstr "La valeur du paramètre *stop*" -#: ../Doc/library/stdtypes.rst:1334 +#: ../Doc/library/stdtypes.rst:1333 msgid "" "The value of the *step* parameter (or ``1`` if the parameter was not " "supplied)" msgstr "" "La valeur du paramètre *step* (ou ``1`` si le paramètre n'a pas été fourni)" -#: ../Doc/library/stdtypes.rst:1337 +#: ../Doc/library/stdtypes.rst:1336 msgid "" "The advantage of the :class:`range` type over a regular :class:`list` or :" "class:`tuple` is that a :class:`range` object will always take the same " @@ -2323,7 +2323,7 @@ msgstr "" "(car elle ne stocke que les valeurs ``start``, ``stop`` et ``step`` , le " "calcul des éléments individuels et les sous-intervalles au besoin)." -#: ../Doc/library/stdtypes.rst:1343 +#: ../Doc/library/stdtypes.rst:1342 msgid "" "Range objects implement the :class:`collections.abc.Sequence` ABC, and " "provide features such as containment tests, element index lookup, slicing " @@ -2334,7 +2334,7 @@ msgstr "" "(avec *in*), de recherche par index, le tranchage et ils gèrent les indices " "négatifs (voir :ref:`typesseq`):" -#: ../Doc/library/stdtypes.rst:1363 +#: ../Doc/library/stdtypes.rst:1362 msgid "" "Testing range objects for equality with ``==`` and ``!=`` compares them as " "sequences. That is, two range objects are considered equal if they " @@ -2350,7 +2350,7 @@ msgstr "" "et :attr:`~range.step` différents, par exemple ``range(0) == range(2, 1, " "3)`` ou ``range(0, 3, 2) == range(0, 4, 2)``.)" -#: ../Doc/library/stdtypes.rst:1370 +#: ../Doc/library/stdtypes.rst:1369 msgid "" "Implement the Sequence ABC. Support slicing and negative indices. Test :" "class:`int` objects for membership in constant time instead of iterating " @@ -2360,7 +2360,7 @@ msgstr "" "les indices négatifs. Tester l'appartenance d'un :class:`int` en temps " "constant au lieu d'itérer tous les éléments." -#: ../Doc/library/stdtypes.rst:1376 +#: ../Doc/library/stdtypes.rst:1375 msgid "" "Define '==' and '!=' to compare range objects based on the sequence of " "values they define (instead of comparing based on object identity)." @@ -2369,7 +2369,7 @@ msgstr "" "qu'ils définissent (au lieu d'une comparaison fondée sur l'identité de " "l'objet)." -#: ../Doc/library/stdtypes.rst:1381 +#: ../Doc/library/stdtypes.rst:1380 msgid "" "The :attr:`~range.start`, :attr:`~range.stop` and :attr:`~range.step` " "attributes." @@ -2377,7 +2377,7 @@ msgstr "" "Les attributs :attr:`~range.start`, :attr:`~range.stop` et :attr:`~range." "step`." -#: ../Doc/library/stdtypes.rst:1387 +#: ../Doc/library/stdtypes.rst:1386 msgid "" "The `linspace recipe `_ shows " "how to implement a lazy version of range suitable for floating point " @@ -2387,11 +2387,11 @@ msgstr "" "comment implémenter une version paresseuse de *range* adaptée aux nombres à " "virgule flottante." -#: ../Doc/library/stdtypes.rst:1399 +#: ../Doc/library/stdtypes.rst:1398 msgid "Text Sequence Type --- :class:`str`" msgstr "Type Séquence de Texte — :class:`str`" -#: ../Doc/library/stdtypes.rst:1401 +#: ../Doc/library/stdtypes.rst:1400 msgid "" "Textual data in Python is handled with :class:`str` objects, or :dfn:" "`strings`. Strings are immutable :ref:`sequences ` of Unicode code " @@ -2402,15 +2402,15 @@ msgstr "" "immuables de points de code Unicode. Les chaînes littérales peuvent être " "écrites de différentes manières :" -#: ../Doc/library/stdtypes.rst:1406 +#: ../Doc/library/stdtypes.rst:1405 msgid "Single quotes: ``'allows embedded \"double\" quotes'``" msgstr "Les guillemets simples : ``'autorisent les \"guillemets\"'``" -#: ../Doc/library/stdtypes.rst:1407 +#: ../Doc/library/stdtypes.rst:1406 msgid "Double quotes: ``\"allows embedded 'single' quotes\"``." msgstr "Les guillemets : ``\"autorisent les guillemets 'simples'\"``." -#: ../Doc/library/stdtypes.rst:1408 +#: ../Doc/library/stdtypes.rst:1407 msgid "" "Triple quoted: ``'''Three single quotes'''``, ``\"\"\"Three double quotes" "\"\"\"``" @@ -2418,7 +2418,7 @@ msgstr "" "Guillemets triples : ``'''Trois guillemets simples'''``, ``\"\"\"Trois " "guillemets\"\"\"``" -#: ../Doc/library/stdtypes.rst:1410 +#: ../Doc/library/stdtypes.rst:1409 msgid "" "Triple quoted strings may span multiple lines - all associated whitespace " "will be included in the string literal." @@ -2426,7 +2426,7 @@ msgstr "" "Les chaînes entre triple guillemets peuvent couvrir plusieurs lignes, tous " "les espaces associés seront inclus dans la chaîne littérale." -#: ../Doc/library/stdtypes.rst:1413 +#: ../Doc/library/stdtypes.rst:1412 msgid "" "String literals that are part of a single expression and have only " "whitespace between them will be implicitly converted to a single string " @@ -2436,7 +2436,7 @@ msgstr "" "seulement des espaces entre elles sont implicitement converties en une seule " "chaîne littérale. Autrement dit, ``(\"spam \" \"eggs\") == \"spam eggs\"``." -#: ../Doc/library/stdtypes.rst:1417 +#: ../Doc/library/stdtypes.rst:1416 msgid "" "See :ref:`strings` for more about the various forms of string literal, " "including supported escape sequences, and the ``r`` (\"raw\") prefix that " @@ -2447,7 +2447,7 @@ msgstr "" "et le préfixe ``r`` (*raw* (brut)) qui désactive la plupart des traitements " "de séquence d'échappement." -#: ../Doc/library/stdtypes.rst:1421 +#: ../Doc/library/stdtypes.rst:1420 msgid "" "Strings may also be created from other objects using the :class:`str` " "constructor." @@ -2455,7 +2455,7 @@ msgstr "" "Les chaînes peuvent également être créés à partir d'autres objets à l'aide " "du constructeur :class:`str`." -#: ../Doc/library/stdtypes.rst:1424 +#: ../Doc/library/stdtypes.rst:1423 msgid "" "Since there is no separate \"character\" type, indexing a string produces " "strings of length 1. That is, for a non-empty string *s*, ``s[0] == s[0:1]``." @@ -2464,7 +2464,7 @@ msgstr "" "produit des chaînes de longueur 1. Autrement dit, pour une chaîne non vide " "*s*, ``s[0] == s[0:1]``." -#: ../Doc/library/stdtypes.rst:1430 +#: ../Doc/library/stdtypes.rst:1429 msgid "" "There is also no mutable string type, but :meth:`str.join` or :class:`io." "StringIO` can be used to efficiently construct strings from multiple " @@ -2474,7 +2474,7 @@ msgstr "" "StringIO` peuvent être utilisées pour construire efficacement des chaînes à " "partir de plusieurs fragments." -#: ../Doc/library/stdtypes.rst:1434 +#: ../Doc/library/stdtypes.rst:1433 msgid "" "For backwards compatibility with the Python 2 series, the ``u`` prefix is " "once again permitted on string literals. It has no effect on the meaning of " @@ -2484,7 +2484,7 @@ msgstr "" "est à nouveau autorisé sur les chaînes littérales. Elle n'a aucun effet sur " "le sens des chaînes littérales et ne peut être combiné avec le préfixe ``r``." -#: ../Doc/library/stdtypes.rst:1446 +#: ../Doc/library/stdtypes.rst:1445 msgid "" "Return a :ref:`string ` version of *object*. If *object* is not " "provided, returns the empty string. Otherwise, the behavior of ``str()`` " @@ -2494,7 +2494,7 @@ msgstr "" "n'est pas fourni, renvoie une chaîne vide. Sinon, le comportement de " "``str()`` dépend de si *encoding* ou *errors* sont donnés, voir l'exemple." -#: ../Doc/library/stdtypes.rst:1450 +#: ../Doc/library/stdtypes.rst:1449 msgid "" "If neither *encoding* nor *errors* is given, ``str(object)`` returns :meth:" "`object.__str__() `, which is the \"informal\" or nicely " @@ -2508,7 +2508,7 @@ msgstr "" "chaîne elle-même. Si *object* n'a pas de méthode :meth:`~object.__str__`, :" "func:`str` utilise :meth:`repr(object) `." -#: ../Doc/library/stdtypes.rst:1461 +#: ../Doc/library/stdtypes.rst:1460 msgid "" "If at least one of *encoding* or *errors* is given, *object* should be a :" "term:`bytes-like object` (e.g. :class:`bytes` or :class:`bytearray`). In " @@ -2528,7 +2528,7 @@ msgstr "" "`binaryseq` et :ref:`bufferobjects` pour plus d'informations sur les " "*buffers*." -#: ../Doc/library/stdtypes.rst:1470 +#: ../Doc/library/stdtypes.rst:1469 msgid "" "Passing a :class:`bytes` object to :func:`str` without the *encoding* or " "*errors* arguments falls under the first case of returning the informal " @@ -2540,7 +2540,7 @@ msgstr "" "informelle de la chaîne est renvoyé (voir aussi l'option :option:`-b` de " "Python). Par exemple ::" -#: ../Doc/library/stdtypes.rst:1478 +#: ../Doc/library/stdtypes.rst:1477 msgid "" "For more information on the ``str`` class and its methods, see :ref:" "`textseq` and the :ref:`string-methods` section below. To output formatted " @@ -2552,11 +2552,11 @@ msgstr "" "de caractères, voir les sections :ref:`f-strings` et :ref:`formatstrings`. " "La section :ref:`stringservices` contient aussi des informations." -#: ../Doc/library/stdtypes.rst:1490 +#: ../Doc/library/stdtypes.rst:1489 msgid "String Methods" msgstr "Méthodes de chaînes de caractères" -#: ../Doc/library/stdtypes.rst:1495 +#: ../Doc/library/stdtypes.rst:1494 msgid "" "Strings implement all of the :ref:`common ` sequence " "operations, along with the additional methods described below." @@ -2564,7 +2564,7 @@ msgstr "" "Les chaînes implémentent toutes les opérations :ref:`communes des séquences " "`, ainsi que les autres méthodes décrites ci-dessous." -#: ../Doc/library/stdtypes.rst:1498 +#: ../Doc/library/stdtypes.rst:1497 msgid "" "Strings also support two styles of string formatting, one providing a large " "degree of flexibility and customization (see :meth:`str.format`, :ref:" @@ -2580,7 +2580,7 @@ msgstr "" "difficile à utiliser correctement, mais il est souvent plus rapide pour les " "cas, il peut gérer (:ref:`old-string-formatting`)." -#: ../Doc/library/stdtypes.rst:1505 +#: ../Doc/library/stdtypes.rst:1504 msgid "" "The :ref:`textservices` section of the standard library covers a number of " "other modules that provide various text related utilities (including regular " @@ -2590,7 +2590,7 @@ msgstr "" "nombre d'autres modules qui fournissent différents services relatifs au " "texte (y compris les expressions régulières dans le module :mod:`re`)." -#: ../Doc/library/stdtypes.rst:1511 +#: ../Doc/library/stdtypes.rst:1510 msgid "" "Return a copy of the string with its first character capitalized and the " "rest lowercased." @@ -2598,14 +2598,14 @@ msgstr "" "Renvoie une copie de la chaîne avec son premier caractère en majuscule et le " "reste en minuscule." -#: ../Doc/library/stdtypes.rst:1514 +#: ../Doc/library/stdtypes.rst:1513 msgid "" "The first character is now put into titlecase rather than uppercase. This " "means that characters like digraphs will only have their first letter " "capitalized, instead of the full character." msgstr "" -#: ../Doc/library/stdtypes.rst:1521 +#: ../Doc/library/stdtypes.rst:1520 msgid "" "Return a casefolded copy of the string. Casefolded strings may be used for " "caseless matching." @@ -2613,7 +2613,7 @@ msgstr "" "Renvoie une copie *casefolded* de la chaîne. Les chaînes *casefolded* " "peuvent être utilisées dans des comparaison insensibles à la casse." -#: ../Doc/library/stdtypes.rst:1524 +#: ../Doc/library/stdtypes.rst:1523 msgid "" "Casefolding is similar to lowercasing but more aggressive because it is " "intended to remove all case distinctions in a string. For example, the " @@ -2627,7 +2627,7 @@ msgstr "" "Comme il est déjà minuscule, :meth:`lower` ferait rien à ``'ß'``; :meth:" "`casefold` le convertit en ``\"ss\"``." -#: ../Doc/library/stdtypes.rst:1530 +#: ../Doc/library/stdtypes.rst:1529 msgid "" "The casefolding algorithm is described in section 3.13 of the Unicode " "Standard." @@ -2635,7 +2635,7 @@ msgstr "" "L'algorithme de *casefolding* est décrit dans la section 3.13 de la norme " "Unicode." -#: ../Doc/library/stdtypes.rst:1538 +#: ../Doc/library/stdtypes.rst:1537 msgid "" "Return centered in a string of length *width*. Padding is done using the " "specified *fillchar* (default is an ASCII space). The original string is " @@ -2646,7 +2646,7 @@ msgstr "" "ASCII). La chaîne d'origine est renvoyée si *width* est inférieur ou égale à " "``len(s)``." -#: ../Doc/library/stdtypes.rst:1546 +#: ../Doc/library/stdtypes.rst:1545 msgid "" "Return the number of non-overlapping occurrences of substring *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -2656,7 +2656,7 @@ msgstr "" "[*start*, *end*]. Les arguments facultatifs *start* et *end* sont " "interprétés comme pour des *slices*." -#: ../Doc/library/stdtypes.rst:1553 +#: ../Doc/library/stdtypes.rst:1552 msgid "" "Return an encoded version of the string as a bytes object. Default encoding " "is ``'utf-8'``. *errors* may be given to set a different error handling " @@ -2677,11 +2677,11 @@ msgstr "" "`error-handlers`. Pour une liste des encodages possibles, voir la section :" "ref:`standard-encodings`." -#: ../Doc/library/stdtypes.rst:1562 +#: ../Doc/library/stdtypes.rst:1561 msgid "Support for keyword arguments added." msgstr "Gestion des arguments par mot clef." -#: ../Doc/library/stdtypes.rst:1568 +#: ../Doc/library/stdtypes.rst:1567 msgid "" "Return ``True`` if the string ends with the specified *suffix*, otherwise " "return ``False``. *suffix* can also be a tuple of suffixes to look for. " @@ -2694,7 +2694,7 @@ msgstr "" "l'argument optionnel *end* est fourni, la comparaison s'arrête à cette " "position." -#: ../Doc/library/stdtypes.rst:1576 +#: ../Doc/library/stdtypes.rst:1575 msgid "" "Return a copy of the string where all tab characters are replaced by one or " "more spaces, depending on the current column and the given tab size. Tab " @@ -2724,7 +2724,7 @@ msgstr "" "et la colonne en cours est incrémentée de un indépendamment de la façon dont " "le caractère est représenté lors de l'affichage." -#: ../Doc/library/stdtypes.rst:1597 +#: ../Doc/library/stdtypes.rst:1596 msgid "" "Return the lowest index in the string where substring *sub* is found within " "the slice ``s[start:end]``. Optional arguments *start* and *end* are " @@ -2735,7 +2735,7 @@ msgstr "" "interprétés comme dans la notation des *slice*. Donne ``-1`` si *sub* n'est " "pas trouvé." -#: ../Doc/library/stdtypes.rst:1603 +#: ../Doc/library/stdtypes.rst:1602 msgid "" "The :meth:`~str.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -2745,7 +2745,7 @@ msgstr "" "de connaître la position de *sub*. Pour vérifier si *sub* est une sous " "chaine ou non, utilisez l'opérateur :keyword:`in` ::" -#: ../Doc/library/stdtypes.rst:1613 +#: ../Doc/library/stdtypes.rst:1612 msgid "" "Perform a string formatting operation. The string on which this method is " "called can contain literal text or replacement fields delimited by braces " @@ -2761,7 +2761,7 @@ msgstr "" "clé. Renvoie une copie de la chaîne où chaque champ de remplacement est " "remplacé par la valeur de chaîne de l'argument correspondant." -#: ../Doc/library/stdtypes.rst:1623 +#: ../Doc/library/stdtypes.rst:1622 msgid "" "See :ref:`formatstrings` for a description of the various formatting options " "that can be specified in format strings." @@ -2769,7 +2769,7 @@ msgstr "" "Voir :ref:`formatstrings` pour une description des options de formatage qui " "peuvent être spécifiées dans les chaînes de format." -#: ../Doc/library/stdtypes.rst:1627 +#: ../Doc/library/stdtypes.rst:1626 msgid "" "When formatting a number (:class:`int`, :class:`float`, :class:`complex`, :" "class:`decimal.Decimal` and subclasses) with the ``n`` type (ex: ``'{:n}'." @@ -2788,7 +2788,7 @@ msgstr "" "est différent de ``LC_CTYPE``. Ce changement temporaire affecte les autres " "fils d'exécution." -#: ../Doc/library/stdtypes.rst:1636 +#: ../Doc/library/stdtypes.rst:1635 msgid "" "When formatting a number with the ``n`` type, the function sets temporarily " "the ``LC_CTYPE`` locale to the ``LC_NUMERIC`` locale in some cases." @@ -2797,7 +2797,7 @@ msgstr "" "temporairement ``LC_CTYPE`` par la valeur de ``LC_NUMERIC`` dans certains " "cas." -#: ../Doc/library/stdtypes.rst:1644 +#: ../Doc/library/stdtypes.rst:1643 msgid "" "Similar to ``str.format(**mapping)``, except that ``mapping`` is used " "directly and not copied to a :class:`dict`. This is useful if for example " @@ -2807,7 +2807,7 @@ msgstr "" "directement et non copié dans un :class:`dict`. C'est utile si, par exemple " "``mapping`` est une sous-classe de ``dict`` :" -#: ../Doc/library/stdtypes.rst:1660 +#: ../Doc/library/stdtypes.rst:1659 msgid "" "Like :meth:`~str.find`, but raise :exc:`ValueError` when the substring is " "not found." @@ -2815,7 +2815,7 @@ msgstr "" "Comme :meth:`~str.find`, mais lève une :exc:`ValueError` lorsque la chaîne " "est introuvable." -#: ../Doc/library/stdtypes.rst:1666 +#: ../Doc/library/stdtypes.rst:1665 msgid "" "Return true if all characters in the string are alphanumeric and there is at " "least one character, false otherwise. A character ``c`` is alphanumeric if " @@ -2827,7 +2827,7 @@ msgstr "" "alphanumérique si l'un des tests suivants est vrais : ``c.isalpha()``, ``c." "isdecimal()``, ``c.isdigit()`` ou ``c.isnumeric()``." -#: ../Doc/library/stdtypes.rst:1674 +#: ../Doc/library/stdtypes.rst:1673 msgid "" "Return true if all characters in the string are alphabetic and there is at " "least one character, false otherwise. Alphabetic characters are those " @@ -2843,7 +2843,7 @@ msgstr "" "\"Lu\", \"Ll\", ou \"Lo\" comme catégorie générale. Notez que ceci est " "différent de la propriété *Alphabetic* définie dans la norme Unicode." -#: ../Doc/library/stdtypes.rst:1683 +#: ../Doc/library/stdtypes.rst:1682 msgid "" "Return true if the string is empty or all characters in the string are " "ASCII, false otherwise. ASCII characters have code points in the range U" @@ -2853,7 +2853,7 @@ msgstr "" "ASCII, ``False`` sinon. Les caractères ASCII ont un code dans l'intervalle ``" "\"U+0000\"``\\ ---\\ ``\"U+007F\"``." -#: ../Doc/library/stdtypes.rst:1692 +#: ../Doc/library/stdtypes.rst:1691 msgid "" "Return true if all characters in the string are decimal characters and there " "is at least one character, false otherwise. Decimal characters are those " @@ -2867,7 +2867,7 @@ msgstr "" "en base 10, tels que U+0660, ARABIC-INDIC DIGIT ZERO. Spécifiquement, un " "caractère décimal est un caractère dans la catégorie Unicode générale \"Nd\"." -#: ../Doc/library/stdtypes.rst:1702 +#: ../Doc/library/stdtypes.rst:1701 msgid "" "Return true if all characters in the string are digits and there is at least " "one character, false otherwise. Digits include decimal characters and " @@ -2885,7 +2885,7 @@ msgstr "" "caractère dont la valeur de la propriété *Numeric_Type* est *Digit* ou " "*Decimal*." -#: ../Doc/library/stdtypes.rst:1712 +#: ../Doc/library/stdtypes.rst:1711 msgid "" "Return true if the string is a valid identifier according to the language " "definition, section :ref:`identifiers`." @@ -2893,7 +2893,7 @@ msgstr "" "Donne ``True`` si la chaîne est un identifiant valide selon la définition du " "langage, section :ref:`identifiers`." -#: ../Doc/library/stdtypes.rst:1715 +#: ../Doc/library/stdtypes.rst:1714 #, fuzzy msgid "" "Call :func:`keyword.iskeyword` to test whether string ``s`` is a reserved " @@ -2902,12 +2902,12 @@ msgstr "" "Utilisez :func:`keyword.iskeyword` pour savoir si un identifiant est " "réservé, tels que :keyword:`def` et :keyword:`class`." -#: ../Doc/library/stdtypes.rst:1718 +#: ../Doc/library/stdtypes.rst:1717 #, fuzzy msgid "Example: ::" msgstr "Par exemple ::" -#: ../Doc/library/stdtypes.rst:1731 +#: ../Doc/library/stdtypes.rst:1730 msgid "" "Return true if all cased characters [4]_ in the string are lowercase and " "there is at least one cased character, false otherwise." @@ -2916,7 +2916,7 @@ msgstr "" "en minuscules et qu'elle contient au moins un caractère capitalisable. Donne " "``False`` dans le cas contraire." -#: ../Doc/library/stdtypes.rst:1737 +#: ../Doc/library/stdtypes.rst:1736 msgid "" "Return true if all characters in the string are numeric characters, and " "there is at least one character, false otherwise. Numeric characters include " @@ -2933,7 +2933,7 @@ msgstr "" "les priorités *Numeric_Type=Digit*, *Numeric_Type=Decimal*, ou " "*Numeric_Type=Numeric*." -#: ../Doc/library/stdtypes.rst:1747 +#: ../Doc/library/stdtypes.rst:1746 msgid "" "Return true if all characters in the string are printable or the string is " "empty, false otherwise. Nonprintable characters are those characters " @@ -2952,7 +2952,7 @@ msgstr "" "`repr` est invoquée sur une chaîne. Ça n'a aucune incidence sur le " "traitement des chaînes écrites sur :data:`sys.stdout` ou :data:`sys.stderr`.)" -#: ../Doc/library/stdtypes.rst:1758 +#: ../Doc/library/stdtypes.rst:1757 #, fuzzy msgid "" "Return true if there are only whitespace characters in the string and there " @@ -2962,14 +2962,14 @@ msgstr "" "en minuscules et qu'elle contient au moins un caractère capitalisable. Donne " "``False`` dans le cas contraire." -#: ../Doc/library/stdtypes.rst:1761 +#: ../Doc/library/stdtypes.rst:1760 msgid "" "A character is *whitespace* if in the Unicode character database (see :mod:" "`unicodedata`), either its general category is ``Zs`` (\"Separator, space" "\"), or its bidirectional class is one of ``WS``, ``B``, or ``S``." msgstr "" -#: ../Doc/library/stdtypes.rst:1769 +#: ../Doc/library/stdtypes.rst:1768 msgid "" "Return true if the string is a titlecased string and there is at least one " "character, for example uppercase characters may only follow uncased " @@ -2981,7 +2981,7 @@ msgstr "" "peuvent suivre que des caractères capitalisables. Donne ``False`` dans le " "cas contraire." -#: ../Doc/library/stdtypes.rst:1776 +#: ../Doc/library/stdtypes.rst:1775 msgid "" "Return true if all cased characters [4]_ in the string are uppercase and " "there is at least one cased character, false otherwise." @@ -2990,7 +2990,7 @@ msgstr "" "la chaîne sont en majuscules et il y a au moins un caractère différentiable " "sur la casse, sinon ``False``." -#: ../Doc/library/stdtypes.rst:1782 +#: ../Doc/library/stdtypes.rst:1781 msgid "" "Return a string which is the concatenation of the strings in *iterable*. A :" "exc:`TypeError` will be raised if there are any non-string values in " @@ -3002,7 +3002,7 @@ msgstr "" "pas une chaîne, y compris pour les objets :class:`bytes`. Le séparateur " "entre les éléments est la chaîne fournissant cette méthode." -#: ../Doc/library/stdtypes.rst:1790 +#: ../Doc/library/stdtypes.rst:1789 msgid "" "Return the string left justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3013,7 +3013,7 @@ msgstr "" "ASCII). La chaîne d'origine est renvoyée si *width* est inférieur ou égale à " "``len(s)``." -#: ../Doc/library/stdtypes.rst:1797 +#: ../Doc/library/stdtypes.rst:1796 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "lowercase." @@ -3021,7 +3021,7 @@ msgstr "" "Renvoie une copie de la chaîne avec tous les caractères capitalisables [4]_ " "convertis en minuscules." -#: ../Doc/library/stdtypes.rst:1800 +#: ../Doc/library/stdtypes.rst:1799 msgid "" "The lowercasing algorithm used is described in section 3.13 of the Unicode " "Standard." @@ -3029,7 +3029,7 @@ msgstr "" "L'algorithme de mise en minuscules utilisé est décrit dans la section 3.13 " "de la norme Unicode." -#: ../Doc/library/stdtypes.rst:1806 +#: ../Doc/library/stdtypes.rst:1805 msgid "" "Return a copy of the string with leading characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3043,7 +3043,7 @@ msgstr "" "des espaces. L'argument *chars* n'est pas un préfixe, toutes les " "combinaisons de ses valeurs sont supprimées ::" -#: ../Doc/library/stdtypes.rst:1819 +#: ../Doc/library/stdtypes.rst:1818 msgid "" "This static method returns a translation table usable for :meth:`str." "translate`." @@ -3051,7 +3051,7 @@ msgstr "" "Cette méthode statique renvoie une table de traduction utilisable pour :meth:" "`str.translate`." -#: ../Doc/library/stdtypes.rst:1821 +#: ../Doc/library/stdtypes.rst:1820 msgid "" "If there is only one argument, it must be a dictionary mapping Unicode " "ordinals (integers) or characters (strings of length 1) to Unicode ordinals, " @@ -3062,7 +3062,7 @@ msgstr "" "correspondre des points de code Unicode (nombres entiers) ou des caractères " "(chaînes de longueur 1) à des points de code Unicode." -#: ../Doc/library/stdtypes.rst:1826 +#: ../Doc/library/stdtypes.rst:1825 msgid "" "If there are two arguments, they must be strings of equal length, and in the " "resulting dictionary, each character in x will be mapped to the character at " @@ -3075,7 +3075,7 @@ msgstr "" "argument est fourni, ce doit être une chaîne dont chaque caractère " "correspondra à ``None`` dans le résultat." -#: ../Doc/library/stdtypes.rst:1834 +#: ../Doc/library/stdtypes.rst:1833 msgid "" "Split the string at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3087,7 +3087,7 @@ msgstr "" "même, et la partie après le séparateur. Si le séparateur n'est pas trouvé, " "le *tuple* contiendra la chaîne elle-même, suivie de deux chaînes vides." -#: ../Doc/library/stdtypes.rst:1842 +#: ../Doc/library/stdtypes.rst:1841 msgid "" "Return a copy of the string with all occurrences of substring *old* replaced " "by *new*. If the optional argument *count* is given, only the first *count* " @@ -3097,7 +3097,7 @@ msgstr "" "chaîne *old* sont remplacés par *new*. Si l'argument optionnel *count* est " "donné, seules les *count* premières occurrences sont remplacées." -#: ../Doc/library/stdtypes.rst:1849 +#: ../Doc/library/stdtypes.rst:1848 msgid "" "Return the highest index in the string where substring *sub* is found, such " "that *sub* is contained within ``s[start:end]``. Optional arguments *start* " @@ -3108,7 +3108,7 @@ msgstr "" "arguments facultatifs *start* et *end* sont interprétés comme dans la " "notation des *slices*. Donne ``-1`` en cas d'échec." -#: ../Doc/library/stdtypes.rst:1856 +#: ../Doc/library/stdtypes.rst:1855 msgid "" "Like :meth:`rfind` but raises :exc:`ValueError` when the substring *sub* is " "not found." @@ -3116,7 +3116,7 @@ msgstr "" "Comme :meth:`rfind` mais lève une exception :exc:`ValueError` lorsque la " "sous-chaîne *sub* est introuvable." -#: ../Doc/library/stdtypes.rst:1862 +#: ../Doc/library/stdtypes.rst:1861 msgid "" "Return the string right justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -3127,7 +3127,7 @@ msgstr "" "défaut est un espace ASCII). La chaîne d'origine est renvoyée si *width* est " "inférieure ou égale à ``len(s)``." -#: ../Doc/library/stdtypes.rst:1869 +#: ../Doc/library/stdtypes.rst:1868 msgid "" "Split the string at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -3139,7 +3139,7 @@ msgstr "" "même, et la partie après le séparateur. Si le séparateur n'est pas trouvé, " "le *tuple* contiendra deux chaînes vides, puis par la chaîne elle-même." -#: ../Doc/library/stdtypes.rst:1877 +#: ../Doc/library/stdtypes.rst:1876 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done, the " @@ -3154,7 +3154,7 @@ msgstr "" "par la droite, :meth:`rsplit` se comporte comme :meth:`split` qui est décrit " "en détail ci-dessous." -#: ../Doc/library/stdtypes.rst:1886 +#: ../Doc/library/stdtypes.rst:1885 msgid "" "Return a copy of the string with trailing characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -3168,7 +3168,7 @@ msgstr "" "L'argument *chars* n'est pas un suffixe : toutes les combinaisons de ses " "valeurs sont retirées ::" -#: ../Doc/library/stdtypes.rst:1899 +#: ../Doc/library/stdtypes.rst:1898 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done (thus, " @@ -3182,7 +3182,7 @@ msgstr "" "+1``). Si *maxsplit* n'est pas fourni, ou vaut ``-1``, le nombre de découpes " "n'est pas limité (Toutes les découpes possibles sont faites)." -#: ../Doc/library/stdtypes.rst:1905 +#: ../Doc/library/stdtypes.rst:1904 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty strings (for example, ``'1,,2'.split(',')`` returns " @@ -3196,20 +3196,20 @@ msgstr "" "(par exemple, ``'1<>2<>3'.split('<>')`` renvoie ``['1', '2', '3']``). " "Découper une chaîne vide en spécifiant *sep* donne ``['']``." -#: ../Doc/library/stdtypes.rst:1911 ../Doc/library/stdtypes.rst:1927 -#: ../Doc/library/stdtypes.rst:1979 ../Doc/library/stdtypes.rst:2047 -#: ../Doc/library/stdtypes.rst:2110 ../Doc/library/stdtypes.rst:2889 -#: ../Doc/library/stdtypes.rst:2905 ../Doc/library/stdtypes.rst:2996 -#: ../Doc/library/stdtypes.rst:3012 ../Doc/library/stdtypes.rst:3037 -#: ../Doc/library/stdtypes.rst:3051 ../Doc/library/stdtypes.rst:3079 -#: ../Doc/library/stdtypes.rst:3093 ../Doc/library/stdtypes.rst:3111 -#: ../Doc/library/stdtypes.rst:3138 ../Doc/library/stdtypes.rst:3161 -#: ../Doc/library/stdtypes.rst:3188 ../Doc/library/stdtypes.rst:3230 -#: ../Doc/library/stdtypes.rst:3254 +#: ../Doc/library/stdtypes.rst:1910 ../Doc/library/stdtypes.rst:1926 +#: ../Doc/library/stdtypes.rst:1978 ../Doc/library/stdtypes.rst:2046 +#: ../Doc/library/stdtypes.rst:2109 ../Doc/library/stdtypes.rst:2888 +#: ../Doc/library/stdtypes.rst:2904 ../Doc/library/stdtypes.rst:2995 +#: ../Doc/library/stdtypes.rst:3011 ../Doc/library/stdtypes.rst:3036 +#: ../Doc/library/stdtypes.rst:3050 ../Doc/library/stdtypes.rst:3078 +#: ../Doc/library/stdtypes.rst:3092 ../Doc/library/stdtypes.rst:3110 +#: ../Doc/library/stdtypes.rst:3137 ../Doc/library/stdtypes.rst:3160 +#: ../Doc/library/stdtypes.rst:3187 ../Doc/library/stdtypes.rst:3229 +#: ../Doc/library/stdtypes.rst:3253 msgid "For example::" msgstr "Par exemple ::" -#: ../Doc/library/stdtypes.rst:1920 +#: ../Doc/library/stdtypes.rst:1919 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive whitespace are regarded as a single separator, " @@ -3225,7 +3225,7 @@ msgstr "" "diviser une chaîne vide ou une chaîne composée d'espaces avec un séparateur " "``None`` renvoie ``[]``." -#: ../Doc/library/stdtypes.rst:1942 +#: ../Doc/library/stdtypes.rst:1941 msgid "" "Return a list of the lines in the string, breaking at line boundaries. Line " "breaks are not included in the resulting list unless *keepends* is given and " @@ -3235,7 +3235,7 @@ msgstr "" "niveau des limites des lignes. Les sauts de ligne ne sont pas inclus dans la " "liste des résultats, sauf si *keepends* est donné, et est vrai." -#: ../Doc/library/stdtypes.rst:1946 +#: ../Doc/library/stdtypes.rst:1945 msgid "" "This method splits on the following line boundaries. In particular, the " "boundaries are a superset of :term:`universal newlines`." @@ -3243,107 +3243,107 @@ msgstr "" "Cette méthode découpe sur les limites de ligne suivantes. Ces limites sont " "un sur ensemble de :term:`universal newlines`." -#: ../Doc/library/stdtypes.rst:1950 +#: ../Doc/library/stdtypes.rst:1949 msgid "Representation" msgstr "Représentation" -#: ../Doc/library/stdtypes.rst:1950 +#: ../Doc/library/stdtypes.rst:1949 msgid "Description" msgstr "Description" -#: ../Doc/library/stdtypes.rst:1952 +#: ../Doc/library/stdtypes.rst:1951 msgid "``\\n``" msgstr "``\\n``" -#: ../Doc/library/stdtypes.rst:1952 +#: ../Doc/library/stdtypes.rst:1951 msgid "Line Feed" msgstr "Saut de ligne" -#: ../Doc/library/stdtypes.rst:1954 +#: ../Doc/library/stdtypes.rst:1953 msgid "``\\r``" msgstr "``\\r``" -#: ../Doc/library/stdtypes.rst:1954 +#: ../Doc/library/stdtypes.rst:1953 msgid "Carriage Return" msgstr "Retour chariot" -#: ../Doc/library/stdtypes.rst:1956 +#: ../Doc/library/stdtypes.rst:1955 msgid "``\\r\\n``" msgstr "``\\r\\n``" -#: ../Doc/library/stdtypes.rst:1956 +#: ../Doc/library/stdtypes.rst:1955 msgid "Carriage Return + Line Feed" msgstr "Retour chariot + saut de ligne" -#: ../Doc/library/stdtypes.rst:1958 +#: ../Doc/library/stdtypes.rst:1957 msgid "``\\v`` or ``\\x0b``" msgstr "``\\v`` or ``\\x0b``" -#: ../Doc/library/stdtypes.rst:1958 +#: ../Doc/library/stdtypes.rst:1957 msgid "Line Tabulation" msgstr "Tabulation verticale" -#: ../Doc/library/stdtypes.rst:1960 +#: ../Doc/library/stdtypes.rst:1959 msgid "``\\f`` or ``\\x0c``" msgstr "``\\f`` or ``\\x0c``" -#: ../Doc/library/stdtypes.rst:1960 +#: ../Doc/library/stdtypes.rst:1959 msgid "Form Feed" msgstr "Saut de page" -#: ../Doc/library/stdtypes.rst:1962 +#: ../Doc/library/stdtypes.rst:1961 msgid "``\\x1c``" msgstr "``\\x1c``" -#: ../Doc/library/stdtypes.rst:1962 +#: ../Doc/library/stdtypes.rst:1961 msgid "File Separator" msgstr "Séparateur de fichiers" -#: ../Doc/library/stdtypes.rst:1964 +#: ../Doc/library/stdtypes.rst:1963 msgid "``\\x1d``" msgstr "``\\x1d``" -#: ../Doc/library/stdtypes.rst:1964 +#: ../Doc/library/stdtypes.rst:1963 msgid "Group Separator" msgstr "Séparateur de groupes" -#: ../Doc/library/stdtypes.rst:1966 +#: ../Doc/library/stdtypes.rst:1965 msgid "``\\x1e``" msgstr "``\\x1e``" -#: ../Doc/library/stdtypes.rst:1966 +#: ../Doc/library/stdtypes.rst:1965 msgid "Record Separator" msgstr "Séparateur d'enregistrements" -#: ../Doc/library/stdtypes.rst:1968 +#: ../Doc/library/stdtypes.rst:1967 msgid "``\\x85``" msgstr "``\\x85``" -#: ../Doc/library/stdtypes.rst:1968 +#: ../Doc/library/stdtypes.rst:1967 msgid "Next Line (C1 Control Code)" msgstr "Ligne suivante (code de contrôle *C1*)" -#: ../Doc/library/stdtypes.rst:1970 +#: ../Doc/library/stdtypes.rst:1969 msgid "``\\u2028``" msgstr "``\\u2028``" -#: ../Doc/library/stdtypes.rst:1970 +#: ../Doc/library/stdtypes.rst:1969 msgid "Line Separator" msgstr "Séparateur de ligne" -#: ../Doc/library/stdtypes.rst:1972 +#: ../Doc/library/stdtypes.rst:1971 msgid "``\\u2029``" msgstr "``\\u2029``" -#: ../Doc/library/stdtypes.rst:1972 +#: ../Doc/library/stdtypes.rst:1971 msgid "Paragraph Separator" msgstr "Séparateur de paragraphe" -#: ../Doc/library/stdtypes.rst:1977 +#: ../Doc/library/stdtypes.rst:1976 msgid "``\\v`` and ``\\f`` added to list of line boundaries." msgstr "``\\v`` et ``\\f`` ajoutés à la liste des limites de lignes." -#: ../Doc/library/stdtypes.rst:1986 +#: ../Doc/library/stdtypes.rst:1985 msgid "" "Unlike :meth:`~str.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -3353,11 +3353,11 @@ msgstr "" "renvoie une liste vide pour la chaîne vide, et un saut de ligne à la fin ne " "se traduit pas par une ligne supplémentaire ::" -#: ../Doc/library/stdtypes.rst:1995 +#: ../Doc/library/stdtypes.rst:1994 msgid "For comparison, ``split('\\n')`` gives::" msgstr "À titre de comparaison, ``split('\\n')`` donne ::" -#: ../Doc/library/stdtypes.rst:2005 +#: ../Doc/library/stdtypes.rst:2004 msgid "" "Return ``True`` if string starts with the *prefix*, otherwise return " "``False``. *prefix* can also be a tuple of prefixes to look for. With " @@ -3369,7 +3369,7 @@ msgstr "" "est donné, la comparaison commence à cette position, et lorsque *end* est " "donné, la comparaison s'arrête à celle ci." -#: ../Doc/library/stdtypes.rst:2013 +#: ../Doc/library/stdtypes.rst:2012 msgid "" "Return a copy of the string with the leading and trailing characters " "removed. The *chars* argument is a string specifying the set of characters " @@ -3383,7 +3383,7 @@ msgstr "" "L'argument *chars* est pas un préfixe ni un suffixe, toutes les combinaisons " "de ses valeurs sont supprimées ::" -#: ../Doc/library/stdtypes.rst:2024 +#: ../Doc/library/stdtypes.rst:2023 msgid "" "The outermost leading and trailing *chars* argument values are stripped from " "the string. Characters are removed from the leading end until reaching a " @@ -3395,7 +3395,7 @@ msgstr "" "figurant pas dans le jeu de caractères dans *chars*. La même opération à " "lieu par la droite. Par exemple ::" -#: ../Doc/library/stdtypes.rst:2037 +#: ../Doc/library/stdtypes.rst:2036 msgid "" "Return a copy of the string with uppercase characters converted to lowercase " "and vice versa. Note that it is not necessarily true that ``s.swapcase()." @@ -3405,7 +3405,7 @@ msgstr "" "convertis en minuscules et vice versa. Notez qu'il est pas nécessairement " "vrai que ``s.swapcase().swapcase() == s``." -#: ../Doc/library/stdtypes.rst:2044 +#: ../Doc/library/stdtypes.rst:2043 msgid "" "Return a titlecased version of the string where words start with an " "uppercase character and the remaining characters are lowercase." @@ -3413,7 +3413,7 @@ msgstr "" "Renvoie une version en initiales majuscules de la chaîne où les mots " "commencent par une capitale et les caractères restants sont en minuscules." -#: ../Doc/library/stdtypes.rst:2052 ../Doc/library/stdtypes.rst:3198 +#: ../Doc/library/stdtypes.rst:2051 ../Doc/library/stdtypes.rst:3197 msgid "" "The algorithm uses a simple language-independent definition of a word as " "groups of consecutive letters. The definition works in many contexts but it " @@ -3426,14 +3426,14 @@ msgstr "" "apostrophes (typiquement de la forme possessive en Anglais) forment les " "limites de mot, ce qui n'est pas toujours le résultat souhaité ::" -#: ../Doc/library/stdtypes.rst:2060 ../Doc/library/stdtypes.rst:3206 +#: ../Doc/library/stdtypes.rst:2059 ../Doc/library/stdtypes.rst:3205 msgid "" "A workaround for apostrophes can be constructed using regular expressions::" msgstr "" "Une solution pour contourner le problème des apostrophes peut être obtenue " "en utilisant des expressions rationnelles ::" -#: ../Doc/library/stdtypes.rst:2074 +#: ../Doc/library/stdtypes.rst:2073 msgid "" "Return a copy of the string in which each character has been mapped through " "the given translation table. The table must be an object that implements " @@ -3453,7 +3453,7 @@ msgstr "" "pour supprimer le caractère de la chaîne de renvoyée soit lever une " "exception :exc:`LookupError` pour ne pas changer le caractère." -#: ../Doc/library/stdtypes.rst:2083 +#: ../Doc/library/stdtypes.rst:2082 msgid "" "You can use :meth:`str.maketrans` to create a translation map from character-" "to-character mappings in different formats." @@ -3461,7 +3461,7 @@ msgstr "" "Vous pouvez utiliser :meth:`str.maketrans` pour créer une table de " "correspondances de caractères dans différents formats." -#: ../Doc/library/stdtypes.rst:2086 +#: ../Doc/library/stdtypes.rst:2085 msgid "" "See also the :mod:`codecs` module for a more flexible approach to custom " "character mappings." @@ -3469,7 +3469,7 @@ msgstr "" "Voir aussi le module :mod:`codecs` pour une approche plus souple de " "changements de caractères par correspondance." -#: ../Doc/library/stdtypes.rst:2092 +#: ../Doc/library/stdtypes.rst:2091 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "uppercase. Note that ``s.upper().isupper()`` might be ``False`` if ``s`` " @@ -3483,7 +3483,7 @@ msgstr "" "catégorie Unicode d'un caractère du résultat n'est pas \"Lu\" (*Letter*, " "*uppercase*), mais par exemple \"Lt\" (*Letter*, *titlecase*)." -#: ../Doc/library/stdtypes.rst:2098 +#: ../Doc/library/stdtypes.rst:2097 msgid "" "The uppercasing algorithm used is described in section 3.13 of the Unicode " "Standard." @@ -3491,7 +3491,7 @@ msgstr "" "L'algorithme de capitalisation utilisé est décrit dans la section 3.13 de la " "norme Unicode." -#: ../Doc/library/stdtypes.rst:2104 +#: ../Doc/library/stdtypes.rst:2103 msgid "" "Return a copy of the string left filled with ASCII ``'0'`` digits to make a " "string of length *width*. A leading sign prefix (``'+'``/``'-'``) is handled " @@ -3504,11 +3504,11 @@ msgstr "" "rembourrage *après* le caractère désigne plutôt qu'avant. La chaîne " "d'origine est renvoyée si *width* est inférieur ou égale à ``len(s)``." -#: ../Doc/library/stdtypes.rst:2122 +#: ../Doc/library/stdtypes.rst:2121 msgid "``printf``-style String Formatting" msgstr "Formatage de chaines à la ``printf``" -#: ../Doc/library/stdtypes.rst:2135 +#: ../Doc/library/stdtypes.rst:2134 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -3526,7 +3526,7 @@ msgstr "" "ces alternatives apporte son lot d'avantages et inconvénients en matière de " "simplicité, de flexibilité et/ou de généralisation possible." -#: ../Doc/library/stdtypes.rst:2143 +#: ../Doc/library/stdtypes.rst:2142 msgid "" "String objects have one unique built-in operation: the ``%`` operator " "(modulo). This is also known as the string *formatting* or *interpolation* " @@ -3542,7 +3542,7 @@ msgstr "" "plusieurs éléments de *values*. L'effet est similaire à la fonction :c:func:" "`sprintf` du langage C." -#: ../Doc/library/stdtypes.rst:2149 +#: ../Doc/library/stdtypes.rst:2148 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -3554,7 +3554,7 @@ msgstr "" "d'éléments spécifiés par la chaîne de format, ou un seul objet de " "correspondances ( *mapping object*, par exemple, un dictionnaire)." -#: ../Doc/library/stdtypes.rst:2159 ../Doc/library/stdtypes.rst:3309 +#: ../Doc/library/stdtypes.rst:2158 ../Doc/library/stdtypes.rst:3308 msgid "" "A conversion specifier contains two or more characters and has the following " "components, which must occur in this order:" @@ -3562,11 +3562,11 @@ msgstr "" "Un indicateur de conversion contient deux ou plusieurs caractères et " "comporte les éléments suivants, qui doivent apparaître dans cet ordre :" -#: ../Doc/library/stdtypes.rst:2162 ../Doc/library/stdtypes.rst:3312 +#: ../Doc/library/stdtypes.rst:2161 ../Doc/library/stdtypes.rst:3311 msgid "The ``'%'`` character, which marks the start of the specifier." msgstr "Le caractère ``'%'``, qui marque le début du marqueur." -#: ../Doc/library/stdtypes.rst:2164 ../Doc/library/stdtypes.rst:3314 +#: ../Doc/library/stdtypes.rst:2163 ../Doc/library/stdtypes.rst:3313 msgid "" "Mapping key (optional), consisting of a parenthesised sequence of characters " "(for example, ``(somename)``)." @@ -3574,7 +3574,7 @@ msgstr "" "La clé de correspondance (facultative), composée d'une suite de caractères " "entre parenthèse (par exemple, ``(somename)``)." -#: ../Doc/library/stdtypes.rst:2167 ../Doc/library/stdtypes.rst:3317 +#: ../Doc/library/stdtypes.rst:2166 ../Doc/library/stdtypes.rst:3316 msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." @@ -3582,7 +3582,7 @@ msgstr "" "Des options de conversion, facultatives, qui affectent le résultat de " "certains types de conversion." -#: ../Doc/library/stdtypes.rst:2170 ../Doc/library/stdtypes.rst:3320 +#: ../Doc/library/stdtypes.rst:2169 ../Doc/library/stdtypes.rst:3319 msgid "" "Minimum field width (optional). If specified as an ``'*'`` (asterisk), the " "actual width is read from the next element of the tuple in *values*, and the " @@ -3592,7 +3592,7 @@ msgstr "" "est lue de l'élément suivant du tuple *values*, et l'objet à convertir vient " "après la largeur de champ minimale et la précision facultative." -#: ../Doc/library/stdtypes.rst:2174 ../Doc/library/stdtypes.rst:3324 +#: ../Doc/library/stdtypes.rst:2173 ../Doc/library/stdtypes.rst:3323 msgid "" "Precision (optional), given as a ``'.'`` (dot) followed by the precision. " "If specified as ``'*'`` (an asterisk), the actual precision is read from the " @@ -3604,15 +3604,15 @@ msgstr "" "lue à partir de l'élément suivant du tuple *values* et la valeur à convertir " "vient ensuite." -#: ../Doc/library/stdtypes.rst:2179 ../Doc/library/stdtypes.rst:3329 +#: ../Doc/library/stdtypes.rst:2178 ../Doc/library/stdtypes.rst:3328 msgid "Length modifier (optional)." msgstr "Modificateur de longueur (facultatif)." -#: ../Doc/library/stdtypes.rst:2181 ../Doc/library/stdtypes.rst:3331 +#: ../Doc/library/stdtypes.rst:2180 ../Doc/library/stdtypes.rst:3330 msgid "Conversion type." msgstr "Type de conversion." -#: ../Doc/library/stdtypes.rst:2183 +#: ../Doc/library/stdtypes.rst:2182 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the string *must* include a parenthesised mapping key into that " @@ -3625,7 +3625,7 @@ msgstr "" "caractère ``'%'``. La clé indique quelle valeur du dictionnaire doit être " "formatée. Par exemple :" -#: ../Doc/library/stdtypes.rst:2192 ../Doc/library/stdtypes.rst:3342 +#: ../Doc/library/stdtypes.rst:2191 ../Doc/library/stdtypes.rst:3341 msgid "" "In this case no ``*`` specifiers may occur in a format (since they require a " "sequential parameter list)." @@ -3633,36 +3633,36 @@ msgstr "" "Dans ce cas, aucune ``*`` ne peuvent se trouver dans le format (car ces " "``*`` nécessitent une liste (accès séquentiel) de paramètres)." -#: ../Doc/library/stdtypes.rst:2195 ../Doc/library/stdtypes.rst:3345 +#: ../Doc/library/stdtypes.rst:2194 ../Doc/library/stdtypes.rst:3344 msgid "The conversion flag characters are:" msgstr "Les caractères indicateurs de conversion sont :" -#: ../Doc/library/stdtypes.rst:2204 ../Doc/library/stdtypes.rst:3354 +#: ../Doc/library/stdtypes.rst:2203 ../Doc/library/stdtypes.rst:3353 msgid "Flag" msgstr "Option" -#: ../Doc/library/stdtypes.rst:2206 ../Doc/library/stdtypes.rst:3356 +#: ../Doc/library/stdtypes.rst:2205 ../Doc/library/stdtypes.rst:3355 msgid "``'#'``" msgstr "``'#'``" -#: ../Doc/library/stdtypes.rst:2206 ../Doc/library/stdtypes.rst:3356 +#: ../Doc/library/stdtypes.rst:2205 ../Doc/library/stdtypes.rst:3355 msgid "" "The value conversion will use the \"alternate form\" (where defined below)." msgstr "La conversion utilisera la \"forme alternative\" (définie ci-dessous)." -#: ../Doc/library/stdtypes.rst:2209 ../Doc/library/stdtypes.rst:3359 +#: ../Doc/library/stdtypes.rst:2208 ../Doc/library/stdtypes.rst:3358 msgid "``'0'``" msgstr "``'0'``" -#: ../Doc/library/stdtypes.rst:2209 ../Doc/library/stdtypes.rst:3359 +#: ../Doc/library/stdtypes.rst:2208 ../Doc/library/stdtypes.rst:3358 msgid "The conversion will be zero padded for numeric values." msgstr "Les valeurs numériques converties seront complétée de zéros." -#: ../Doc/library/stdtypes.rst:2211 ../Doc/library/stdtypes.rst:3361 +#: ../Doc/library/stdtypes.rst:2210 ../Doc/library/stdtypes.rst:3360 msgid "``'-'``" msgstr "``'-'``" -#: ../Doc/library/stdtypes.rst:2211 ../Doc/library/stdtypes.rst:3361 +#: ../Doc/library/stdtypes.rst:2210 ../Doc/library/stdtypes.rst:3360 msgid "" "The converted value is left adjusted (overrides the ``'0'`` conversion if " "both are given)." @@ -3670,11 +3670,11 @@ msgstr "" "La valeur convertie est ajustée à gauche (remplace la conversion ``'0'`` si " "les deux sont données)." -#: ../Doc/library/stdtypes.rst:2214 ../Doc/library/stdtypes.rst:3364 +#: ../Doc/library/stdtypes.rst:2213 ../Doc/library/stdtypes.rst:3363 msgid "``' '``" msgstr "``' '``" -#: ../Doc/library/stdtypes.rst:2214 ../Doc/library/stdtypes.rst:3364 +#: ../Doc/library/stdtypes.rst:2213 ../Doc/library/stdtypes.rst:3363 msgid "" "(a space) A blank should be left before a positive number (or empty string) " "produced by a signed conversion." @@ -3682,11 +3682,11 @@ msgstr "" "(un espace) Un espace doit être laissé avant un nombre positif (ou chaîne " "vide) produite par la conversion d'une valeur signée." -#: ../Doc/library/stdtypes.rst:2217 ../Doc/library/stdtypes.rst:3367 +#: ../Doc/library/stdtypes.rst:2216 ../Doc/library/stdtypes.rst:3366 msgid "``'+'``" msgstr "``'+'``" -#: ../Doc/library/stdtypes.rst:2217 ../Doc/library/stdtypes.rst:3367 +#: ../Doc/library/stdtypes.rst:2216 ../Doc/library/stdtypes.rst:3366 msgid "" "A sign character (``'+'`` or ``'-'``) will precede the conversion (overrides " "a \"space\" flag)." @@ -3694,7 +3694,7 @@ msgstr "" "Un caractère de signe (``'+'`` ou ``'-'``) précède la valeur convertie " "(remplace le marqueur \"espace\")." -#: ../Doc/library/stdtypes.rst:2221 ../Doc/library/stdtypes.rst:3371 +#: ../Doc/library/stdtypes.rst:2220 ../Doc/library/stdtypes.rst:3370 msgid "" "A length modifier (``h``, ``l``, or ``L``) may be present, but is ignored as " "it is not necessary for Python -- so e.g. ``%ld`` is identical to ``%d``." @@ -3703,93 +3703,93 @@ msgstr "" "est ignoré car il est pas nécessaire pour Python, donc par exemple ``%ld`` " "est identique à ``%d``." -#: ../Doc/library/stdtypes.rst:2224 ../Doc/library/stdtypes.rst:3374 +#: ../Doc/library/stdtypes.rst:2223 ../Doc/library/stdtypes.rst:3373 msgid "The conversion types are:" msgstr "Les types utilisables dans les conversion sont :" -#: ../Doc/library/stdtypes.rst:2227 ../Doc/library/stdtypes.rst:3377 +#: ../Doc/library/stdtypes.rst:2226 ../Doc/library/stdtypes.rst:3376 msgid "Conversion" msgstr "Conversion" -#: ../Doc/library/stdtypes.rst:2229 ../Doc/library/stdtypes.rst:3379 +#: ../Doc/library/stdtypes.rst:2228 ../Doc/library/stdtypes.rst:3378 msgid "``'d'``" msgstr "``'d'``" -#: ../Doc/library/stdtypes.rst:2229 ../Doc/library/stdtypes.rst:2231 -#: ../Doc/library/stdtypes.rst:3379 ../Doc/library/stdtypes.rst:3381 +#: ../Doc/library/stdtypes.rst:2228 ../Doc/library/stdtypes.rst:2230 +#: ../Doc/library/stdtypes.rst:3378 ../Doc/library/stdtypes.rst:3380 msgid "Signed integer decimal." msgstr "Entier décimal signé." -#: ../Doc/library/stdtypes.rst:2231 ../Doc/library/stdtypes.rst:3381 +#: ../Doc/library/stdtypes.rst:2230 ../Doc/library/stdtypes.rst:3380 msgid "``'i'``" msgstr "``'i'``" -#: ../Doc/library/stdtypes.rst:2233 ../Doc/library/stdtypes.rst:3383 +#: ../Doc/library/stdtypes.rst:2232 ../Doc/library/stdtypes.rst:3382 msgid "``'o'``" msgstr "``'o'``" -#: ../Doc/library/stdtypes.rst:2233 ../Doc/library/stdtypes.rst:3383 +#: ../Doc/library/stdtypes.rst:2232 ../Doc/library/stdtypes.rst:3382 msgid "Signed octal value." msgstr "Valeur octale signée." -#: ../Doc/library/stdtypes.rst:2235 ../Doc/library/stdtypes.rst:3385 +#: ../Doc/library/stdtypes.rst:2234 ../Doc/library/stdtypes.rst:3384 msgid "``'u'``" msgstr "``'u'``" -#: ../Doc/library/stdtypes.rst:2235 ../Doc/library/stdtypes.rst:3385 +#: ../Doc/library/stdtypes.rst:2234 ../Doc/library/stdtypes.rst:3384 msgid "Obsolete type -- it is identical to ``'d'``." msgstr "Type obsolète — identique à ``'d'``." -#: ../Doc/library/stdtypes.rst:2237 ../Doc/library/stdtypes.rst:3387 +#: ../Doc/library/stdtypes.rst:2236 ../Doc/library/stdtypes.rst:3386 msgid "``'x'``" msgstr "``'x'``" -#: ../Doc/library/stdtypes.rst:2237 ../Doc/library/stdtypes.rst:3387 +#: ../Doc/library/stdtypes.rst:2236 ../Doc/library/stdtypes.rst:3386 msgid "Signed hexadecimal (lowercase)." msgstr "Hexadécimal signé (en minuscules)." -#: ../Doc/library/stdtypes.rst:2239 ../Doc/library/stdtypes.rst:3389 +#: ../Doc/library/stdtypes.rst:2238 ../Doc/library/stdtypes.rst:3388 msgid "``'X'``" msgstr "``'X'``" -#: ../Doc/library/stdtypes.rst:2239 ../Doc/library/stdtypes.rst:3389 +#: ../Doc/library/stdtypes.rst:2238 ../Doc/library/stdtypes.rst:3388 msgid "Signed hexadecimal (uppercase)." msgstr "Hexadécimal signé (capitales)." -#: ../Doc/library/stdtypes.rst:2241 ../Doc/library/stdtypes.rst:3391 +#: ../Doc/library/stdtypes.rst:2240 ../Doc/library/stdtypes.rst:3390 msgid "``'e'``" msgstr "``'e'``" -#: ../Doc/library/stdtypes.rst:2241 ../Doc/library/stdtypes.rst:3391 +#: ../Doc/library/stdtypes.rst:2240 ../Doc/library/stdtypes.rst:3390 msgid "Floating point exponential format (lowercase)." msgstr "Format exponentiel pour un *float* (minuscule)." -#: ../Doc/library/stdtypes.rst:2243 ../Doc/library/stdtypes.rst:3393 +#: ../Doc/library/stdtypes.rst:2242 ../Doc/library/stdtypes.rst:3392 msgid "``'E'``" msgstr "``'E'``" -#: ../Doc/library/stdtypes.rst:2243 ../Doc/library/stdtypes.rst:3393 +#: ../Doc/library/stdtypes.rst:2242 ../Doc/library/stdtypes.rst:3392 msgid "Floating point exponential format (uppercase)." msgstr "Format exponentiel pour un *float* (en capitales)." -#: ../Doc/library/stdtypes.rst:2245 ../Doc/library/stdtypes.rst:3395 +#: ../Doc/library/stdtypes.rst:2244 ../Doc/library/stdtypes.rst:3394 msgid "``'f'``" msgstr "``'f'``" -#: ../Doc/library/stdtypes.rst:2245 ../Doc/library/stdtypes.rst:2247 -#: ../Doc/library/stdtypes.rst:3395 ../Doc/library/stdtypes.rst:3397 +#: ../Doc/library/stdtypes.rst:2244 ../Doc/library/stdtypes.rst:2246 +#: ../Doc/library/stdtypes.rst:3394 ../Doc/library/stdtypes.rst:3396 msgid "Floating point decimal format." msgstr "Format décimal pour un *float*." -#: ../Doc/library/stdtypes.rst:2247 ../Doc/library/stdtypes.rst:3397 +#: ../Doc/library/stdtypes.rst:2246 ../Doc/library/stdtypes.rst:3396 msgid "``'F'``" msgstr "``'F'``" -#: ../Doc/library/stdtypes.rst:2249 ../Doc/library/stdtypes.rst:3399 +#: ../Doc/library/stdtypes.rst:2248 ../Doc/library/stdtypes.rst:3398 msgid "``'g'``" msgstr "``'g'``" -#: ../Doc/library/stdtypes.rst:2249 ../Doc/library/stdtypes.rst:3399 +#: ../Doc/library/stdtypes.rst:2248 ../Doc/library/stdtypes.rst:3398 msgid "" "Floating point format. Uses lowercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -3798,11 +3798,11 @@ msgstr "" "inférieur à ``-4`` ou pas plus petit que la précision, sinon le format " "décimal." -#: ../Doc/library/stdtypes.rst:2253 ../Doc/library/stdtypes.rst:3403 +#: ../Doc/library/stdtypes.rst:2252 ../Doc/library/stdtypes.rst:3402 msgid "``'G'``" msgstr "``'G'``" -#: ../Doc/library/stdtypes.rst:2253 ../Doc/library/stdtypes.rst:3403 +#: ../Doc/library/stdtypes.rst:2252 ../Doc/library/stdtypes.rst:3402 msgid "" "Floating point format. Uses uppercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -3811,51 +3811,51 @@ msgstr "" "inférieur à ``-4`` ou pas plus petit que la précision, sinon le format " "décimal." -#: ../Doc/library/stdtypes.rst:2257 ../Doc/library/stdtypes.rst:3407 +#: ../Doc/library/stdtypes.rst:2256 ../Doc/library/stdtypes.rst:3406 msgid "``'c'``" msgstr "``'c'``" -#: ../Doc/library/stdtypes.rst:2257 +#: ../Doc/library/stdtypes.rst:2256 msgid "Single character (accepts integer or single character string)." msgstr "" "Un seul caractère (accepte des entiers ou une chaîne d'un seul caractère)." -#: ../Doc/library/stdtypes.rst:2260 ../Doc/library/stdtypes.rst:3420 +#: ../Doc/library/stdtypes.rst:2259 ../Doc/library/stdtypes.rst:3419 msgid "``'r'``" msgstr "``'r'``" -#: ../Doc/library/stdtypes.rst:2260 +#: ../Doc/library/stdtypes.rst:2259 msgid "String (converts any Python object using :func:`repr`)." msgstr "String (convertit n'importe quel objet Python avec :func:`repr`)." -#: ../Doc/library/stdtypes.rst:2263 ../Doc/library/stdtypes.rst:3414 +#: ../Doc/library/stdtypes.rst:2262 ../Doc/library/stdtypes.rst:3413 msgid "``'s'``" msgstr "``'s'``" -#: ../Doc/library/stdtypes.rst:2263 +#: ../Doc/library/stdtypes.rst:2262 msgid "String (converts any Python object using :func:`str`)." msgstr "String (convertit n'importe quel objet Python avec :func:`str`)." -#: ../Doc/library/stdtypes.rst:2266 ../Doc/library/stdtypes.rst:3417 +#: ../Doc/library/stdtypes.rst:2265 ../Doc/library/stdtypes.rst:3416 msgid "``'a'``" msgstr "``'a'``" -#: ../Doc/library/stdtypes.rst:2266 +#: ../Doc/library/stdtypes.rst:2265 msgid "String (converts any Python object using :func:`ascii`)." msgstr "" "String (convertit n'importe quel objet Python en utilisant :func:`ascii`)." -#: ../Doc/library/stdtypes.rst:2269 ../Doc/library/stdtypes.rst:3423 +#: ../Doc/library/stdtypes.rst:2268 ../Doc/library/stdtypes.rst:3422 msgid "``'%'``" msgstr "``'%'``" -#: ../Doc/library/stdtypes.rst:2269 ../Doc/library/stdtypes.rst:3423 +#: ../Doc/library/stdtypes.rst:2268 ../Doc/library/stdtypes.rst:3422 msgid "No argument is converted, results in a ``'%'`` character in the result." msgstr "" "Aucun argument n'est converti, donne un caractère de ``'%'`` dans le " "résultat." -#: ../Doc/library/stdtypes.rst:2276 ../Doc/library/stdtypes.rst:3430 +#: ../Doc/library/stdtypes.rst:2275 ../Doc/library/stdtypes.rst:3429 msgid "" "The alternate form causes a leading octal specifier (``'0o'``) to be " "inserted before the first digit." @@ -3863,7 +3863,7 @@ msgstr "" "La forme alternative entraîne l'insertion d'un préfixe octal (``'0o'``) " "avant le premier chiffre." -#: ../Doc/library/stdtypes.rst:2280 ../Doc/library/stdtypes.rst:3434 +#: ../Doc/library/stdtypes.rst:2279 ../Doc/library/stdtypes.rst:3433 msgid "" "The alternate form causes a leading ``'0x'`` or ``'0X'`` (depending on " "whether the ``'x'`` or ``'X'`` format was used) to be inserted before the " @@ -3873,7 +3873,7 @@ msgstr "" "(respectivement pour les formats ``'x'`` et ``'X'``) avant le premier " "chiffre." -#: ../Doc/library/stdtypes.rst:2284 ../Doc/library/stdtypes.rst:3438 +#: ../Doc/library/stdtypes.rst:2283 ../Doc/library/stdtypes.rst:3437 msgid "" "The alternate form causes the result to always contain a decimal point, even " "if no digits follow it." @@ -3881,14 +3881,14 @@ msgstr "" "La forme alternative implique la présence d'un point décimal, même si aucun " "chiffre ne le suit." -#: ../Doc/library/stdtypes.rst:2287 ../Doc/library/stdtypes.rst:3441 +#: ../Doc/library/stdtypes.rst:2286 ../Doc/library/stdtypes.rst:3440 msgid "" "The precision determines the number of digits after the decimal point and " "defaults to 6." msgstr "" "La précision détermine le nombre de chiffres après la virgule, 6 par défaut." -#: ../Doc/library/stdtypes.rst:2291 ../Doc/library/stdtypes.rst:3445 +#: ../Doc/library/stdtypes.rst:2290 ../Doc/library/stdtypes.rst:3444 msgid "" "The alternate form causes the result to always contain a decimal point, and " "trailing zeroes are not removed as they would otherwise be." @@ -3896,7 +3896,7 @@ msgstr "" "La forme alternative implique la présence d'un point décimal et les zéros " "non significatifs sont conservés (ils ne le seraient pas autrement)." -#: ../Doc/library/stdtypes.rst:2294 ../Doc/library/stdtypes.rst:3448 +#: ../Doc/library/stdtypes.rst:2293 ../Doc/library/stdtypes.rst:3447 msgid "" "The precision determines the number of significant digits before and after " "the decimal point and defaults to 6." @@ -3904,15 +3904,15 @@ msgstr "" "La précision détermine le nombre de chiffres significatifs avant et après la " "virgule. 6 par défaut." -#: ../Doc/library/stdtypes.rst:2298 ../Doc/library/stdtypes.rst:3452 +#: ../Doc/library/stdtypes.rst:2297 ../Doc/library/stdtypes.rst:3451 msgid "If precision is ``N``, the output is truncated to ``N`` characters." msgstr "Si la précision est ``N``, la sortie est tronquée à ``N`` caractères." -#: ../Doc/library/stdtypes.rst:2301 ../Doc/library/stdtypes.rst:3461 +#: ../Doc/library/stdtypes.rst:2300 ../Doc/library/stdtypes.rst:3460 msgid "See :pep:`237`." msgstr "Voir la :pep:`237`." -#: ../Doc/library/stdtypes.rst:2303 +#: ../Doc/library/stdtypes.rst:2302 msgid "" "Since Python strings have an explicit length, ``%s`` conversions do not " "assume that ``'\\0'`` is the end of the string." @@ -3920,7 +3920,7 @@ msgstr "" "Puisque les chaînes Python ont une longueur explicite, les conversions ``" "%s`` ne considèrent pas ``'\\0'`` comme la fin de la chaîne." -#: ../Doc/library/stdtypes.rst:2308 +#: ../Doc/library/stdtypes.rst:2307 msgid "" "``%f`` conversions for numbers whose absolute value is over 1e50 are no " "longer replaced by ``%g`` conversions." @@ -3928,7 +3928,7 @@ msgstr "" "Les conversions ``%f`` pour nombres dont la valeur absolue est supérieure à " "``1e50`` ne sont plus remplacés par des conversions ``%g``." -#: ../Doc/library/stdtypes.rst:2319 +#: ../Doc/library/stdtypes.rst:2318 msgid "" "Binary Sequence Types --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" @@ -3936,7 +3936,7 @@ msgstr "" "Séquences Binaires --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" -#: ../Doc/library/stdtypes.rst:2327 +#: ../Doc/library/stdtypes.rst:2326 msgid "" "The core built-in types for manipulating binary data are :class:`bytes` and :" "class:`bytearray`. They are supported by :class:`memoryview` which uses the :" @@ -3948,7 +3948,7 @@ msgstr "" "qui utilise le :ref:`buffer protocol ` pour accéder à la " "mémoire d'autres objets binaires sans avoir besoin d'en faire une copie." -#: ../Doc/library/stdtypes.rst:2332 +#: ../Doc/library/stdtypes.rst:2331 msgid "" "The :mod:`array` module supports efficient storage of basic data types like " "32-bit integers and IEEE754 double-precision floating values." @@ -3956,11 +3956,11 @@ msgstr "" "Le module :mod:`array` permet le stockage efficace de types basiques comme " "les entiers de 32 bits et les *float* double précision IEEE754." -#: ../Doc/library/stdtypes.rst:2338 +#: ../Doc/library/stdtypes.rst:2337 msgid "Bytes Objects" msgstr "Objets *bytes*" -#: ../Doc/library/stdtypes.rst:2342 +#: ../Doc/library/stdtypes.rst:2341 msgid "" "Bytes objects are immutable sequences of single bytes. Since many major " "binary protocols are based on the ASCII text encoding, bytes objects offer " @@ -3972,7 +3972,7 @@ msgstr "" "méthodes qui ne sont valables que lors de la manipulation de données ASCII " "et sont étroitement liés aux objets *str* dans bien d'autres aspects." -#: ../Doc/library/stdtypes.rst:2349 +#: ../Doc/library/stdtypes.rst:2348 msgid "" "Firstly, the syntax for bytes literals is largely the same as that for " "string literals, except that a ``b`` prefix is added:" @@ -3980,24 +3980,24 @@ msgstr "" "Tout d'abord, la syntaxe des *bytes* littéraux est en grande partie la même " "que pour les chaînes littérales, en dehors du préfixe ``b`` :" -#: ../Doc/library/stdtypes.rst:2352 +#: ../Doc/library/stdtypes.rst:2351 msgid "Single quotes: ``b'still allows embedded \"double\" quotes'``" msgstr "" "Les guillemets simples : ``b'autorisent aussi les guillemets \"doubles\"'``" -#: ../Doc/library/stdtypes.rst:2353 +#: ../Doc/library/stdtypes.rst:2352 msgid "Double quotes: ``b\"still allows embedded 'single' quotes\"``." msgstr "" "Les guillemets doubles : ``b\"permettent aussi les guillemets 'simples'\"``." -#: ../Doc/library/stdtypes.rst:2354 +#: ../Doc/library/stdtypes.rst:2353 msgid "" "Triple quoted: ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes\"\"\"``" msgstr "" "Les guillemets triples : ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes" "\"\"\"``" -#: ../Doc/library/stdtypes.rst:2356 +#: ../Doc/library/stdtypes.rst:2355 msgid "" "Only ASCII characters are permitted in bytes literals (regardless of the " "declared source code encoding). Any binary values over 127 must be entered " @@ -4008,7 +4008,7 @@ msgstr "" "delà de 127 doivent être entrés dans littéraux de *bytes* en utilisant une " "séquence d'échappement appropriée." -#: ../Doc/library/stdtypes.rst:2360 +#: ../Doc/library/stdtypes.rst:2359 msgid "" "As with string literals, bytes literals may also use a ``r`` prefix to " "disable processing of escape sequences. See :ref:`strings` for more about " @@ -4020,7 +4020,7 @@ msgstr "" "différentes formes littérales de *bytes*, y compris les séquences " "d'échappement supportées." -#: ../Doc/library/stdtypes.rst:2364 +#: ../Doc/library/stdtypes.rst:2363 msgid "" "While bytes literals and representations are based on ASCII text, bytes " "objects actually behave like immutable sequences of integers, with each " @@ -4043,7 +4043,7 @@ msgstr "" "sur des données binaires qui ne sont pas compatibles ASCII conduit " "généralement à leur corruption)." -#: ../Doc/library/stdtypes.rst:2374 +#: ../Doc/library/stdtypes.rst:2373 msgid "" "In addition to the literal forms, bytes objects can be created in a number " "of other ways:" @@ -4051,26 +4051,26 @@ msgstr "" "En plus des formes littérales, des objets *bytes* peuvent être créés par de " "nombreux moyens :" -#: ../Doc/library/stdtypes.rst:2377 +#: ../Doc/library/stdtypes.rst:2376 msgid "A zero-filled bytes object of a specified length: ``bytes(10)``" msgstr "" "Un objet *bytes* rempli de zéros d'une longueur spécifiée : ``bytes(10)``" -#: ../Doc/library/stdtypes.rst:2378 +#: ../Doc/library/stdtypes.rst:2377 msgid "From an iterable of integers: ``bytes(range(20))``" msgstr "D'un itérable d'entiers : ``bytes(range(20))``" -#: ../Doc/library/stdtypes.rst:2379 +#: ../Doc/library/stdtypes.rst:2378 msgid "Copying existing binary data via the buffer protocol: ``bytes(obj)``" msgstr "" "Copier des données binaires existantes via le *buffer protocol* : " "``bytes(obj)``" -#: ../Doc/library/stdtypes.rst:2381 +#: ../Doc/library/stdtypes.rst:2380 msgid "Also see the :ref:`bytes ` built-in." msgstr "Voir aussi la fonction native :ref:`bytes `." -#: ../Doc/library/stdtypes.rst:2383 +#: ../Doc/library/stdtypes.rst:2382 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4082,7 +4082,7 @@ msgstr "" "données binaires. Par conséquent, le type *bytes* a une méthode de classe " "pour lire des données dans ce format :" -#: ../Doc/library/stdtypes.rst:2389 +#: ../Doc/library/stdtypes.rst:2388 msgid "" "This :class:`bytes` class method returns a bytes object, decoding the given " "string object. The string must contain two hexadecimal digits per byte, " @@ -4092,7 +4092,7 @@ msgstr "" "la chaîne donnée. La chaîne doit contenir deux chiffres hexadécimaux par " "octet, les espaces ASCII sont ignorés." -#: ../Doc/library/stdtypes.rst:2396 +#: ../Doc/library/stdtypes.rst:2395 msgid "" ":meth:`bytes.fromhex` now skips all ASCII whitespace in the string, not just " "spaces." @@ -4100,7 +4100,7 @@ msgstr "" ":meth:`bytes.fromhex` saute maintenant dans la chaîne tous les caractères " "ASCII \"blancs\", pas seulement les espaces." -#: ../Doc/library/stdtypes.rst:2400 +#: ../Doc/library/stdtypes.rst:2399 msgid "" "A reverse conversion function exists to transform a bytes object into its " "hexadecimal representation." @@ -4108,7 +4108,7 @@ msgstr "" "Une fonction de conversion inverse existe pour transformer un objet *bytes* " "en sa représentation hexadécimale." -#: ../Doc/library/stdtypes.rst:2405 ../Doc/library/stdtypes.rst:2499 +#: ../Doc/library/stdtypes.rst:2404 ../Doc/library/stdtypes.rst:2498 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the instance." @@ -4116,7 +4116,7 @@ msgstr "" "Renvoie une chaîne contenant deux chiffres hexadécimaux pour chaque octet du " "*byte*." -#: ../Doc/library/stdtypes.rst:2411 +#: ../Doc/library/stdtypes.rst:2410 msgid "" "If you want to make the hex string easier to read, you can specify a single " "character separator *sep* parameter to include in the output. By default " @@ -4125,13 +4125,13 @@ msgid "" "negative values from the left." msgstr "" -#: ../Doc/library/stdtypes.rst:2427 +#: ../Doc/library/stdtypes.rst:2426 msgid "" ":meth:`bytes.hex` now supports optional *sep* and *bytes_per_sep* parameters " "to insert separators between bytes in the hex output." msgstr "" -#: ../Doc/library/stdtypes.rst:2431 +#: ../Doc/library/stdtypes.rst:2430 msgid "" "Since bytes objects are sequences of integers (akin to a tuple), for a bytes " "object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be a bytes " @@ -4143,7 +4143,7 @@ msgstr "" "que``b[0:1]`` sera un objet *bytes* de longueur 1. (Cela contraste avec les " "chaînes, où l'indexation et le *slicing* donne une chaîne de longueur 1)" -#: ../Doc/library/stdtypes.rst:2436 +#: ../Doc/library/stdtypes.rst:2435 msgid "" "The representation of bytes objects uses the literal format (``b'...'``) " "since it is often more useful than e.g. ``bytes([46, 46, 46])``. You can " @@ -4153,7 +4153,7 @@ msgstr "" "est souvent plus utile que par exemple ``bytes([46, 46, 46])``. Vous pouvez " "toujours convertir un *bytes* en liste d'entiers en utilisant ``list(b)``." -#: ../Doc/library/stdtypes.rst:2441 +#: ../Doc/library/stdtypes.rst:2440 msgid "" "For Python 2.x users: In the Python 2.x series, a variety of implicit " "conversions between 8-bit strings (the closest thing 2.x offers to a built-" @@ -4174,11 +4174,11 @@ msgstr "" "conversions entre les données binaires et texte Unicode doivent être " "explicites, et les *bytes* sont toujours différents des chaînes." -#: ../Doc/library/stdtypes.rst:2454 +#: ../Doc/library/stdtypes.rst:2453 msgid "Bytearray Objects" msgstr "Objets *bytearray*" -#: ../Doc/library/stdtypes.rst:2458 +#: ../Doc/library/stdtypes.rst:2457 msgid "" ":class:`bytearray` objects are a mutable counterpart to :class:`bytes` " "objects." @@ -4186,7 +4186,7 @@ msgstr "" "Les objets :class:`bytearray` sont l'équivalent muable des objets :class:" "`bytes`." -#: ../Doc/library/stdtypes.rst:2463 +#: ../Doc/library/stdtypes.rst:2462 msgid "" "There is no dedicated literal syntax for bytearray objects, instead they are " "always created by calling the constructor:" @@ -4194,27 +4194,27 @@ msgstr "" "Il n'y a pas de syntaxe littérale dédiée aux *bytearray*, ils sont toujours " "créés en appelant le constructeur :" -#: ../Doc/library/stdtypes.rst:2466 +#: ../Doc/library/stdtypes.rst:2465 msgid "Creating an empty instance: ``bytearray()``" msgstr "Créer une instance vide: ``bytearray()``" -#: ../Doc/library/stdtypes.rst:2467 +#: ../Doc/library/stdtypes.rst:2466 msgid "Creating a zero-filled instance with a given length: ``bytearray(10)``" msgstr "" "Créer une instance remplie de zéros d'une longueur donnée : ``bytearray(10)``" -#: ../Doc/library/stdtypes.rst:2468 +#: ../Doc/library/stdtypes.rst:2467 msgid "From an iterable of integers: ``bytearray(range(20))``" msgstr "À partir d'un itérable d'entiers : ``bytearray(range(20))``" -#: ../Doc/library/stdtypes.rst:2469 +#: ../Doc/library/stdtypes.rst:2468 msgid "" "Copying existing binary data via the buffer protocol: ``bytearray(b'Hi!')``" msgstr "" "Copie des données binaires existantes via le *buffer protocol* : " "``bytearray(b'Hi!')``" -#: ../Doc/library/stdtypes.rst:2471 +#: ../Doc/library/stdtypes.rst:2470 msgid "" "As bytearray objects are mutable, they support the :ref:`mutable ` sequence operations in addition to the common bytes and bytearray " @@ -4224,11 +4224,11 @@ msgstr "" "séquence :ref:`muables ` en plus des opérations communes " "de *bytes* et *bytearray* décrites dans :ref:`bytes-methods`." -#: ../Doc/library/stdtypes.rst:2475 +#: ../Doc/library/stdtypes.rst:2474 msgid "Also see the :ref:`bytearray ` built-in." msgstr "Voir aussi la fonction native :ref:`bytearray `." -#: ../Doc/library/stdtypes.rst:2477 +#: ../Doc/library/stdtypes.rst:2476 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -4240,7 +4240,7 @@ msgstr "" "données binaires. Par conséquent, le type *bytearray* a une méthode de " "classe pour lire les données dans ce format :" -#: ../Doc/library/stdtypes.rst:2483 +#: ../Doc/library/stdtypes.rst:2482 msgid "" "This :class:`bytearray` class method returns bytearray object, decoding the " "given string object. The string must contain two hexadecimal digits per " @@ -4250,7 +4250,7 @@ msgstr "" "décodant la chaîne donnée. La chaîne doit contenir deux chiffres " "hexadécimaux par octet, les espaces ASCII sont ignorés." -#: ../Doc/library/stdtypes.rst:2490 +#: ../Doc/library/stdtypes.rst:2489 msgid "" ":meth:`bytearray.fromhex` now skips all ASCII whitespace in the string, not " "just spaces." @@ -4258,7 +4258,7 @@ msgstr "" ":meth:`bytearray.fromhex` saute maintenant tous les caractères \"blancs\" " "ASCII dans la chaîne, pas seulement les espaces." -#: ../Doc/library/stdtypes.rst:2494 +#: ../Doc/library/stdtypes.rst:2493 msgid "" "A reverse conversion function exists to transform a bytearray object into " "its hexadecimal representation." @@ -4266,7 +4266,7 @@ msgstr "" "Une fonction de conversion inverse existe pour transformer un objet " "*bytearray* en sa représentation hexadécimale." -#: ../Doc/library/stdtypes.rst:2507 +#: ../Doc/library/stdtypes.rst:2506 msgid "" "Since bytearray objects are sequences of integers (akin to a list), for a " "bytearray object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be " @@ -4279,7 +4279,7 @@ msgstr "" "chaînes de texte, où l'indexation et le *slicing* produit une chaîne de " "longueur 1)" -#: ../Doc/library/stdtypes.rst:2512 +#: ../Doc/library/stdtypes.rst:2511 msgid "" "The representation of bytearray objects uses the bytes literal format " "(``bytearray(b'...')``) since it is often more useful than e.g. " @@ -4291,11 +4291,11 @@ msgstr "" "exemple ``bytearray([46, 46, 46])``. Vous pouvez toujours convertir un objet " "*bytearray* en une liste de nombres entiers en utilisant ``list(b)``." -#: ../Doc/library/stdtypes.rst:2521 +#: ../Doc/library/stdtypes.rst:2520 msgid "Bytes and Bytearray Operations" msgstr "Opérations sur les *bytes* et *bytearray*" -#: ../Doc/library/stdtypes.rst:2526 +#: ../Doc/library/stdtypes.rst:2525 msgid "" "Both bytes and bytearray objects support the :ref:`common ` " "sequence operations. They interoperate not just with operands of the same " @@ -4310,7 +4310,7 @@ msgstr "" "opérations sans provoquer d'erreurs. Cependant, le type du résultat peut " "dépendre de l'ordre des opérandes." -#: ../Doc/library/stdtypes.rst:2534 +#: ../Doc/library/stdtypes.rst:2533 msgid "" "The methods on bytes and bytearray objects don't accept strings as their " "arguments, just as the methods on strings don't accept bytes as their " @@ -4320,11 +4320,11 @@ msgstr "" "comme arguments, tout comme les méthodes sur les chaînes n'acceptent pas les " "*bytes* comme arguments. Par exemple, vous devez écrire ::" -#: ../Doc/library/stdtypes.rst:2541 +#: ../Doc/library/stdtypes.rst:2540 msgid "and::" msgstr "et  ::" -#: ../Doc/library/stdtypes.rst:2546 +#: ../Doc/library/stdtypes.rst:2545 msgid "" "Some bytes and bytearray operations assume the use of ASCII compatible " "binary formats, and hence should be avoided when working with arbitrary " @@ -4335,7 +4335,7 @@ msgstr "" "travaillez avec des données binaires arbitraires. Ces restrictions sont " "couvertes ci-dessous." -#: ../Doc/library/stdtypes.rst:2551 +#: ../Doc/library/stdtypes.rst:2550 msgid "" "Using these ASCII based operations to manipulate binary data that is not " "stored in an ASCII based format may lead to data corruption." @@ -4343,7 +4343,7 @@ msgstr "" "Utiliser ces opérations basées sur l'ASCII pour manipuler des données " "binaires qui ne sont pas au format ASCII peut les corrompre." -#: ../Doc/library/stdtypes.rst:2554 +#: ../Doc/library/stdtypes.rst:2553 msgid "" "The following methods on bytes and bytearray objects can be used with " "arbitrary binary data." @@ -4351,7 +4351,7 @@ msgstr "" "Les méthodes suivantes sur les *bytes* et *bytearray* peuvent être utilisées " "avec des données binaires arbitraires." -#: ../Doc/library/stdtypes.rst:2560 +#: ../Doc/library/stdtypes.rst:2559 msgid "" "Return the number of non-overlapping occurrences of subsequence *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -4361,9 +4361,9 @@ msgstr "" "séquence *sub* dans l'intervalle [*start*, *end*]. Les arguments facultatifs " "*start* et *end* sont interprétés comme pour un *slice*." -#: ../Doc/library/stdtypes.rst:2564 ../Doc/library/stdtypes.rst:2611 -#: ../Doc/library/stdtypes.rst:2633 ../Doc/library/stdtypes.rst:2699 -#: ../Doc/library/stdtypes.rst:2712 +#: ../Doc/library/stdtypes.rst:2563 ../Doc/library/stdtypes.rst:2610 +#: ../Doc/library/stdtypes.rst:2632 ../Doc/library/stdtypes.rst:2698 +#: ../Doc/library/stdtypes.rst:2711 msgid "" "The subsequence to search for may be any :term:`bytes-like object` or an " "integer in the range 0 to 255." @@ -4371,14 +4371,14 @@ msgstr "" "La sous-séquence à rechercher peut être un quelconque :term:`bytes-like " "object` ou un nombre entier compris entre 0 et 255." -#: ../Doc/library/stdtypes.rst:2567 ../Doc/library/stdtypes.rst:2623 -#: ../Doc/library/stdtypes.rst:2636 ../Doc/library/stdtypes.rst:2702 -#: ../Doc/library/stdtypes.rst:2715 +#: ../Doc/library/stdtypes.rst:2566 ../Doc/library/stdtypes.rst:2622 +#: ../Doc/library/stdtypes.rst:2635 ../Doc/library/stdtypes.rst:2701 +#: ../Doc/library/stdtypes.rst:2714 msgid "Also accept an integer in the range 0 to 255 as the subsequence." msgstr "" "Accepte aussi un nombre entier compris entre 0 et 255 comme sous-séquence." -#: ../Doc/library/stdtypes.rst:2574 +#: ../Doc/library/stdtypes.rst:2573 msgid "" "Return a string decoded from the given bytes. Default encoding is " "``'utf-8'``. *errors* may be given to set a different error handling " @@ -4397,7 +4397,7 @@ msgstr "" "register_error`, voir la section :ref:`error-handlers`. Pour une liste des " "encodages possibles, voir la section :ref:`standard-encodings`." -#: ../Doc/library/stdtypes.rst:2584 +#: ../Doc/library/stdtypes.rst:2583 msgid "" "Passing the *encoding* argument to :class:`str` allows decoding any :term:" "`bytes-like object` directly, without needing to make a temporary bytes or " @@ -4407,11 +4407,11 @@ msgstr "" "`bytes-like object` directement, sans avoir besoin d'utiliser un *bytes* ou " "*bytearray* temporaire." -#: ../Doc/library/stdtypes.rst:2588 +#: ../Doc/library/stdtypes.rst:2587 msgid "Added support for keyword arguments." msgstr "Gère les arguments nommés." -#: ../Doc/library/stdtypes.rst:2595 +#: ../Doc/library/stdtypes.rst:2594 msgid "" "Return ``True`` if the binary data ends with the specified *suffix*, " "otherwise return ``False``. *suffix* can also be a tuple of suffixes to " @@ -4423,13 +4423,13 @@ msgstr "" "optionnel *start*, la recherche se fait à partir de cette position. Avec " "l'argument optionnel *end*, la comparaison s'arrête à cette position." -#: ../Doc/library/stdtypes.rst:2600 +#: ../Doc/library/stdtypes.rst:2599 msgid "The suffix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Les suffixes à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: ../Doc/library/stdtypes.rst:2606 +#: ../Doc/library/stdtypes.rst:2605 msgid "" "Return the lowest index in the data where the subsequence *sub* is found, " "such that *sub* is contained in the slice ``s[start:end]``. Optional " @@ -4441,7 +4441,7 @@ msgstr "" "facultatifs *start* et *end* sont interprétés comme dans la notation des " "*slices*. Donne ``-1`` si *sub* n'est pas trouvé." -#: ../Doc/library/stdtypes.rst:2616 +#: ../Doc/library/stdtypes.rst:2615 msgid "" "The :meth:`~bytes.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -4451,7 +4451,7 @@ msgstr "" "de connaître la position de *sub*. Pour vérifier si *sub* est présent ou " "non, utilisez l'opérateur :keyword:`in` ::" -#: ../Doc/library/stdtypes.rst:2630 +#: ../Doc/library/stdtypes.rst:2629 msgid "" "Like :meth:`~bytes.find`, but raise :exc:`ValueError` when the subsequence " "is not found." @@ -4459,7 +4459,7 @@ msgstr "" "Comme :meth:`~bytes.find`, mais lève une :exc:`ValueError` lorsque la " "séquence est introuvable." -#: ../Doc/library/stdtypes.rst:2643 +#: ../Doc/library/stdtypes.rst:2642 msgid "" "Return a bytes or bytearray object which is the concatenation of the binary " "data sequences in *iterable*. A :exc:`TypeError` will be raised if there " @@ -4475,7 +4475,7 @@ msgstr "" "éléments est le contenu du *bytes* ou du *bytearray* depuis lequel cette " "méthode est appelée." -#: ../Doc/library/stdtypes.rst:2654 +#: ../Doc/library/stdtypes.rst:2653 msgid "" "This static method returns a translation table usable for :meth:`bytes." "translate` that will map each character in *from* into the character at the " @@ -4488,7 +4488,7 @@ msgstr "" "être des :term:`bytes-like objects ` et avoir la même " "longueur." -#: ../Doc/library/stdtypes.rst:2665 +#: ../Doc/library/stdtypes.rst:2664 msgid "" "Split the sequence at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -4502,11 +4502,11 @@ msgstr "" "est pas trouvé, le 3-tuple renvoyé contiendra une copie de la séquence " "d'origine, suivi de deux *bytes* ou *bytearray* vides." -#: ../Doc/library/stdtypes.rst:2672 ../Doc/library/stdtypes.rst:2729 +#: ../Doc/library/stdtypes.rst:2671 ../Doc/library/stdtypes.rst:2728 msgid "The separator to search for may be any :term:`bytes-like object`." msgstr "Le séparateur à rechercher peut être tout :term:`bytes-like object`." -#: ../Doc/library/stdtypes.rst:2678 +#: ../Doc/library/stdtypes.rst:2677 msgid "" "Return a copy of the sequence with all occurrences of subsequence *old* " "replaced by *new*. If the optional argument *count* is given, only the " @@ -4516,7 +4516,7 @@ msgstr "" "séquence *old* sont remplacées par *new*. Si l'argument optionnel *count* " "est donné, seules les *count* premières occurrences de sont remplacés." -#: ../Doc/library/stdtypes.rst:2682 +#: ../Doc/library/stdtypes.rst:2681 msgid "" "The subsequence to search for and its replacement may be any :term:`bytes-" "like object`." @@ -4524,14 +4524,14 @@ msgstr "" "La sous-séquence à rechercher et son remplacement peuvent être n'importe " "quel :term:`bytes-like object`." -#: ../Doc/library/stdtypes.rst:2687 ../Doc/library/stdtypes.rst:2780 -#: ../Doc/library/stdtypes.rst:2794 ../Doc/library/stdtypes.rst:2818 -#: ../Doc/library/stdtypes.rst:2832 ../Doc/library/stdtypes.rst:2867 -#: ../Doc/library/stdtypes.rst:2937 ../Doc/library/stdtypes.rst:2955 -#: ../Doc/library/stdtypes.rst:2983 ../Doc/library/stdtypes.rst:3122 -#: ../Doc/library/stdtypes.rst:3177 ../Doc/library/stdtypes.rst:3220 -#: ../Doc/library/stdtypes.rst:3241 ../Doc/library/stdtypes.rst:3263 -#: ../Doc/library/stdtypes.rst:3465 +#: ../Doc/library/stdtypes.rst:2686 ../Doc/library/stdtypes.rst:2779 +#: ../Doc/library/stdtypes.rst:2793 ../Doc/library/stdtypes.rst:2817 +#: ../Doc/library/stdtypes.rst:2831 ../Doc/library/stdtypes.rst:2866 +#: ../Doc/library/stdtypes.rst:2936 ../Doc/library/stdtypes.rst:2954 +#: ../Doc/library/stdtypes.rst:2982 ../Doc/library/stdtypes.rst:3121 +#: ../Doc/library/stdtypes.rst:3176 ../Doc/library/stdtypes.rst:3219 +#: ../Doc/library/stdtypes.rst:3240 ../Doc/library/stdtypes.rst:3262 +#: ../Doc/library/stdtypes.rst:3464 msgid "" "The bytearray version of this method does *not* operate in place - it always " "produces a new object, even if no changes were made." @@ -4540,7 +4540,7 @@ msgstr "" "produit toujours un nouvel objet, même si aucune modification n'a été " "effectuée." -#: ../Doc/library/stdtypes.rst:2694 +#: ../Doc/library/stdtypes.rst:2693 msgid "" "Return the highest index in the sequence where the subsequence *sub* is " "found, such that *sub* is contained within ``s[start:end]``. Optional " @@ -4552,7 +4552,7 @@ msgstr "" "sont interprétés comme dans la notation des *slices*. Donne ``-1`` si *sub* " "n'est pas trouvable." -#: ../Doc/library/stdtypes.rst:2709 +#: ../Doc/library/stdtypes.rst:2708 msgid "" "Like :meth:`~bytes.rfind` but raises :exc:`ValueError` when the subsequence " "*sub* is not found." @@ -4560,7 +4560,7 @@ msgstr "" "Semblable à :meth:`~bytes.rfind` mais lève une :exc:`ValueError` lorsque " "*sub* est introuvable." -#: ../Doc/library/stdtypes.rst:2722 +#: ../Doc/library/stdtypes.rst:2721 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 " @@ -4574,7 +4574,7 @@ msgstr "" "Si le séparateur n'est pas trouvé, le triplet contiendra deux *bytes* ou " "*bytesarray* vides suivi d’une copie de la séquence d'origine." -#: ../Doc/library/stdtypes.rst:2735 +#: ../Doc/library/stdtypes.rst:2734 msgid "" "Return ``True`` if the binary data starts with the specified *prefix*, " "otherwise return ``False``. *prefix* can also be a tuple of prefixes to " @@ -4586,13 +4586,13 @@ msgstr "" "Avec l'argument *start* la recherche commence à cette position. Avec " "l'argument *end* option, la recherche s'arrête à cette position." -#: ../Doc/library/stdtypes.rst:2740 +#: ../Doc/library/stdtypes.rst:2739 msgid "The prefix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Le préfixe(s) à rechercher peuvent être n'importe quel :term:`bytes-like " "object`." -#: ../Doc/library/stdtypes.rst:2746 +#: ../Doc/library/stdtypes.rst:2745 msgid "" "Return a copy of the bytes or bytearray object where all bytes occurring in " "the optional argument *delete* are removed, and the remaining bytes have " @@ -4603,25 +4603,25 @@ msgstr "" "*delete* sont supprimés, et les octets restants changés par la table de " "correspondance donnée, qui doit être un objet *bytes* d'une longueur de 256." -#: ../Doc/library/stdtypes.rst:2751 +#: ../Doc/library/stdtypes.rst:2750 msgid "" "You can use the :func:`bytes.maketrans` method to create a translation table." msgstr "" "Vous pouvez utiliser la méthode :func:`bytes.maketrans` pour créer une table " "de correspondance." -#: ../Doc/library/stdtypes.rst:2754 +#: ../Doc/library/stdtypes.rst:2753 msgid "" "Set the *table* argument to ``None`` for translations that only delete " "characters::" msgstr "" "Donnez ``None`` comme *table* pour seulement supprimer des caractères ::" -#: ../Doc/library/stdtypes.rst:2760 +#: ../Doc/library/stdtypes.rst:2759 msgid "*delete* is now supported as a keyword argument." msgstr "*delete* est maintenant accepté comme argument nommé." -#: ../Doc/library/stdtypes.rst:2764 +#: ../Doc/library/stdtypes.rst:2763 msgid "" "The following methods on bytes and bytearray objects have default behaviours " "that assume the use of ASCII compatible binary formats, but can still be " @@ -4635,7 +4635,7 @@ msgstr "" "appropriés. Notez que toutes les méthodes de *bytearray* de cette section " "ne travaillent jamais sur l'objet lui même, mais renvoient un nouvel objet." -#: ../Doc/library/stdtypes.rst:2773 +#: ../Doc/library/stdtypes.rst:2772 msgid "" "Return a copy of the object centered in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4647,7 +4647,7 @@ msgstr "" "espace ASCII). Pour les objets :class:`bytes`, la séquence initiale est " "renvoyée si *width* est inférieur ou égal à ``len(s)``." -#: ../Doc/library/stdtypes.rst:2787 +#: ../Doc/library/stdtypes.rst:2786 msgid "" "Return a copy of the object left justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4659,7 +4659,7 @@ msgstr "" "espace ASCII). Pour les objets :class:`bytes`, la séquence initiale est " "renvoyée si *width* est inférieure ou égale à ``len(s)``." -#: ../Doc/library/stdtypes.rst:2801 +#: ../Doc/library/stdtypes.rst:2800 msgid "" "Return a copy of the sequence with specified leading bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4676,15 +4676,15 @@ msgstr "" "*chars* n’est pas un préfixe, toutes les combinaisons de ses valeurs sont " "supprimées ::" -#: ../Doc/library/stdtypes.rst:2813 ../Doc/library/stdtypes.rst:2862 -#: ../Doc/library/stdtypes.rst:2932 +#: ../Doc/library/stdtypes.rst:2812 ../Doc/library/stdtypes.rst:2861 +#: ../Doc/library/stdtypes.rst:2931 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`." msgstr "" "La séquence de valeurs à supprimer peut être tout :term:`bytes-like object`." -#: ../Doc/library/stdtypes.rst:2825 +#: ../Doc/library/stdtypes.rst:2824 msgid "" "Return a copy of the object right justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -4696,7 +4696,7 @@ msgstr "" "défaut est un espace ASCII). Pour les objets :class:`bytes`, la séquence " "d'origine est renvoyée si *width* est inférieure ou égale à ``len(s)``." -#: ../Doc/library/stdtypes.rst:2839 +#: ../Doc/library/stdtypes.rst:2838 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given, at most *maxsplit* splits are " @@ -4713,7 +4713,7 @@ msgstr "" "meth:`rsplit` se comporte comme :meth:`split` qui est décrit en détail ci-" "dessous." -#: ../Doc/library/stdtypes.rst:2850 +#: ../Doc/library/stdtypes.rst:2849 msgid "" "Return a copy of the sequence with specified trailing bytes removed. The " "*chars* argument is a binary sequence specifying the set of byte values to " @@ -4728,7 +4728,7 @@ msgstr "" "supprimés. L'argument *chars* n'est pas un suffixe : toutes les combinaisons " "de ses valeurs sont retirées ::" -#: ../Doc/library/stdtypes.rst:2874 +#: ../Doc/library/stdtypes.rst:2873 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given and non-negative, at most " @@ -4742,7 +4742,7 @@ msgstr "" "éléments), Si *maxsplit* n'est pas spécifié ou faut ``-1``, il n'y a aucune " "limite au nombre de découpes (elles sont toutes effectuées)." -#: ../Doc/library/stdtypes.rst:2880 +#: ../Doc/library/stdtypes.rst:2879 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty subsequences (for example, ``b'1,,2'.split(b',')`` " @@ -4760,7 +4760,7 @@ msgstr "" "``[b'']`` ou ``[bytearray(b'')]`` en fonction du type de l'objet découpé. " "L'argument *sep* peut être n'importe quel :term:`bytes-like object`." -#: ../Doc/library/stdtypes.rst:2898 +#: ../Doc/library/stdtypes.rst:2897 msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " "applied: runs of consecutive ASCII whitespace are regarded as a single " @@ -4776,7 +4776,7 @@ msgstr "" "diviser une séquence vide ou une séquence composée d'espaces ASCII avec un " "séparateur ``None`` renvoie ``[]``." -#: ../Doc/library/stdtypes.rst:2919 +#: ../Doc/library/stdtypes.rst:2918 msgid "" "Return a copy of the sequence with specified leading and trailing bytes " "removed. The *chars* argument is a binary sequence specifying the set of " @@ -4792,7 +4792,7 @@ msgstr "" "espaces ASCII sont supprimés. L'argument *chars* n'est ni un préfixe ni un " "suffixe, toutes les combinaisons de ses valeurs sont supprimées ::" -#: ../Doc/library/stdtypes.rst:2941 +#: ../Doc/library/stdtypes.rst:2940 msgid "" "The following methods on bytes and bytearray objects assume the use of ASCII " "compatible binary formats and should not be applied to arbitrary binary " @@ -4805,7 +4805,7 @@ msgstr "" "que toutes les méthodes de *bytearray* de cette section *ne modifient pas* " "les octets, ils produisent de nouveaux objets." -#: ../Doc/library/stdtypes.rst:2949 +#: ../Doc/library/stdtypes.rst:2948 msgid "" "Return a copy of the sequence with each byte interpreted as an ASCII " "character, and the first byte capitalized and the rest lowercased. Non-ASCII " @@ -4815,7 +4815,7 @@ msgstr "" "caractère ASCII, le premier octet en capitale et le reste en minuscules. Les " "octets non ASCII ne sont pas modifiés." -#: ../Doc/library/stdtypes.rst:2962 +#: ../Doc/library/stdtypes.rst:2961 msgid "" "Return a copy of the sequence where all ASCII tab characters are replaced by " "one or more ASCII spaces, depending on the current column and the given tab " @@ -4846,7 +4846,7 @@ msgstr "" "cours est incrémentée de un indépendamment de la façon dont l'octet est " "représenté lors de l’affichage ::" -#: ../Doc/library/stdtypes.rst:2990 +#: ../Doc/library/stdtypes.rst:2989 msgid "" "Return true if all bytes in the sequence are alphabetical ASCII characters " "or ASCII decimal digits and the sequence is not empty, false otherwise. " @@ -4860,7 +4860,7 @@ msgstr "" "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'`` et les " "chiffres : ``b'0123456789'``." -#: ../Doc/library/stdtypes.rst:3007 +#: ../Doc/library/stdtypes.rst:3006 msgid "" "Return true if all bytes in the sequence are alphabetic ASCII characters and " "the sequence is not empty, false otherwise. Alphabetic ASCII characters are " @@ -4872,7 +4872,7 @@ msgstr "" "Les caractères ASCIIalphabétiques sont : " "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: ../Doc/library/stdtypes.rst:3023 +#: ../Doc/library/stdtypes.rst:3022 msgid "" "Return true if the sequence is empty or all bytes in the sequence are ASCII, " "false otherwise. ASCII bytes are in the range 0-0x7F." @@ -4881,7 +4881,7 @@ msgstr "" "octets ASCII, renvoie faux dans le cas contraire. Les octets ASCII dans " "l'intervalle ``0``---``0x7F``." -#: ../Doc/library/stdtypes.rst:3033 +#: ../Doc/library/stdtypes.rst:3032 msgid "" "Return true if all bytes in the sequence are ASCII decimal digits and the " "sequence is not empty, false otherwise. ASCII decimal digits are those byte " @@ -4891,7 +4891,7 @@ msgstr "" "que la séquence n'est pas vide, sinon ``False``. Les chiffres ASCII sont " "``b'0123456789'``." -#: ../Doc/library/stdtypes.rst:3048 +#: ../Doc/library/stdtypes.rst:3047 msgid "" "Return true if there is at least one lowercase ASCII character in the " "sequence and no uppercase ASCII characters, false otherwise." @@ -4899,9 +4899,9 @@ msgstr "" "Donne ``True`` s'il y a au moins un caractère ASCII minuscule dans la " "séquence et aucune capitale, sinon ``False``." -#: ../Doc/library/stdtypes.rst:3058 ../Doc/library/stdtypes.rst:3100 -#: ../Doc/library/stdtypes.rst:3116 ../Doc/library/stdtypes.rst:3166 -#: ../Doc/library/stdtypes.rst:3235 +#: ../Doc/library/stdtypes.rst:3057 ../Doc/library/stdtypes.rst:3099 +#: ../Doc/library/stdtypes.rst:3115 ../Doc/library/stdtypes.rst:3165 +#: ../Doc/library/stdtypes.rst:3234 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -4910,7 +4910,7 @@ msgstr "" "Les caractères ASCII minuscules sont ``b'abcdefghijklmnopqrstuvwxyz'``. Les " "capitales ASCII sont ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: ../Doc/library/stdtypes.rst:3066 +#: ../Doc/library/stdtypes.rst:3065 msgid "" "Return true if all bytes in the sequence are ASCII whitespace and the " "sequence is not empty, false otherwise. ASCII whitespace characters are " @@ -4922,7 +4922,7 @@ msgstr "" "\\t\\n\\r\\x0b\\f'`` (espace, tabulation,saut de ligne, retour chariot, " "tabulation verticale, *form feed*)." -#: ../Doc/library/stdtypes.rst:3075 +#: ../Doc/library/stdtypes.rst:3074 msgid "" "Return true if the sequence is ASCII titlecase and the sequence is not " "empty, false otherwise. See :meth:`bytes.title` for more details on the " @@ -4932,7 +4932,7 @@ msgstr "" "vide, sinon ``False``. Voir :meth:`bytes.title` pour plus de détails sur la " "définition de *titlecase*." -#: ../Doc/library/stdtypes.rst:3090 +#: ../Doc/library/stdtypes.rst:3089 msgid "" "Return true if there is at least one uppercase alphabetic ASCII character in " "the sequence and no lowercase ASCII characters, false otherwise." @@ -4940,7 +4940,7 @@ msgstr "" "Donne ``True`` s'il y a au moins un caractère alphabétique majuscule ASCII " "dans la séquence et aucun caractères ASCII minuscules, sinon ``False``." -#: ../Doc/library/stdtypes.rst:3108 +#: ../Doc/library/stdtypes.rst:3107 msgid "" "Return a copy of the sequence with all the uppercase ASCII characters " "converted to their corresponding lowercase counterpart." @@ -4948,7 +4948,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII en " "majuscules sont convertis en leur équivalent en minuscules." -#: ../Doc/library/stdtypes.rst:3133 +#: ../Doc/library/stdtypes.rst:3132 msgid "" "Return a list of the lines in the binary sequence, breaking at ASCII line " "boundaries. This method uses the :term:`universal newlines` approach to " @@ -4960,7 +4960,7 @@ msgstr "" "newlines` pour découper les lignes. Les fins de ligne ne sont pas inclus " "dans la liste des résultats, sauf si *keepends* est donné et vrai." -#: ../Doc/library/stdtypes.rst:3145 +#: ../Doc/library/stdtypes.rst:3144 msgid "" "Unlike :meth:`~bytes.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -4970,7 +4970,7 @@ msgstr "" "cette méthode renvoie une liste vide pour la chaîne vide, et un saut de " "ligne à la fin ne se traduit pas par une ligne supplémentaire ::" -#: ../Doc/library/stdtypes.rst:3158 +#: ../Doc/library/stdtypes.rst:3157 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart and vice-versa." @@ -4978,7 +4978,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII minuscules " "sont convertis en majuscules et vice-versa." -#: ../Doc/library/stdtypes.rst:3170 +#: ../Doc/library/stdtypes.rst:3169 msgid "" "Unlike :func:`str.swapcase()`, it is always the case that ``bin.swapcase()." "swapcase() == bin`` for the binary versions. Case conversions are " @@ -4989,7 +4989,7 @@ msgstr "" "bin`` est toujours vrai. Les conversions majuscule/minuscule en ASCII étant " "toujours symétrique, ce qui n'est pas toujours vrai avec Unicode." -#: ../Doc/library/stdtypes.rst:3184 +#: ../Doc/library/stdtypes.rst:3183 msgid "" "Return a titlecased version of the binary sequence where words start with an " "uppercase ASCII character and the remaining characters are lowercase. " @@ -4999,7 +4999,7 @@ msgstr "" "commencent par un caractère ASCII majuscule et les caractères restants sont " "en minuscules. Les octets non capitalisables ne sont pas modifiés." -#: ../Doc/library/stdtypes.rst:3193 +#: ../Doc/library/stdtypes.rst:3192 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -5010,7 +5010,7 @@ msgstr "" "caractères ASCII majuscules sont ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``. Aucun " "autre octet n'est capitalisable." -#: ../Doc/library/stdtypes.rst:3227 +#: ../Doc/library/stdtypes.rst:3226 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart." @@ -5018,7 +5018,7 @@ msgstr "" "Renvoie une copie de la séquence dont tous les caractères ASCII minuscules " "sont convertis en leur équivalent majuscule." -#: ../Doc/library/stdtypes.rst:3248 +#: ../Doc/library/stdtypes.rst:3247 msgid "" "Return a copy of the sequence left filled with ASCII ``b'0'`` digits to make " "a sequence of length *width*. A leading sign prefix (``b'+'``/ ``b'-'``) is " @@ -5033,11 +5033,11 @@ msgstr "" "séquence d'origine est renvoyée si *width* est inférieur ou égale à " "``len(seq)``." -#: ../Doc/library/stdtypes.rst:3270 +#: ../Doc/library/stdtypes.rst:3269 msgid "``printf``-style Bytes Formatting" msgstr "Formatage de *bytes* a la ``printf``" -#: ../Doc/library/stdtypes.rst:3287 +#: ../Doc/library/stdtypes.rst:3286 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -5050,7 +5050,7 @@ msgstr "" "correctement). Si la valeur à afficher peut être un tuple ou un " "dictionnaire, mettez le a l'intérieur d'un autre tuple." -#: ../Doc/library/stdtypes.rst:3292 +#: ../Doc/library/stdtypes.rst:3291 msgid "" "Bytes objects (``bytes``/``bytearray``) have one unique built-in operation: " "the ``%`` operator (modulo). This is also known as the bytes *formatting* or " @@ -5066,7 +5066,7 @@ msgstr "" "plus de *values*. L'effet est similaire à la fonction :c:func:`sprintf` du " "langage C." -#: ../Doc/library/stdtypes.rst:3299 +#: ../Doc/library/stdtypes.rst:3298 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -5078,7 +5078,7 @@ msgstr "" "d'éléments spécifiés dans le format en *bytes*, ou un seul objet de " "correspondances ( *mapping object*, par exemple, un dictionnaire)." -#: ../Doc/library/stdtypes.rst:3333 +#: ../Doc/library/stdtypes.rst:3332 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the bytes object *must* include a parenthesised mapping key into " @@ -5091,15 +5091,15 @@ msgstr "" "caractère ``'%'``. La clé indique quelle valeur du dictionnaire doit être " "formatée. Par exemple :" -#: ../Doc/library/stdtypes.rst:3407 +#: ../Doc/library/stdtypes.rst:3406 msgid "Single byte (accepts integer or single byte objects)." msgstr "Octet simple (Accepte un nombre entier ou un seul objet *byte*)." -#: ../Doc/library/stdtypes.rst:3410 +#: ../Doc/library/stdtypes.rst:3409 msgid "``'b'``" msgstr "``'b'``" -#: ../Doc/library/stdtypes.rst:3410 +#: ../Doc/library/stdtypes.rst:3409 msgid "" "Bytes (any object that follows the :ref:`buffer protocol ` or " "has :meth:`__bytes__`)." @@ -5107,7 +5107,7 @@ msgstr "" "*Bytes* (tout objet respectant le :ref:`buffer protocol ` ou " "ayant la méthode :meth:`__bytes__`)." -#: ../Doc/library/stdtypes.rst:3414 +#: ../Doc/library/stdtypes.rst:3413 msgid "" "``'s'`` is an alias for ``'b'`` and should only be used for Python2/3 code " "bases." @@ -5115,7 +5115,7 @@ msgstr "" "``'s'`` est un alias de ``'b'`` et ne devrait être utilisé que pour du code " "Python2/3." -#: ../Doc/library/stdtypes.rst:3417 +#: ../Doc/library/stdtypes.rst:3416 msgid "" "Bytes (converts any Python object using ``repr(obj)." "encode('ascii','backslashreplace)``)." @@ -5123,7 +5123,7 @@ msgstr "" "*Bytes* (convertis n'importe quel objet Python en utilisant ``repr(obj)." "encode('ascii', 'backslashreplace)``)." -#: ../Doc/library/stdtypes.rst:3420 +#: ../Doc/library/stdtypes.rst:3419 msgid "" "``'r'`` is an alias for ``'a'`` and should only be used for Python2/3 code " "bases." @@ -5131,27 +5131,27 @@ msgstr "" "``'r'`` est un alias de ``'a'`` et ne devrait être utilise que dans du code " "Python2/3." -#: ../Doc/library/stdtypes.rst:3420 +#: ../Doc/library/stdtypes.rst:3419 msgid "\\(7)" msgstr "\\(7)" -#: ../Doc/library/stdtypes.rst:3455 +#: ../Doc/library/stdtypes.rst:3454 msgid "``b'%s'`` is deprecated, but will not be removed during the 3.x series." msgstr "``b'%s'`` est obsolète, mais ne sera pas retiré des version 3.x." -#: ../Doc/library/stdtypes.rst:3458 +#: ../Doc/library/stdtypes.rst:3457 msgid "``b'%r'`` is deprecated, but will not be removed during the 3.x series." msgstr "``b'%r'`` est obsolète mais ne sera pas retiré dans Python 3.x." -#: ../Doc/library/stdtypes.rst:3470 +#: ../Doc/library/stdtypes.rst:3469 msgid ":pep:`461` - Adding % formatting to bytes and bytearray" msgstr ":pep:`461` -- Ajout du formatage via % aux *bytes* et *bytesarray*" -#: ../Doc/library/stdtypes.rst:3477 +#: ../Doc/library/stdtypes.rst:3476 msgid "Memory Views" msgstr "Vues de mémoires" -#: ../Doc/library/stdtypes.rst:3479 +#: ../Doc/library/stdtypes.rst:3478 msgid "" ":class:`memoryview` objects allow Python code to access the internal data of " "an object that supports the :ref:`buffer protocol ` without " @@ -5161,7 +5161,7 @@ msgstr "" "données internes d'un objet pendant en charge le :ref:`buffer protocol " "`." -#: ../Doc/library/stdtypes.rst:3485 +#: ../Doc/library/stdtypes.rst:3484 msgid "" "Create a :class:`memoryview` that references *obj*. *obj* must support the " "buffer protocol. Built-in objects that support the buffer protocol include :" @@ -5171,7 +5171,7 @@ msgstr "" "le *buffer protocol*. Les objets natifs pendant en charge le *buffer " "protocol* sont :class:`bytes` et :class:`bytearray`." -#: ../Doc/library/stdtypes.rst:3489 +#: ../Doc/library/stdtypes.rst:3488 msgid "" "A :class:`memoryview` has the notion of an *element*, which is the atomic " "memory unit handled by the originating object *obj*. For many simple types " @@ -5184,7 +5184,7 @@ msgstr "" "d'autres types tels que :class:`array.array` les éléments peuvent être plus " "grands." -#: ../Doc/library/stdtypes.rst:3495 +#: ../Doc/library/stdtypes.rst:3494 msgid "" "``len(view)`` is equal to the length of :class:`~memoryview.tolist`. If " "``view.ndim = 0``, the length is 1. If ``view.ndim = 1``, the length is " @@ -5200,7 +5200,7 @@ msgstr "" "L'attribut :class:`~memoryview.itemsize` vous donnera la taille en octets " "d'un élément." -#: ../Doc/library/stdtypes.rst:3502 +#: ../Doc/library/stdtypes.rst:3501 msgid "" "A :class:`memoryview` supports slicing and indexing to expose its data. One-" "dimensional slicing will result in a subview::" @@ -5208,7 +5208,7 @@ msgstr "" "Une :class:`memoryview` autorise le découpage et l'indiçage de ses données. " "Découper sur une dimension donnera une sous-vue ::" -#: ../Doc/library/stdtypes.rst:3515 +#: ../Doc/library/stdtypes.rst:3514 msgid "" "If :class:`~memoryview.format` is one of the native format specifiers from " "the :mod:`struct` module, indexing with an integer or a tuple of integers is " @@ -5227,11 +5227,11 @@ msgstr "" "dimensions. Les *memoryviews* à zéro dimension peuvent être indexées avec " "un *tuple* vide." -#: ../Doc/library/stdtypes.rst:3524 +#: ../Doc/library/stdtypes.rst:3523 msgid "Here is an example with a non-byte format::" msgstr "Voici un exemple avec un autre format que *byte* ::" -#: ../Doc/library/stdtypes.rst:3536 +#: ../Doc/library/stdtypes.rst:3535 msgid "" "If the underlying object is writable, the memoryview supports one-" "dimensional slice assignment. Resizing is not allowed::" @@ -5240,7 +5240,7 @@ msgstr "" "autorisera les assignations de tranches à une dimension. Redimensionner " "n'est cependant pas autorisé ::" -#: ../Doc/library/stdtypes.rst:3557 +#: ../Doc/library/stdtypes.rst:3556 msgid "" "One-dimensional memoryviews of hashable (read-only) types with formats 'B', " "'b' or 'c' are also hashable. The hash is defined as ``hash(m) == hash(m." @@ -5250,7 +5250,7 @@ msgstr "" "les formats 'B', 'b', ou 'c' sont aussi hachables. La fonction de hachage " "est définie tel que ``hash(m) == hash(m.tobytes())`` ::" -#: ../Doc/library/stdtypes.rst:3569 +#: ../Doc/library/stdtypes.rst:3568 msgid "" "One-dimensional memoryviews can now be sliced. One-dimensional memoryviews " "with formats 'B', 'b' or 'c' are now hashable." @@ -5259,7 +5259,7 @@ msgstr "" "*memoryviews* à une dimension avec les formats 'B', 'b', ou 'c' sont " "maintenant hachables." -#: ../Doc/library/stdtypes.rst:3573 +#: ../Doc/library/stdtypes.rst:3572 msgid "" "memoryview is now registered automatically with :class:`collections.abc." "Sequence`" @@ -5267,16 +5267,16 @@ msgstr "" "*memoryview* est maintenant enregistrée automatiquement avec :class:" "`collections.abc.Sequence`" -#: ../Doc/library/stdtypes.rst:3577 +#: ../Doc/library/stdtypes.rst:3576 msgid "memoryviews can now be indexed with tuple of integers." msgstr "" "les *memoryviews* peut maintenant être indexées par un n-uplet d'entiers." -#: ../Doc/library/stdtypes.rst:3580 +#: ../Doc/library/stdtypes.rst:3579 msgid ":class:`memoryview` has several methods:" msgstr "La :class:`memoryview` dispose de plusieurs méthodes :" -#: ../Doc/library/stdtypes.rst:3584 +#: ../Doc/library/stdtypes.rst:3583 msgid "" "A memoryview and a :pep:`3118` exporter are equal if their shapes are " "equivalent and if all corresponding values are equal when the operands' " @@ -5287,7 +5287,7 @@ msgstr "" "égales, le format respectifs des opérandes étant interprétés en utilisant la " "syntaxe de :mod:`struct`." -#: ../Doc/library/stdtypes.rst:3588 +#: ../Doc/library/stdtypes.rst:3587 msgid "" "For the subset of :mod:`struct` format strings currently supported by :meth:" "`tolist`, ``v`` and ``w`` are equal if ``v.tolist() == w.tolist()``::" @@ -5295,7 +5295,7 @@ msgstr "" "Pour le sous-ensemble des formats de :mod:`struct` supportés par :meth:" "`tolist`, ``v`` et ``w`` sont égaux si ``v.tolist() ==w.tolist()`` ::" -#: ../Doc/library/stdtypes.rst:3607 +#: ../Doc/library/stdtypes.rst:3606 msgid "" "If either format string is not supported by the :mod:`struct` module, then " "the objects will always compare as unequal (even if the format strings and " @@ -5305,7 +5305,7 @@ msgstr "" "objets seront toujours considérés différents (même si les formats et les " "valeurs contenues sont identiques) ::" -#: ../Doc/library/stdtypes.rst:3623 +#: ../Doc/library/stdtypes.rst:3622 msgid "" "Note that, as with floating point numbers, ``v is w`` does *not* imply ``v " "== w`` for memoryview objects." @@ -5313,7 +5313,7 @@ msgstr "" "Notez que pour les *memoryview*, comme pour les nombres à virgule flottante, " "``v is w`` *n'implique pas* ``v == w``." -#: ../Doc/library/stdtypes.rst:3626 +#: ../Doc/library/stdtypes.rst:3625 msgid "" "Previous versions compared the raw memory disregarding the item format and " "the logical array structure." @@ -5321,7 +5321,7 @@ msgstr "" "Les versions précédentes comparaient la mémoire brute sans tenir compte du " "format de l'objet ni de sa structure logique." -#: ../Doc/library/stdtypes.rst:3632 +#: ../Doc/library/stdtypes.rst:3631 msgid "" "Return the data in the buffer as a bytestring. This is equivalent to " "calling the :class:`bytes` constructor on the memoryview. ::" @@ -5329,7 +5329,7 @@ msgstr "" "Renvoie les données du *buffer* sous forme de *bytes*. Cela équivaut à " "appeler le constructeur :class:`bytes` sur le *memoryview*. ::" -#: ../Doc/library/stdtypes.rst:3641 +#: ../Doc/library/stdtypes.rst:3640 msgid "" "For non-contiguous arrays the result is equal to the flattened list " "representation with all elements converted to bytes. :meth:`tobytes` " @@ -5341,7 +5341,7 @@ msgstr "" "`tobytes` supporte toutes les chaînes de format, y compris celles qui ne " "sont pas connues du module :mod:`struct`." -#: ../Doc/library/stdtypes.rst:3646 +#: ../Doc/library/stdtypes.rst:3645 msgid "" "*Order* can be {'C', 'F', 'A'}. When *order* is 'C' or 'F', the data of the " "original array is converted to C or Fortran order. For contiguous views, 'A' " @@ -5350,7 +5350,7 @@ msgid "" "to C first. *order=None* is the same as *order='C'*." msgstr "" -#: ../Doc/library/stdtypes.rst:3655 +#: ../Doc/library/stdtypes.rst:3654 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the buffer. ::" @@ -5358,12 +5358,12 @@ msgstr "" "Renvoie une chaîne contenant deux chiffres hexadécimaux pour chaque octet de " "la mémoire. ::" -#: ../Doc/library/stdtypes.rst:3666 +#: ../Doc/library/stdtypes.rst:3665 msgid "Return the data in the buffer as a list of elements. ::" msgstr "" "Renvoie les données de la mémoire sous la forme d'une liste d'éléments. ::" -#: ../Doc/library/stdtypes.rst:3676 +#: ../Doc/library/stdtypes.rst:3675 msgid "" ":meth:`tolist` now supports all single character native formats in :mod:" "`struct` module syntax as well as multi-dimensional representations." @@ -5371,13 +5371,13 @@ msgstr "" ":meth:`tolist` prend désormais en charge tous les formats d'un caractère du " "module :mod:`struct` ainsi que des représentations multidimensionnelles." -#: ../Doc/library/stdtypes.rst:3683 +#: ../Doc/library/stdtypes.rst:3682 msgid "" "Return a readonly version of the memoryview object. The original memoryview " "object is unchanged. ::" msgstr "" -#: ../Doc/library/stdtypes.rst:3702 +#: ../Doc/library/stdtypes.rst:3701 msgid "" "Release the underlying buffer exposed by the memoryview object. Many " "objects take special actions when a view is held on them (for example, a :" @@ -5392,7 +5392,7 @@ msgstr "" "lever ces restrictions (et en libérer les ressources liées) aussi tôt que " "possible." -#: ../Doc/library/stdtypes.rst:3708 +#: ../Doc/library/stdtypes.rst:3707 msgid "" "After this method has been called, any further operation on the view raises " "a :class:`ValueError` (except :meth:`release()` itself which can be called " @@ -5402,7 +5402,7 @@ msgstr "" "*view* lève une :class:`ValueError` (sauf :meth:`release()` elle-même qui " "peut être appelée plusieurs fois) ::" -#: ../Doc/library/stdtypes.rst:3719 +#: ../Doc/library/stdtypes.rst:3718 msgid "" "The context management protocol can be used for a similar effect, using the " "``with`` statement::" @@ -5410,7 +5410,7 @@ msgstr "" "Le protocole de gestion de contexte peut être utilisé pour obtenir un effet " "similaire, via l'instruction ``with`` ::" -#: ../Doc/library/stdtypes.rst:3735 +#: ../Doc/library/stdtypes.rst:3734 msgid "" "Cast a memoryview to a new format or shape. *shape* defaults to " "``[byte_length//new_itemsize]``, which means that the result view will be " @@ -5424,7 +5424,7 @@ msgstr "" "mais la mémoire elle-même n'est pas copiée. Les changements supportés sont " "une dimension vers C-:term:`contiguous` et *C-contiguous* vers une dimension." -#: ../Doc/library/stdtypes.rst:3741 +#: ../Doc/library/stdtypes.rst:3740 msgid "" "The destination format is restricted to a single element native format in :" "mod:`struct` syntax. One of the formats must be a byte format ('B', 'b' or " @@ -5435,38 +5435,38 @@ msgstr "" "'c'). La longueur du résultat en octets doit être la même que la longueur " "initiale." -#: ../Doc/library/stdtypes.rst:3746 +#: ../Doc/library/stdtypes.rst:3745 msgid "Cast 1D/long to 1D/unsigned bytes::" msgstr "Transforme *1D/long* en *1D/unsigned bytes* ::" -#: ../Doc/library/stdtypes.rst:3769 +#: ../Doc/library/stdtypes.rst:3768 msgid "Cast 1D/unsigned bytes to 1D/char::" msgstr "Transforme *1D/unsigned bytes* en *1D/char* ::" -#: ../Doc/library/stdtypes.rst:3782 +#: ../Doc/library/stdtypes.rst:3781 msgid "Cast 1D/bytes to 3D/ints to 1D/signed char::" msgstr "Transforme *1D/bytes* en *3D/ints* en *1D/signed char* ::" -#: ../Doc/library/stdtypes.rst:3808 +#: ../Doc/library/stdtypes.rst:3807 #, fuzzy msgid "Cast 1D/unsigned long to 2D/unsigned long::" msgstr "Transforme *1D/unsigned char* en *2D/unsigned long* ::" -#: ../Doc/library/stdtypes.rst:3822 +#: ../Doc/library/stdtypes.rst:3821 msgid "The source format is no longer restricted when casting to a byte view." msgstr "" "Le format de la source n'est plus restreint lors de la transformation vers " "une vue d'octets." -#: ../Doc/library/stdtypes.rst:3825 +#: ../Doc/library/stdtypes.rst:3824 msgid "There are also several readonly attributes available:" msgstr "Plusieurs attributs en lecture seule sont également disponibles :" -#: ../Doc/library/stdtypes.rst:3829 +#: ../Doc/library/stdtypes.rst:3828 msgid "The underlying object of the memoryview::" msgstr "L'objet sous-jacent de la *memoryview* ::" -#: ../Doc/library/stdtypes.rst:3840 +#: ../Doc/library/stdtypes.rst:3839 msgid "" "``nbytes == product(shape) * itemsize == len(m.tobytes())``. This is the " "amount of space in bytes that the array would use in a contiguous " @@ -5476,15 +5476,15 @@ msgstr "" "l'espace que la liste utiliserait en octets, dans une représentation " "contiguë. Ce n'est pas nécessairement égale à ``len(m)`` ::" -#: ../Doc/library/stdtypes.rst:3859 +#: ../Doc/library/stdtypes.rst:3858 msgid "Multi-dimensional arrays::" msgstr "Tableaux multidimensionnels ::" -#: ../Doc/library/stdtypes.rst:3876 +#: ../Doc/library/stdtypes.rst:3875 msgid "A bool indicating whether the memory is read only." msgstr "Un booléen indiquant si la mémoire est en lecture seule." -#: ../Doc/library/stdtypes.rst:3880 +#: ../Doc/library/stdtypes.rst:3879 msgid "" "A string containing the format (in :mod:`struct` module style) for each " "element in the view. A memoryview can be created from exporters with " @@ -5496,7 +5496,7 @@ msgstr "" "de formats arbitraires, mais certaines méthodes (comme :meth:`tolist`) sont " "limitées aux formats natifs à un seul élément." -#: ../Doc/library/stdtypes.rst:3885 +#: ../Doc/library/stdtypes.rst:3884 msgid "" "format ``'B'`` is now handled according to the struct module syntax. This " "means that ``memoryview(b'abc')[0] == b'abc'[0] == 97``." @@ -5504,11 +5504,11 @@ msgstr "" "le format ``'B'`` est maintenant traité selon la syntaxe du module *struct*. " "Cela signifie que ``memoryview(b'abc')[0] == b'abc'[0] == 97``." -#: ../Doc/library/stdtypes.rst:3891 +#: ../Doc/library/stdtypes.rst:3890 msgid "The size in bytes of each element of the memoryview::" msgstr "La taille en octets de chaque élément d'une *memoryview* ::" -#: ../Doc/library/stdtypes.rst:3904 +#: ../Doc/library/stdtypes.rst:3903 msgid "" "An integer indicating how many dimensions of a multi-dimensional array the " "memory represents." @@ -5516,7 +5516,7 @@ msgstr "" "Un nombre entier indiquant le nombre de dimensions d'un tableau multi-" "dimensionnel représenté par la *memoryview*." -#: ../Doc/library/stdtypes.rst:3909 +#: ../Doc/library/stdtypes.rst:3908 msgid "" "A tuple of integers the length of :attr:`ndim` giving the shape of the " "memory as an N-dimensional array." @@ -5524,11 +5524,11 @@ msgstr "" "Un *tuple* d'entiers de longueur :attr:`ndim` donnant la forme de la " "*memoryview* sous forme d'un tableau à N dimensions." -#: ../Doc/library/stdtypes.rst:3912 ../Doc/library/stdtypes.rst:3920 +#: ../Doc/library/stdtypes.rst:3911 ../Doc/library/stdtypes.rst:3919 msgid "An empty tuple instead of ``None`` when ndim = 0." msgstr "Un *tuple* vide au lieu de ``None`` lorsque *ndim = 0*." -#: ../Doc/library/stdtypes.rst:3917 +#: ../Doc/library/stdtypes.rst:3916 msgid "" "A tuple of integers the length of :attr:`ndim` giving the size in bytes to " "access each element for each dimension of the array." @@ -5536,29 +5536,29 @@ msgstr "" "Un *tuple* d'entiers de longueur :attr:`ndim` donnant la taille en octets " "permettant d'accéder à chaque dimensions du tableau." -#: ../Doc/library/stdtypes.rst:3925 +#: ../Doc/library/stdtypes.rst:3924 msgid "Used internally for PIL-style arrays. The value is informational only." msgstr "" "Détail de l'implémentation des *PIL-style arrays*. La valeur n'est donné " "qu'a titre d'information." -#: ../Doc/library/stdtypes.rst:3929 +#: ../Doc/library/stdtypes.rst:3928 msgid "A bool indicating whether the memory is C-:term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est C-:term:`contiguous`." -#: ../Doc/library/stdtypes.rst:3935 +#: ../Doc/library/stdtypes.rst:3934 msgid "A bool indicating whether the memory is Fortran :term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est Fortran :term:`contiguous`." -#: ../Doc/library/stdtypes.rst:3941 +#: ../Doc/library/stdtypes.rst:3940 msgid "A bool indicating whether the memory is :term:`contiguous`." msgstr "Un booléen indiquant si la mémoire est :term:`contiguous`." -#: ../Doc/library/stdtypes.rst:3949 +#: ../Doc/library/stdtypes.rst:3948 msgid "Set Types --- :class:`set`, :class:`frozenset`" msgstr "Types d'ensembles — :class:`set`, :class:`frozenset`" -#: ../Doc/library/stdtypes.rst:3953 +#: ../Doc/library/stdtypes.rst:3952 msgid "" "A :dfn:`set` object is an unordered collection of distinct :term:`hashable` " "objects. Common uses include membership testing, removing duplicates from a " @@ -5574,7 +5574,7 @@ msgstr "" "(Pour les autres conteneurs, voir les classes natives :class:`dict`, :class:" "`list`, et :class:`tuple`, ainsi que le module :mod:`collections`.)" -#: ../Doc/library/stdtypes.rst:3960 +#: ../Doc/library/stdtypes.rst:3959 msgid "" "Like other collections, sets support ``x in set``, ``len(set)``, and ``for x " "in set``. Being an unordered collection, sets do not record element " @@ -5587,7 +5587,7 @@ msgstr "" "d'insertion. En conséquence, les *sets* n'autorisent ni l'indexation, ni le " "découpage, ou tout autre comportement de séquence." -#: ../Doc/library/stdtypes.rst:3965 +#: ../Doc/library/stdtypes.rst:3964 msgid "" "There are currently two built-in set types, :class:`set` and :class:" "`frozenset`. The :class:`set` type is mutable --- the contents can be " @@ -5607,7 +5607,7 @@ msgstr "" "--- son contenu ne peut être modifié après sa création, il peut ainsi être " "utilisé comme clef de dictionnaire ou élément d'un autre *set*." -#: ../Doc/library/stdtypes.rst:3973 +#: ../Doc/library/stdtypes.rst:3972 msgid "" "Non-empty sets (not frozensets) can be created by placing a comma-separated " "list of elements within braces, for example: ``{'jack', 'sjoerd'}``, in " @@ -5617,11 +5617,11 @@ msgstr "" "d'éléments séparés par des virgules et entre accolades, par exemple : " "``{'jack', 'sjoerd'}``, en plus du constructeur de la classe :class:`set`." -#: ../Doc/library/stdtypes.rst:3977 +#: ../Doc/library/stdtypes.rst:3976 msgid "The constructors for both classes work the same:" msgstr "Les constructeurs des deux classes fonctionnent pareil :" -#: ../Doc/library/stdtypes.rst:3982 +#: ../Doc/library/stdtypes.rst:3981 msgid "" "Return a new set or frozenset object whose elements are taken from " "*iterable*. The elements of a set must be :term:`hashable`. To represent " @@ -5634,7 +5634,7 @@ msgstr "" "class:`frozenset`. Si *iterable* n'est pas spécifié, un nouveau *set* vide " "est renvoyé." -#: ../Doc/library/stdtypes.rst:3988 +#: ../Doc/library/stdtypes.rst:3987 msgid "" "Instances of :class:`set` and :class:`frozenset` provide the following " "operations:" @@ -5642,19 +5642,19 @@ msgstr "" "Les instances de :class:`set` et :class:`frozenset` fournissent les " "opérations suivantes :" -#: ../Doc/library/stdtypes.rst:3993 +#: ../Doc/library/stdtypes.rst:3992 msgid "Return the number of elements in set *s* (cardinality of *s*)." msgstr "Donne le nombre d'éléments dans le *set* *s* (cardinalité de *s*)." -#: ../Doc/library/stdtypes.rst:3997 +#: ../Doc/library/stdtypes.rst:3996 msgid "Test *x* for membership in *s*." msgstr "Test d'appartenance de *x* dans *s*." -#: ../Doc/library/stdtypes.rst:4001 +#: ../Doc/library/stdtypes.rst:4000 msgid "Test *x* for non-membership in *s*." msgstr "Test de non-appartenance de *x* dans *s*." -#: ../Doc/library/stdtypes.rst:4005 +#: ../Doc/library/stdtypes.rst:4004 msgid "" "Return ``True`` if the set has no elements in common with *other*. Sets are " "disjoint if and only if their intersection is the empty set." @@ -5663,11 +5663,11 @@ msgstr "" "Les ensembles sont disjoints si et seulement si leurs intersection est un " "ensemble vide." -#: ../Doc/library/stdtypes.rst:4011 +#: ../Doc/library/stdtypes.rst:4010 msgid "Test whether every element in the set is in *other*." msgstr "Teste si tous les éléments du set sont dans *other*." -#: ../Doc/library/stdtypes.rst:4015 +#: ../Doc/library/stdtypes.rst:4014 msgid "" "Test whether the set is a proper subset of *other*, that is, ``set <= other " "and set != other``." @@ -5675,11 +5675,11 @@ msgstr "" "Teste si l'ensemble est un sous-ensemble de *other*, c'est-à-dire, ``set <= " "other and set != other``." -#: ../Doc/library/stdtypes.rst:4021 +#: ../Doc/library/stdtypes.rst:4020 msgid "Test whether every element in *other* is in the set." msgstr "Teste si tous les éléments de *other* sont dans l'ensemble." -#: ../Doc/library/stdtypes.rst:4025 +#: ../Doc/library/stdtypes.rst:4024 msgid "" "Test whether the set is a proper superset of *other*, that is, ``set >= " "other and set != other``." @@ -5687,36 +5687,36 @@ msgstr "" "Teste si l'ensemble est un sur-ensemble de *other*, c'est-à-dire, ``set >= " "other and set != other``." -#: ../Doc/library/stdtypes.rst:4031 +#: ../Doc/library/stdtypes.rst:4030 msgid "Return a new set with elements from the set and all others." msgstr "" "Renvoie un nouvel ensemble dont les éléments viennent de l'ensemble et de " "tous les autres." -#: ../Doc/library/stdtypes.rst:4036 +#: ../Doc/library/stdtypes.rst:4035 msgid "Return a new set with elements common to the set and all others." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont commun à l'ensemble et à " "tous les autres." -#: ../Doc/library/stdtypes.rst:4041 +#: ../Doc/library/stdtypes.rst:4040 msgid "Return a new set with elements in the set that are not in the others." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont dans l'ensemble mais ne " "sont dans aucun des autres." -#: ../Doc/library/stdtypes.rst:4046 +#: ../Doc/library/stdtypes.rst:4045 msgid "" "Return a new set with elements in either the set or *other* but not both." msgstr "" "Renvoie un nouvel ensemble dont les éléments sont soit dans l'ensemble, soit " "dans les autres, mais pas dans les deux." -#: ../Doc/library/stdtypes.rst:4050 +#: ../Doc/library/stdtypes.rst:4049 msgid "Return a shallow copy of the set." msgstr "Renvoie une copie de surface du dictionnaire." -#: ../Doc/library/stdtypes.rst:4053 +#: ../Doc/library/stdtypes.rst:4052 msgid "" "Note, the non-operator versions of :meth:`union`, :meth:`intersection`, :" "meth:`difference`, and :meth:`symmetric_difference`, :meth:`issubset`, and :" @@ -5733,7 +5733,7 @@ msgstr "" "typiques d'erreurs, en faveur d'une construction plus lisible : ``set('abc')." "intersection('cbs')``." -#: ../Doc/library/stdtypes.rst:4060 +#: ../Doc/library/stdtypes.rst:4059 msgid "" "Both :class:`set` and :class:`frozenset` support set to set comparisons. Two " "sets are equal if and only if every element of each set is contained in the " @@ -5751,7 +5751,7 @@ msgstr "" "autre ensemble si et seulement si le premier est un sur-ensemble du second " "(est un sur-ensemble mais n'est pas égal)." -#: ../Doc/library/stdtypes.rst:4067 +#: ../Doc/library/stdtypes.rst:4066 msgid "" "Instances of :class:`set` are compared to instances of :class:`frozenset` " "based on their members. For example, ``set('abc') == frozenset('abc')`` " @@ -5762,7 +5762,7 @@ msgstr "" "frozenset('abc')`` envoie ``True``, ainsi que ``set('abc') in " "set([frozenset('abc')])``." -#: ../Doc/library/stdtypes.rst:4071 +#: ../Doc/library/stdtypes.rst:4070 msgid "" "The subset and equality comparisons do not generalize to a total ordering " "function. For example, any two nonempty disjoint sets are not equal and are " @@ -5774,7 +5774,7 @@ msgstr "" "vides ne sont ni égaux et ni des sous-ensembles l'un de l'autre, donc toutes " "ces comparaisons donnent ``False`` : ``ab``." -#: ../Doc/library/stdtypes.rst:4076 +#: ../Doc/library/stdtypes.rst:4075 msgid "" "Since sets only define partial ordering (subset relationships), the output " "of the :meth:`list.sort` method is undefined for lists of sets." @@ -5783,13 +5783,13 @@ msgstr "" "de sous-ensembles), la sortie de la méthode :meth:`list.sort` n'est pas " "définie pour des listes d'ensembles." -#: ../Doc/library/stdtypes.rst:4079 +#: ../Doc/library/stdtypes.rst:4078 msgid "Set elements, like dictionary keys, must be :term:`hashable`." msgstr "" "Les éléments des *sets*, comme les clefs de dictionnaires, doivent être :" "term:`hashable`." -#: ../Doc/library/stdtypes.rst:4081 +#: ../Doc/library/stdtypes.rst:4080 msgid "" "Binary operations that mix :class:`set` instances with :class:`frozenset` " "return the type of the first operand. For example: ``frozenset('ab') | " @@ -5799,7 +5799,7 @@ msgstr "" "`frozenset` renvoient le type de la première opérande. Par exemple : " "``frozenset('ab') | set('bc')`` renvoie une instance de :class:`frozenset`." -#: ../Doc/library/stdtypes.rst:4085 +#: ../Doc/library/stdtypes.rst:4084 msgid "" "The following table lists operations available for :class:`set` that do not " "apply to immutable instances of :class:`frozenset`:" @@ -5807,32 +5807,32 @@ msgstr "" "La table suivante liste les opérations disponibles pour les :class:`set` " "mais qui ne s'appliquent pas aux instances de :class:`frozenset` :" -#: ../Doc/library/stdtypes.rst:4091 +#: ../Doc/library/stdtypes.rst:4090 msgid "Update the set, adding elements from all others." msgstr "Met à jour l'ensemble, ajoutant les éléments de tous les autres." -#: ../Doc/library/stdtypes.rst:4096 +#: ../Doc/library/stdtypes.rst:4095 msgid "Update the set, keeping only elements found in it and all others." msgstr "" "Met à jour l'ensemble, ne gardant que les éléments trouvés dans tous les " "autres." -#: ../Doc/library/stdtypes.rst:4101 +#: ../Doc/library/stdtypes.rst:4100 msgid "Update the set, removing elements found in others." msgstr "Met à jour l'ensemble, retirant les éléments trouvés dans les autres." -#: ../Doc/library/stdtypes.rst:4106 +#: ../Doc/library/stdtypes.rst:4105 msgid "" "Update the set, keeping only elements found in either set, but not in both." msgstr "" "Met à jour le set, ne gardant que les éléments trouvés dans un des ensembles " "mais pas dans les deux." -#: ../Doc/library/stdtypes.rst:4110 +#: ../Doc/library/stdtypes.rst:4109 msgid "Add element *elem* to the set." msgstr "Ajoute l'élément *elem* au set." -#: ../Doc/library/stdtypes.rst:4114 +#: ../Doc/library/stdtypes.rst:4113 msgid "" "Remove element *elem* from the set. Raises :exc:`KeyError` if *elem* is not " "contained in the set." @@ -5840,11 +5840,11 @@ msgstr "" "Retire l'élément *elem* de l'ensemble. Lève une exception :exc:`KeyError` si " "*elem* n'est pas dans l'ensemble." -#: ../Doc/library/stdtypes.rst:4119 +#: ../Doc/library/stdtypes.rst:4118 msgid "Remove element *elem* from the set if it is present." msgstr "Retire l'élément *elem* de l'ensemble s'il y est." -#: ../Doc/library/stdtypes.rst:4123 +#: ../Doc/library/stdtypes.rst:4122 msgid "" "Remove and return an arbitrary element from the set. Raises :exc:`KeyError` " "if the set is empty." @@ -5852,11 +5852,11 @@ msgstr "" "Retire et renvoie un élément arbitraire de l'ensemble. Lève une exception :" "exc:`KeyError` si l'ensemble est vide." -#: ../Doc/library/stdtypes.rst:4128 +#: ../Doc/library/stdtypes.rst:4127 msgid "Remove all elements from the set." msgstr "Supprime tous les éléments du *set*." -#: ../Doc/library/stdtypes.rst:4131 +#: ../Doc/library/stdtypes.rst:4130 msgid "" "Note, the non-operator versions of the :meth:`update`, :meth:" "`intersection_update`, :meth:`difference_update`, and :meth:" @@ -5868,7 +5868,7 @@ msgstr "" "`symmetric_difference_update` acceptent n'importe quel itérable comme " "argument." -#: ../Doc/library/stdtypes.rst:4136 +#: ../Doc/library/stdtypes.rst:4135 msgid "" "Note, the *elem* argument to the :meth:`__contains__`, :meth:`remove`, and :" "meth:`discard` methods may be a set. To support searching for an equivalent " @@ -5879,11 +5879,11 @@ msgstr "" "recherche d'un *frozenset* équivalent, un *frozenset* temporaire est crée " "depuis *elem*." -#: ../Doc/library/stdtypes.rst:4144 +#: ../Doc/library/stdtypes.rst:4143 msgid "Mapping Types --- :class:`dict`" msgstr "Les types de correspondances — :class:`dict`" -#: ../Doc/library/stdtypes.rst:4154 +#: ../Doc/library/stdtypes.rst:4153 msgid "" "A :term:`mapping` object maps :term:`hashable` values to arbitrary objects. " "Mappings are mutable objects. There is currently only one standard mapping " @@ -5897,7 +5897,7 @@ msgstr "" "(Pour les autres conteneurs, voir les types natifs :class:`list`, :class:" "`set`, et :class:`tuple`, ainsi que le module :mod:`collections`.)" -#: ../Doc/library/stdtypes.rst:4160 +#: ../Doc/library/stdtypes.rst:4159 msgid "" "A dictionary's keys are *almost* arbitrary values. Values that are not :" "term:`hashable`, that is, values containing lists, dictionaries or other " @@ -5920,7 +5920,7 @@ msgstr "" "d'approximations, il est généralement imprudent de les utiliser comme clefs " "de dictionnaires.)" -#: ../Doc/library/stdtypes.rst:4169 +#: ../Doc/library/stdtypes.rst:4168 msgid "" "Dictionaries can be created by placing a comma-separated list of ``key: " "value`` pairs within braces, for example: ``{'jack': 4098, 'sjoerd': 4127}`` " @@ -5931,7 +5931,7 @@ msgstr "" "``{'jack': 4098, 'sjoerd': 4127}`` ou ``{4098: 'jack', 4127: 'sjoerd'}``, ou " "en utilisant le constructeur de :class:`dict`." -#: ../Doc/library/stdtypes.rst:4177 +#: ../Doc/library/stdtypes.rst:4176 msgid "" "Return a new dictionary initialized from an optional positional argument and " "a possibly empty set of keyword arguments." @@ -5939,7 +5939,7 @@ msgstr "" "Renvoie un nouveau dictionnaire initialisé depuis un argument positionnel " "optionnel, et un ensemble (vide ou non) d'arguments par mot clef." -#: ../Doc/library/stdtypes.rst:4180 +#: ../Doc/library/stdtypes.rst:4179 msgid "" "If no positional argument is given, an empty dictionary is created. If a " "positional argument is given and it is a mapping object, a dictionary is " @@ -5961,7 +5961,7 @@ msgstr "" "pour cette clef devient la valeur correspondante à cette clef dans le " "nouveau dictionnaire." -#: ../Doc/library/stdtypes.rst:4190 +#: ../Doc/library/stdtypes.rst:4189 msgid "" "If keyword arguments are given, the keyword arguments and their values are " "added to the dictionary created from the positional argument. If a key " @@ -5972,7 +5972,7 @@ msgstr "" "depuis l'argument positionnel. Si une clef est déjà présente, la valeur de " "l'argument nommé remplace la valeur reçue par l'argument positionnel." -#: ../Doc/library/stdtypes.rst:4195 +#: ../Doc/library/stdtypes.rst:4194 msgid "" "To illustrate, the following examples all return a dictionary equal to " "``{\"one\": 1, \"two\": 2, \"three\": 3}``::" @@ -5980,7 +5980,7 @@ msgstr "" "Typiquement, les exemples suivants renvoient tous un dictionnaire valant " "``{\"one\": 1, \"two\": 2, \"three\": 3}`` ::" -#: ../Doc/library/stdtypes.rst:4206 +#: ../Doc/library/stdtypes.rst:4205 msgid "" "Providing keyword arguments as in the first example only works for keys that " "are valid Python identifiers. Otherwise, any valid keys can be used." @@ -5989,7 +5989,7 @@ msgstr "" "pour des clefs qui sont des identifiants valide en Python. Dans les autres " "cas, toutes les clefs valides sont utilisables." -#: ../Doc/library/stdtypes.rst:4210 +#: ../Doc/library/stdtypes.rst:4209 msgid "" "These are the operations that dictionaries support (and therefore, custom " "mapping types should support too):" @@ -5997,11 +5997,16 @@ msgstr "" "Voici les opérations gérées par les dictionnaires, (par conséquent, d'autres " "types de *mapping* peuvent les gérer aussi) :" -#: ../Doc/library/stdtypes.rst:4215 +#: ../Doc/library/stdtypes.rst:4214 +#, fuzzy +msgid "Return a list of all the keys used in the dictionary *d*." +msgstr "Renvoie le nombre d'éléments dans le dictionnaire *d*." + +#: ../Doc/library/stdtypes.rst:4218 msgid "Return the number of items in the dictionary *d*." msgstr "Renvoie le nombre d'éléments dans le dictionnaire *d*." -#: ../Doc/library/stdtypes.rst:4219 +#: ../Doc/library/stdtypes.rst:4222 msgid "" "Return the item of *d* with key *key*. Raises a :exc:`KeyError` if *key* is " "not in the map." @@ -6009,7 +6014,7 @@ msgstr "" "Donne l'élément de *d* dont la clef est *key*. Lève une exception :exc:" "`KeyError` si *key* n'est pas dans le dictionnaire." -#: ../Doc/library/stdtypes.rst:4224 +#: ../Doc/library/stdtypes.rst:4227 msgid "" "If a subclass of dict defines a method :meth:`__missing__` and *key* is not " "present, the ``d[key]`` operation calls that method with the key *key* as " @@ -6028,7 +6033,7 @@ msgstr "" "meth:`__missing__` doit être une méthode; ça ne peut être une variable " "d'instance ::" -#: ../Doc/library/stdtypes.rst:4242 +#: ../Doc/library/stdtypes.rst:4245 msgid "" "The example above shows part of the implementation of :class:`collections." "Counter`. A different ``__missing__`` method is used by :class:`collections." @@ -6038,11 +6043,11 @@ msgstr "" "`collections.Counter`. :class:`collections.defaultdict` implémente aussi " "``__missing__``." -#: ../Doc/library/stdtypes.rst:4248 +#: ../Doc/library/stdtypes.rst:4251 msgid "Set ``d[key]`` to *value*." msgstr "Assigne ``d[key]`` à *value*." -#: ../Doc/library/stdtypes.rst:4252 +#: ../Doc/library/stdtypes.rst:4255 msgid "" "Remove ``d[key]`` from *d*. Raises a :exc:`KeyError` if *key* is not in the " "map." @@ -6050,15 +6055,15 @@ msgstr "" "Supprime ``d[key]`` de *d*. Lève une exception :exc:`KeyError` si *key* " "n'est pas dans le dictionnaire." -#: ../Doc/library/stdtypes.rst:4257 +#: ../Doc/library/stdtypes.rst:4260 msgid "Return ``True`` if *d* has a key *key*, else ``False``." msgstr "Renvoie ``True`` si *d* a la clef *key*, sinon ``False``." -#: ../Doc/library/stdtypes.rst:4261 +#: ../Doc/library/stdtypes.rst:4264 msgid "Equivalent to ``not key in d``." msgstr "Équivalent à ``not key in d``." -#: ../Doc/library/stdtypes.rst:4265 +#: ../Doc/library/stdtypes.rst:4268 msgid "" "Return an iterator over the keys of the dictionary. This is a shortcut for " "``iter(d.keys())``." @@ -6066,22 +6071,22 @@ msgstr "" "Renvoie un itérateur sur les clefs du dictionnaire. C'est un raccourci pour " "``iter(d.keys())``." -#: ../Doc/library/stdtypes.rst:4270 +#: ../Doc/library/stdtypes.rst:4273 msgid "Remove all items from the dictionary." msgstr "Supprime tous les éléments du dictionnaire." -#: ../Doc/library/stdtypes.rst:4274 +#: ../Doc/library/stdtypes.rst:4277 msgid "Return a shallow copy of the dictionary." msgstr "Renvoie une copie de surface du dictionnaire." -#: ../Doc/library/stdtypes.rst:4278 +#: ../Doc/library/stdtypes.rst:4281 msgid "" "Create a new dictionary with keys from *iterable* and values set to *value*." msgstr "" "Crée un nouveau dictionnaire avec les clefs de *iterable* et les valeurs à " "*value*." -#: ../Doc/library/stdtypes.rst:4280 +#: ../Doc/library/stdtypes.rst:4283 msgid "" ":meth:`fromkeys` is a class method that returns a new dictionary. *value* " "defaults to ``None``. All of the values refer to just a single instance, so " @@ -6090,7 +6095,7 @@ msgid "" "` instead." msgstr "" -#: ../Doc/library/stdtypes.rst:4288 +#: ../Doc/library/stdtypes.rst:4291 msgid "" "Return the value for *key* if *key* is in the dictionary, else *default*. If " "*default* is not given, it defaults to ``None``, so that this method never " @@ -6100,7 +6105,7 @@ msgstr "" "*default*. Si *default* n'est pas donné, il vaut ``None`` par défaut, de " "manière à ce que cette méthode ne lève jamais :exc:`KeyError`." -#: ../Doc/library/stdtypes.rst:4294 +#: ../Doc/library/stdtypes.rst:4297 msgid "" "Return a new view of the dictionary's items (``(key, value)`` pairs). See " "the :ref:`documentation of view objects `." @@ -6108,7 +6113,7 @@ msgstr "" "Renvoie une nouvelle vue des éléments du dictionnaire (paires de ``(key, " "value)``). Voir la :ref:`documentation des vues `." -#: ../Doc/library/stdtypes.rst:4299 +#: ../Doc/library/stdtypes.rst:4302 msgid "" "Return a new view of the dictionary's keys. See the :ref:`documentation of " "view objects `." @@ -6116,7 +6121,7 @@ msgstr "" "Renvoie une nouvelle vue des clefs du dictionnaire. Voir la :ref:" "`documentation des vues `." -#: ../Doc/library/stdtypes.rst:4304 +#: ../Doc/library/stdtypes.rst:4307 msgid "" "If *key* is in the dictionary, remove it and return its value, else return " "*default*. If *default* is not given and *key* is not in the dictionary, a :" @@ -6126,7 +6131,7 @@ msgstr "" "renvoyée, sinon renvoie *default*. Si *default* n'est pas donné et que " "*key* n'est pas dans le dictionnaire, une :exc:`KeyError` est levée." -#: ../Doc/library/stdtypes.rst:4310 +#: ../Doc/library/stdtypes.rst:4313 msgid "" "Remove and return a ``(key, value)`` pair from the dictionary. Pairs are " "returned in :abbr:`LIFO (last-in, first-out)` order." @@ -6134,7 +6139,7 @@ msgstr "" "Supprime et renvoie une paire ``(key, value)`` du dictionnaire. Les paires " "sont renvoyées dans un ordre :abbr:`LIFO (dernière entrée, prenière sortie)`." -#: ../Doc/library/stdtypes.rst:4313 +#: ../Doc/library/stdtypes.rst:4316 msgid "" ":meth:`popitem` is useful to destructively iterate over a dictionary, as " "often used in set algorithms. If the dictionary is empty, calling :meth:" @@ -6144,7 +6149,7 @@ msgstr "" "destructive, comme souvent dans les algorithmes sur les ensembles. Si le " "dictionnaire est vide, appeler :meth:`popitem` lève une :exc:`KeyError`." -#: ../Doc/library/stdtypes.rst:4317 +#: ../Doc/library/stdtypes.rst:4320 msgid "" "LIFO order is now guaranteed. In prior versions, :meth:`popitem` would " "return an arbitrary key/value pair." @@ -6153,7 +6158,7 @@ msgstr "" "les versions précédentes, :meth:`popitem` renvoyait une paire clé/valeur " "arbitraire." -#: ../Doc/library/stdtypes.rst:4323 +#: ../Doc/library/stdtypes.rst:4326 #, fuzzy msgid "" "Return a reverse iterator over the keys of the dictionary. This is a " @@ -6162,7 +6167,7 @@ msgstr "" "Renvoie un itérateur sur les clefs du dictionnaire. C'est un raccourci pour " "``iter(d.keys())``." -#: ../Doc/library/stdtypes.rst:4328 +#: ../Doc/library/stdtypes.rst:4331 msgid "" "If *key* is in the dictionary, return its value. If not, insert *key* with " "a value of *default* and return *default*. *default* defaults to ``None``." @@ -6171,7 +6176,7 @@ msgstr "" "*key* avec comme valeur *default* et renvoie *default*. *default* vaut " "``None`` par défaut." -#: ../Doc/library/stdtypes.rst:4334 +#: ../Doc/library/stdtypes.rst:4337 msgid "" "Update the dictionary with the key/value pairs from *other*, overwriting " "existing keys. Return ``None``." @@ -6179,7 +6184,7 @@ msgstr "" "Met à jour le dictionnaire avec les paires de clef/valeur d'*other*, " "écrasant les clefs existantes. Renvoie ``None``." -#: ../Doc/library/stdtypes.rst:4337 +#: ../Doc/library/stdtypes.rst:4340 msgid "" ":meth:`update` accepts either another dictionary object or an iterable of " "key/value pairs (as tuples or other iterables of length two). If keyword " @@ -6191,7 +6196,7 @@ msgstr "" "Si des paramètres par mot-clef sont donnés, le dictionnaire et ensuite mis à " "jour avec ces pairs de clef/valeurs : ``d.update(red=1, blue=2)``." -#: ../Doc/library/stdtypes.rst:4344 +#: ../Doc/library/stdtypes.rst:4347 msgid "" "Return a new view of the dictionary's values. See the :ref:`documentation " "of view objects `." @@ -6199,17 +6204,25 @@ msgstr "" "Renvoie une nouvelle vue des valeurs du dictionnaire. Voir la :ref:" "`documentation des vues `." -#: ../Doc/library/stdtypes.rst:4347 +#: ../Doc/library/stdtypes.rst:4350 +msgid "" +"An equality comparison between one ``dict.values()`` view and another will " +"always return ``False``. This also applies when comparing ``dict.values()`` " +"to itself::" +msgstr "" + +#: ../Doc/library/stdtypes.rst:4358 +#, fuzzy msgid "" "Dictionaries compare equal if and only if they have the same ``(key, " -"value)`` pairs. Order comparisons ('<', '<=', '>=', '>') raise :exc:" -"`TypeError`." +"value)`` pairs (regardless of ordering). Order comparisons ('<', '<=', '>=', " +"'>') raise :exc:`TypeError`." msgstr "" "Deux dictionnaires sont égaux si et seulement si ils ont les mêmes paires de " "clef-valeur. Les comparaisons d'ordre (``<``, ``<=``, ``>=``, ``>``) lèvent " "une :exc:`TypeError`." -#: ../Doc/library/stdtypes.rst:4351 +#: ../Doc/library/stdtypes.rst:4362 msgid "" "Dictionaries preserve insertion order. Note that updating a key does not " "affect the order. Keys added after deletion are inserted at the end. ::" @@ -6218,7 +6231,7 @@ msgstr "" "clé n'affecte pas l'ordre. Les clés ajoutées après un effacement sont " "insérées à la fin. ::" -#: ../Doc/library/stdtypes.rst:4369 +#: ../Doc/library/stdtypes.rst:4380 msgid "" "Dictionary order is guaranteed to be insertion order. This behavior was an " "implementation detail of CPython from 3.6." @@ -6227,15 +6240,15 @@ msgstr "" "comportement était un détail d'implémentation de CPython depuis la version " "3.6." -#: ../Doc/library/stdtypes.rst:4373 +#: ../Doc/library/stdtypes.rst:4384 msgid "Dictionaries and dictionary views are reversible. ::" msgstr "" -#: ../Doc/library/stdtypes.rst:4385 +#: ../Doc/library/stdtypes.rst:4396 msgid "Dictionaries are now reversible." msgstr "" -#: ../Doc/library/stdtypes.rst:4390 +#: ../Doc/library/stdtypes.rst:4401 msgid "" ":class:`types.MappingProxyType` can be used to create a read-only view of a :" "class:`dict`." @@ -6243,11 +6256,11 @@ msgstr "" ":class:`types.MappingProxyType` peut être utilisé pour créer une vue en " "lecture seule d'un :class:`dict`." -#: ../Doc/library/stdtypes.rst:4397 +#: ../Doc/library/stdtypes.rst:4408 msgid "Dictionary view objects" msgstr "Les vues de dictionnaires" -#: ../Doc/library/stdtypes.rst:4399 +#: ../Doc/library/stdtypes.rst:4410 msgid "" "The objects returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:" "`dict.items` are *view objects*. They provide a dynamic view on the " @@ -6259,7 +6272,7 @@ msgstr "" "éléments du dictionnaire, ce qui signifie que si le dictionnaire change, la " "vue reflète ces changements." -#: ../Doc/library/stdtypes.rst:4404 +#: ../Doc/library/stdtypes.rst:4415 msgid "" "Dictionary views can be iterated over to yield their respective data, and " "support membership tests:" @@ -6267,11 +6280,11 @@ msgstr "" "Les vues de dictionnaires peuvent être itérées et ainsi renvoyer les données " "du dictionnaire, elle gèrent aussi les tests de présence :" -#: ../Doc/library/stdtypes.rst:4409 +#: ../Doc/library/stdtypes.rst:4420 msgid "Return the number of entries in the dictionary." msgstr "Renvoie le nombre d'entrées du dictionnaire." -#: ../Doc/library/stdtypes.rst:4413 +#: ../Doc/library/stdtypes.rst:4424 msgid "" "Return an iterator over the keys, values or items (represented as tuples of " "``(key, value)``) in the dictionary." @@ -6279,7 +6292,7 @@ msgstr "" "Renvoie un itérateur sur les clefs, les valeurs, ou les éléments " "(représentés par des *tuples* de ``(key, value)`` du dictionnaire." -#: ../Doc/library/stdtypes.rst:4416 +#: ../Doc/library/stdtypes.rst:4427 msgid "" "Keys and values are iterated over in insertion order. This allows the " "creation of ``(value, key)`` pairs using :func:`zip`: ``pairs = zip(d." @@ -6291,7 +6304,7 @@ msgstr "" "``pairs = zip(d.values(), d.keys())``. Un autre moyen de construire la même " "liste est ``pairs = [(v, k) for (k, v) in d.items()]``." -#: ../Doc/library/stdtypes.rst:4421 +#: ../Doc/library/stdtypes.rst:4432 msgid "" "Iterating views while adding or deleting entries in the dictionary may raise " "a :exc:`RuntimeError` or fail to iterate over all entries." @@ -6300,11 +6313,11 @@ msgstr "" "dictionnaire peut lever une :exc:`RuntimeError` ou ne pas fournir toutes les " "entrées." -#: ../Doc/library/stdtypes.rst:4424 +#: ../Doc/library/stdtypes.rst:4435 msgid "Dictionary order is guaranteed to be insertion order." msgstr "L'ordre d'un dictionnaire est toujours l'ordre des insertions." -#: ../Doc/library/stdtypes.rst:4429 +#: ../Doc/library/stdtypes.rst:4440 msgid "" "Return ``True`` if *x* is in the underlying dictionary's keys, values or " "items (in the latter case, *x* should be a ``(key, value)`` tuple)." @@ -6313,7 +6326,7 @@ msgstr "" "dictionnaire sous-jacent (dans le dernier cas, *x* doit être un *tuple* " "``(key, value)``)." -#: ../Doc/library/stdtypes.rst:4434 +#: ../Doc/library/stdtypes.rst:4445 #, fuzzy msgid "" "Return a reverse iterator over the keys, values or items of the dictionary. " @@ -6322,12 +6335,12 @@ msgstr "" "Renvoie un itérateur sur les clefs, les valeurs, ou les éléments " "(représentés par des *tuples* de ``(key, value)`` du dictionnaire." -#: ../Doc/library/stdtypes.rst:4437 +#: ../Doc/library/stdtypes.rst:4448 #, fuzzy msgid "Dictionary views are now reversible." msgstr "Les vues de dictionnaires" -#: ../Doc/library/stdtypes.rst:4441 +#: ../Doc/library/stdtypes.rst:4452 msgid "" "Keys views are set-like since their entries are unique and hashable. If all " "values are hashable, so that ``(key, value)`` pairs are unique and hashable, " @@ -6346,15 +6359,15 @@ msgstr "" "abstraite :class:`collections.abc.Set` sont disponibles (comme ``==``, " "``<``, ou ``^``)." -#: ../Doc/library/stdtypes.rst:4448 +#: ../Doc/library/stdtypes.rst:4459 msgid "An example of dictionary view usage::" msgstr "Exemple d'utilisation de vue de dictionnaire ::" -#: ../Doc/library/stdtypes.rst:4483 +#: ../Doc/library/stdtypes.rst:4494 msgid "Context Manager Types" msgstr "Le type gestionnaire de contexte" -#: ../Doc/library/stdtypes.rst:4490 +#: ../Doc/library/stdtypes.rst:4501 msgid "" "Python's :keyword:`with` statement supports the concept of a runtime context " "defined by a context manager. This is implemented using a pair of methods " @@ -6367,7 +6380,7 @@ msgstr "" "entré avant l'exécution du corps de l'instruction, et qui est quitté lorsque " "l'instruction se termine :" -#: ../Doc/library/stdtypes.rst:4498 +#: ../Doc/library/stdtypes.rst:4509 msgid "" "Enter the runtime context and return either this object or another object " "related to the runtime context. The value returned by this method is bound " @@ -6379,7 +6392,7 @@ msgstr "" "cette méthode est liée à l'identifiant donné au :keyword:`!as` de " "l'instruction :keyword:`with` utilisant ce gestionnaire de contexte." -#: ../Doc/library/stdtypes.rst:4503 +#: ../Doc/library/stdtypes.rst:4514 msgid "" "An example of a context manager that returns itself is a :term:`file " "object`. File objects return themselves from __enter__() to allow :func:" @@ -6390,7 +6403,7 @@ msgstr "" "autorisent :func:`open` à être utilisé comme contexte à une instruction :" "keyword:`with`." -#: ../Doc/library/stdtypes.rst:4507 +#: ../Doc/library/stdtypes.rst:4518 msgid "" "An example of a context manager that returns a related object is the one " "returned by :func:`decimal.localcontext`. These managers set the active " @@ -6405,7 +6418,7 @@ msgstr "" "renvoyée. Ça permet de changer le contexte courant dans le corps du :keyword:" "`with` sans affecter le code en dehors de l'instruction :keyword:`!with`." -#: ../Doc/library/stdtypes.rst:4517 +#: ../Doc/library/stdtypes.rst:4528 msgid "" "Exit the runtime context and return a Boolean flag indicating if any " "exception that occurred should be suppressed. If an exception occurred while " @@ -6419,7 +6432,7 @@ msgstr "" "l'exception, sa valeur, et la trace de la pile (*traceback*). Sinon les " "trois arguments valent ``None``." -#: ../Doc/library/stdtypes.rst:4522 +#: ../Doc/library/stdtypes.rst:4533 msgid "" "Returning a true value from this method will cause the :keyword:`with` " "statement to suppress the exception and continue execution with the " @@ -6436,7 +6449,7 @@ msgstr "" "pendant l'exécution de cette méthode remplaceront toute exception qui s'est " "produite dans le corps du :keyword:`!with`." -#: ../Doc/library/stdtypes.rst:4529 +#: ../Doc/library/stdtypes.rst:4540 msgid "" "The exception passed in should never be reraised explicitly - instead, this " "method should return a false value to indicate that the method completed " @@ -6450,7 +6463,7 @@ msgstr "" "Ceci permet au code de gestion du contexte de comprendre si une méthode :" "meth:`__exit__` a échoué." -#: ../Doc/library/stdtypes.rst:4535 +#: ../Doc/library/stdtypes.rst:4546 msgid "" "Python defines several context managers to support easy thread " "synchronisation, prompt closure of files or other objects, and simpler " @@ -6465,7 +6478,7 @@ msgstr "" "protocole de gestion du contexte. Voir les exemples dans la documentation du " "module :mod:`contextlib`." -#: ../Doc/library/stdtypes.rst:4541 +#: ../Doc/library/stdtypes.rst:4552 msgid "" "Python's :term:`generator`\\s and the :class:`contextlib.contextmanager` " "decorator provide a convenient way to implement these protocols. If a " @@ -6481,7 +6494,7 @@ msgstr "" "`__enter__` et :meth:`__exit__`, plutôt que l'itérateur produit par un " "générateur non décoré." -#: ../Doc/library/stdtypes.rst:4548 +#: ../Doc/library/stdtypes.rst:4559 msgid "" "Note that there is no specific slot for any of these methods in the type " "structure for Python objects in the Python/C API. Extension types wanting to " @@ -6496,11 +6509,11 @@ msgstr "" "d'exécution, les le coût d'un accès au dictionnaire d'une classe unique est " "négligeable." -#: ../Doc/library/stdtypes.rst:4558 +#: ../Doc/library/stdtypes.rst:4569 msgid "Other Built-in Types" msgstr "Autres types natifs" -#: ../Doc/library/stdtypes.rst:4560 +#: ../Doc/library/stdtypes.rst:4571 msgid "" "The interpreter supports several other kinds of objects. Most of these " "support only one or two operations." @@ -6508,11 +6521,11 @@ msgstr "" "L'interpréteur gère aussi d'autres types d'objets, la plupart ne supportant " "cependant qu'une ou deux opérations." -#: ../Doc/library/stdtypes.rst:4567 +#: ../Doc/library/stdtypes.rst:4578 msgid "Modules" msgstr "Modules" -#: ../Doc/library/stdtypes.rst:4569 +#: ../Doc/library/stdtypes.rst:4580 msgid "" "The only special operation on a module is attribute access: ``m.name``, " "where *m* is a module and *name* accesses a name defined in *m*'s symbol " @@ -6530,7 +6543,7 @@ msgstr "" "objet module nommé *foo* existe, il nécessite cependant une *définition* " "(externe) d'un module nommé *foo* quelque part.)" -#: ../Doc/library/stdtypes.rst:4576 +#: ../Doc/library/stdtypes.rst:4587 msgid "" "A special attribute of every module is :attr:`~object.__dict__`. This is the " "dictionary containing the module's symbol table. Modifying this dictionary " @@ -6548,7 +6561,7 @@ msgstr "" "vous ne pouvez pas écrire ``m.__dict__ = {}``). Modifier :attr:`~object." "__dict__` directement n'est pas recommandé." -#: ../Doc/library/stdtypes.rst:4584 +#: ../Doc/library/stdtypes.rst:4595 msgid "" "Modules built into the interpreter are written like this: ````. If loaded from a file, they are written as ````. S'ils sont chargés depuis un fichier, ils sont représentés " "````." -#: ../Doc/library/stdtypes.rst:4592 +#: ../Doc/library/stdtypes.rst:4603 msgid "Classes and Class Instances" msgstr "Les classes et instances de classes" -#: ../Doc/library/stdtypes.rst:4594 +#: ../Doc/library/stdtypes.rst:4605 msgid "See :ref:`objects` and :ref:`class` for these." msgstr "Voir :ref:`objects` et :ref:`class`." -#: ../Doc/library/stdtypes.rst:4600 +#: ../Doc/library/stdtypes.rst:4611 msgid "Functions" msgstr "Fonctions" -#: ../Doc/library/stdtypes.rst:4602 +#: ../Doc/library/stdtypes.rst:4613 msgid "" "Function objects are created by function definitions. The only operation on " "a function object is to call it: ``func(argument-list)``." @@ -6579,7 +6592,7 @@ msgstr "" "opération applicable à un objet fonction est de l'appeler : ``func(argument-" "list)``." -#: ../Doc/library/stdtypes.rst:4605 +#: ../Doc/library/stdtypes.rst:4616 msgid "" "There are really two flavors of function objects: built-in functions and " "user-defined functions. Both support the same operation (to call the " @@ -6591,15 +6604,15 @@ msgstr "" "opérations (l'appel à la fonction), mais leur implémentation est différente, " "d'où les deux types distincts." -#: ../Doc/library/stdtypes.rst:4609 +#: ../Doc/library/stdtypes.rst:4620 msgid "See :ref:`function` for more information." msgstr "Voir :ref:`function` pour plus d'information." -#: ../Doc/library/stdtypes.rst:4615 +#: ../Doc/library/stdtypes.rst:4626 msgid "Methods" msgstr "Méthodes" -#: ../Doc/library/stdtypes.rst:4619 +#: ../Doc/library/stdtypes.rst:4630 msgid "" "Methods are functions that are called using the attribute notation. There " "are two flavors: built-in methods (such as :meth:`append` on lists) and " @@ -6611,7 +6624,7 @@ msgstr "" "listes), et les méthodes d'instances de classes. Les méthodes natives sont " "représentées avec le type qui les supporte." -#: ../Doc/library/stdtypes.rst:4624 +#: ../Doc/library/stdtypes.rst:4635 msgid "" "If you access a method (a function defined in a class namespace) through an " "instance, you get a special object: a :dfn:`bound method` (also called :dfn:" @@ -6632,7 +6645,7 @@ msgstr "" "n)`` est tout à fait équivalent à appeler ``m.__func__(m.__self__, arg-1, " "arg-2, …, arg-n)``." -#: ../Doc/library/stdtypes.rst:4633 +#: ../Doc/library/stdtypes.rst:4644 msgid "" "Like function objects, bound method objects support getting arbitrary " "attributes. However, since method attributes are actually stored on the " @@ -6649,15 +6662,15 @@ msgstr "" "`AttributeError`. Pour affecter l'attribut, vous devrez explicitement " "l'affecter à sa fonction sous-jacente ::" -#: ../Doc/library/stdtypes.rst:4653 ../Doc/library/stdtypes.rst:4681 +#: ../Doc/library/stdtypes.rst:4664 ../Doc/library/stdtypes.rst:4692 msgid "See :ref:`types` for more information." msgstr "Voir :ref:`types` pour plus d'information." -#: ../Doc/library/stdtypes.rst:4661 +#: ../Doc/library/stdtypes.rst:4672 msgid "Code Objects" msgstr "Objets code" -#: ../Doc/library/stdtypes.rst:4667 +#: ../Doc/library/stdtypes.rst:4678 msgid "" "Code objects are used by the implementation to represent \"pseudo-compiled\" " "executable Python code such as a function body. They differ from function " @@ -6673,7 +6686,7 @@ msgstr "" "fonction native :func:`compile` et peuvent être obtenus des objets fonction " "via leur attribut :attr:`__code__`. Voir aussi le module :mod:`code`." -#: ../Doc/library/stdtypes.rst:4678 +#: ../Doc/library/stdtypes.rst:4689 msgid "" "A code object can be executed or evaluated by passing it (instead of a " "source string) to the :func:`exec` or :func:`eval` built-in functions." @@ -6682,11 +6695,11 @@ msgstr "" "d'une chaîne contenant du code) aux fonction natives :func:`exec` ou :func:" "`eval`." -#: ../Doc/library/stdtypes.rst:4687 +#: ../Doc/library/stdtypes.rst:4698 msgid "Type Objects" msgstr "Objets type" -#: ../Doc/library/stdtypes.rst:4693 +#: ../Doc/library/stdtypes.rst:4704 msgid "" "Type objects represent the various object types. An object's type is " "accessed by the built-in function :func:`type`. There are no special " @@ -6698,15 +6711,15 @@ msgstr "" "opération spéciale sur les types. Le module standard :mod:`types` définit " "les noms de tous les types natifs." -#: ../Doc/library/stdtypes.rst:4698 +#: ../Doc/library/stdtypes.rst:4709 msgid "Types are written like this: ````." msgstr "Les types sont représentés : ````." -#: ../Doc/library/stdtypes.rst:4704 +#: ../Doc/library/stdtypes.rst:4715 msgid "The Null Object" msgstr "L'objet Null" -#: ../Doc/library/stdtypes.rst:4706 +#: ../Doc/library/stdtypes.rst:4717 msgid "" "This object is returned by functions that don't explicitly return a value. " "It supports no special operations. There is exactly one null object, named " @@ -6716,15 +6729,15 @@ msgstr "" "valeur. Il ne supporte aucune opération spéciale. Il existe exactement un " "objet *null* nommé ``None`` (c'est un nom natif). ``type(None)()``." -#: ../Doc/library/stdtypes.rst:4710 +#: ../Doc/library/stdtypes.rst:4721 msgid "It is written as ``None``." msgstr "C'est écrit ``None``." -#: ../Doc/library/stdtypes.rst:4717 +#: ../Doc/library/stdtypes.rst:4728 msgid "The Ellipsis Object" msgstr "L'objet points de suspension" -#: ../Doc/library/stdtypes.rst:4719 +#: ../Doc/library/stdtypes.rst:4730 msgid "" "This object is commonly used by slicing (see :ref:`slicings`). It supports " "no special operations. There is exactly one ellipsis object, named :const:" @@ -6736,15 +6749,15 @@ msgstr "" "objet *ellipsis*, nommé :const:`Ellipsis` (un nom natif). ``type(Ellipsis)" "()`` produit le *singleton* :const:`Ellipsis`." -#: ../Doc/library/stdtypes.rst:4724 +#: ../Doc/library/stdtypes.rst:4735 msgid "It is written as ``Ellipsis`` or ``...``." msgstr "C'est écrit ``Ellipsis`` ou ``...``." -#: ../Doc/library/stdtypes.rst:4730 +#: ../Doc/library/stdtypes.rst:4741 msgid "The NotImplemented Object" msgstr "L'objet *NotImplemented*" -#: ../Doc/library/stdtypes.rst:4732 +#: ../Doc/library/stdtypes.rst:4743 msgid "" "This object is returned from comparisons and binary operations when they are " "asked to operate on types they don't support. See :ref:`comparisons` for " @@ -6756,15 +6769,15 @@ msgstr "" "pour plus d'informations. Il n'y a qu'un seul objet ``NotImplemented``. " "``type(NotImplemented)()`` renvoie un *singleton*." -#: ../Doc/library/stdtypes.rst:4737 +#: ../Doc/library/stdtypes.rst:4748 msgid "It is written as ``NotImplemented``." msgstr "C'est écrit ``NotImplemented``." -#: ../Doc/library/stdtypes.rst:4743 +#: ../Doc/library/stdtypes.rst:4754 msgid "Boolean Values" msgstr "Valeurs booléennes" -#: ../Doc/library/stdtypes.rst:4745 +#: ../Doc/library/stdtypes.rst:4756 msgid "" "Boolean values are the two constant objects ``False`` and ``True``. They " "are used to represent truth values (although other values can also be " @@ -6783,15 +6796,15 @@ msgstr "" "valeur en booléen tant que la valeur peut être interprétée en une valeur de " "vérité (voir :ref:`truth` au dessus)." -#: ../Doc/library/stdtypes.rst:4758 +#: ../Doc/library/stdtypes.rst:4769 msgid "They are written as ``False`` and ``True``, respectively." msgstr "Ils s'écrivent ``False`` et ``True``, respectivement." -#: ../Doc/library/stdtypes.rst:4764 +#: ../Doc/library/stdtypes.rst:4775 msgid "Internal Objects" msgstr "Objets internes" -#: ../Doc/library/stdtypes.rst:4766 +#: ../Doc/library/stdtypes.rst:4777 msgid "" "See :ref:`types` for this information. It describes stack frame objects, " "traceback objects, and slice objects." @@ -6799,11 +6812,11 @@ msgstr "" "Voir :ref:`types`. Ils décrivent les objets *stack frame*, *traceback*, et " "*slice*." -#: ../Doc/library/stdtypes.rst:4773 +#: ../Doc/library/stdtypes.rst:4784 msgid "Special Attributes" msgstr "Attributs spéciaux" -#: ../Doc/library/stdtypes.rst:4775 +#: ../Doc/library/stdtypes.rst:4786 msgid "" "The implementation adds a few special read-only attributes to several object " "types, where they are relevant. Some of these are not reported by the :func:" @@ -6813,7 +6826,7 @@ msgstr "" "certains types, lorsque ça a du sens. Certains ne sont *pas* listés par la " "fonction native :func:`dir`." -#: ../Doc/library/stdtypes.rst:4782 +#: ../Doc/library/stdtypes.rst:4793 msgid "" "A dictionary or other mapping object used to store an object's (writable) " "attributes." @@ -6821,20 +6834,20 @@ msgstr "" "Un dictionnaire ou un autre *mapping object* utilisé pour stocker les " "attributs (modifiables) de l'objet." -#: ../Doc/library/stdtypes.rst:4788 +#: ../Doc/library/stdtypes.rst:4799 msgid "The class to which a class instance belongs." msgstr "La classe de l'instance de classe." -#: ../Doc/library/stdtypes.rst:4793 +#: ../Doc/library/stdtypes.rst:4804 msgid "The tuple of base classes of a class object." msgstr "Le *tuple* des classes parentes d'un objet classe." -#: ../Doc/library/stdtypes.rst:4798 +#: ../Doc/library/stdtypes.rst:4809 msgid "" "The name of the class, function, method, descriptor, or generator instance." msgstr "Le nom de la classe, fonction, méthode, descripteur, ou générateur." -#: ../Doc/library/stdtypes.rst:4804 +#: ../Doc/library/stdtypes.rst:4815 msgid "" "The :term:`qualified name` of the class, function, method, descriptor, or " "generator instance." @@ -6842,7 +6855,7 @@ msgstr "" "Le :term:`qualified name` de la classe, fonction, méthode, descripteur, ou " "générateur." -#: ../Doc/library/stdtypes.rst:4812 +#: ../Doc/library/stdtypes.rst:4823 msgid "" "This attribute is a tuple of classes that are considered when looking for " "base classes during method resolution." @@ -6850,7 +6863,7 @@ msgstr "" "Cet attribut est un *tuple* contenant les classes parents prises en compte " "lors de la résolution de méthode." -#: ../Doc/library/stdtypes.rst:4818 +#: ../Doc/library/stdtypes.rst:4829 msgid "" "This method can be overridden by a metaclass to customize the method " "resolution order for its instances. It is called at class instantiation, " @@ -6861,7 +6874,7 @@ msgstr "" "la l'initialisation de la classe, et son résultat est stocké dans " "l'attribut :attr:`~class.__mro__`." -#: ../Doc/library/stdtypes.rst:4825 +#: ../Doc/library/stdtypes.rst:4836 msgid "" "Each class keeps a list of weak references to its immediate subclasses. " "This method returns a list of all those references still alive. Example::" @@ -6870,11 +6883,11 @@ msgstr "" "immédiates. Cette méthode renvoie la liste de toutes ces références encore " "valables. Exemple ::" -#: ../Doc/library/stdtypes.rst:4834 +#: ../Doc/library/stdtypes.rst:4845 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/stdtypes.rst:4835 +#: ../Doc/library/stdtypes.rst:4846 msgid "" "Additional information on these special methods may be found in the Python " "Reference Manual (:ref:`customization`)." @@ -6882,7 +6895,7 @@ msgstr "" "Plus d'informations sur ces méthodes spéciales peuvent être trouvées dans le " "*Python Reference Manual* (:ref:`customization`)." -#: ../Doc/library/stdtypes.rst:4838 +#: ../Doc/library/stdtypes.rst:4849 msgid "" "As a consequence, the list ``[1, 2]`` is considered equal to ``[1.0, 2.0]``, " "and similarly for tuples." @@ -6890,13 +6903,13 @@ msgstr "" "Par conséquent, la liste ``[1, 2]`` est considérée égale à ``[1.0, 2.0]``. " "Idem avec des tuples." -#: ../Doc/library/stdtypes.rst:4841 +#: ../Doc/library/stdtypes.rst:4852 msgid "They must have since the parser can't tell the type of the operands." msgstr "" "Nécessairement, puisque l'analyseur ne peut pas discerner le type des " "opérandes." -#: ../Doc/library/stdtypes.rst:4843 +#: ../Doc/library/stdtypes.rst:4854 msgid "" "Cased characters are those with general category property being one of \"Lu" "\" (Letter, uppercase), \"Ll\" (Letter, lowercase), or \"Lt\" (Letter, " @@ -6906,7 +6919,7 @@ msgstr "" "category* est soit \"Lu\" (pour *Letter*, *uppercase*), soit \"Ll\" (pour " "*Letter*, *lowercase*), soit \"Lt\" (pour *Letter*, *titlecase*)." -#: ../Doc/library/stdtypes.rst:4846 +#: ../Doc/library/stdtypes.rst:4857 msgid "" "To format only a tuple you should therefore provide a singleton tuple whose " "only element is the tuple to be formatted." diff --git a/library/string.po b/library/string.po index 53e210566..1eca68569 100644 --- a/library/string.po +++ b/library/string.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-03-02 10:41+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -789,7 +789,7 @@ msgstr "" "peut être omis." #: ../Doc/library/string.rst:443 ../Doc/library/string.rst:470 -#: ../Doc/library/string.rst:531 +#: ../Doc/library/string.rst:533 msgid "None" msgstr "*None*" @@ -861,7 +861,7 @@ msgstr "" "Format hexadécimal. Affiche le nombre en base 16 en utilisant les lettres " "majuscules pour les chiffres au-dessus de 9." -#: ../Doc/library/string.rst:466 ../Doc/library/string.rst:524 +#: ../Doc/library/string.rst:466 ../Doc/library/string.rst:526 msgid "``'n'``" msgstr "``'n'``" @@ -961,14 +961,17 @@ msgstr "" "virgule fixe soit en notation scientifique, en fonction de la magnitude." #: ../Doc/library/string.rst:501 +#, fuzzy msgid "" "The precise rules are as follows: suppose that the result formatted with " "presentation type ``'e'`` and precision ``p-1`` would have exponent " -"``exp``. Then if ``-4 <= exp < p``, the number is formatted with " +"``exp``. Then, if ``m <= exp < p``, where ``m`` is -4 for floats and -6 " +"for :class:`Decimals `, the number is formatted with " "presentation type ``'f'`` and precision ``p-1-exp``. Otherwise, the number " "is formatted with presentation type ``'e'`` and precision ``p-1``. In both " "cases insignificant trailing zeros are removed from the significand, and the " -"decimal point is also removed if there are no remaining digits following it." +"decimal point is also removed if there are no remaining digits following it, " +"unless the ``'#'`` option is used." msgstr "" "Les règles précises sont les suivantes : supposons que le résultat formaté " "avec le type de représentation ``'e'`` et une précision ``1`` ait un " @@ -979,7 +982,7 @@ msgstr "" "retirés, et la virgule est également retirée s'il n'y a aucun chiffre la " "suivant." -#: ../Doc/library/string.rst:512 +#: ../Doc/library/string.rst:514 msgid "" "Positive and negative infinity, positive and negative zero, and nans, are " "formatted as ``inf``, ``-inf``, ``0``, ``-0`` and ``nan`` respectively, " @@ -989,7 +992,7 @@ msgstr "" "négatif, *not a number* sont formatées respectivement par ``inf``, ``-inf``, " "``0``, ``-0`` et ``nan``, peu importe la précision." -#: ../Doc/library/string.rst:517 +#: ../Doc/library/string.rst:519 msgid "" "A precision of ``0`` is treated as equivalent to a precision of ``1``. The " "default precision is ``6``." @@ -997,11 +1000,11 @@ msgstr "" "Une précision de ``0`` est interprétée comme une précision de ``1``. La " "précision par défaut est ``6``." -#: ../Doc/library/string.rst:520 +#: ../Doc/library/string.rst:522 msgid "``'G'``" msgstr "``'G'``" -#: ../Doc/library/string.rst:520 +#: ../Doc/library/string.rst:522 msgid "" "General format. Same as ``'g'`` except switches to ``'E'`` if the number " "gets too large. The representations of infinity and NaN are uppercased, too." @@ -1010,7 +1013,7 @@ msgstr "" "nombre est trop grand. Également, la représentation des infinis et de Nan " "sont en majuscules également." -#: ../Doc/library/string.rst:524 +#: ../Doc/library/string.rst:526 msgid "" "Number. This is the same as ``'g'``, except that it uses the current locale " "setting to insert the appropriate number separator characters." @@ -1018,11 +1021,11 @@ msgstr "" "Nombre. Pareil que ``'g'``, si ce n'est que l'environnement linguistique est " "pris en compte pour insérer le séparateur approprié." -#: ../Doc/library/string.rst:528 +#: ../Doc/library/string.rst:530 msgid "``'%'``" msgstr "``'%'``" -#: ../Doc/library/string.rst:528 +#: ../Doc/library/string.rst:530 msgid "" "Percentage. Multiplies the number by 100 and displays in fixed (``'f'``) " "format, followed by a percent sign." @@ -1030,7 +1033,7 @@ msgstr "" "Pourcentage. Multiplie le nombre par 100 et l'affiche en virgule fixe " "(``'f'``), suivi d'un symbole pourcent ``'%'``." -#: ../Doc/library/string.rst:531 +#: ../Doc/library/string.rst:533 msgid "" "Similar to ``'g'``, except that fixed-point notation, when used, has at " "least one digit past the decimal point. The default precision is as high as " @@ -1043,11 +1046,11 @@ msgstr "" "L'effet visé est de le faire correspondre à la valeur renvoyée par :func:" "`str` altérée par les autres modificateurs de format." -#: ../Doc/library/string.rst:543 +#: ../Doc/library/string.rst:545 msgid "Format examples" msgstr "Exemples de formats" -#: ../Doc/library/string.rst:545 +#: ../Doc/library/string.rst:547 msgid "" "This section contains examples of the :meth:`str.format` syntax and " "comparison with the old ``%``-formatting." @@ -1055,7 +1058,7 @@ msgstr "" "Cette section contient des exemples de la syntaxe de :meth:`str.format` et " "des comparaisons avec l'ancien formatage par ``%``." -#: ../Doc/library/string.rst:548 +#: ../Doc/library/string.rst:550 msgid "" "In most of the cases the syntax is similar to the old ``%``-formatting, with " "the addition of the ``{}`` and with ``:`` used instead of ``%``. For " @@ -1065,7 +1068,7 @@ msgstr "" "``%``, avec l'ajout de ``{}`` et avec ``:`` au lieu de ``%``. Par exemple : " "``'%03.2f'`` peut être changé en ``'{03.2f}'``." -#: ../Doc/library/string.rst:552 +#: ../Doc/library/string.rst:554 msgid "" "The new format syntax also supports new and different options, shown in the " "following examples." @@ -1073,61 +1076,61 @@ msgstr "" "La nouvelle syntaxe de formatage gère également de nouvelles options et des " "options différentes, montrées dans les exemples qui suivent." -#: ../Doc/library/string.rst:555 +#: ../Doc/library/string.rst:557 msgid "Accessing arguments by position::" msgstr "Accéder à un argument par sa position ::" -#: ../Doc/library/string.rst:568 +#: ../Doc/library/string.rst:570 msgid "Accessing arguments by name::" msgstr "Accéder à un argument par son nom ::" -#: ../Doc/library/string.rst:576 +#: ../Doc/library/string.rst:578 msgid "Accessing arguments' attributes::" msgstr "Accéder aux attributs d'un argument ::" -#: ../Doc/library/string.rst:591 +#: ../Doc/library/string.rst:593 msgid "Accessing arguments' items::" msgstr "Accéder aux éléments d'un argument ::" -#: ../Doc/library/string.rst:597 +#: ../Doc/library/string.rst:599 msgid "Replacing ``%s`` and ``%r``::" msgstr "Remplacer ``%s`` et ``%r`` ::" -#: ../Doc/library/string.rst:602 +#: ../Doc/library/string.rst:604 msgid "Aligning the text and specifying a width::" msgstr "Aligner le texte et spécifier une longueur minimale ::" -#: ../Doc/library/string.rst:613 +#: ../Doc/library/string.rst:615 msgid "Replacing ``%+f``, ``%-f``, and ``% f`` and specifying a sign::" msgstr "Remplacer ``%+f``, ``%-f``, et ``%f`` et spécifier un signe ::" -#: ../Doc/library/string.rst:622 +#: ../Doc/library/string.rst:624 msgid "" "Replacing ``%x`` and ``%o`` and converting the value to different bases::" msgstr "" "Remplacer ``%x`` et ``%o`` et convertir la valeur dans différentes bases ::" -#: ../Doc/library/string.rst:631 +#: ../Doc/library/string.rst:633 msgid "Using the comma as a thousands separator::" msgstr "Utiliser une virgule comme séparateur des milliers ::" -#: ../Doc/library/string.rst:636 +#: ../Doc/library/string.rst:638 msgid "Expressing a percentage::" msgstr "Exprimer un pourcentage ::" -#: ../Doc/library/string.rst:643 +#: ../Doc/library/string.rst:645 msgid "Using type-specific formatting::" msgstr "Utiliser un formatage propre au type ::" -#: ../Doc/library/string.rst:650 +#: ../Doc/library/string.rst:652 msgid "Nesting arguments and more complex examples::" msgstr "Arguments imbriqués et des exemples plus complexes ::" -#: ../Doc/library/string.rst:684 +#: ../Doc/library/string.rst:686 msgid "Template strings" msgstr "Chaînes modèles" -#: ../Doc/library/string.rst:686 +#: ../Doc/library/string.rst:688 msgid "" "Template strings provide simpler string substitutions as described in :pep:" "`292`. A primary use case for template strings is for internationalization " @@ -1145,7 +1148,7 @@ msgstr "" "l'internationalisation, voir le paquet `flufl.i18n `." -#: ../Doc/library/string.rst:696 +#: ../Doc/library/string.rst:698 msgid "" "Template strings support ``$``-based substitutions, using the following " "rules:" @@ -1153,11 +1156,11 @@ msgstr "" "Les chaînes modèles prennent en charge les substitutions basées sur ``$`` en " "utilisant les règles suivantes :" -#: ../Doc/library/string.rst:698 +#: ../Doc/library/string.rst:700 msgid "``$$`` is an escape; it is replaced with a single ``$``." msgstr "``$$`` est un échappement ; il est remplacé par un simple ``$``." -#: ../Doc/library/string.rst:700 +#: ../Doc/library/string.rst:702 msgid "" "``$identifier`` names a substitution placeholder matching a mapping key of ``" "\"identifier\"``. By default, ``\"identifier\"`` is restricted to any case-" @@ -1172,7 +1175,7 @@ msgstr "" "n'étant pas un identifieur après le ``$`` termine la spécification du " "substituant." -#: ../Doc/library/string.rst:707 +#: ../Doc/library/string.rst:709 msgid "" "``${identifier}`` is equivalent to ``$identifier``. It is required when " "valid identifier characters follow the placeholder but are not part of the " @@ -1183,7 +1186,7 @@ msgstr "" "directement le substituant mais ne fait pas partie du substituant, comme ``" "\"${noun}ification\"``." -#: ../Doc/library/string.rst:711 +#: ../Doc/library/string.rst:713 msgid "" "Any other appearance of ``$`` in the string will result in a :exc:" "`ValueError` being raised." @@ -1191,7 +1194,7 @@ msgstr "" "Tout autre présence du symbole ``$`` dans une chaîne résultera en la levée " "d'une :exc:`ValueError`." -#: ../Doc/library/string.rst:714 +#: ../Doc/library/string.rst:716 msgid "" "The :mod:`string` module provides a :class:`Template` class that implements " "these rules. The methods of :class:`Template` are:" @@ -1199,12 +1202,12 @@ msgstr "" "Le module :mod:`string` fournit une classe :class:`Template` qui implémente " "ces règles. Les méthodes de :class:`Template` sont :" -#: ../Doc/library/string.rst:720 +#: ../Doc/library/string.rst:722 msgid "The constructor takes a single argument which is the template string." msgstr "" "Le constructeur prend un seul argument qui est la chaîne du *template*." -#: ../Doc/library/string.rst:725 +#: ../Doc/library/string.rst:727 msgid "" "Performs the template substitution, returning a new string. *mapping* is " "any dictionary-like object with keys that match the placeholders in the " @@ -1219,7 +1222,7 @@ msgstr "" "*mapping* et *kwds* sont donnés et qu'il y a des doublons, les substituants " "de *kwds* sont prioritaires." -#: ../Doc/library/string.rst:734 +#: ../Doc/library/string.rst:736 msgid "" "Like :meth:`substitute`, except that if placeholders are missing from " "*mapping* and *kwds*, instead of raising a :exc:`KeyError` exception, the " @@ -1234,7 +1237,7 @@ msgstr "" "$`` renverra simplement ``$`` au lieu de lever une exception :exc:" "`ValueError`." -#: ../Doc/library/string.rst:740 +#: ../Doc/library/string.rst:742 msgid "" "While other exceptions may still occur, this method is called \"safe\" " "because it always tries to return a usable string instead of raising an " @@ -1250,13 +1253,13 @@ msgstr "" "contient des délimiteurs fantômes, des accolades non fermées, ou des " "substituants qui ne sont pas des identificateurs Python valides." -#: ../Doc/library/string.rst:747 +#: ../Doc/library/string.rst:749 msgid ":class:`Template` instances also provide one public data attribute:" msgstr "" "Les instances de la classe :class:`Template` fournissent également un " "attribut public :" -#: ../Doc/library/string.rst:751 +#: ../Doc/library/string.rst:753 msgid "" "This is the object passed to the constructor's *template* argument. In " "general, you shouldn't change it, but read-only access is not enforced." @@ -1265,11 +1268,11 @@ msgstr "" "vous ne devriez pas le changer, mais un accès en lecture-seule n'est pas " "possible à fournir." -#: ../Doc/library/string.rst:754 +#: ../Doc/library/string.rst:756 msgid "Here is an example of how to use a Template::" msgstr "Voici un exemple de comment utiliser un *Template* ::" -#: ../Doc/library/string.rst:772 +#: ../Doc/library/string.rst:774 msgid "" "Advanced usage: you can derive subclasses of :class:`Template` to customize " "the placeholder syntax, delimiter character, or the entire regular " @@ -1282,7 +1285,7 @@ msgstr "" "analyser les chaînes *templates*. Pour faire cela, vous pouvez redéfinir les " "attributs suivants :" -#: ../Doc/library/string.rst:777 +#: ../Doc/library/string.rst:779 msgid "" "*delimiter* -- This is the literal string describing a placeholder " "introducing delimiter. The default value is ``$``. Note that this should " @@ -1297,7 +1300,7 @@ msgstr "" "escape` sur cette chaîne si nécessaire. Notez aussi que le délimiteur ne " "peut pas être changé après la création de la classe." -#: ../Doc/library/string.rst:784 +#: ../Doc/library/string.rst:786 msgid "" "*idpattern* -- This is the regular expression describing the pattern for non-" "braced placeholders. The default value is the regular expression ``(?a:[_a-" @@ -1310,7 +1313,7 @@ msgstr "" "donné et *braceidpattern* est ``None``, ce motif est aussi utilisé pour les " "marqueurs entre accolades." -#: ../Doc/library/string.rst:791 +#: ../Doc/library/string.rst:793 msgid "" "Since default *flags* is ``re.IGNORECASE``, pattern ``[a-z]`` can match with " "some non-ASCII characters. That's why we use the local ``a`` flag here." @@ -1319,7 +1322,7 @@ msgstr "" "ASCII* peuvent correspondre au motif ``[a-z]``. C'est pourquoi on utilise " "une option locale ``a`` ici." -#: ../Doc/library/string.rst:795 +#: ../Doc/library/string.rst:797 msgid "" "*braceidpattern* can be used to define separate patterns used inside and " "outside the braces." @@ -1327,7 +1330,7 @@ msgstr "" "*braceidpattern* peut être utilisé pour définir des motifs des motifs " "différents suivant qu’ils sont à l’intérieur ou à l’extérieur des accolades." -#: ../Doc/library/string.rst:799 +#: ../Doc/library/string.rst:801 msgid "" "*braceidpattern* -- This is like *idpattern* but describes the pattern for " "braced placeholders. Defaults to ``None`` which means to fall back to " @@ -1341,7 +1344,7 @@ msgstr "" "l’intérieur d’accolades ou non). S’il est donné, cela vous permet de définir " "définir des motifs entre accolades différents des motifs sans accolades." -#: ../Doc/library/string.rst:807 +#: ../Doc/library/string.rst:809 msgid "" "*flags* -- The regular expression flags that will be applied when compiling " "the regular expression used for recognizing substitutions. The default " @@ -1356,7 +1359,7 @@ msgstr "" "personnalisé doit suivre les conventions des expressions rationnelles " "*verbose*." -#: ../Doc/library/string.rst:815 +#: ../Doc/library/string.rst:817 msgid "" "Alternatively, you can provide the entire regular expression pattern by " "overriding the class attribute *pattern*. If you do this, the value must be " @@ -1370,7 +1373,7 @@ msgstr "" "noms. Les groupes de capture correspondent aux règles données au-dessus, " "ainsi qu'à la règle du substituant invalide :" -#: ../Doc/library/string.rst:821 +#: ../Doc/library/string.rst:823 msgid "" "*escaped* -- This group matches the escape sequence, e.g. ``$$``, in the " "default pattern." @@ -1378,7 +1381,7 @@ msgstr "" "*escaped* -- Ce groupe lie les séquences échappées (par exemple ``$$``) dans " "le motif par défaut." -#: ../Doc/library/string.rst:824 +#: ../Doc/library/string.rst:826 msgid "" "*named* -- This group matches the unbraced placeholder name; it should not " "include the delimiter in capturing group." @@ -1386,7 +1389,7 @@ msgstr "" "*named* -- Ce groupe lie les substituants non entourés d'accolades ; il ne " "devrait pas inclure le délimiteur dans le groupe de capture." -#: ../Doc/library/string.rst:827 +#: ../Doc/library/string.rst:829 msgid "" "*braced* -- This group matches the brace enclosed placeholder name; it " "should not include either the delimiter or braces in the capturing group." @@ -1394,7 +1397,7 @@ msgstr "" "*braced* -- Ce groupe lie le nom entouré d'accolades ; il ne devrait inclure " "ni le délimiteur, ni les accolades dans le groupe de capture." -#: ../Doc/library/string.rst:830 +#: ../Doc/library/string.rst:832 msgid "" "*invalid* -- This group matches any other delimiter pattern (usually a " "single delimiter), and it should appear last in the regular expression." @@ -1403,11 +1406,11 @@ msgstr "" "un seul délimiteur) et il devrait apparaître en dernier dans l'expression " "rationnelle." -#: ../Doc/library/string.rst:835 +#: ../Doc/library/string.rst:837 msgid "Helper functions" msgstr "Fonctions d'assistance" -#: ../Doc/library/string.rst:839 +#: ../Doc/library/string.rst:841 msgid "" "Split the argument into words using :meth:`str.split`, capitalize each word " "using :meth:`str.capitalize`, and join the capitalized words using :meth:" diff --git a/library/subprocess.po b/library/subprocess.po index c1c3a52b2..41e9f4c23 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-05-23 21:44+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -1772,16 +1772,13 @@ msgstr "" "son attribut :attr:`~Popen.returncode`." #: ../Doc/library/subprocess.rst:1051 ../Doc/library/subprocess.rst:1079 +#, fuzzy msgid "" -"Code needing to capture stdout or stderr should use :func:`run` instead:" +"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:1053 -msgid "run(...).returncode" -msgstr "``run(...).returncode``" - #: ../Doc/library/subprocess.rst:1055 ../Doc/library/subprocess.rst:1083 msgid "To suppress stdout or stderr, supply a value of :data:`DEVNULL`." msgstr "Pour supprimer *stdout* ou *stderr*, passez la valeur :data:`DEVNULL`." @@ -1820,10 +1817,6 @@ msgstr "" "`CalledProcessError` autrement. L'objet :exc:`CalledProcessError` contiendra " "le code de retour dans son attribut :attr:`~CalledProcessError.returncode`." -#: ../Doc/library/subprocess.rst:1081 -msgid "run(..., check=True)" -msgstr "``run(..., check=True)``" - #: ../Doc/library/subprocess.rst:1105 msgid "Run command with arguments and return its output." msgstr "Lance la commande avec les arguments et renvoie sa sortie." @@ -1954,9 +1947,10 @@ msgid "Replacing shell pipeline" msgstr "Remplacer les *pipes* du *shell*" #: ../Doc/library/subprocess.rst:1201 +#, fuzzy 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." +"The ``p1.stdout.close()`` call after starting the p2 is important in order " +"for p1 to receive a SIGPIPE if p2 exits before p1." 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." @@ -2210,6 +2204,12 @@ msgstr "" "Module qui fournit des fonctions pour analyser et échapper les lignes de " "commandes." +#~ msgid "run(...).returncode" +#~ msgstr "``run(...).returncode``" + +#~ msgid "run(..., check=True)" +#~ msgstr "``run(..., check=True)``" + #~ msgid "(except that the *input* and *check* parameters are not supported)" #~ msgstr "(excepté que les paramètres *input* et *check* ne sont pas gérés)" diff --git a/library/sys.po b/library/sys.po index 47e7f84a5..55c80ca99 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-09-06 13:32+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-01 23:12+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -367,7 +367,7 @@ msgid "Integer specifying the handle of the Python DLL." msgstr "Nombre entier spécifiant le descripteur de la DLL Python." #: ../Doc/library/sys.rst:229 ../Doc/library/sys.rst:753 -#: ../Doc/library/sys.rst:1398 ../Doc/library/sys.rst:1597 +#: ../Doc/library/sys.rst:1409 ../Doc/library/sys.rst:1608 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." @@ -520,13 +520,14 @@ msgstr "" "exception actuellement traitée est accessible." #: ../Doc/library/sys.rst:343 +#, fuzzy msgid "" "If no exception is being handled anywhere on the stack, a tuple containing " "three ``None`` values is returned. Otherwise, the values returned are " "``(type, value, traceback)``. Their meaning is: *type* gets the type of the " "exception being handled (a subclass of :exc:`BaseException`); *value* gets " "the exception instance (an instance of the exception type); *traceback* gets " -"a traceback object (see the Reference Manual) which encapsulates the call " +"a :ref:`traceback object ` which encapsulates the call " "stack at the point where the exception originally occurred." msgstr "" "Si aucune exception n'est actuellement traitée de toute la pile, un *tuple* " @@ -645,9 +646,10 @@ msgstr "" "tampons des sorties standard), le code de sortie est changé à 120." #: ../Doc/library/sys.rst:411 +#, fuzzy msgid "" -"The :term:`struct sequence` *flags* exposes the status of command line " -"flags. The attributes are read only." +"The :term:`named tuple` *flags* exposes the status of command line flags. " +"The attributes are read only." msgstr "" "La :term:`struct sequence` *flags* expose l'état des options de ligne de " "commande. Ces attributs sont en lecture seule." @@ -804,13 +806,14 @@ msgstr "" "``utf8``." #: ../Doc/library/sys.rst:453 +#, fuzzy msgid "" -"A :term:`struct sequence` holding information about the float type. It " -"contains low level information about the precision and internal " -"representation. The values correspond to the various floating-point " -"constants defined in the standard header file :file:`float.h` for the 'C' " -"programming language; see section 5.2.4.2.2 of the 1999 ISO/IEC C standard " -"[C99]_, 'Characteristics of floating types', for details." +"A :term:`named tuple` holding information about the float type. It contains " +"low level information about the precision and internal representation. The " +"values correspond to the various floating-point constants defined in the " +"standard header file :file:`float.h` for the 'C' programming language; see " +"section 5.2.4.2.2 of the 1999 ISO/IEC C standard [C99]_, 'Characteristics of " +"floating types', for details." msgstr "" "Un :term:`struct sequence` contenant des informations à propos du type " "*float*. Il contient des informations de bas niveau à propos de la précision " @@ -1424,7 +1427,7 @@ msgstr "" msgid "See :pep:`525` for more details." msgstr "Voir la :pep:`525` pour plus d'informations." -#: ../Doc/library/sys.rst:775 ../Doc/library/sys.rst:1365 +#: ../Doc/library/sys.rst:775 ../Doc/library/sys.rst:1376 msgid "" "This function has been added on a provisional basis (see :pep:`411` for " "details.)" @@ -1441,7 +1444,7 @@ msgstr "" "le suivi de leur création, telle que défini par :func:" "`set_coroutine_origin_tracking_depth`." -#: ../Doc/library/sys.rst:787 ../Doc/library/sys.rst:1386 +#: ../Doc/library/sys.rst:787 ../Doc/library/sys.rst:1397 msgid "" "This function has been added on a provisional basis (see :pep:`411` for " "details.) Use it only for debugging purposes." @@ -1450,10 +1453,10 @@ msgstr "" "plus d'informations.) Utilisez la uniquement à des fins de débogage." #: ../Doc/library/sys.rst:793 +#, fuzzy msgid "" -"A :term:`struct sequence` giving parameters of the numeric hash " -"implementation. For more details about hashing of numeric types, see :ref:" -"`numeric-hash`." +"A :term:`named tuple` giving parameters of the numeric hash implementation. " +"For more details about hashing of numeric types, see :ref:`numeric-hash`." msgstr "" "Une :term:`struct sequence` donnant les paramètres de l'implémentation de la " "fonction de hachage de nombres. Pour plus d'informations sur le hachage des " @@ -1542,10 +1545,11 @@ msgstr "" "1.5, utilisez : ::" #: ../Doc/library/sys.rst:839 +#, fuzzy msgid "" "This is called ``hexversion`` since it only really looks meaningful when " "viewed as the result of passing it to the built-in :func:`hex` function. " -"The :term:`struct sequence` :data:`sys.version_info` may be used for a more " +"The :term:`named tuple` :data:`sys.version_info` may be used for a more " "human-friendly encoding of the same information." msgstr "" "Cet attribut s'appelle ``hexversion`` dans le sens où il ne semble avoir du " @@ -1645,19 +1649,20 @@ msgid "" msgstr "" #: ../Doc/library/sys.rst:893 +#, fuzzy msgid "" -"A :term:`struct sequence` that holds information about Python's internal " +"A :term:`named tuple` that holds information about Python's internal " "representation of integers. The attributes are read only." msgstr "" "Un :term:`struct sequence` qui contient des informations sur la " "représentation interne des entiers de Python. Les attributs sont en lecture " "seule." -#: ../Doc/library/sys.rst:899 ../Doc/library/sys.rst:1489 +#: ../Doc/library/sys.rst:899 ../Doc/library/sys.rst:1500 msgid "Attribute" msgstr "Attribut" -#: ../Doc/library/sys.rst:899 ../Doc/library/sys.rst:1489 +#: ../Doc/library/sys.rst:899 ../Doc/library/sys.rst:1500 msgid "Explanation" msgstr "Explication" @@ -2472,18 +2477,32 @@ msgstr "" "d'appelants, un événement ``'exception'`` est généré à chaque niveau." #: ../Doc/library/sys.rst:1327 +msgid "" +"For more fine-grained usage, it's possible to set a trace function by " +"assigning ``frame.f_trace = tracefunc`` explicitly, rather than relying on " +"it being set indirectly via the return value from an already installed trace " +"function. This is also required for activating the trace function on the " +"current frame, which :func:`settrace` doesn't do. Note that in order for " +"this to work, a global tracing function must have been installed with :func:" +"`settrace` in order to enable the runtime tracing machinery, but it doesn't " +"need to be the same tracing function (e.g. it could be a low overhead " +"tracing function that simply returns ``None`` to disable itself immediately " +"on each frame)." +msgstr "" + +#: ../Doc/library/sys.rst:1338 msgid "For more information on code and frame objects, refer to :ref:`types`." msgstr "" "Pour plus d'informations sur les objets code et objets représentant une " "*frame* de la pile, consultez :ref:`types`." -#: ../Doc/library/sys.rst:1330 +#: ../Doc/library/sys.rst:1341 msgid "" "Raises an :ref:`auditing event ` ``sys.settrace`` with no " "arguments." msgstr "" -#: ../Doc/library/sys.rst:1333 +#: ../Doc/library/sys.rst:1344 msgid "" "The :func:`settrace` function is intended only for implementing debuggers, " "profilers, coverage tools and the like. Its behavior is part of the " @@ -2496,7 +2515,7 @@ msgstr "" "que de la définition du langage, et peut donc ne pas être disponible dans " "toutes les implémentations de Python." -#: ../Doc/library/sys.rst:1340 +#: ../Doc/library/sys.rst:1351 msgid "" "``'opcode'`` event type added; :attr:`f_trace_lines` and :attr:" "`f_trace_opcodes` attributes added to frames" @@ -2504,7 +2523,7 @@ msgstr "" "Ajout du type d’événement ``'opcode'`` ; les attributs :attr:`f_trace_lines` " "et :attr:`f_trace_opcodes` ont été ajoutés aux cadres d'exécution" -#: ../Doc/library/sys.rst:1345 +#: ../Doc/library/sys.rst:1356 msgid "" "Accepts two optional keyword arguments which are callables that accept an :" "term:`asynchronous generator iterator` as an argument. The *firstiter* " @@ -2518,25 +2537,25 @@ msgstr "" "première fois, et l'appelable *finalizer* sera appelé lorsqu'un générateur " "asynchrone est sur le point d'être détruit." -#: ../Doc/library/sys.rst:1352 +#: ../Doc/library/sys.rst:1363 msgid "" "Raises an :ref:`auditing event ` ``sys." "set_asyncgen_hooks_firstiter`` with no arguments." msgstr "" -#: ../Doc/library/sys.rst:1354 +#: ../Doc/library/sys.rst:1365 msgid "" "Raises an :ref:`auditing event ` ``sys." "set_asyncgen_hooks_finalizer`` with no arguments." msgstr "" -#: ../Doc/library/sys.rst:1355 +#: ../Doc/library/sys.rst:1366 msgid "" "Two auditing events are raised because the underlying API consists of two " "calls, each of which must raise its own event." msgstr "" -#: ../Doc/library/sys.rst:1358 +#: ../Doc/library/sys.rst:1369 msgid "" "See :pep:`525` for more details, and for a reference example of a " "*finalizer* method see the implementation of ``asyncio.Loop." @@ -2546,7 +2565,7 @@ msgstr "" "voir l'implémentation de ``asyncio.Loop.shutdown_asyncgens`` dans :source:" "`Lib/asyncio/base_events.py`" -#: ../Doc/library/sys.rst:1370 +#: ../Doc/library/sys.rst:1381 msgid "" "Allows enabling or disabling coroutine origin tracking. When enabled, the " "``cr_origin`` attribute on coroutine objects will contain a tuple of " @@ -2561,7 +2580,7 @@ msgstr "" "coroutine a été créé, avec l'appel le plus récent en premier. Lorsqu'il est " "désactivé, la valeur de ``cr_origin`` est ``None``." -#: ../Doc/library/sys.rst:1377 +#: ../Doc/library/sys.rst:1388 msgid "" "To enable, pass a *depth* value greater than zero; this sets the number of " "frames whose information will be captured. To disable, pass set *depth* to " @@ -2571,11 +2590,11 @@ msgstr "" "le nombre de cadres d'exécution dont les informations sont capturées. Pour " "le désactiver, mettez *depth* à zéro." -#: ../Doc/library/sys.rst:1381 +#: ../Doc/library/sys.rst:1392 msgid "This setting is thread-specific." msgstr "Ce paramètre est spécifique au fil d'exécution courant." -#: ../Doc/library/sys.rst:1391 +#: ../Doc/library/sys.rst:1402 msgid "" "Changes the default filesystem encoding and errors mode to 'mbcs' and " "'replace' respectively, for consistency with versions of Python prior to 3.6." @@ -2584,7 +2603,7 @@ msgstr "" "fichiers à *mbcs* et *replace* respectivement, par cohérence avec les " "versions de Python antérieures à la 3.6." -#: ../Doc/library/sys.rst:1394 +#: ../Doc/library/sys.rst:1405 msgid "" "This is equivalent to defining the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` " "environment variable before launching Python." @@ -2592,11 +2611,11 @@ msgstr "" "Équivaut à définir la variable d'environnement :envvar:" "`PYTHONLEGACYWINDOWSFSENCODING` avant de lancer Python." -#: ../Doc/library/sys.rst:1399 +#: ../Doc/library/sys.rst:1410 msgid "See :pep:`529` for more details." msgstr "Voir la :pep:`529` pour plus d'informations." -#: ../Doc/library/sys.rst:1406 +#: ../Doc/library/sys.rst:1417 msgid "" ":term:`File objects ` used by the interpreter for standard " "input, output and errors:" @@ -2604,7 +2623,7 @@ msgstr "" ":term:`objets fichiers ` utilisés par l'interpréteur pour " "l'entrée standard, la sortie standard et la sortie d'erreurs :" -#: ../Doc/library/sys.rst:1409 +#: ../Doc/library/sys.rst:1420 msgid "" "``stdin`` is used for all interactive input (including calls to :func:" "`input`);" @@ -2612,7 +2631,7 @@ msgstr "" "``stdin`` est utilisé pour toutes les entrées interactives (y compris les " "appels à :func:`input`)" -#: ../Doc/library/sys.rst:1411 +#: ../Doc/library/sys.rst:1422 msgid "" "``stdout`` is used for the output of :func:`print` and :term:`expression` " "statements and for the prompts of :func:`input`;" @@ -2620,13 +2639,13 @@ msgstr "" "``stdout`` est utilisé pour la sortie de :func:`print`, des :term:" "`expression` et pour les invites de :func:`input` ;" -#: ../Doc/library/sys.rst:1413 +#: ../Doc/library/sys.rst:1424 msgid "The interpreter's own prompts and its error messages go to ``stderr``." msgstr "" "Les invites de l'interpréteur et ses messages d'erreur sont écrits sur " "``stderr``." -#: ../Doc/library/sys.rst:1415 +#: ../Doc/library/sys.rst:1426 msgid "" "These streams are regular :term:`text files ` like those returned " "by the :func:`open` function. Their parameters are chosen as follows:" @@ -2635,7 +2654,7 @@ msgstr "" "renvoyés par la fonction :func:`open`. Leurs paramètres sont choisis comme " "suit :" -#: ../Doc/library/sys.rst:1419 +#: ../Doc/library/sys.rst:1430 msgid "" "The character encoding is platform-dependent. Non-Windows platforms use the " "locale encoding (see :meth:`locale.getpreferredencoding()`)." @@ -2644,7 +2663,7 @@ msgstr "" "Windows utilisent l'encodage défini dans les paramètres régionaux (voir :" "meth:`locale.getpreferredencoding()`)." -#: ../Doc/library/sys.rst:1423 +#: ../Doc/library/sys.rst:1434 msgid "" "On Windows, UTF-8 is used for the console device. Non-character devices " "such as disk files and pipes use the system locale encoding (i.e. the ANSI " @@ -2663,7 +2682,7 @@ msgstr "" "valeur par défaut est l'encodage des paramètres régionaux système si le " "processus n'est pas attaché initialement à une console." -#: ../Doc/library/sys.rst:1432 +#: ../Doc/library/sys.rst:1443 msgid "" "The special behaviour of the console can be overridden by setting the " "environment variable PYTHONLEGACYWINDOWSSTDIO before starting Python. In " @@ -2674,7 +2693,7 @@ msgstr "" "Python. Dans ce cas, les pages de code de la console sont utilisées comme " "pour tout autre périphérique de caractères." -#: ../Doc/library/sys.rst:1437 +#: ../Doc/library/sys.rst:1448 msgid "" "Under all platforms, you can override the character encoding by setting the :" "envvar:`PYTHONIOENCODING` environment variable before starting Python or by " @@ -2689,7 +2708,7 @@ msgstr "" "Toutefois, pour la console Windows, cela s'applique uniquement lorsque :" "envvar:`PYTHONLEGACYWINDOWSSTDIO` est également défini." -#: ../Doc/library/sys.rst:1444 +#: ../Doc/library/sys.rst:1455 msgid "" "When interactive, ``stdout`` and ``stderr`` streams are line-buffered. " "Otherwise, they are block-buffered like regular text files. You can " @@ -2700,7 +2719,7 @@ msgstr "" "fichiers textes classiques. Vous pouvez remplacer cette valeur avec " "l'option :option:`-u` en ligne de commande." -#: ../Doc/library/sys.rst:1450 +#: ../Doc/library/sys.rst:1461 msgid "" "To write or read binary data from/to the standard streams, use the " "underlying binary :data:`~io.TextIOBase.buffer` object. For example, to " @@ -2711,7 +2730,7 @@ msgstr "" "pour écrire des octets sur :data:`stdout`, utilisez ``sys.stdout.buffer." "write(b'abc')``." -#: ../Doc/library/sys.rst:1454 +#: ../Doc/library/sys.rst:1465 msgid "" "However, if you are writing a library (and do not control in which context " "its code will be executed), be aware that the standard streams may be " @@ -2723,7 +2742,7 @@ msgstr "" "remplacés par des objets de type fichier tel un :class:`io.StringIO` qui " "n'ont pas l'attribut :attr:`~io.BufferedIOBase.buffer`." -#: ../Doc/library/sys.rst:1464 +#: ../Doc/library/sys.rst:1475 msgid "" "These objects contain the original values of ``stdin``, ``stderr`` and " "``stdout`` at the start of the program. They are used during finalization, " @@ -2735,7 +2754,7 @@ msgstr "" "pendant la finalisation, et peuvent être utiles pour écrire dans le vrai " "flux standard, peu importe si l'objet ``sys.std*`` a été redirigé." -#: ../Doc/library/sys.rst:1469 +#: ../Doc/library/sys.rst:1480 msgid "" "It can also be used to restore the actual files to known working file " "objects in case they have been overwritten with a broken object. However, " @@ -2747,7 +2766,7 @@ msgstr "" "cependant la bonne façon de faire serait de sauvegarder explicitement les " "flux avant de les remplacer et ainsi pouvoir les restaurer." -#: ../Doc/library/sys.rst:1475 +#: ../Doc/library/sys.rst:1486 msgid "" "Under some conditions ``stdin``, ``stdout`` and ``stderr`` as well as the " "original values ``__stdin__``, ``__stdout__`` and ``__stderr__`` can be " @@ -2760,60 +2779,60 @@ msgstr "" "Windows qui ne sont pas connectées à une console, ou les applications Python " "démarrées avec :program:`pythonw`." -#: ../Doc/library/sys.rst:1483 +#: ../Doc/library/sys.rst:1494 +#, fuzzy msgid "" -"A :term:`struct sequence` holding information about the thread " -"implementation." +"A :term:`named tuple` holding information about the thread implementation." msgstr "" "Une :term:`struct sequence` contenant des informations sur l'implémentation " "des fils d'exécution." -#: ../Doc/library/sys.rst:1491 +#: ../Doc/library/sys.rst:1502 msgid ":const:`name`" msgstr ":const:`name`" -#: ../Doc/library/sys.rst:1491 +#: ../Doc/library/sys.rst:1502 msgid "Name of the thread implementation:" msgstr "Nom de l'implémentation des fils d'exécution :" -#: ../Doc/library/sys.rst:1493 +#: ../Doc/library/sys.rst:1504 msgid "``'nt'``: Windows threads" msgstr "``'nt'``: Fils d'exécution Windows" -#: ../Doc/library/sys.rst:1494 +#: ../Doc/library/sys.rst:1505 msgid "``'pthread'``: POSIX threads" msgstr "``'pthread'``: Fils d'exécution POSIX" -#: ../Doc/library/sys.rst:1495 +#: ../Doc/library/sys.rst:1506 msgid "``'solaris'``: Solaris threads" msgstr "``'solaris'``: Fils d'exécution Solaris" -#: ../Doc/library/sys.rst:1497 +#: ../Doc/library/sys.rst:1508 msgid ":const:`lock`" msgstr ":const:`lock`" -#: ../Doc/library/sys.rst:1497 +#: ../Doc/library/sys.rst:1508 msgid "Name of the lock implementation:" msgstr "Nom de l'implémentation du système de verrou :" -#: ../Doc/library/sys.rst:1499 +#: ../Doc/library/sys.rst:1510 msgid "``'semaphore'``: a lock uses a semaphore" msgstr "``'semaphore'``: Verrou utilisant une sémaphore" -#: ../Doc/library/sys.rst:1500 +#: ../Doc/library/sys.rst:1511 msgid "``'mutex+cond'``: a lock uses a mutex and a condition variable" msgstr "" "``'mutex+cond'``: Un verrou utilisant un *mutex* et une *condition variable*" -#: ../Doc/library/sys.rst:1502 +#: ../Doc/library/sys.rst:1513 msgid "``None`` if this information is unknown" msgstr "``None`` si cette information n'est pas connue" -#: ../Doc/library/sys.rst:1504 +#: ../Doc/library/sys.rst:1515 msgid ":const:`version`" msgstr ":const:`version`" -#: ../Doc/library/sys.rst:1504 +#: ../Doc/library/sys.rst:1515 msgid "" "Name and version of the thread library. It is a string, or ``None`` if this " "information is unknown." @@ -2821,7 +2840,7 @@ msgstr "" "Nom et version de l'implémentation des fils d'exécution, c'est une chaîne, " "ou ``None`` si ces informations sont inconnues." -#: ../Doc/library/sys.rst:1513 +#: ../Doc/library/sys.rst:1524 msgid "" "When this variable is set to an integer value, it determines the maximum " "number of levels of traceback information printed when an unhandled " @@ -2835,73 +2854,73 @@ msgstr "" "est égale ou inférieure à ``0``, la pile d'appels n'est pas affichée, seul " "seuls le type et la valeur de l'exception sont le sont." -#: ../Doc/library/sys.rst:1521 +#: ../Doc/library/sys.rst:1532 msgid "Handle an unraisable exception." msgstr "" -#: ../Doc/library/sys.rst:1523 +#: ../Doc/library/sys.rst:1534 msgid "" "Called when an exception has occurred but there is no way for Python to " "handle it. For example, when a destructor raises an exception or during " "garbage collection (:func:`gc.collect`)." msgstr "" -#: ../Doc/library/sys.rst:1527 +#: ../Doc/library/sys.rst:1538 #, fuzzy msgid "The *unraisable* argument has the following attributes:" msgstr "Les événements ont la signification suivante :" -#: ../Doc/library/sys.rst:1529 +#: ../Doc/library/sys.rst:1540 msgid "*exc_type*: Exception type." msgstr "" -#: ../Doc/library/sys.rst:1530 +#: ../Doc/library/sys.rst:1541 msgid "*exc_value*: Exception value, can be ``None``." msgstr "" -#: ../Doc/library/sys.rst:1531 +#: ../Doc/library/sys.rst:1542 msgid "*exc_traceback*: Exception traceback, can be ``None``." msgstr "" -#: ../Doc/library/sys.rst:1532 +#: ../Doc/library/sys.rst:1543 msgid "*err_msg*: Error message, can be ``None``." msgstr "" -#: ../Doc/library/sys.rst:1533 +#: ../Doc/library/sys.rst:1544 msgid "*object*: Object causing the exception, can be ``None``." msgstr "" -#: ../Doc/library/sys.rst:1535 +#: ../Doc/library/sys.rst:1546 msgid "" "The default hook formats *err_msg* and *object* as: ``f'{err_msg}: {object!" "r}'``; use \"Exception ignored in\" error message if *err_msg* is ``None``." msgstr "" -#: ../Doc/library/sys.rst:1539 +#: ../Doc/library/sys.rst:1550 msgid "" ":func:`sys.unraisablehook` can be overridden to control how unraisable " "exceptions are handled." msgstr "" -#: ../Doc/library/sys.rst:1542 +#: ../Doc/library/sys.rst:1553 msgid "" "Storing *exc_value* using a custom hook can create a reference cycle. It " "should be cleared explicitly to break the reference cycle when the exception " "is no longer needed." msgstr "" -#: ../Doc/library/sys.rst:1546 +#: ../Doc/library/sys.rst:1557 msgid "" "Storing *object* using a custom hook can resurrect it if it is set to an " "object which is being finalized. Avoid storing *object* after the custom " "hook completes to avoid resurrecting objects." msgstr "" -#: ../Doc/library/sys.rst:1550 +#: ../Doc/library/sys.rst:1561 msgid "See also :func:`excepthook` which handles uncaught exceptions." msgstr "" -#: ../Doc/library/sys.rst:1556 +#: ../Doc/library/sys.rst:1567 msgid "" "A string containing the version number of the Python interpreter plus " "additional information on the build number and compiler used. This string " @@ -2916,7 +2935,7 @@ msgstr "" "utilisez plutôt :data:`version_info` et les fonctions fournies par le " "module :mod:`platform`." -#: ../Doc/library/sys.rst:1565 +#: ../Doc/library/sys.rst:1576 msgid "" "The C API version for this interpreter. Programmers may find this useful " "when debugging version conflicts between Python and extension modules." @@ -2925,7 +2944,7 @@ msgstr "" "trouver cette information utile en déboguant des conflits de versions entre " "Python et des modules d'extension." -#: ../Doc/library/sys.rst:1571 +#: ../Doc/library/sys.rst:1582 msgid "" "A tuple containing the five components of the version number: *major*, " "*minor*, *micro*, *releaselevel*, and *serial*. All values except " @@ -2943,11 +2962,11 @@ msgstr "" "attributs sont aussi accessibles par leur nom, ainsi ``sys.version_info[0]`` " "est équivalent à ``sys.version_info.major``, et ainsi de suite." -#: ../Doc/library/sys.rst:1579 +#: ../Doc/library/sys.rst:1590 msgid "Added named component attributes." msgstr "Ajout des attributs nommés." -#: ../Doc/library/sys.rst:1584 +#: ../Doc/library/sys.rst:1595 msgid "" "This is an implementation detail of the warnings framework; do not modify " "this value. Refer to the :mod:`warnings` module for more information on the " @@ -2957,7 +2976,7 @@ msgstr "" "Ne modifiez pas cette valeur. Reportez-vous au module :mod:`warnings` pour " "plus d'informations sur le gestionnaire d'avertissements." -#: ../Doc/library/sys.rst:1591 +#: ../Doc/library/sys.rst:1602 msgid "" "The version number used to form registry keys on Windows platforms. This is " "stored as string resource 1000 in the Python DLL. The value is normally the " @@ -2972,7 +2991,7 @@ msgstr "" "d'information, et la modifier n'a aucun effet sur les clés de registre " "utilisées par Python." -#: ../Doc/library/sys.rst:1602 +#: ../Doc/library/sys.rst:1613 msgid "" "A dictionary of the various implementation-specific flags passed through " "the :option:`-X` command-line option. Option names are either mapped to " @@ -2983,7 +3002,7 @@ msgstr "" "correspondent soit leur valeur, si elle est donnée explicitement, soit à :" "const:`True`. Exemple:" -#: ../Doc/library/sys.rst:1618 +#: ../Doc/library/sys.rst:1629 msgid "" "This is a CPython-specific way of accessing options passed through :option:`-" "X`. Other implementations may export them through other means, or not at " @@ -2993,11 +3012,11 @@ msgstr "" "l'option :option:`-X`. D'autres implémentations pourraient les exposer par " "d'autres moyens, ou pas du tout." -#: ../Doc/library/sys.rst:1626 +#: ../Doc/library/sys.rst:1637 msgid "Citations" msgstr "Citations" -#: ../Doc/library/sys.rst:1627 +#: ../Doc/library/sys.rst:1638 msgid "" "ISO/IEC 9899:1999. \"Programming languages -- C.\" A public draft of this " "standard is available at http://www.open-std.org/jtc1/sc22/wg14/www/docs/" diff --git a/library/tarfile.po b/library/tarfile.po index ace90d91d..7646cc3f8 100644 --- a/library/tarfile.po +++ b/library/tarfile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -324,12 +324,12 @@ msgstr "``'w|xz'``" msgid "Open an lzma compressed *stream* for writing." msgstr "" -#: ../Doc/library/tarfile.rst:146 ../Doc/library/tarfile.rst:328 +#: ../Doc/library/tarfile.rst:146 ../Doc/library/tarfile.rst:329 msgid "The ``'x'`` (exclusive creation) mode was added." msgstr "Le mode ``'x'`` (création exclusive) est créé." -#: ../Doc/library/tarfile.rst:149 ../Doc/library/tarfile.rst:331 -#: ../Doc/library/tarfile.rst:499 +#: ../Doc/library/tarfile.rst:149 ../Doc/library/tarfile.rst:332 +#: ../Doc/library/tarfile.rst:500 msgid "The *name* parameter accepts a :term:`path-like object`." msgstr "" @@ -510,25 +510,26 @@ msgstr "" #: ../Doc/library/tarfile.rst:293 msgid "" -"*format* controls the archive format. It must be one of the constants :const:" -"`USTAR_FORMAT`, :const:`GNU_FORMAT` or :const:`PAX_FORMAT` that are defined " -"at module level." +"*format* controls the archive format for writing. It must be one of the " +"constants :const:`USTAR_FORMAT`, :const:`GNU_FORMAT` or :const:`PAX_FORMAT` " +"that are defined at module level. When reading, format will be automatically " +"detected, even if different formats are present in a single archive." msgstr "" -#: ../Doc/library/tarfile.rst:297 +#: ../Doc/library/tarfile.rst:298 msgid "" "The *tarinfo* argument can be used to replace the default :class:`TarInfo` " "class with a different one." msgstr "" -#: ../Doc/library/tarfile.rst:300 +#: ../Doc/library/tarfile.rst:301 msgid "" "If *dereference* is :const:`False`, add symbolic and hard links to the " "archive. If it is :const:`True`, add the content of the target files to the " "archive. This has no effect on systems that do not support symbolic links." msgstr "" -#: ../Doc/library/tarfile.rst:304 +#: ../Doc/library/tarfile.rst:305 msgid "" "If *ignore_zeros* is :const:`False`, treat an empty block as the end of the " "archive. If it is :const:`True`, skip empty (and invalid) blocks and try to " @@ -536,13 +537,13 @@ msgid "" "concatenated or damaged archives." msgstr "" -#: ../Doc/library/tarfile.rst:308 +#: ../Doc/library/tarfile.rst:309 msgid "" "*debug* can be set from ``0`` (no debug messages) up to ``3`` (all debug " "messages). The messages are written to ``sys.stderr``." msgstr "" -#: ../Doc/library/tarfile.rst:311 +#: ../Doc/library/tarfile.rst:312 msgid "" "If *errorlevel* is ``0``, all errors are ignored when using :meth:`TarFile." "extract`. Nevertheless, they appear as error messages in the debug output, " @@ -551,7 +552,7 @@ msgid "" "`TarError` exceptions as well." msgstr "" -#: ../Doc/library/tarfile.rst:317 +#: ../Doc/library/tarfile.rst:318 msgid "" "The *encoding* and *errors* arguments define the character encoding to be " "used for reading or writing the archive and how conversion errors are going " @@ -559,47 +560,47 @@ msgid "" "ref:`tar-unicode` for in-depth information." msgstr "" -#: ../Doc/library/tarfile.rst:322 +#: ../Doc/library/tarfile.rst:323 msgid "" "The *pax_headers* argument is an optional dictionary of strings which will " "be added as a pax global header if *format* is :const:`PAX_FORMAT`." msgstr "" -#: ../Doc/library/tarfile.rst:325 ../Doc/library/tarfile.rst:552 +#: ../Doc/library/tarfile.rst:326 ../Doc/library/tarfile.rst:553 msgid "Use ``'surrogateescape'`` as the default for the *errors* argument." msgstr "" -#: ../Doc/library/tarfile.rst:337 +#: ../Doc/library/tarfile.rst:338 msgid "" "Alternative constructor. The :func:`tarfile.open` function is actually a " "shortcut to this classmethod." msgstr "" -#: ../Doc/library/tarfile.rst:343 +#: ../Doc/library/tarfile.rst:344 msgid "" "Return a :class:`TarInfo` object for member *name*. If *name* can not be " "found in the archive, :exc:`KeyError` is raised." msgstr "" -#: ../Doc/library/tarfile.rst:348 +#: ../Doc/library/tarfile.rst:349 msgid "" "If a member occurs more than once in the archive, its last occurrence is " "assumed to be the most up-to-date version." msgstr "" -#: ../Doc/library/tarfile.rst:354 +#: ../Doc/library/tarfile.rst:355 msgid "" "Return the members of the archive as a list of :class:`TarInfo` objects. The " "list has the same order as the members in the archive." msgstr "" -#: ../Doc/library/tarfile.rst:360 +#: ../Doc/library/tarfile.rst:361 msgid "" "Return the members as a list of their names. It has the same order as the " "list returned by :meth:`getmembers`." msgstr "" -#: ../Doc/library/tarfile.rst:366 +#: ../Doc/library/tarfile.rst:367 msgid "" "Print a table of contents to ``sys.stdout``. If *verbose* is :const:`False`, " "only the names of the members are printed. If it is :const:`True`, output " @@ -607,18 +608,18 @@ msgid "" "given, it must be a subset of the list returned by :meth:`getmembers`." msgstr "" -#: ../Doc/library/tarfile.rst:371 +#: ../Doc/library/tarfile.rst:372 msgid "Added the *members* parameter." msgstr "" -#: ../Doc/library/tarfile.rst:377 +#: ../Doc/library/tarfile.rst:378 msgid "" "Return the next member of the archive as a :class:`TarInfo` object, when :" "class:`TarFile` is opened for reading. Return :const:`None` if there is no " "more available." msgstr "" -#: ../Doc/library/tarfile.rst:384 +#: ../Doc/library/tarfile.rst:385 msgid "" "Extract all members from the archive to the current working directory or " "directory *path*. If optional *members* is given, it must be a subset of the " @@ -630,14 +631,14 @@ msgid "" "fail." msgstr "" -#: ../Doc/library/tarfile.rst:392 ../Doc/library/tarfile.rst:418 +#: ../Doc/library/tarfile.rst:393 ../Doc/library/tarfile.rst:419 msgid "" "If *numeric_owner* is :const:`True`, the uid and gid numbers from the " "tarfile are used to set the owner/group for the extracted files. Otherwise, " "the named values from the tarfile are used." msgstr "" -#: ../Doc/library/tarfile.rst:398 +#: ../Doc/library/tarfile.rst:399 msgid "" "Never extract archives from untrusted sources without prior inspection. It " "is possible that files are created outside of *path*, e.g. members that have " @@ -645,17 +646,17 @@ msgid "" "\"``." msgstr "" -#: ../Doc/library/tarfile.rst:403 ../Doc/library/tarfile.rst:434 +#: ../Doc/library/tarfile.rst:404 ../Doc/library/tarfile.rst:435 msgid "Added the *numeric_owner* parameter." msgstr "" -#: ../Doc/library/tarfile.rst:406 ../Doc/library/tarfile.rst:437 +#: ../Doc/library/tarfile.rst:407 ../Doc/library/tarfile.rst:438 msgid "The *path* parameter accepts a :term:`path-like object`." msgstr "" "Le paramètre *path* accepte un objet chemin-compatible :term:`path-like " "object`." -#: ../Doc/library/tarfile.rst:412 +#: ../Doc/library/tarfile.rst:413 msgid "" "Extract a member from the archive to the current working directory, using " "its full name. Its file information is extracted as accurately as possible. " @@ -664,21 +665,21 @@ msgid "" "File attributes (owner, mtime, mode) are set unless *set_attrs* is false." msgstr "" -#: ../Doc/library/tarfile.rst:424 +#: ../Doc/library/tarfile.rst:425 msgid "" "The :meth:`extract` method does not take care of several extraction issues. " "In most cases you should consider using the :meth:`extractall` method." msgstr "" -#: ../Doc/library/tarfile.rst:429 +#: ../Doc/library/tarfile.rst:430 msgid "See the warning for :meth:`extractall`." msgstr "" -#: ../Doc/library/tarfile.rst:431 +#: ../Doc/library/tarfile.rst:432 msgid "Added the *set_attrs* parameter." msgstr "" -#: ../Doc/library/tarfile.rst:443 +#: ../Doc/library/tarfile.rst:444 msgid "" "Extract a member from the archive as a file object. *member* may be a " "filename or a :class:`TarInfo` object. If *member* is a regular file or a " @@ -686,11 +687,11 @@ msgid "" "`None` is returned." msgstr "" -#: ../Doc/library/tarfile.rst:448 +#: ../Doc/library/tarfile.rst:449 msgid "Return an :class:`io.BufferedReader` object." msgstr "" -#: ../Doc/library/tarfile.rst:454 +#: ../Doc/library/tarfile.rst:455 msgid "" "Add the file *name* to the archive. *name* may be any type of file " "(directory, fifo, symbolic link, etc.). If given, *arcname* specifies an " @@ -703,15 +704,15 @@ msgid "" "ref:`tar-examples` for an example." msgstr "" -#: ../Doc/library/tarfile.rst:465 +#: ../Doc/library/tarfile.rst:466 msgid "Added the *filter* parameter." msgstr "" -#: ../Doc/library/tarfile.rst:468 +#: ../Doc/library/tarfile.rst:469 msgid "Recursion adds entries in sorted order." msgstr "" -#: ../Doc/library/tarfile.rst:474 +#: ../Doc/library/tarfile.rst:475 msgid "" "Add the :class:`TarInfo` object *tarinfo* to the archive. If *fileobj* is " "given, it should be a :term:`binary file`, and ``tarinfo.size`` bytes are " @@ -719,7 +720,7 @@ msgid "" "objects directly, or by using :meth:`gettarinfo`." msgstr "" -#: ../Doc/library/tarfile.rst:482 +#: ../Doc/library/tarfile.rst:483 msgid "" "Create a :class:`TarInfo` object from the result of :func:`os.stat` or " "equivalent on an existing file. The file is either named by *name*, or " @@ -730,7 +731,7 @@ msgid "" "The name should be a text string." msgstr "" -#: ../Doc/library/tarfile.rst:491 +#: ../Doc/library/tarfile.rst:492 msgid "" "You can modify some of the :class:`TarInfo`’s attributes before you add it " "using :meth:`addfile`. If the file object is not an ordinary file object " @@ -740,21 +741,21 @@ msgid "" "case *arcname* could be a dummy string." msgstr "" -#: ../Doc/library/tarfile.rst:505 +#: ../Doc/library/tarfile.rst:506 msgid "" "Close the :class:`TarFile`. In write mode, two finishing zero blocks are " "appended to the archive." msgstr "" -#: ../Doc/library/tarfile.rst:511 +#: ../Doc/library/tarfile.rst:512 msgid "A dictionary containing key-value pairs of pax global headers." msgstr "" -#: ../Doc/library/tarfile.rst:518 +#: ../Doc/library/tarfile.rst:519 msgid "TarInfo Objects" msgstr "" -#: ../Doc/library/tarfile.rst:520 +#: ../Doc/library/tarfile.rst:521 msgid "" "A :class:`TarInfo` object represents one member in a :class:`TarFile`. Aside " "from storing all required attributes of a file (like file type, size, time, " @@ -762,57 +763,57 @@ msgid "" "type. It does *not* contain the file's data itself." msgstr "" -#: ../Doc/library/tarfile.rst:525 +#: ../Doc/library/tarfile.rst:526 msgid "" ":class:`TarInfo` objects are returned by :class:`TarFile`'s methods :meth:" "`getmember`, :meth:`getmembers` and :meth:`gettarinfo`." msgstr "" -#: ../Doc/library/tarfile.rst:531 +#: ../Doc/library/tarfile.rst:532 msgid "Create a :class:`TarInfo` object." msgstr "" -#: ../Doc/library/tarfile.rst:536 +#: ../Doc/library/tarfile.rst:537 msgid "Create and return a :class:`TarInfo` object from string buffer *buf*." msgstr "" -#: ../Doc/library/tarfile.rst:538 +#: ../Doc/library/tarfile.rst:539 msgid "Raises :exc:`HeaderError` if the buffer is invalid." msgstr "" -#: ../Doc/library/tarfile.rst:543 +#: ../Doc/library/tarfile.rst:544 msgid "" "Read the next member from the :class:`TarFile` object *tarfile* and return " "it as a :class:`TarInfo` object." msgstr "" -#: ../Doc/library/tarfile.rst:549 +#: ../Doc/library/tarfile.rst:550 msgid "" "Create a string buffer from a :class:`TarInfo` object. For information on " "the arguments see the constructor of the :class:`TarFile` class." msgstr "" -#: ../Doc/library/tarfile.rst:556 +#: ../Doc/library/tarfile.rst:557 msgid "A ``TarInfo`` object has the following public data attributes:" msgstr "" -#: ../Doc/library/tarfile.rst:561 +#: ../Doc/library/tarfile.rst:562 msgid "Name of the archive member." msgstr "" -#: ../Doc/library/tarfile.rst:566 +#: ../Doc/library/tarfile.rst:567 msgid "Size in bytes." msgstr "" -#: ../Doc/library/tarfile.rst:571 +#: ../Doc/library/tarfile.rst:572 msgid "Time of last modification." msgstr "" -#: ../Doc/library/tarfile.rst:576 +#: ../Doc/library/tarfile.rst:577 msgid "Permission bits." msgstr "" -#: ../Doc/library/tarfile.rst:581 +#: ../Doc/library/tarfile.rst:582 msgid "" "File type. *type* is usually one of these constants: :const:`REGTYPE`, :" "const:`AREGTYPE`, :const:`LNKTYPE`, :const:`SYMTYPE`, :const:`DIRTYPE`, :" @@ -821,180 +822,180 @@ msgid "" "more conveniently, use the ``is*()`` methods below." msgstr "" -#: ../Doc/library/tarfile.rst:590 +#: ../Doc/library/tarfile.rst:591 msgid "" "Name of the target file name, which is only present in :class:`TarInfo` " "objects of type :const:`LNKTYPE` and :const:`SYMTYPE`." msgstr "" -#: ../Doc/library/tarfile.rst:596 +#: ../Doc/library/tarfile.rst:597 msgid "User ID of the user who originally stored this member." msgstr "" -#: ../Doc/library/tarfile.rst:601 +#: ../Doc/library/tarfile.rst:602 msgid "Group ID of the user who originally stored this member." msgstr "" -#: ../Doc/library/tarfile.rst:606 +#: ../Doc/library/tarfile.rst:607 msgid "User name." msgstr "" -#: ../Doc/library/tarfile.rst:611 +#: ../Doc/library/tarfile.rst:612 msgid "Group name." msgstr "" -#: ../Doc/library/tarfile.rst:616 +#: ../Doc/library/tarfile.rst:617 msgid "" "A dictionary containing key-value pairs of an associated pax extended header." msgstr "" -#: ../Doc/library/tarfile.rst:619 +#: ../Doc/library/tarfile.rst:620 msgid "A :class:`TarInfo` object also provides some convenient query methods:" msgstr "" -#: ../Doc/library/tarfile.rst:624 +#: ../Doc/library/tarfile.rst:625 msgid "Return :const:`True` if the :class:`Tarinfo` object is a regular file." msgstr "" -#: ../Doc/library/tarfile.rst:629 +#: ../Doc/library/tarfile.rst:630 msgid "Same as :meth:`isfile`." msgstr "" -#: ../Doc/library/tarfile.rst:634 +#: ../Doc/library/tarfile.rst:635 msgid "Return :const:`True` if it is a directory." msgstr "" -#: ../Doc/library/tarfile.rst:639 +#: ../Doc/library/tarfile.rst:640 msgid "Return :const:`True` if it is a symbolic link." msgstr "" -#: ../Doc/library/tarfile.rst:644 +#: ../Doc/library/tarfile.rst:645 msgid "Return :const:`True` if it is a hard link." msgstr "" -#: ../Doc/library/tarfile.rst:649 +#: ../Doc/library/tarfile.rst:650 msgid "Return :const:`True` if it is a character device." msgstr "" -#: ../Doc/library/tarfile.rst:654 +#: ../Doc/library/tarfile.rst:655 msgid "Return :const:`True` if it is a block device." msgstr "" -#: ../Doc/library/tarfile.rst:659 +#: ../Doc/library/tarfile.rst:660 msgid "Return :const:`True` if it is a FIFO." msgstr "" -#: ../Doc/library/tarfile.rst:664 +#: ../Doc/library/tarfile.rst:665 msgid "" "Return :const:`True` if it is one of character device, block device or FIFO." msgstr "" -#: ../Doc/library/tarfile.rst:671 +#: ../Doc/library/tarfile.rst:672 msgid "Command-Line Interface" msgstr "Interface en ligne de commande" -#: ../Doc/library/tarfile.rst:675 +#: ../Doc/library/tarfile.rst:676 msgid "" "The :mod:`tarfile` module provides a simple command-line interface to " "interact with tar archives." msgstr "" -#: ../Doc/library/tarfile.rst:678 +#: ../Doc/library/tarfile.rst:679 msgid "" "If you want to create a new tar archive, specify its name after the :option:" "`-c` option and then list the filename(s) that should be included:" msgstr "" -#: ../Doc/library/tarfile.rst:685 +#: ../Doc/library/tarfile.rst:686 msgid "Passing a directory is also acceptable:" msgstr "Passer un répertoire est aussi possible :" -#: ../Doc/library/tarfile.rst:691 +#: ../Doc/library/tarfile.rst:692 msgid "" "If you want to extract a tar archive into the current directory, use the :" "option:`-e` option:" msgstr "" -#: ../Doc/library/tarfile.rst:698 +#: ../Doc/library/tarfile.rst:699 msgid "" "You can also extract a tar archive into a different directory by passing the " "directory's name:" msgstr "" -#: ../Doc/library/tarfile.rst:705 +#: ../Doc/library/tarfile.rst:706 msgid "For a list of the files in a tar archive, use the :option:`-l` option:" msgstr "" -#: ../Doc/library/tarfile.rst:713 +#: ../Doc/library/tarfile.rst:714 msgid "Command-line options" msgstr "Options de la ligne de commande" -#: ../Doc/library/tarfile.rst:718 +#: ../Doc/library/tarfile.rst:719 msgid "List files in a tarfile." msgstr "" -#: ../Doc/library/tarfile.rst:723 +#: ../Doc/library/tarfile.rst:724 msgid "Create tarfile from source files." msgstr "" -#: ../Doc/library/tarfile.rst:728 +#: ../Doc/library/tarfile.rst:729 msgid "" "Extract tarfile into the current directory if *output_dir* is not specified." msgstr "" -#: ../Doc/library/tarfile.rst:733 +#: ../Doc/library/tarfile.rst:734 msgid "Test whether the tarfile is valid or not." msgstr "" -#: ../Doc/library/tarfile.rst:737 +#: ../Doc/library/tarfile.rst:738 msgid "Verbose output." msgstr "" -#: ../Doc/library/tarfile.rst:742 +#: ../Doc/library/tarfile.rst:743 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/tarfile.rst:744 +#: ../Doc/library/tarfile.rst:745 msgid "How to extract an entire tar archive to the current working directory::" msgstr "" -#: ../Doc/library/tarfile.rst:751 +#: ../Doc/library/tarfile.rst:752 msgid "" "How to extract a subset of a tar archive with :meth:`TarFile.extractall` " "using a generator function instead of a list::" msgstr "" -#: ../Doc/library/tarfile.rst:766 +#: ../Doc/library/tarfile.rst:767 msgid "How to create an uncompressed tar archive from a list of filenames::" msgstr "" -#: ../Doc/library/tarfile.rst:774 +#: ../Doc/library/tarfile.rst:775 msgid "The same example using the :keyword:`with` statement::" msgstr "" -#: ../Doc/library/tarfile.rst:781 +#: ../Doc/library/tarfile.rst:782 msgid "" "How to read a gzip compressed tar archive and display some member " "information::" msgstr "" -#: ../Doc/library/tarfile.rst:795 +#: ../Doc/library/tarfile.rst:796 msgid "" "How to create an archive and reset the user information using the *filter* " "parameter in :meth:`TarFile.add`::" msgstr "" -#: ../Doc/library/tarfile.rst:811 +#: ../Doc/library/tarfile.rst:812 msgid "Supported tar formats" msgstr "" -#: ../Doc/library/tarfile.rst:813 +#: ../Doc/library/tarfile.rst:814 msgid "" "There are three tar formats that can be created with the :mod:`tarfile` " "module:" msgstr "" -#: ../Doc/library/tarfile.rst:815 +#: ../Doc/library/tarfile.rst:816 msgid "" "The POSIX.1-1988 ustar format (:const:`USTAR_FORMAT`). It supports filenames " "up to a length of at best 256 characters and linknames up to 100 characters. " @@ -1002,7 +1003,7 @@ msgid "" "supported format." msgstr "" -#: ../Doc/library/tarfile.rst:820 +#: ../Doc/library/tarfile.rst:821 msgid "" "The GNU tar format (:const:`GNU_FORMAT`). It supports long filenames and " "linknames, files bigger than 8 GiB and sparse files. It is the de facto " @@ -1010,7 +1011,7 @@ msgid "" "extensions for long names, sparse file support is read-only." msgstr "" -#: ../Doc/library/tarfile.rst:825 +#: ../Doc/library/tarfile.rst:826 msgid "" "The POSIX.1-2001 pax format (:const:`PAX_FORMAT`). It is the most flexible " "format with virtually no limits. It supports long filenames and linknames, " @@ -1021,7 +1022,7 @@ msgid "" "*ustar* format. It is the current default format for new archives." msgstr "" -#: ../Doc/library/tarfile.rst:833 +#: ../Doc/library/tarfile.rst:834 msgid "" "It extends the existing *ustar* format with extra headers for information " "that cannot be stored otherwise. There are two flavours of pax headers: " @@ -1030,13 +1031,13 @@ msgid "" "in a pax header is encoded in *UTF-8* for portability reasons." msgstr "" -#: ../Doc/library/tarfile.rst:839 +#: ../Doc/library/tarfile.rst:840 msgid "" "There are some more variants of the tar format which can be read, but not " "created:" msgstr "" -#: ../Doc/library/tarfile.rst:842 +#: ../Doc/library/tarfile.rst:843 msgid "" "The ancient V7 format. This is the first tar format from Unix Seventh " "Edition, storing only regular files and directories. Names must not be " @@ -1045,17 +1046,17 @@ msgid "" "ASCII characters." msgstr "" -#: ../Doc/library/tarfile.rst:847 +#: ../Doc/library/tarfile.rst:848 msgid "" "The SunOS tar extended format. This format is a variant of the POSIX.1-2001 " "pax format, but is not compatible." msgstr "" -#: ../Doc/library/tarfile.rst:853 +#: ../Doc/library/tarfile.rst:854 msgid "Unicode issues" msgstr "" -#: ../Doc/library/tarfile.rst:855 +#: ../Doc/library/tarfile.rst:856 msgid "" "The tar format was originally conceived to make backups on tape drives with " "the main focus on preserving file system information. Nowadays tar archives " @@ -1070,13 +1071,13 @@ msgid "" "It stores non-ASCII metadata using the universal character encoding *UTF-8*." msgstr "" -#: ../Doc/library/tarfile.rst:867 +#: ../Doc/library/tarfile.rst:868 msgid "" "The details of character conversion in :mod:`tarfile` are controlled by the " "*encoding* and *errors* keyword arguments of the :class:`TarFile` class." msgstr "" -#: ../Doc/library/tarfile.rst:870 +#: ../Doc/library/tarfile.rst:871 msgid "" "*encoding* defines the character encoding to use for the metadata in the " "archive. The default value is :func:`sys.getfilesystemencoding` or " @@ -1085,7 +1086,7 @@ msgid "" "not set appropriately, this conversion may fail." msgstr "" -#: ../Doc/library/tarfile.rst:876 +#: ../Doc/library/tarfile.rst:877 msgid "" "The *errors* argument defines how characters are treated that cannot be " "converted. Possible values are listed in section :ref:`error-handlers`. The " @@ -1093,7 +1094,7 @@ msgid "" "system calls, see :ref:`os-filenames`." msgstr "" -#: ../Doc/library/tarfile.rst:881 +#: ../Doc/library/tarfile.rst:882 msgid "" "For :const:`PAX_FORMAT` archives (the default), *encoding* is generally not " "needed because all the metadata is stored using *UTF-8*. *encoding* is only " diff --git a/library/tempfile.po b/library/tempfile.po index 5289232ec..2ede3e137 100644 --- a/library/tempfile.po +++ b/library/tempfile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-03-27 13:37+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -255,7 +255,7 @@ msgstr "" "Le répertoire peut être explicitement nettoyé en appelant la méthode :func:" "`cleanup`." -#: ../Doc/library/tempfile.rst:138 ../Doc/library/tempfile.rst:210 +#: ../Doc/library/tempfile.rst:138 ../Doc/library/tempfile.rst:213 msgid "" "Raises an :ref:`auditing event ` ``tempfile.mkdtemp`` with " "argument ``fullpath``." @@ -362,7 +362,7 @@ msgstr "" "que renvoie :func:`os.open`) et le chemin d'accès absolu de ce fichier, dans " "cet ordre." -#: ../Doc/library/tempfile.rst:188 ../Doc/library/tempfile.rst:211 +#: ../Doc/library/tempfile.rst:188 ../Doc/library/tempfile.rst:214 msgid "" "*suffix*, *prefix*, and *dir* may now be supplied in bytes in order to " "obtain a bytes return value. Prior to this, only str was allowed. *suffix* " @@ -374,7 +374,11 @@ msgstr "" "seul autorisé. *suffix* et *prefix* acceptent maintenant la valeur par " "défaut ``None`` pour que la valeur par défaut appropriée soit utilisée." -#: ../Doc/library/tempfile.rst:197 +#: ../Doc/library/tempfile.rst:194 ../Doc/library/tempfile.rst:220 +msgid "The *dir* parameter now accepts a :term:`path-like object`." +msgstr "" + +#: ../Doc/library/tempfile.rst:200 msgid "" "Creates a temporary directory in the most secure manner possible. There are " "no race conditions in the directory's creation. The directory is readable, " @@ -385,7 +389,7 @@ msgstr "" "du répertoire. Le répertoire est accessible en lecture, en écriture, et son " "contenu lisible uniquement pour l'ID de l'utilisateur créateur." -#: ../Doc/library/tempfile.rst:201 +#: ../Doc/library/tempfile.rst:204 msgid "" "The user of :func:`mkdtemp` is responsible for deleting the temporary " "directory and its contents when done with it." @@ -393,7 +397,7 @@ msgstr "" "L'utilisateur de :func:`mkdtemp` est responsable de la suppression du " "répertoire temporaire et de son contenu lorsqu'il n'en a plus besoin." -#: ../Doc/library/tempfile.rst:204 +#: ../Doc/library/tempfile.rst:207 msgid "" "The *prefix*, *suffix*, and *dir* arguments are the same as for :func:" "`mkstemp`." @@ -401,11 +405,11 @@ msgstr "" "Les arguments *prefix*, *suffix*, et *dir* sont les mêmes que pour :func:" "`mkstemp`." -#: ../Doc/library/tempfile.rst:207 +#: ../Doc/library/tempfile.rst:210 msgid ":func:`mkdtemp` returns the absolute pathname of the new directory." msgstr ":func:`mkdtemp` renvoie le chemin absolu du nouveau répertoire." -#: ../Doc/library/tempfile.rst:220 +#: ../Doc/library/tempfile.rst:226 msgid "" "Return the name of the directory used for temporary files. This defines the " "default value for the *dir* argument to all functions in this module." @@ -413,7 +417,7 @@ msgstr "" "Renvoie le nom du répertoire utilisé pour les fichiers temporaires. C'est la " "valeur par défaut pour l'argument *dir* de toutes les fonctions de ce module." -#: ../Doc/library/tempfile.rst:224 +#: ../Doc/library/tempfile.rst:230 msgid "" "Python searches a standard list of directories to find one which the calling " "user can create files in. The list is:" @@ -421,26 +425,26 @@ msgstr "" "Python cherche un répertoire parmi une liste standard de répertoires dans " "lequel l'utilisateur final peut créer des fichiers. La liste est :" -#: ../Doc/library/tempfile.rst:227 +#: ../Doc/library/tempfile.rst:233 msgid "The directory named by the :envvar:`TMPDIR` environment variable." msgstr "" "Le répertoire correspondant à la variable d'environnement :envvar:`TMPDIR`." -#: ../Doc/library/tempfile.rst:229 +#: ../Doc/library/tempfile.rst:235 msgid "The directory named by the :envvar:`TEMP` environment variable." msgstr "" "Le répertoire correspondant à la variable d'environnement :envvar:`TEMP`." -#: ../Doc/library/tempfile.rst:231 +#: ../Doc/library/tempfile.rst:237 msgid "The directory named by the :envvar:`TMP` environment variable." msgstr "" "Le répertoire correspondant à la variable d'environnement :envvar:`TMP`." -#: ../Doc/library/tempfile.rst:233 +#: ../Doc/library/tempfile.rst:239 msgid "A platform-specific location:" msgstr "Un emplacement dépendant à la plateforme :" -#: ../Doc/library/tempfile.rst:235 +#: ../Doc/library/tempfile.rst:241 msgid "" "On Windows, the directories :file:`C:\\\\TEMP`, :file:`C:\\\\TMP`, :file:`\\" "\\TEMP`, and :file:`\\\\TMP`, in that order." @@ -448,7 +452,7 @@ msgstr "" "Sur Windows, les répertoires :file:`C:\\\\TEMP`, :file:`C:\\\\TMP`, :file:`\\" "\\TEMP`, et :file:`\\\\TMP`, dans cet ordre." -#: ../Doc/library/tempfile.rst:238 +#: ../Doc/library/tempfile.rst:244 msgid "" "On all other platforms, the directories :file:`/tmp`, :file:`/var/tmp`, and :" "file:`/usr/tmp`, in that order." @@ -456,11 +460,11 @@ msgstr "" "Sur toutes les autres plate-formes, les répertoires :file:`/tmp`, :file:`/" "var/tmp`, et :file:`/usr/tmp`, dans cet ordre." -#: ../Doc/library/tempfile.rst:241 +#: ../Doc/library/tempfile.rst:247 msgid "As a last resort, the current working directory." msgstr "En dernier ressort, le répertoire de travail courant." -#: ../Doc/library/tempfile.rst:243 +#: ../Doc/library/tempfile.rst:249 msgid "" "The result of this search is cached, see the description of :data:`tempdir` " "below." @@ -468,12 +472,12 @@ msgstr "" "Le résultat de cette recherche est mis en cache, voir la description de :" "data:`tempdir` dessous." -#: ../Doc/library/tempfile.rst:248 +#: ../Doc/library/tempfile.rst:254 msgid "Same as :func:`gettempdir` but the return value is in bytes." msgstr "" "Similaire à :func:`gettempdir` mais la valeur retournée est en *bytes*." -#: ../Doc/library/tempfile.rst:254 +#: ../Doc/library/tempfile.rst:260 msgid "" "Return the filename prefix used to create temporary files. This does not " "contain the directory component." @@ -481,12 +485,12 @@ msgstr "" "Renvoie le préfixe de nom de fichier utilisé pour créer les fichiers " "temporaires. Cela ne contient pas le nom du répertoire." -#: ../Doc/library/tempfile.rst:259 +#: ../Doc/library/tempfile.rst:265 msgid "Same as :func:`gettempprefix` but the return value is in bytes." msgstr "" "Similaire à :func:`gettempprefix` mais la valeur retournée est en *bytes*." -#: ../Doc/library/tempfile.rst:263 +#: ../Doc/library/tempfile.rst:269 msgid "" "The module uses a global variable to store the name of the directory used " "for temporary files returned by :func:`gettempdir`. It can be set directly " @@ -501,7 +505,7 @@ msgstr "" "prennent un argument *dir* qui peut être utilisé pour spécifier le " "répertoire. Il s'agit de la méthode recommandée." -#: ../Doc/library/tempfile.rst:271 +#: ../Doc/library/tempfile.rst:277 msgid "" "When set to a value other than ``None``, this variable defines the default " "value for the *dir* argument to the functions defined in this module." @@ -510,7 +514,7 @@ msgstr "" "valeur par défaut pour l'argument *dir* des fonctions définies dans ce " "module." -#: ../Doc/library/tempfile.rst:275 +#: ../Doc/library/tempfile.rst:281 msgid "" "If ``tempdir`` is ``None`` (the default) at any call to any of the above " "functions except :func:`gettempprefix` it is initialized following the " @@ -520,20 +524,20 @@ msgstr "" "fonctions ci-dessus, sauf :func:`gettempprefix`, la variable est initialisée " "suivant l'algorithme décrit dans :func:`gettempdir`." -#: ../Doc/library/tempfile.rst:282 +#: ../Doc/library/tempfile.rst:288 msgid "Examples" msgstr "Exemples" -#: ../Doc/library/tempfile.rst:284 +#: ../Doc/library/tempfile.rst:290 msgid "Here are some examples of typical usage of the :mod:`tempfile` module::" msgstr "" "Voici quelques exemples classiques d'utilisation du module :mod:`tempfile` ::" -#: ../Doc/library/tempfile.rst:315 +#: ../Doc/library/tempfile.rst:321 msgid "Deprecated functions and variables" msgstr "Fonctions et variables obsolètes" -#: ../Doc/library/tempfile.rst:317 +#: ../Doc/library/tempfile.rst:323 msgid "" "A historical way to create temporary files was to first generate a file name " "with the :func:`mktemp` function and then create a file using this name. " @@ -552,11 +556,11 @@ msgstr "" "de créer le fichier immédiatement. Cette approche est utilisée par :func:" "`mkstemp` et les autres fonctions décrites plus haut." -#: ../Doc/library/tempfile.rst:328 +#: ../Doc/library/tempfile.rst:334 msgid "Use :func:`mkstemp` instead." msgstr "Utilisez :func:`mkstemp` à la place." -#: ../Doc/library/tempfile.rst:331 +#: ../Doc/library/tempfile.rst:337 msgid "" "Return an absolute pathname of a file that did not exist at the time the " "call is made. The *prefix*, *suffix*, and *dir* arguments are similar to " @@ -568,7 +572,7 @@ msgstr "" "func:`mkstemp` mais les noms de fichiers en _bytes_, ``sufix=None`` et " "``prefix=None`` ne sont pas implémentées." -#: ../Doc/library/tempfile.rst:338 +#: ../Doc/library/tempfile.rst:344 msgid "" "Use of this function may introduce a security hole in your program. By the " "time you get around to doing anything with the file name it returns, someone " diff --git a/library/time.po b/library/time.po index 5cb122b4e..ca632c5c7 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-03-27 13:21+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -240,12 +240,12 @@ msgid "Functions" msgstr "Fonctions" #: ../Doc/library/time.rst:128 +#, fuzzy msgid "" "Convert a tuple or :class:`struct_time` representing a time as returned by :" "func:`gmtime` or :func:`localtime` to a string of the following form: ``'Sun " -"Jun 20 23:21:05 1993'``. If *t* is not provided, the current time as " -"returned by :func:`localtime` is used. Locale information is not used by :" -"func:`asctime`." +"Jun 20 23:21:05 1993'``. The day field is two characters long and is space " +"padded if the day is a single digit, e.g.: ``'Wed Jun 9 04:26:40 1993'``." msgstr "" "Convertit un *tuple* ou :class:`struct_time` représentant une heure renvoyée " "par :func:`gmtime` ou :func:`localtime` en une chaîne de la forme suivante : " @@ -253,7 +253,13 @@ msgstr "" "renvoyée par :func:`localtime` est utilisée. Les informations sur les " "paramètres régionaux ne sont pas utilisées par :func:`asctime`." -#: ../Doc/library/time.rst:136 +#: ../Doc/library/time.rst:134 +msgid "" +"If *t* is not provided, the current time as returned by :func:`localtime` is " +"used. Locale information is not used by :func:`asctime`." +msgstr "" + +#: ../Doc/library/time.rst:139 msgid "" "Unlike the C function of the same name, :func:`asctime` does not add a " "trailing newline." @@ -261,7 +267,7 @@ msgstr "" "Contrairement à la fonction C du même nom, :func:`asctime` n’ajoute pas de " "caractère de fin de ligne." -#: ../Doc/library/time.rst:141 +#: ../Doc/library/time.rst:144 msgid "" "Return the *clk_id* of the thread-specific CPU-time clock for the specified " "*thread_id*." @@ -269,7 +275,7 @@ msgstr "" "Renvoie le *clk_id* de l'horloge du temps CPU spécifique au fil d'exécution " "pour le *thread_id* spécifié." -#: ../Doc/library/time.rst:143 +#: ../Doc/library/time.rst:146 msgid "" "Use :func:`threading.get_ident` or the :attr:`~threading.Thread.ident` " "attribute of :class:`threading.Thread` objects to get a suitable value for " @@ -279,7 +285,7 @@ msgstr "" "ident` de :class:`threading.Thread` pour obtenir une valeur appropriée pour " "*thread_id*." -#: ../Doc/library/time.rst:148 +#: ../Doc/library/time.rst:151 msgid "" "Passing an invalid or expired *thread_id* may result in undefined behavior, " "such as segmentation fault." @@ -287,7 +293,7 @@ msgstr "" "Passer un *thread_id* invalide ou arrivé à expiration peut entraîner un " "comportement indéfini, tel qu’une erreur de segmentation." -#: ../Doc/library/time.rst:153 +#: ../Doc/library/time.rst:156 msgid "" ":ref:`Availability `: Unix (see the man page for :manpage:" "`pthread_getcpuclockid(3)` for further information)." @@ -295,7 +301,7 @@ msgstr "" ":ref:`Disponibilité ` : Unix (regardez la page man pour :" "manpage:`pthread_getcpuclockid(3)` pour plus d’information)." -#: ../Doc/library/time.rst:158 +#: ../Doc/library/time.rst:161 msgid "" "Return the resolution (precision) of the specified clock *clk_id*. Refer " "to :ref:`time-clock-id-constants` for a list of accepted values for *clk_id*." @@ -303,15 +309,15 @@ msgstr "" "Renvoie la résolution (précision) de l’horloge *clk_id*. Référez-vous à :ref:" "`time-clock-id-constants` pour une liste des valeurs acceptées pour *clk_id*." -#: ../Doc/library/time.rst:162 ../Doc/library/time.rst:172 -#: ../Doc/library/time.rst:181 ../Doc/library/time.rst:191 -#: ../Doc/library/time.rst:200 ../Doc/library/time.rst:627 -#: ../Doc/library/time.rst:744 ../Doc/library/time.rst:763 -#: ../Doc/library/time.rst:781 ../Doc/library/time.rst:817 +#: ../Doc/library/time.rst:165 ../Doc/library/time.rst:175 +#: ../Doc/library/time.rst:184 ../Doc/library/time.rst:194 +#: ../Doc/library/time.rst:203 ../Doc/library/time.rst:635 +#: ../Doc/library/time.rst:752 ../Doc/library/time.rst:771 +#: ../Doc/library/time.rst:789 ../Doc/library/time.rst:825 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." -#: ../Doc/library/time.rst:168 +#: ../Doc/library/time.rst:171 msgid "" "Return the time of the specified clock *clk_id*. Refer to :ref:`time-clock-" "id-constants` for a list of accepted values for *clk_id*." @@ -319,13 +325,13 @@ msgstr "" "Renvoie l’heure de l’horloge *clk_id*. Référez-vous à :ref:`time-clock-id-" "constants` pour une liste des valeurs acceptées pour *clk_id*." -#: ../Doc/library/time.rst:178 +#: ../Doc/library/time.rst:181 msgid "Similar to :func:`clock_gettime` but return time as nanoseconds." msgstr "" "Similaire à :func:`clock_gettime` mais le temps renvoyé est exprimé en " "nanosecondes." -#: ../Doc/library/time.rst:187 +#: ../Doc/library/time.rst:190 msgid "" "Set the time of the specified clock *clk_id*. Currently, :data:" "`CLOCK_REALTIME` is the only accepted value for *clk_id*." @@ -333,16 +339,24 @@ msgstr "" "Définit l’heure de l’horloge *clk_id*. Actuellement, :data:`CLOCK_REALTIME` " "est la seule valeur acceptée pour *clk_id*." -#: ../Doc/library/time.rst:197 +#: ../Doc/library/time.rst:200 msgid "Similar to :func:`clock_settime` but set time with nanoseconds." msgstr "" "Similaire à :func:`clock_settime` mais définit l’heure avec des nanosecondes." -#: ../Doc/library/time.rst:206 +#: ../Doc/library/time.rst:209 msgid "" -"Convert a time expressed in seconds since the epoch to a string representing " -"local time. If *secs* is not provided or :const:`None`, the current time as " -"returned by :func:`.time` is used. ``ctime(secs)`` is equivalent to " +"Convert a time expressed in seconds since the epoch to a string of a form: " +"``'Sun Jun 20 23:21:05 1993'`` representing local time. The day field is two " +"characters long and is space padded if the day is a single digit, e.g.: " +"``'Wed Jun 9 04:26:40 1993'``." +msgstr "" + +#: ../Doc/library/time.rst:214 +#, fuzzy +msgid "" +"If *secs* is not provided or :const:`None`, the current time as returned by :" +"func:`.time` is used. ``ctime(secs)`` is equivalent to " "``asctime(localtime(secs))``. Locale information is not used by :func:" "`ctime`." msgstr "" @@ -353,7 +367,7 @@ msgstr "" "informations sur les paramètres régionaux ne sont pas utilisées par :func:" "`ctime`." -#: ../Doc/library/time.rst:214 +#: ../Doc/library/time.rst:222 msgid "" "Get information on the specified clock as a namespace object. Supported " "clock names and the corresponding functions to read their value are:" @@ -362,35 +376,35 @@ msgstr "" "de nom. Les noms d’horloge pris en charge et les fonctions correspondantes " "permettant de lire leur valeur sont les suivants :" -#: ../Doc/library/time.rst:218 +#: ../Doc/library/time.rst:226 msgid "``'clock'``: :func:`time.clock`" msgstr "``'clock'``: :func:`time.clock`" -#: ../Doc/library/time.rst:219 +#: ../Doc/library/time.rst:227 msgid "``'monotonic'``: :func:`time.monotonic`" msgstr "``'monotonic'``: :func:`time.monotonic`" -#: ../Doc/library/time.rst:220 +#: ../Doc/library/time.rst:228 msgid "``'perf_counter'``: :func:`time.perf_counter`" msgstr "``'perf_counter'``: :func:`time.perf_counter`" -#: ../Doc/library/time.rst:221 +#: ../Doc/library/time.rst:229 msgid "``'process_time'``: :func:`time.process_time`" msgstr "``'process_time'``: :func:`time.process_time`" -#: ../Doc/library/time.rst:222 +#: ../Doc/library/time.rst:230 msgid "``'thread_time'``: :func:`time.thread_time`" msgstr "``'thread_time'``: :func:`time.thread_time`" -#: ../Doc/library/time.rst:223 +#: ../Doc/library/time.rst:231 msgid "``'time'``: :func:`time.time`" msgstr "``'time'``: :func:`time.time`" -#: ../Doc/library/time.rst:225 +#: ../Doc/library/time.rst:233 msgid "The result has the following attributes:" msgstr "Le résultat a les attributs suivants :" -#: ../Doc/library/time.rst:227 +#: ../Doc/library/time.rst:235 msgid "" "*adjustable*: ``True`` if the clock can be changed automatically (e.g. by a " "NTP daemon) or manually by the system administrator, ``False`` otherwise" @@ -399,7 +413,7 @@ msgstr "" "exemple par un démon NTP) ou manuellement par l’administrateur système, " "``False`` autrement" -#: ../Doc/library/time.rst:229 +#: ../Doc/library/time.rst:237 msgid "" "*implementation*: The name of the underlying C function used to get the " "clock value. Refer to :ref:`time-clock-id-constants` for possible values." @@ -408,18 +422,18 @@ msgstr "" "la valeur d’horloge. Voir :ref:`time-clock-id-constants` pour les valeurs " "possibles." -#: ../Doc/library/time.rst:231 +#: ../Doc/library/time.rst:239 msgid "" "*monotonic*: ``True`` if the clock cannot go backward, ``False`` otherwise" msgstr "" "*monotonic* : ``True`` si l’horloge ne peut pas revenir en arrière, " "``False`` autrement" -#: ../Doc/library/time.rst:233 +#: ../Doc/library/time.rst:241 msgid "*resolution*: The resolution of the clock in seconds (:class:`float`)" msgstr "*resolution* : La résolution de l’horloge en secondes (:class:`float`)" -#: ../Doc/library/time.rst:240 +#: ../Doc/library/time.rst:248 msgid "" "Convert a time expressed in seconds since the epoch to a :class:" "`struct_time` in UTC in which the dst flag is always zero. If *secs* is not " @@ -435,7 +449,7 @@ msgstr "" "ignorées. Voir ci-dessus pour une description de l’objet :class:" "`struct_time`. Voir :func:`calendar.timegm` pour l’inverse de cette fonction." -#: ../Doc/library/time.rst:250 +#: ../Doc/library/time.rst:258 msgid "" "Like :func:`gmtime` but converts to local time. If *secs* is not provided " "or :const:`None`, the current time as returned by :func:`.time` is used. " @@ -446,7 +460,7 @@ msgstr "" "`.time` est utilisée. Le drapeau *dst* est mis à ``1`` lorsque l’heure d’été " "s’applique à l’heure indiquée." -#: ../Doc/library/time.rst:257 +#: ../Doc/library/time.rst:265 msgid "" "This is the inverse function of :func:`localtime`. Its argument is the :" "class:`struct_time` or full 9-tuple (since the dst flag is needed; use " @@ -468,7 +482,7 @@ msgstr "" "interceptée par Python ou par les bibliothèque C sous-jacentes). La date la " "plus proche pour laquelle il peut générer une heure dépend de la plate-forme." -#: ../Doc/library/time.rst:269 +#: ../Doc/library/time.rst:277 msgid "" "Return the value (in fractional seconds) of a monotonic clock, i.e. a clock " "that cannot go backwards. The clock is not affected by system clock " @@ -481,19 +495,19 @@ msgstr "" "point de référence de la valeur renvoyée n’est pas défini, de sorte que " "seule la différence entre les résultats d’appels consécutifs est valide." -#: ../Doc/library/time.rst:275 +#: ../Doc/library/time.rst:283 msgid "The function is now always available and always system-wide." msgstr "" "La fonction est maintenant toujours disponible et toujours à l’échelle du " "système." -#: ../Doc/library/time.rst:281 +#: ../Doc/library/time.rst:289 msgid "Similar to :func:`monotonic`, but return time as nanoseconds." msgstr "" "Similaire à :func:`monotonique`, mais le temps de retour est exprimé en " "nanosecondes." -#: ../Doc/library/time.rst:290 +#: ../Doc/library/time.rst:298 msgid "" "Return the value (in fractional seconds) of a performance counter, i.e. a " "clock with the highest available resolution to measure a short duration. It " @@ -508,12 +522,12 @@ msgstr "" "de la valeur renvoyée n’est pas défini, de sorte que seule la différence " "entre les résultats d’appels consécutifs est valide." -#: ../Doc/library/time.rst:300 +#: ../Doc/library/time.rst:308 msgid "Similar to :func:`perf_counter`, but return time as nanoseconds." msgstr "" "Similaire à :func:`perf_counter`, mais renvoie le temps en nanosecondes." -#: ../Doc/library/time.rst:312 +#: ../Doc/library/time.rst:320 msgid "" "Return the value (in fractional seconds) of the sum of the system and user " "CPU time of the current process. It does not include time elapsed during " @@ -527,12 +541,12 @@ msgstr "" "référence de la valeur renvoyée n’est pas défini, de sorte que seule la " "différence entre les résultats d’appels consécutifs est valide." -#: ../Doc/library/time.rst:322 +#: ../Doc/library/time.rst:330 msgid "Similar to :func:`process_time` but return time as nanoseconds." msgstr "" "Similaire à :func:`process_time` mais renvoie le temps en nanosecondes." -#: ../Doc/library/time.rst:328 +#: ../Doc/library/time.rst:336 msgid "" "Suspend execution of the calling thread for the given number of seconds. The " "argument may be a floating point number to indicate a more precise sleep " @@ -551,7 +565,7 @@ msgstr "" "montant arbitraire en raison de la planification d’une autre activité dans " "le système." -#: ../Doc/library/time.rst:336 +#: ../Doc/library/time.rst:344 msgid "" "The function now sleeps at least *secs* even if the sleep is interrupted by " "a signal, except if the signal handler raises an exception (see :pep:`475` " @@ -561,7 +575,7 @@ msgstr "" "interrompu par un signal, sauf si le gestionnaire de signaux lève une " "exception (voir :pep:`475` pour la justification)." -#: ../Doc/library/time.rst:347 +#: ../Doc/library/time.rst:355 msgid "" "Convert a tuple or :class:`struct_time` representing a time as returned by :" "func:`gmtime` or :func:`localtime` to a string as specified by the *format* " @@ -576,7 +590,7 @@ msgstr "" "champs de *t* se situe en dehors de la plage autorisée, une :exc:" "`ValueError` est levée ." -#: ../Doc/library/time.rst:353 +#: ../Doc/library/time.rst:361 msgid "" "0 is a legal argument for any position in the time tuple; if it is normally " "illegal the value is forced to a correct one." @@ -584,7 +598,7 @@ msgstr "" "0 est un argument légal pour toute position dans le *tuple* temporel ; s’il " "est normalement illégal, la valeur est forcée à une valeur correcte." -#: ../Doc/library/time.rst:356 +#: ../Doc/library/time.rst:364 msgid "" "The following directives can be embedded in the *format* string. They are " "shown without the optional field width and precision specification, and are " @@ -595,137 +609,137 @@ msgstr "" "de précision, et sont remplacés par les caractères indiqués dans le résultat " "de :func:`strftime` :" -#: ../Doc/library/time.rst:361 +#: ../Doc/library/time.rst:369 msgid "Directive" msgstr "Directive" -#: ../Doc/library/time.rst:361 +#: ../Doc/library/time.rst:369 msgid "Meaning" msgstr "Signification" -#: ../Doc/library/time.rst:361 +#: ../Doc/library/time.rst:369 msgid "Notes" msgstr "Notes" -#: ../Doc/library/time.rst:363 +#: ../Doc/library/time.rst:371 msgid "``%a``" msgstr "``%a``" -#: ../Doc/library/time.rst:363 +#: ../Doc/library/time.rst:371 msgid "Locale's abbreviated weekday name." msgstr "Nom abrégé du jour de la semaine selon les paramètres régionaux." -#: ../Doc/library/time.rst:366 +#: ../Doc/library/time.rst:374 msgid "``%A``" msgstr "``%A``" -#: ../Doc/library/time.rst:366 +#: ../Doc/library/time.rst:374 msgid "Locale's full weekday name." msgstr "Le nom de semaine complet de la région." -#: ../Doc/library/time.rst:368 +#: ../Doc/library/time.rst:376 msgid "``%b``" msgstr "``%b``" -#: ../Doc/library/time.rst:368 +#: ../Doc/library/time.rst:376 msgid "Locale's abbreviated month name." msgstr "Nom abrégé du mois de la région." -#: ../Doc/library/time.rst:371 +#: ../Doc/library/time.rst:379 msgid "``%B``" msgstr "``%B``" -#: ../Doc/library/time.rst:371 +#: ../Doc/library/time.rst:379 msgid "Locale's full month name." msgstr "Nom complet du mois de la région." -#: ../Doc/library/time.rst:373 +#: ../Doc/library/time.rst:381 msgid "``%c``" msgstr "``%c``" -#: ../Doc/library/time.rst:373 +#: ../Doc/library/time.rst:381 msgid "Locale's appropriate date and time representation." msgstr "" "Représentation appropriée de la date et de l’heure selon les paramètres " "régionaux." -#: ../Doc/library/time.rst:376 +#: ../Doc/library/time.rst:384 msgid "``%d``" msgstr "``%d``" -#: ../Doc/library/time.rst:376 +#: ../Doc/library/time.rst:384 msgid "Day of the month as a decimal number [01,31]." msgstr "Jour du mois sous forme décimale [01,31]." -#: ../Doc/library/time.rst:379 +#: ../Doc/library/time.rst:387 msgid "``%H``" msgstr "``%H``" -#: ../Doc/library/time.rst:379 +#: ../Doc/library/time.rst:387 msgid "Hour (24-hour clock) as a decimal number [00,23]." msgstr "Heure (horloge sur 24 heures) sous forme de nombre décimal [00,23]." -#: ../Doc/library/time.rst:382 +#: ../Doc/library/time.rst:390 msgid "``%I``" msgstr "``%I``" -#: ../Doc/library/time.rst:382 +#: ../Doc/library/time.rst:390 msgid "Hour (12-hour clock) as a decimal number [01,12]." msgstr "Heure (horloge sur 12 heures) sous forme de nombre décimal [01,12]." -#: ../Doc/library/time.rst:385 +#: ../Doc/library/time.rst:393 msgid "``%j``" msgstr "``%j``" -#: ../Doc/library/time.rst:385 +#: ../Doc/library/time.rst:393 msgid "Day of the year as a decimal number [001,366]." msgstr "Jour de l’année sous forme de nombre décimal [001,366]." -#: ../Doc/library/time.rst:388 +#: ../Doc/library/time.rst:396 msgid "``%m``" msgstr "``%m``" -#: ../Doc/library/time.rst:388 +#: ../Doc/library/time.rst:396 msgid "Month as a decimal number [01,12]." msgstr "Mois sous forme décimale [01,12]." -#: ../Doc/library/time.rst:391 +#: ../Doc/library/time.rst:399 msgid "``%M``" msgstr "``%M``" -#: ../Doc/library/time.rst:391 +#: ../Doc/library/time.rst:399 msgid "Minute as a decimal number [00,59]." msgstr "Minutes sous forme décimale [00,59]." -#: ../Doc/library/time.rst:394 +#: ../Doc/library/time.rst:402 msgid "``%p``" msgstr "``%p``" -#: ../Doc/library/time.rst:394 +#: ../Doc/library/time.rst:402 msgid "Locale's equivalent of either AM or PM." msgstr "L’équivalent local de AM ou PM." -#: ../Doc/library/time.rst:394 +#: ../Doc/library/time.rst:402 msgid "\\(1)" msgstr "\\(1)" -#: ../Doc/library/time.rst:397 +#: ../Doc/library/time.rst:405 msgid "``%S``" msgstr "``%S``" -#: ../Doc/library/time.rst:397 +#: ../Doc/library/time.rst:405 msgid "Second as a decimal number [00,61]." msgstr "Deuxième sous forme de nombre décimal [00,61]." -#: ../Doc/library/time.rst:397 +#: ../Doc/library/time.rst:405 msgid "\\(2)" msgstr "\\(2)" -#: ../Doc/library/time.rst:400 +#: ../Doc/library/time.rst:408 msgid "``%U``" msgstr "``%U``" -#: ../Doc/library/time.rst:400 +#: ../Doc/library/time.rst:408 msgid "" "Week number of the year (Sunday as the first day of the week) as a decimal " "number [00,53]. All days in a new year preceding the first Sunday are " @@ -736,23 +750,23 @@ msgstr "" "précédant le premier dimanche sont considérés comme appartenant à la semaine " "0." -#: ../Doc/library/time.rst:400 ../Doc/library/time.rst:411 +#: ../Doc/library/time.rst:408 ../Doc/library/time.rst:419 msgid "\\(3)" msgstr "\\(3)" -#: ../Doc/library/time.rst:408 +#: ../Doc/library/time.rst:416 msgid "``%w``" msgstr "``%w``" -#: ../Doc/library/time.rst:408 +#: ../Doc/library/time.rst:416 msgid "Weekday as a decimal number [0(Sunday),6]." msgstr "Jour de la semaine sous forme de nombre décimal [0 (dimanche), 6]." -#: ../Doc/library/time.rst:411 +#: ../Doc/library/time.rst:419 msgid "``%W``" msgstr "``%W``" -#: ../Doc/library/time.rst:411 +#: ../Doc/library/time.rst:419 msgid "" "Week number of the year (Monday as the first day of the week) as a decimal " "number [00,53]. All days in a new year preceding the first Monday are " @@ -762,43 +776,43 @@ msgstr "" "forme décimale [00,53]. Tous les jours d’une nouvelle année précédant le " "premier lundi sont considérés comme appartenant à la semaine 0." -#: ../Doc/library/time.rst:419 +#: ../Doc/library/time.rst:427 msgid "``%x``" msgstr "``%x``" -#: ../Doc/library/time.rst:419 +#: ../Doc/library/time.rst:427 msgid "Locale's appropriate date representation." msgstr "Représentation de la date appropriée par les paramètres régionaux." -#: ../Doc/library/time.rst:422 +#: ../Doc/library/time.rst:430 msgid "``%X``" msgstr "``%X``" -#: ../Doc/library/time.rst:422 +#: ../Doc/library/time.rst:430 msgid "Locale's appropriate time representation." msgstr "Représentation locale de l'heure." -#: ../Doc/library/time.rst:425 +#: ../Doc/library/time.rst:433 msgid "``%y``" msgstr "``%y``" -#: ../Doc/library/time.rst:425 +#: ../Doc/library/time.rst:433 msgid "Year without century as a decimal number [00,99]." msgstr "Année sans siècle comme un nombre décimal [00, 99]." -#: ../Doc/library/time.rst:428 +#: ../Doc/library/time.rst:436 msgid "``%Y``" msgstr "``%Y``" -#: ../Doc/library/time.rst:428 +#: ../Doc/library/time.rst:436 msgid "Year with century as a decimal number." msgstr "Année complète sur quatre chiffres." -#: ../Doc/library/time.rst:431 +#: ../Doc/library/time.rst:439 msgid "``%z``" msgstr "``%z``" -#: ../Doc/library/time.rst:431 +#: ../Doc/library/time.rst:439 msgid "" "Time zone offset indicating a positive or negative time difference from UTC/" "GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M " @@ -809,28 +823,28 @@ msgstr "" "représente les chiffres des heures décimales et M, les chiffres des minutes " "décimales [*-23:59*, *+23:59*]." -#: ../Doc/library/time.rst:437 +#: ../Doc/library/time.rst:445 msgid "``%Z``" msgstr "``%Z``" -#: ../Doc/library/time.rst:437 +#: ../Doc/library/time.rst:445 msgid "Time zone name (no characters if no time zone exists)." msgstr "" "Nom du fuseau horaire (pas de caractères s’il n’y a pas de fuseau horaire)." -#: ../Doc/library/time.rst:440 +#: ../Doc/library/time.rst:448 msgid "``%%``" msgstr "``%%``" -#: ../Doc/library/time.rst:440 +#: ../Doc/library/time.rst:448 msgid "A literal ``'%'`` character." msgstr "Un caractère ``'%'`` littéral." -#: ../Doc/library/time.rst:443 +#: ../Doc/library/time.rst:451 msgid "Notes:" msgstr "Notes :" -#: ../Doc/library/time.rst:446 +#: ../Doc/library/time.rst:454 msgid "" "When used with the :func:`strptime` function, the ``%p`` directive only " "affects the output hour field if the ``%I`` directive is used to parse the " @@ -840,7 +854,7 @@ msgstr "" "%p`` n’affecte le champ d’heure en sortie que si la directive ``%I`` est " "utilisée pour analyser l’heure." -#: ../Doc/library/time.rst:450 +#: ../Doc/library/time.rst:458 msgid "" "The range really is ``0`` to ``61``; value ``60`` is valid in timestamps " "representing `leap seconds`_ and value ``61`` is supported for historical " @@ -850,7 +864,7 @@ msgstr "" "les *timestamps* représentant des `leap seconds`_ et la valeur ``61`` est " "prise en charge pour des raisons historiques." -#: ../Doc/library/time.rst:455 +#: ../Doc/library/time.rst:463 msgid "" "When used with the :func:`strptime` function, ``%U`` and ``%W`` are only " "used in calculations when the day of the week and the year are specified." @@ -859,7 +873,7 @@ msgstr "" "%W`` ne sont utilisées que dans les calculs lorsque le jour de la semaine et " "l’année sont spécifiés." -#: ../Doc/library/time.rst:458 +#: ../Doc/library/time.rst:466 msgid "" "Here is an example, a format for dates compatible with that specified in " "the :rfc:`2822` Internet email standard. [#]_ ::" @@ -867,7 +881,7 @@ msgstr "" "Voici un exemple de format de date compatible avec celui spécifié dans la " "norme de courrier électronique Internet suivante :rfc:`2822`. [#]_ ::" -#: ../Doc/library/time.rst:465 +#: ../Doc/library/time.rst:473 msgid "" "Additional directives may be supported on certain platforms, but only the " "ones listed here have a meaning standardized by ANSI C. To see the full set " @@ -880,7 +894,7 @@ msgstr "" "en charge sur votre plate-forme, consultez la documentation :manpage:" "`strftime(3)`." -#: ../Doc/library/time.rst:470 +#: ../Doc/library/time.rst:478 msgid "" "On some platforms, an optional field width and precision specification can " "immediately follow the initial ``'%'`` of a directive in the following " @@ -892,7 +906,7 @@ msgstr "" "directive dans l’ordre suivant ; ce n’est pas non plus portable. La largeur " "du champ est normalement 2 sauf pour ``%j`` où il est 3." -#: ../Doc/library/time.rst:481 +#: ../Doc/library/time.rst:489 msgid "" "Parse a string representing a time according to a format. The return value " "is a :class:`struct_time` as returned by :func:`gmtime` or :func:`localtime`." @@ -901,7 +915,7 @@ msgstr "" "renvoyée est une :class:`struct_time` tel que renvoyé par :func:`gmtime` ou :" "func:`localtime`." -#: ../Doc/library/time.rst:485 +#: ../Doc/library/time.rst:493 msgid "" "The *format* parameter uses the same directives as those used by :func:" "`strftime`; it defaults to ``\"%a %b %d %H:%M:%S %Y\"`` which matches the " @@ -920,11 +934,11 @@ msgstr "" "précises ne peuvent pas être inférées sont ``(1900, 1, 1, 0, 0, 0, 0, 1, " "-1)``. *string* et *format* doivent être des chaînes." -#: ../Doc/library/time.rst:493 +#: ../Doc/library/time.rst:501 msgid "For example:" msgstr "Par exemple :" -#: ../Doc/library/time.rst:500 +#: ../Doc/library/time.rst:508 msgid "" "Support for the ``%Z`` directive is based on the values contained in " "``tzname`` and whether ``daylight`` is true. Because of this, it is " @@ -937,7 +951,7 @@ msgstr "" "reconnaissance des heures UTC et GMT, qui sont toujours connues (et " "considérées comme des fuseaux horaires ne respectant pas l’heure d’été)." -#: ../Doc/library/time.rst:505 +#: ../Doc/library/time.rst:513 msgid "" "Only the directives specified in the documentation are supported. Because " "``strftime()`` is implemented per platform it can sometimes offer more " @@ -952,7 +966,7 @@ msgstr "" "supporte donc pas nécessairement toutes les directives disponibles qui ne " "sont pas documentées comme gérées." -#: ../Doc/library/time.rst:514 +#: ../Doc/library/time.rst:522 msgid "" "The type of the time value sequence returned by :func:`gmtime`, :func:" "`localtime`, and :func:`strptime`. It is an object with a :term:`named " @@ -964,147 +978,147 @@ msgstr "" "ses valeurs sont accessibles par index et par nom d’attribut. Les valeurs " "suivantes sont présentes :" -#: ../Doc/library/time.rst:520 +#: ../Doc/library/time.rst:528 msgid "Index" msgstr "Index" -#: ../Doc/library/time.rst:520 +#: ../Doc/library/time.rst:528 msgid "Attribute" msgstr "Attribut" -#: ../Doc/library/time.rst:520 +#: ../Doc/library/time.rst:528 msgid "Values" msgstr "Valeurs" -#: ../Doc/library/time.rst:522 +#: ../Doc/library/time.rst:530 msgid "0" msgstr "0" -#: ../Doc/library/time.rst:522 +#: ../Doc/library/time.rst:530 msgid ":attr:`tm_year`" msgstr ":attr:`tm_year`" -#: ../Doc/library/time.rst:522 +#: ../Doc/library/time.rst:530 msgid "(for example, 1993)" msgstr "(par exemple, 1993)" -#: ../Doc/library/time.rst:524 +#: ../Doc/library/time.rst:532 msgid "1" msgstr "1" -#: ../Doc/library/time.rst:524 +#: ../Doc/library/time.rst:532 msgid ":attr:`tm_mon`" msgstr ":attr:`tm_mon`" -#: ../Doc/library/time.rst:524 +#: ../Doc/library/time.rst:532 msgid "range [1, 12]" msgstr "plage [1, 12]" -#: ../Doc/library/time.rst:526 +#: ../Doc/library/time.rst:534 msgid "2" msgstr "2" -#: ../Doc/library/time.rst:526 +#: ../Doc/library/time.rst:534 msgid ":attr:`tm_mday`" msgstr ":attr:`tm_mday`" -#: ../Doc/library/time.rst:526 +#: ../Doc/library/time.rst:534 msgid "range [1, 31]" msgstr "plage [1, 31]" -#: ../Doc/library/time.rst:528 +#: ../Doc/library/time.rst:536 msgid "3" msgstr "3" -#: ../Doc/library/time.rst:528 +#: ../Doc/library/time.rst:536 msgid ":attr:`tm_hour`" msgstr ":attr:`tm_hour`" -#: ../Doc/library/time.rst:528 +#: ../Doc/library/time.rst:536 msgid "range [0, 23]" msgstr "plage [0, 23]" -#: ../Doc/library/time.rst:530 +#: ../Doc/library/time.rst:538 msgid "4" msgstr "4" -#: ../Doc/library/time.rst:530 +#: ../Doc/library/time.rst:538 msgid ":attr:`tm_min`" msgstr ":attr:`tm_min`" -#: ../Doc/library/time.rst:530 +#: ../Doc/library/time.rst:538 msgid "range [0, 59]" msgstr "plage [0, 59]" -#: ../Doc/library/time.rst:532 +#: ../Doc/library/time.rst:540 msgid "5" msgstr "5" -#: ../Doc/library/time.rst:532 +#: ../Doc/library/time.rst:540 msgid ":attr:`tm_sec`" msgstr ":attr:`tm_sec`" -#: ../Doc/library/time.rst:532 +#: ../Doc/library/time.rst:540 msgid "range [0, 61]; see **(2)** in :func:`strftime` description" msgstr "plage [0, 61]; voir **(2)** dans la description :func:`strftime`" -#: ../Doc/library/time.rst:535 +#: ../Doc/library/time.rst:543 msgid "6" msgstr "6" -#: ../Doc/library/time.rst:535 +#: ../Doc/library/time.rst:543 msgid ":attr:`tm_wday`" msgstr ":attr:`tm_wday`" -#: ../Doc/library/time.rst:535 +#: ../Doc/library/time.rst:543 msgid "range [0, 6], Monday is 0" msgstr "plage [0, 6], Lundi valant 0" -#: ../Doc/library/time.rst:537 +#: ../Doc/library/time.rst:545 msgid "7" msgstr "7" -#: ../Doc/library/time.rst:537 +#: ../Doc/library/time.rst:545 msgid ":attr:`tm_yday`" msgstr ":attr:`tm_yday`" -#: ../Doc/library/time.rst:537 +#: ../Doc/library/time.rst:545 msgid "range [1, 366]" msgstr "plage [1, 366]" -#: ../Doc/library/time.rst:539 +#: ../Doc/library/time.rst:547 msgid "8" msgstr "8" -#: ../Doc/library/time.rst:539 +#: ../Doc/library/time.rst:547 msgid ":attr:`tm_isdst`" msgstr ":attr:`tm_isdst`" -#: ../Doc/library/time.rst:539 +#: ../Doc/library/time.rst:547 msgid "0, 1 or -1; see below" msgstr "``0``, ``1`` or ``-1`` ; voir en bas" -#: ../Doc/library/time.rst:541 ../Doc/library/time.rst:543 +#: ../Doc/library/time.rst:549 ../Doc/library/time.rst:551 msgid "N/A" msgstr "N/A" -#: ../Doc/library/time.rst:541 +#: ../Doc/library/time.rst:549 msgid ":attr:`tm_zone`" msgstr ":attr:`tm_zone`" -#: ../Doc/library/time.rst:541 +#: ../Doc/library/time.rst:549 msgid "abbreviation of timezone name" msgstr "abréviation du nom du fuseau horaire" -#: ../Doc/library/time.rst:543 +#: ../Doc/library/time.rst:551 msgid ":attr:`tm_gmtoff`" msgstr ":attr:`tm_gmtoff`" -#: ../Doc/library/time.rst:543 +#: ../Doc/library/time.rst:551 msgid "offset east of UTC in seconds" msgstr "décalage à l’est de UTC en secondes" -#: ../Doc/library/time.rst:546 +#: ../Doc/library/time.rst:554 msgid "" "Note that unlike the C structure, the month value is a range of [1, 12], not " "[0, 11]." @@ -1112,7 +1126,7 @@ msgstr "" "Notez que contrairement à la structure C, la valeur du mois est une plage de " "[1, 12], pas de [0, 11]." -#: ../Doc/library/time.rst:549 +#: ../Doc/library/time.rst:557 msgid "" "In calls to :func:`mktime`, :attr:`tm_isdst` may be set to 1 when daylight " "savings time is in effect, and 0 when it is not. A value of -1 indicates " @@ -1124,7 +1138,7 @@ msgstr "" "Une valeur de ``-1`` indique que cela n’est pas connu et entraînera " "généralement le remplissage de l’état correct." -#: ../Doc/library/time.rst:553 +#: ../Doc/library/time.rst:561 msgid "" "When a tuple with an incorrect length is passed to a function expecting a :" "class:`struct_time`, or having elements of the wrong type, a :exc:" @@ -1134,7 +1148,7 @@ msgstr "" "une :class:`struct_time`, ou comportant des éléments de type incorrect, une " "exception :exc:`TypeError` est levé." -#: ../Doc/library/time.rst:559 +#: ../Doc/library/time.rst:567 msgid "" "Return the time in seconds since the epoch_ as a floating point number. The " "specific date of the epoch and the handling of `leap seconds`_ is platform " @@ -1153,7 +1167,7 @@ msgstr "" "wikipedia.org/wiki/Unix_time>`_. Pour savoir quelle est *epoch* sur une " "plate-forme donnée, consultez ``gmtime(0)``." -#: ../Doc/library/time.rst:569 +#: ../Doc/library/time.rst:577 msgid "" "Note that even though the time is always returned as a floating point " "number, not all systems provide time with a better precision than 1 second. " @@ -1168,7 +1182,7 @@ msgstr "" "inférieure à celle d’un appel précédent si l’horloge système a été réglée " "entre les deux appels." -#: ../Doc/library/time.rst:575 +#: ../Doc/library/time.rst:583 msgid "" "The number returned by :func:`.time` may be converted into a more common " "time format (i.e. year, month, day, hour, etc...) in UTC by passing it to :" @@ -1184,7 +1198,7 @@ msgstr "" "est renvoyé, à partir duquel les composants de la date du calendrier peuvent " "être consultés en tant qu’attributs." -#: ../Doc/library/time.rst:590 +#: ../Doc/library/time.rst:598 msgid "" "Return the value (in fractional seconds) of the sum of the system and user " "CPU time of the current thread. It does not include time elapsed during " @@ -1199,7 +1213,7 @@ msgstr "" "la différence entre les résultats d’appels consécutifs dans le même thread " "est valide." -#: ../Doc/library/time.rst:598 +#: ../Doc/library/time.rst:606 msgid "" ":ref:`Availability `: Windows, Linux, Unix systems supporting " "``CLOCK_THREAD_CPUTIME_ID``." @@ -1207,11 +1221,11 @@ msgstr "" ":ref:`Disponibilité ` : Systèmes Windows, Linux, Unix prenant " "en charge ``CLOCK_THREAD_CPUTIME_ID``." -#: ../Doc/library/time.rst:604 +#: ../Doc/library/time.rst:612 msgid "Similar to :func:`thread_time` but return time as nanoseconds." msgstr "Similaire à :func:`thread_time` mais renvoie le temps en nanosecondes." -#: ../Doc/library/time.rst:611 +#: ../Doc/library/time.rst:619 #, fuzzy msgid "" "Similar to :func:`~time.time` but returns time as an integer number of " @@ -1220,7 +1234,7 @@ msgstr "" "Similaire à :func:`time` mais renvoie le temps sous forme de nombre entier " "de nanosecondes depuis epoch_." -#: ../Doc/library/time.rst:618 +#: ../Doc/library/time.rst:626 msgid "" "Reset the time conversion rules used by the library routines. The " "environment variable :envvar:`TZ` specifies how this is done. It will also " @@ -1239,7 +1253,7 @@ msgstr "" "d’heure d’été, ou non nul s’il existe une heure, passée, présente ou future " "lorsque l’heure d’été est appliquée)." -#: ../Doc/library/time.rst:630 +#: ../Doc/library/time.rst:638 msgid "" "Although in many cases, changing the :envvar:`TZ` environment variable may " "affect the output of functions like :func:`localtime` without calling :func:" @@ -1250,12 +1264,12 @@ msgstr "" "que :func:`localtime` sans appeler :func:`tzset`, ce comportement n'est pas " "garanti." -#: ../Doc/library/time.rst:634 +#: ../Doc/library/time.rst:642 msgid "The :envvar:`TZ` environment variable should contain no whitespace." msgstr "" "La variable d’environnement :envvar:`TZ` ne doit contenir aucun espace." -#: ../Doc/library/time.rst:636 +#: ../Doc/library/time.rst:644 msgid "" "The standard format of the :envvar:`TZ` environment variable is (whitespace " "added for clarity)::" @@ -1263,15 +1277,15 @@ msgstr "" "Le format standard de la variable d’environnement :envvar:`TZ` est (espaces " "ajoutés pour plus de clarté)::" -#: ../Doc/library/time.rst:641 +#: ../Doc/library/time.rst:649 msgid "Where the components are:" msgstr "Où les composants sont :" -#: ../Doc/library/time.rst:645 +#: ../Doc/library/time.rst:653 msgid "``std`` and ``dst``" msgstr "``std`` et ``dst``" -#: ../Doc/library/time.rst:644 +#: ../Doc/library/time.rst:652 msgid "" "Three or more alphanumerics giving the timezone abbreviations. These will be " "propagated into time.tzname" @@ -1279,11 +1293,11 @@ msgstr "" "Trois alphanumériques ou plus donnant les abréviations du fuseau horaire. " "Ceux-ci seront propagés dans *time.tzname*" -#: ../Doc/library/time.rst:651 +#: ../Doc/library/time.rst:659 msgid "``offset``" msgstr "``offset``" -#: ../Doc/library/time.rst:648 +#: ../Doc/library/time.rst:656 msgid "" "The offset has the form: ``± hh[:mm[:ss]]``. This indicates the value added " "the local time to arrive at UTC. If preceded by a '-', the timezone is east " @@ -1296,11 +1310,11 @@ msgstr "" "aucun décalage ne suit *dst*, l’heure d’été est supposée être en avance " "d’une heure sur l’heure standard." -#: ../Doc/library/time.rst:673 +#: ../Doc/library/time.rst:681 msgid "``start[/time], end[/time]``" msgstr "``start[/time], end[/time]``" -#: ../Doc/library/time.rst:654 +#: ../Doc/library/time.rst:662 msgid "" "Indicates when to change to and back from DST. The format of the start and " "end dates are one of the following:" @@ -1308,11 +1322,11 @@ msgstr "" "Indique quand passer à DST et en revenir. Le format des dates de début et de " "fin est l’un des suivants :" -#: ../Doc/library/time.rst:659 +#: ../Doc/library/time.rst:667 msgid ":samp:`J{n}`" msgstr ":samp:`J{n}`" -#: ../Doc/library/time.rst:658 +#: ../Doc/library/time.rst:666 msgid "" "The Julian day *n* (1 <= *n* <= 365). Leap days are not counted, so in all " "years February 28 is day 59 and March 1 is day 60." @@ -1321,11 +1335,11 @@ msgstr "" "comptabilisés. Par conséquent, le 28 février est le 59\\ :sup:`e` jour et le " "1\\ :sup:`er` Mars est le 60\\ :sup:`e` jour de toutes les années." -#: ../Doc/library/time.rst:663 +#: ../Doc/library/time.rst:671 msgid ":samp:`{n}`" msgstr ":samp:`{n}`" -#: ../Doc/library/time.rst:662 +#: ../Doc/library/time.rst:670 msgid "" "The zero-based Julian day (0 <= *n* <= 365). Leap days are counted, and it " "is possible to refer to February 29." @@ -1333,11 +1347,11 @@ msgstr "" "Le jour Julien de base zéro (0 <= *n* <= 365). Les jours bissextiles sont " "comptés et il est possible de se référer au 29 février." -#: ../Doc/library/time.rst:670 +#: ../Doc/library/time.rst:678 msgid ":samp:`M{m}.{n}.{d}`" msgstr ":samp:`M{m}.{n}.{d}`" -#: ../Doc/library/time.rst:666 +#: ../Doc/library/time.rst:674 msgid "" "The *d*'th day (0 <= *d* <= 6) of week *n* of month *m* of the year (1 <= " "*n* <= 5, 1 <= *m* <= 12, where week 5 means \"the last *d* day in month *m*" @@ -1350,7 +1364,7 @@ msgstr "" "semaine). La semaine 1 est la première semaine au cours de laquelle le " "*jour* se produit. Le jour zéro est un dimanche." -#: ../Doc/library/time.rst:672 +#: ../Doc/library/time.rst:680 msgid "" "``time`` has the same format as ``offset`` except that no leading sign ('-' " "or '+') is allowed. The default, if time is not given, is 02:00:00." @@ -1359,7 +1373,7 @@ msgstr "" "(``'-'`` ou ``'+'``) n’est autorisé. La valeur par défaut, si l’heure n’est " "pas spécifiée, est 02:00:00." -#: ../Doc/library/time.rst:686 +#: ../Doc/library/time.rst:694 msgid "" "On many Unix systems (including \\*BSD, Linux, Solaris, and Darwin), it is " "more convenient to use the system's zoneinfo (:manpage:`tzfile(5)`) " @@ -1378,11 +1392,11 @@ msgstr "" "zoneinfo`. Par exemple, ``'US/Eastern'``, ``'Australia/Melbourne'``, " "``'Egypt'`` ou ``'Europe/Amsterdam'``. ::" -#: ../Doc/library/time.rst:707 +#: ../Doc/library/time.rst:715 msgid "Clock ID Constants" msgstr "Constantes d’identification d’horloge" -#: ../Doc/library/time.rst:709 +#: ../Doc/library/time.rst:717 msgid "" "These constants are used as parameters for :func:`clock_getres` and :func:" "`clock_gettime`." @@ -1390,7 +1404,7 @@ msgstr "" "Ces constantes sont utilisées comme paramètres pour :func:`clock_getres` et :" "func:`clock_gettime`." -#: ../Doc/library/time.rst:714 +#: ../Doc/library/time.rst:722 msgid "" "Identical to :data:`CLOCK_MONOTONIC`, except it also includes any time that " "the system is suspended." @@ -1398,7 +1412,7 @@ msgstr "" "Identique à :data:`CLOCK_MONOTONIC`, sauf qu'elle inclut également toute " "suspension du système." -#: ../Doc/library/time.rst:717 +#: ../Doc/library/time.rst:725 msgid "" "This allows applications to get a suspend-aware monotonic clock without " "having to deal with the complications of :data:`CLOCK_REALTIME`, which may " @@ -1410,11 +1424,11 @@ msgstr "" "`CLOCK_REALTIME`, qui peuvent présenter des discontinuités si l’heure est " "modifiée à l’aide de ``settimeofday()`` ou similaire." -#: ../Doc/library/time.rst:723 +#: ../Doc/library/time.rst:731 msgid ":ref:`Availability `: Linux 2.6.39 or later." msgstr ":ref:`Disponibilité ` : Linux 2.6.39 et ultérieures." -#: ../Doc/library/time.rst:729 +#: ../Doc/library/time.rst:737 msgid "" "The Solaris OS has a ``CLOCK_HIGHRES`` timer that attempts to use an optimal " "hardware source, and may give close to nanosecond resolution. " @@ -1425,11 +1439,11 @@ msgstr "" "résolution proche de la nanoseconde. ``CLOCK_HIGHRES`` est l’horloge haute " "résolution non ajustable." -#: ../Doc/library/time.rst:734 +#: ../Doc/library/time.rst:742 msgid ":ref:`Availability `: Solaris." msgstr ":ref:`Disponibilité ` : Solaris." -#: ../Doc/library/time.rst:740 +#: ../Doc/library/time.rst:748 msgid "" "Clock that cannot be set and represents monotonic time since some " "unspecified starting point." @@ -1437,7 +1451,7 @@ msgstr "" "Horloge qui ne peut pas être réglée et représente l’heure monotone depuis un " "point de départ non spécifié." -#: ../Doc/library/time.rst:750 +#: ../Doc/library/time.rst:758 msgid "" "Similar to :data:`CLOCK_MONOTONIC`, but provides access to a raw hardware-" "based time that is not subject to NTP adjustments." @@ -1445,7 +1459,7 @@ msgstr "" "Similaire à :data:`CLOCK_MONOTONIC`, mais donne accès à une heure matérielle " "brute qui n’est pas soumise aux ajustements NTP." -#: ../Doc/library/time.rst:754 +#: ../Doc/library/time.rst:762 msgid "" ":ref:`Availability `: Linux 2.6.28 and newer, macOS 10.12 and " "newer." @@ -1453,22 +1467,22 @@ msgstr "" ":ref:`Disponibilité `: Linux 2.6.28 et ultérieur, MacOS 10.12 " "et ultérieur." -#: ../Doc/library/time.rst:760 ../Doc/library/time.rst:769 +#: ../Doc/library/time.rst:768 ../Doc/library/time.rst:777 msgid "High-resolution per-process timer from the CPU." msgstr "Minuterie haute résolution par processus du CPU." -#: ../Doc/library/time.rst:772 +#: ../Doc/library/time.rst:780 msgid "" ":ref:`Availability `: FreeBSD, NetBSD 7 or later, OpenBSD." msgstr "" ":ref:`Disponibilité ` : FreeBSD, NetBSD 7 ou version " "ultérieure, OpenBSD." -#: ../Doc/library/time.rst:778 +#: ../Doc/library/time.rst:786 msgid "Thread-specific CPU-time clock." msgstr "Horloge de temps CPU spécifique au thread." -#: ../Doc/library/time.rst:787 +#: ../Doc/library/time.rst:795 msgid "" "Time whose absolute value is the time the system has been running and not " "suspended, providing accurate uptime measurement, both absolute and interval." @@ -1477,27 +1491,27 @@ msgstr "" "été exécuté et non suspendu, fournissant une mesure précise du temps de " "disponibilité, à la fois absolue et à intervalle." -#: ../Doc/library/time.rst:792 +#: ../Doc/library/time.rst:800 msgid ":ref:`Availability `: FreeBSD, OpenBSD 5.5 or later." msgstr "" ":ref:`Disponibilité ` : FreeBSD, OpenBSD 5.5 ou version " "ultérieure." -#: ../Doc/library/time.rst:798 +#: ../Doc/library/time.rst:806 msgid "" "Clock that increments monotonically, tracking the time since an arbitrary " "point, unaffected by frequency or time adjustments and not incremented while " "the system is asleep." msgstr "" -#: ../Doc/library/time.rst:803 +#: ../Doc/library/time.rst:811 #, fuzzy msgid ":ref:`Availability `: macOS 10.12 and newer." msgstr "" ":ref:`Disponibilité `: Linux 2.6.28 et ultérieur, MacOS 10.12 " "et ultérieur." -#: ../Doc/library/time.rst:807 +#: ../Doc/library/time.rst:815 msgid "" "The following constant is the only parameter that can be sent to :func:" "`clock_settime`." @@ -1505,7 +1519,7 @@ msgstr "" "La constante suivante est le seul paramètre pouvant être envoyé à :func:" "`clock_settime`." -#: ../Doc/library/time.rst:813 +#: ../Doc/library/time.rst:821 msgid "" "System-wide real-time clock. Setting this clock requires appropriate " "privileges." @@ -1513,11 +1527,11 @@ msgstr "" "Horloge en temps réel à l’échelle du système. Le réglage de cette horloge " "nécessite des privilèges appropriés." -#: ../Doc/library/time.rst:824 +#: ../Doc/library/time.rst:832 msgid "Timezone Constants" msgstr "Constantes de fuseau horaire" -#: ../Doc/library/time.rst:828 +#: ../Doc/library/time.rst:836 msgid "" "The offset of the local DST timezone, in seconds west of UTC, if one is " "defined. This is negative if the local DST timezone is east of UTC (as in " @@ -1529,11 +1543,11 @@ msgstr "" "de UTC (comme en Europe occidentale, y compris le Royaume-Uni). Utilisez " "ceci uniquement si ``daylight`` est différent de zéro. Voir note ci-dessous." -#: ../Doc/library/time.rst:834 +#: ../Doc/library/time.rst:842 msgid "Nonzero if a DST timezone is defined. See note below." msgstr "Non nul si un fuseau horaire DST est défini. Voir note ci-dessous." -#: ../Doc/library/time.rst:838 +#: ../Doc/library/time.rst:846 msgid "" "The offset of the local (non-DST) timezone, in seconds west of UTC (negative " "in most of Western Europe, positive in the US, zero in the UK). See note " @@ -1543,7 +1557,7 @@ msgstr "" "de l’UTC (négatif dans la plupart des pays d’Europe occidentale, positif aux " "États-Unis, nul au Royaume-Uni). Voir note ci-dessous." -#: ../Doc/library/time.rst:843 +#: ../Doc/library/time.rst:851 msgid "" "A tuple of two strings: the first is the name of the local non-DST timezone, " "the second is the name of the local DST timezone. If no DST timezone is " @@ -1554,7 +1568,7 @@ msgstr "" "fuseau horaire DST n’est défini, la deuxième chaîne ne doit pas être " "utilisée. Voir note ci-dessous." -#: ../Doc/library/time.rst:849 +#: ../Doc/library/time.rst:857 msgid "" "For the above Timezone constants (:data:`altzone`, :data:`daylight`, :data:" "`timezone`, and :data:`tzname`), the value is determined by the timezone " @@ -1571,19 +1585,19 @@ msgstr "" "attr:`tm_zone` résulte de :func:`localtime` pour obtenir des informations " "sur le fuseau horaire." -#: ../Doc/library/time.rst:859 +#: ../Doc/library/time.rst:867 msgid "Module :mod:`datetime`" msgstr "Module :mod:`datetime`" -#: ../Doc/library/time.rst:859 +#: ../Doc/library/time.rst:867 msgid "More object-oriented interface to dates and times." msgstr "Interface plus orientée objet vers les dates et les heures." -#: ../Doc/library/time.rst:863 +#: ../Doc/library/time.rst:871 msgid "Module :mod:`locale`" msgstr "Module :mod:`locale`" -#: ../Doc/library/time.rst:862 +#: ../Doc/library/time.rst:870 msgid "" "Internationalization services. The locale setting affects the " "interpretation of many format specifiers in :func:`strftime` and :func:" @@ -1593,11 +1607,11 @@ msgstr "" "l’interprétation de nombreux spécificateurs de format dans :func:`strftime` " "et :func:`strptime`." -#: ../Doc/library/time.rst:866 +#: ../Doc/library/time.rst:874 msgid "Module :mod:`calendar`" msgstr "Module :mod:`calendar`" -#: ../Doc/library/time.rst:866 +#: ../Doc/library/time.rst:874 msgid "" "General calendar-related functions. :func:`~calendar.timegm` is the " "inverse of :func:`gmtime` from this module." @@ -1605,11 +1619,11 @@ msgstr "" "Fonctions générales liées au calendrier. :func:`~calendar.timegm` est " "l’inverse de :func:`gmtime` à partir de ce module." -#: ../Doc/library/time.rst:870 +#: ../Doc/library/time.rst:878 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/time.rst:871 +#: ../Doc/library/time.rst:879 msgid "" "The use of ``%Z`` is now deprecated, but the ``%z`` escape that expands to " "the preferred hour/minute offset is not supported by all ANSI C libraries. " diff --git a/library/typing.po b/library/typing.po index ffeb4ac14..2008034c4 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -24,13 +24,12 @@ msgstr "**Code source :** :source:`Lib/typing.py`" #: ../Doc/library/typing.rst:13 msgid "" -"The typing module has been included in the standard library on a :term:" -"`provisional basis `. New features might be added and API " -"may change even between minor releases if deemed necessary by the core " -"developers." +"The Python runtime does not enforce function and variable type annotations. " +"They can be used by third party tools such as type checkers, IDEs, linters, " +"etc." msgstr "" -#: ../Doc/library/typing.rst:20 +#: ../Doc/library/typing.rst:19 msgid "" "This module provides runtime support for type hints as specified by :pep:" "`484`, :pep:`526`, :pep:`544`, :pep:`586`, :pep:`589`, and :pep:`591`. The " @@ -40,55 +39,55 @@ msgid "" "type hints see :pep:`483`." msgstr "" -#: ../Doc/library/typing.rst:28 +#: ../Doc/library/typing.rst:27 msgid "" "The function below takes and returns a string and is annotated as follows::" msgstr "" -#: ../Doc/library/typing.rst:33 +#: ../Doc/library/typing.rst:32 msgid "" "In the function ``greeting``, the argument ``name`` is expected to be of " "type :class:`str` and the return type :class:`str`. Subtypes are accepted as " "arguments." msgstr "" -#: ../Doc/library/typing.rst:38 +#: ../Doc/library/typing.rst:37 msgid "Type aliases" msgstr "" -#: ../Doc/library/typing.rst:40 +#: ../Doc/library/typing.rst:39 msgid "" "A type alias is defined by assigning the type to the alias. In this example, " "``Vector`` and ``List[float]`` will be treated as interchangeable synonyms::" msgstr "" -#: ../Doc/library/typing.rst:52 +#: ../Doc/library/typing.rst:51 msgid "" "Type aliases are useful for simplifying complex type signatures. For " "example::" msgstr "" -#: ../Doc/library/typing.rst:70 +#: ../Doc/library/typing.rst:69 msgid "" "Note that ``None`` as a type hint is a special case and is replaced by " "``type(None)``." msgstr "" -#: ../Doc/library/typing.rst:76 +#: ../Doc/library/typing.rst:75 msgid "NewType" msgstr "" -#: ../Doc/library/typing.rst:78 +#: ../Doc/library/typing.rst:77 msgid "Use the :func:`NewType` helper function to create distinct types::" msgstr "" -#: ../Doc/library/typing.rst:85 +#: ../Doc/library/typing.rst:84 msgid "" "The static type checker will treat the new type as if it were a subclass of " "the original type. This is useful in helping catch logical errors::" msgstr "" -#: ../Doc/library/typing.rst:97 +#: ../Doc/library/typing.rst:96 msgid "" "You may still perform all ``int`` operations on a variable of type " "``UserId``, but the result will always be of type ``int``. This lets you " @@ -96,7 +95,7 @@ msgid "" "you from accidentally creating a ``UserId`` in an invalid way::" msgstr "" -#: ../Doc/library/typing.rst:105 +#: ../Doc/library/typing.rst:104 msgid "" "Note that these checks are enforced only by the static type checker. At " "runtime, the statement ``Derived = NewType('Derived', Base)`` will make " @@ -105,33 +104,33 @@ msgid "" "class or introduce any overhead beyond that of a regular function call." msgstr "" -#: ../Doc/library/typing.rst:111 +#: ../Doc/library/typing.rst:110 msgid "" "More precisely, the expression ``some_value is Derived(some_value)`` is " "always true at runtime." msgstr "" -#: ../Doc/library/typing.rst:114 +#: ../Doc/library/typing.rst:113 msgid "" "This also means that it is not possible to create a subtype of ``Derived`` " "since it is an identity function at runtime, not an actual type::" msgstr "" -#: ../Doc/library/typing.rst:124 +#: ../Doc/library/typing.rst:123 msgid "" "However, it is possible to create a :func:`NewType` based on a 'derived' " "``NewType``::" msgstr "" -#: ../Doc/library/typing.rst:132 +#: ../Doc/library/typing.rst:131 msgid "and typechecking for ``ProUserId`` will work as expected." msgstr "" -#: ../Doc/library/typing.rst:134 +#: ../Doc/library/typing.rst:133 msgid "See :pep:`484` for more details." msgstr "" -#: ../Doc/library/typing.rst:138 +#: ../Doc/library/typing.rst:137 msgid "" "Recall that the use of a type alias declares two types to be *equivalent* to " "one another. Doing ``Alias = Original`` will make the static type checker " @@ -139,7 +138,7 @@ msgid "" "This is useful when you want to simplify complex type signatures." msgstr "" -#: ../Doc/library/typing.rst:143 +#: ../Doc/library/typing.rst:142 msgid "" "In contrast, ``NewType`` declares one type to be a *subtype* of another. " "Doing ``Derived = NewType('Derived', Original)`` will make the static type " @@ -149,102 +148,102 @@ msgid "" "errors with minimal runtime cost." msgstr "" -#: ../Doc/library/typing.rst:153 +#: ../Doc/library/typing.rst:152 msgid "Callable" msgstr "" -#: ../Doc/library/typing.rst:155 +#: ../Doc/library/typing.rst:154 msgid "" "Frameworks expecting callback functions of specific signatures might be type " "hinted using ``Callable[[Arg1Type, Arg2Type], ReturnType]``." msgstr "" -#: ../Doc/library/typing.rst:158 +#: ../Doc/library/typing.rst:157 msgid "For example::" msgstr "Par exemple ::" -#: ../Doc/library/typing.rst:169 +#: ../Doc/library/typing.rst:168 msgid "" "It is possible to declare the return type of a callable without specifying " "the call signature by substituting a literal ellipsis for the list of " "arguments in the type hint: ``Callable[..., ReturnType]``." msgstr "" -#: ../Doc/library/typing.rst:176 +#: ../Doc/library/typing.rst:175 msgid "Generics" msgstr "" -#: ../Doc/library/typing.rst:178 +#: ../Doc/library/typing.rst:177 msgid "" "Since type information about objects kept in containers cannot be statically " "inferred in a generic way, abstract base classes have been extended to " "support subscription to denote expected types for container elements." msgstr "" -#: ../Doc/library/typing.rst:189 +#: ../Doc/library/typing.rst:188 msgid "" "Generics can be parameterized by using a new factory available in typing " "called :class:`TypeVar`." msgstr "" -#: ../Doc/library/typing.rst:203 +#: ../Doc/library/typing.rst:202 msgid "User-defined generic types" msgstr "" -#: ../Doc/library/typing.rst:205 +#: ../Doc/library/typing.rst:204 msgid "A user-defined class can be defined as a generic class." msgstr "" -#: ../Doc/library/typing.rst:231 +#: ../Doc/library/typing.rst:230 msgid "" "``Generic[T]`` as a base class defines that the class ``LoggedVar`` takes a " "single type parameter ``T`` . This also makes ``T`` valid as a type within " "the class body." msgstr "" -#: ../Doc/library/typing.rst:235 +#: ../Doc/library/typing.rst:234 msgid "" "The :class:`Generic` base class uses a metaclass that defines :meth:" "`__getitem__` so that ``LoggedVar[t]`` is valid as a type::" msgstr "" -#: ../Doc/library/typing.rst:244 +#: ../Doc/library/typing.rst:243 msgid "" "A generic type can have any number of type variables, and type variables may " "be constrained::" msgstr "" -#: ../Doc/library/typing.rst:256 +#: ../Doc/library/typing.rst:255 msgid "" "Each type variable argument to :class:`Generic` must be distinct. This is " "thus invalid::" msgstr "" -#: ../Doc/library/typing.rst:267 +#: ../Doc/library/typing.rst:266 msgid "You can use multiple inheritance with :class:`Generic`::" msgstr "" -#: ../Doc/library/typing.rst:276 +#: ../Doc/library/typing.rst:275 msgid "" "When inheriting from generic classes, some type variables could be fixed::" msgstr "" -#: ../Doc/library/typing.rst:285 +#: ../Doc/library/typing.rst:284 msgid "In this case ``MyDict`` has a single parameter, ``T``." msgstr "" -#: ../Doc/library/typing.rst:287 +#: ../Doc/library/typing.rst:286 msgid "" "Using a generic class without specifying type parameters assumes :data:`Any` " "for each position. In the following example, ``MyIterable`` is not generic " "but implicitly inherits from ``Iterable[Any]``::" msgstr "" -#: ../Doc/library/typing.rst:295 +#: ../Doc/library/typing.rst:294 msgid "User defined generic type aliases are also supported. Examples::" msgstr "" -#: ../Doc/library/typing.rst:311 +#: ../Doc/library/typing.rst:310 msgid "" "The metaclass used by :class:`Generic` is a subclass of :class:`abc." "ABCMeta`. A generic class can be an ABC by including abstract methods or " @@ -254,24 +253,24 @@ msgid "" "hashable and comparable for equality." msgstr "" -#: ../Doc/library/typing.rst:320 +#: ../Doc/library/typing.rst:319 msgid "The :data:`Any` type" msgstr "" -#: ../Doc/library/typing.rst:322 +#: ../Doc/library/typing.rst:321 msgid "" "A special kind of type is :data:`Any`. A static type checker will treat " "every type as being compatible with :data:`Any` and :data:`Any` as being " "compatible with every type." msgstr "" -#: ../Doc/library/typing.rst:326 +#: ../Doc/library/typing.rst:325 msgid "" "This means that it is possible to perform any operation or method call on a " "value of type on :data:`Any` and assign it to any variable::" msgstr "" -#: ../Doc/library/typing.rst:344 +#: ../Doc/library/typing.rst:343 msgid "" "Notice that no typechecking is performed when assigning a value of type :" "data:`Any` to a more precise type. For example, the static type checker did " @@ -280,19 +279,19 @@ msgid "" "runtime!" msgstr "" -#: ../Doc/library/typing.rst:350 +#: ../Doc/library/typing.rst:349 msgid "" "Furthermore, all functions without a return type or parameter types will " "implicitly default to using :data:`Any`::" msgstr "" -#: ../Doc/library/typing.rst:363 +#: ../Doc/library/typing.rst:362 msgid "" "This behavior allows :data:`Any` to be used as an *escape hatch* when you " "need to mix dynamically and statically typed code." msgstr "" -#: ../Doc/library/typing.rst:366 +#: ../Doc/library/typing.rst:365 msgid "" "Contrast the behavior of :data:`Any` with the behavior of :class:`object`. " "Similar to :data:`Any`, every type is a subtype of :class:`object`. However, " @@ -300,7 +299,7 @@ msgid "" "subtype of every other type." msgstr "" -#: ../Doc/library/typing.rst:371 +#: ../Doc/library/typing.rst:370 msgid "" "That means when the type of a value is :class:`object`, a type checker will " "reject almost all operations on it, and assigning it to a variable (or using " @@ -308,24 +307,24 @@ msgid "" "example::" msgstr "" -#: ../Doc/library/typing.rst:393 +#: ../Doc/library/typing.rst:392 msgid "" "Use :class:`object` to indicate that a value could be any type in a typesafe " "manner. Use :data:`Any` to indicate that a value is dynamically typed." msgstr "" -#: ../Doc/library/typing.rst:398 +#: ../Doc/library/typing.rst:397 msgid "Nominal vs structural subtyping" msgstr "" -#: ../Doc/library/typing.rst:400 +#: ../Doc/library/typing.rst:399 msgid "" "Initially :pep:`484` defined Python static type system as using *nominal " "subtyping*. This means that a class ``A`` is allowed where a class ``B`` is " "expected if and only if ``A`` is a subclass of ``B``." msgstr "" -#: ../Doc/library/typing.rst:404 +#: ../Doc/library/typing.rst:403 msgid "" "This requirement previously also applied to abstract base classes, such as :" "class:`Iterable`. The problem with this approach is that a class had to be " @@ -334,7 +333,7 @@ msgid "" "this conforms to the :pep:`484`::" msgstr "" -#: ../Doc/library/typing.rst:417 +#: ../Doc/library/typing.rst:416 msgid "" ":pep:`544` allows to solve this problem by allowing users to write the above " "code without explicit base classes in the class definition, allowing " @@ -343,30 +342,30 @@ msgid "" "subtyping* (or static duck-typing)::" msgstr "" -#: ../Doc/library/typing.rst:433 +#: ../Doc/library/typing.rst:432 msgid "" "Moreover, by subclassing a special class :class:`Protocol`, a user can " "define new custom protocols to fully enjoy structural subtyping (see " "examples below)." msgstr "" -#: ../Doc/library/typing.rst:439 +#: ../Doc/library/typing.rst:438 msgid "Classes, functions, and decorators" msgstr "" -#: ../Doc/library/typing.rst:441 +#: ../Doc/library/typing.rst:440 msgid "The module defines the following classes, functions and decorators:" msgstr "" -#: ../Doc/library/typing.rst:445 +#: ../Doc/library/typing.rst:444 msgid "Type variable." msgstr "" -#: ../Doc/library/typing.rst:447 ../Doc/library/typing.rst:915 +#: ../Doc/library/typing.rst:446 ../Doc/library/typing.rst:914 msgid "Usage::" msgstr "Utilisation ::" -#: ../Doc/library/typing.rst:452 +#: ../Doc/library/typing.rst:451 msgid "" "Type variables exist primarily for the benefit of static type checkers. " "They serve as the parameters for generic types as well as for generic " @@ -374,7 +373,7 @@ msgid "" "types. Generic functions work as follows::" msgstr "" -#: ../Doc/library/typing.rst:465 +#: ../Doc/library/typing.rst:464 msgid "" "The latter example's signature is essentially the overloading of ``(str, " "str) -> str`` and ``(bytes, bytes) -> bytes``. Also note that if the " @@ -382,13 +381,13 @@ msgid "" "still plain :class:`str`." msgstr "" -#: ../Doc/library/typing.rst:470 +#: ../Doc/library/typing.rst:469 msgid "" "At runtime, ``isinstance(x, T)`` will raise :exc:`TypeError`. In general, :" "func:`isinstance` and :func:`issubclass` should not be used with types." msgstr "" -#: ../Doc/library/typing.rst:473 +#: ../Doc/library/typing.rst:472 msgid "" "Type variables may be marked covariant or contravariant by passing " "``covariant=True`` or ``contravariant=True``. See :pep:`484` for more " @@ -398,33 +397,33 @@ msgid "" "must be a subclass of the boundary type, see :pep:`484`." msgstr "" -#: ../Doc/library/typing.rst:483 +#: ../Doc/library/typing.rst:482 msgid "Abstract base class for generic types." msgstr "" -#: ../Doc/library/typing.rst:485 +#: ../Doc/library/typing.rst:484 msgid "" "A generic type is typically declared by inheriting from an instantiation of " "this class with one or more type variables. For example, a generic mapping " "type might be defined as::" msgstr "" -#: ../Doc/library/typing.rst:494 +#: ../Doc/library/typing.rst:493 msgid "This class can then be used as follows::" msgstr "" -#: ../Doc/library/typing.rst:507 +#: ../Doc/library/typing.rst:506 msgid "" "Base class for protocol classes. Protocol classes are defined like this::" msgstr "" -#: ../Doc/library/typing.rst:513 +#: ../Doc/library/typing.rst:512 msgid "" "Such classes are primarily used with static type checkers that recognize " "structural subtyping (static duck-typing), for example::" msgstr "" -#: ../Doc/library/typing.rst:525 +#: ../Doc/library/typing.rst:524 msgid "" "See :pep:`544` for details. Protocol classes decorated with :func:" "`runtime_checkable` (described later) act as simple-minded runtime protocols " @@ -432,11 +431,11 @@ msgid "" "signatures." msgstr "" -#: ../Doc/library/typing.rst:530 +#: ../Doc/library/typing.rst:529 msgid "Protocol classes can be generic, for example::" msgstr "" -#: ../Doc/library/typing.rst:540 +#: ../Doc/library/typing.rst:539 msgid "" "A variable annotated with ``C`` may accept a value of type ``C``. In " "contrast, a variable annotated with ``Type[C]`` may accept values that are " @@ -444,11 +443,11 @@ msgid "" "``C``. For example::" msgstr "" -#: ../Doc/library/typing.rst:549 +#: ../Doc/library/typing.rst:548 msgid "Note that ``Type[C]`` is covariant::" msgstr "" -#: ../Doc/library/typing.rst:561 +#: ../Doc/library/typing.rst:560 msgid "" "The fact that ``Type[C]`` is covariant implies that all subclasses of ``C`` " "should implement the same constructor signature and class method signatures " @@ -458,286 +457,286 @@ msgid "" "particular case may change in future revisions of :pep:`484`." msgstr "" -#: ../Doc/library/typing.rst:569 +#: ../Doc/library/typing.rst:568 msgid "" "The only legal parameters for :class:`Type` are classes, :data:`Any`, :ref:" "`type variables `, and unions of any of these types. For example::" msgstr "" -#: ../Doc/library/typing.rst:575 +#: ../Doc/library/typing.rst:574 msgid "" "``Type[Any]`` is equivalent to ``Type`` which in turn is equivalent to " "``type``, which is the root of Python's metaclass hierarchy." msgstr "" -#: ../Doc/library/typing.rst:582 +#: ../Doc/library/typing.rst:581 msgid "A generic version of :class:`collections.abc.Iterable`." msgstr "" -#: ../Doc/library/typing.rst:586 +#: ../Doc/library/typing.rst:585 msgid "A generic version of :class:`collections.abc.Iterator`." msgstr "" -#: ../Doc/library/typing.rst:590 +#: ../Doc/library/typing.rst:589 msgid "A generic version of :class:`collections.abc.Reversible`." msgstr "" -#: ../Doc/library/typing.rst:594 +#: ../Doc/library/typing.rst:593 msgid "An ABC with one abstract method ``__int__``." msgstr "" -#: ../Doc/library/typing.rst:598 +#: ../Doc/library/typing.rst:597 msgid "An ABC with one abstract method ``__float__``." msgstr "" -#: ../Doc/library/typing.rst:602 +#: ../Doc/library/typing.rst:601 msgid "An ABC with one abstract method ``__complex__``." msgstr "" -#: ../Doc/library/typing.rst:606 +#: ../Doc/library/typing.rst:605 msgid "An ABC with one abstract method ``__bytes__``." msgstr "" -#: ../Doc/library/typing.rst:610 +#: ../Doc/library/typing.rst:609 msgid "An ABC with one abstract method ``__index__``." msgstr "" -#: ../Doc/library/typing.rst:616 +#: ../Doc/library/typing.rst:615 msgid "" "An ABC with one abstract method ``__abs__`` that is covariant in its return " "type." msgstr "" -#: ../Doc/library/typing.rst:621 +#: ../Doc/library/typing.rst:620 msgid "" "An ABC with one abstract method ``__round__`` that is covariant in its " "return type." msgstr "" -#: ../Doc/library/typing.rst:626 +#: ../Doc/library/typing.rst:625 msgid "A generic version of :class:`collections.abc.Container`." msgstr "" -#: ../Doc/library/typing.rst:630 +#: ../Doc/library/typing.rst:629 msgid "An alias to :class:`collections.abc.Hashable`" msgstr "" -#: ../Doc/library/typing.rst:634 +#: ../Doc/library/typing.rst:633 msgid "An alias to :class:`collections.abc.Sized`" msgstr "" -#: ../Doc/library/typing.rst:638 +#: ../Doc/library/typing.rst:637 msgid "A generic version of :class:`collections.abc.Collection`" msgstr "" -#: ../Doc/library/typing.rst:644 +#: ../Doc/library/typing.rst:643 msgid "A generic version of :class:`collections.abc.Set`." msgstr "" -#: ../Doc/library/typing.rst:648 +#: ../Doc/library/typing.rst:647 msgid "A generic version of :class:`collections.abc.MutableSet`." msgstr "" -#: ../Doc/library/typing.rst:652 +#: ../Doc/library/typing.rst:651 msgid "" "A generic version of :class:`collections.abc.Mapping`. This type can be used " "as follows::" msgstr "" -#: ../Doc/library/typing.rst:660 +#: ../Doc/library/typing.rst:659 msgid "A generic version of :class:`collections.abc.MutableMapping`." msgstr "" -#: ../Doc/library/typing.rst:664 +#: ../Doc/library/typing.rst:663 msgid "A generic version of :class:`collections.abc.Sequence`." msgstr "" -#: ../Doc/library/typing.rst:668 +#: ../Doc/library/typing.rst:667 msgid "A generic version of :class:`collections.abc.MutableSequence`." msgstr "" -#: ../Doc/library/typing.rst:672 +#: ../Doc/library/typing.rst:671 msgid "A generic version of :class:`collections.abc.ByteString`." msgstr "" -#: ../Doc/library/typing.rst:674 +#: ../Doc/library/typing.rst:673 msgid "" "This type represents the types :class:`bytes`, :class:`bytearray`, and :" "class:`memoryview`." msgstr "" -#: ../Doc/library/typing.rst:677 +#: ../Doc/library/typing.rst:676 msgid "" "As a shorthand for this type, :class:`bytes` can be used to annotate " "arguments of any of the types mentioned above." msgstr "" -#: ../Doc/library/typing.rst:682 +#: ../Doc/library/typing.rst:681 msgid "A generic version of :class:`collections.deque`." msgstr "" -#: ../Doc/library/typing.rst:689 +#: ../Doc/library/typing.rst:688 msgid "" "Generic version of :class:`list`. Useful for annotating return types. To " "annotate arguments it is preferred to use an abstract collection type such " "as :class:`Sequence` or :class:`Iterable`." msgstr "" -#: ../Doc/library/typing.rst:694 +#: ../Doc/library/typing.rst:693 msgid "This type may be used as follows::" msgstr "" -#: ../Doc/library/typing.rst:706 +#: ../Doc/library/typing.rst:705 msgid "" "A generic version of :class:`builtins.set `. Useful for annotating " "return types. To annotate arguments it is preferred to use an abstract " "collection type such as :class:`AbstractSet`." msgstr "" -#: ../Doc/library/typing.rst:712 +#: ../Doc/library/typing.rst:711 msgid "A generic version of :class:`builtins.frozenset `." msgstr "" -#: ../Doc/library/typing.rst:716 +#: ../Doc/library/typing.rst:715 msgid "A generic version of :class:`collections.abc.MappingView`." msgstr "" -#: ../Doc/library/typing.rst:720 +#: ../Doc/library/typing.rst:719 msgid "A generic version of :class:`collections.abc.KeysView`." msgstr "" -#: ../Doc/library/typing.rst:724 +#: ../Doc/library/typing.rst:723 msgid "A generic version of :class:`collections.abc.ItemsView`." msgstr "" -#: ../Doc/library/typing.rst:728 +#: ../Doc/library/typing.rst:727 msgid "A generic version of :class:`collections.abc.ValuesView`." msgstr "" -#: ../Doc/library/typing.rst:732 +#: ../Doc/library/typing.rst:731 msgid "A generic version of :class:`collections.abc.Awaitable`." msgstr "" -#: ../Doc/library/typing.rst:738 +#: ../Doc/library/typing.rst:737 msgid "" "A generic version of :class:`collections.abc.Coroutine`. The variance and " "order of type variables correspond to those of :class:`Generator`, for " "example::" msgstr "" -#: ../Doc/library/typing.rst:753 +#: ../Doc/library/typing.rst:752 msgid "A generic version of :class:`collections.abc.AsyncIterable`." msgstr "" -#: ../Doc/library/typing.rst:759 +#: ../Doc/library/typing.rst:758 msgid "A generic version of :class:`collections.abc.AsyncIterator`." msgstr "" -#: ../Doc/library/typing.rst:765 +#: ../Doc/library/typing.rst:764 msgid "A generic version of :class:`contextlib.AbstractContextManager`." msgstr "" -#: ../Doc/library/typing.rst:772 +#: ../Doc/library/typing.rst:771 msgid "A generic version of :class:`contextlib.AbstractAsyncContextManager`." msgstr "" -#: ../Doc/library/typing.rst:779 +#: ../Doc/library/typing.rst:778 msgid "" "A generic version of :class:`dict`. Useful for annotating return types. To " "annotate arguments it is preferred to use an abstract collection type such " "as :class:`Mapping`." msgstr "" -#: ../Doc/library/typing.rst:783 +#: ../Doc/library/typing.rst:782 msgid "This type can be used as follows::" msgstr "" -#: ../Doc/library/typing.rst:790 +#: ../Doc/library/typing.rst:789 msgid "A generic version of :class:`collections.defaultdict`." msgstr "" -#: ../Doc/library/typing.rst:796 +#: ../Doc/library/typing.rst:795 msgid "A generic version of :class:`collections.OrderedDict`." msgstr "" -#: ../Doc/library/typing.rst:802 +#: ../Doc/library/typing.rst:801 msgid "A generic version of :class:`collections.Counter`." msgstr "" -#: ../Doc/library/typing.rst:809 +#: ../Doc/library/typing.rst:808 msgid "A generic version of :class:`collections.ChainMap`." msgstr "" -#: ../Doc/library/typing.rst:816 +#: ../Doc/library/typing.rst:815 msgid "" "A generator can be annotated by the generic type ``Generator[YieldType, " "SendType, ReturnType]``. For example::" msgstr "" -#: ../Doc/library/typing.rst:825 +#: ../Doc/library/typing.rst:824 msgid "" "Note that unlike many other generics in the typing module, the ``SendType`` " "of :class:`Generator` behaves contravariantly, not covariantly or " "invariantly." msgstr "" -#: ../Doc/library/typing.rst:829 +#: ../Doc/library/typing.rst:828 msgid "" "If your generator will only yield values, set the ``SendType`` and " "``ReturnType`` to ``None``::" msgstr "" -#: ../Doc/library/typing.rst:837 +#: ../Doc/library/typing.rst:836 msgid "" "Alternatively, annotate your generator as having a return type of either " "``Iterable[YieldType]`` or ``Iterator[YieldType]``::" msgstr "" -#: ../Doc/library/typing.rst:847 +#: ../Doc/library/typing.rst:846 msgid "" "An async generator can be annotated by the generic type " "``AsyncGenerator[YieldType, SendType]``. For example::" msgstr "" -#: ../Doc/library/typing.rst:856 +#: ../Doc/library/typing.rst:855 msgid "" "Unlike normal generators, async generators cannot return a value, so there " "is no ``ReturnType`` type parameter. As with :class:`Generator`, the " "``SendType`` behaves contravariantly." msgstr "" -#: ../Doc/library/typing.rst:860 +#: ../Doc/library/typing.rst:859 msgid "" "If your generator will only yield values, set the ``SendType`` to ``None``::" msgstr "" -#: ../Doc/library/typing.rst:868 +#: ../Doc/library/typing.rst:867 msgid "" "Alternatively, annotate your generator as having a return type of either " "``AsyncIterable[YieldType]`` or ``AsyncIterator[YieldType]``::" msgstr "" -#: ../Doc/library/typing.rst:880 +#: ../Doc/library/typing.rst:879 msgid "" "``Text`` is an alias for ``str``. It is provided to supply a forward " "compatible path for Python 2 code: in Python 2, ``Text`` is an alias for " "``unicode``." msgstr "" -#: ../Doc/library/typing.rst:884 +#: ../Doc/library/typing.rst:883 msgid "" "Use ``Text`` to indicate that a value must contain a unicode string in a " "manner that is compatible with both Python 2 and Python 3::" msgstr "" -#: ../Doc/library/typing.rst:896 +#: ../Doc/library/typing.rst:895 msgid "" "Generic type ``IO[AnyStr]`` and its subclasses ``TextIO(IO[str])`` and " "``BinaryIO(IO[bytes])`` represent the types of I/O streams such as returned " "by :func:`open`." msgstr "" -#: ../Doc/library/typing.rst:904 +#: ../Doc/library/typing.rst:903 msgid "" "These type aliases correspond to the return types from :func:`re.compile` " "and :func:`re.match`. These types (and the corresponding functions) are " @@ -745,25 +744,25 @@ msgid "" "``Pattern[bytes]``, ``Match[str]``, or ``Match[bytes]``." msgstr "" -#: ../Doc/library/typing.rst:913 +#: ../Doc/library/typing.rst:912 msgid "Typed version of :func:`collections.namedtuple`." msgstr "" -#: ../Doc/library/typing.rst:921 +#: ../Doc/library/typing.rst:920 msgid "This is equivalent to::" msgstr "C’est équivalent à ::" -#: ../Doc/library/typing.rst:925 +#: ../Doc/library/typing.rst:924 msgid "" "To give a field a default value, you can assign to it in the class body::" msgstr "" -#: ../Doc/library/typing.rst:934 +#: ../Doc/library/typing.rst:933 msgid "" "Fields with a default value must come after any fields without a default." msgstr "" -#: ../Doc/library/typing.rst:936 +#: ../Doc/library/typing.rst:935 msgid "" "The resulting class has an extra attribute ``__annotations__`` giving a dict " "that maps the field names to the field types. (The field names are in the " @@ -771,41 +770,41 @@ msgid "" "attribute both of which are part of the namedtuple API.)" msgstr "" -#: ../Doc/library/typing.rst:942 +#: ../Doc/library/typing.rst:941 msgid "``NamedTuple`` subclasses can also have docstrings and methods::" msgstr "" -#: ../Doc/library/typing.rst:952 +#: ../Doc/library/typing.rst:951 msgid "Backward-compatible usage::" msgstr "" -#: ../Doc/library/typing.rst:956 +#: ../Doc/library/typing.rst:955 msgid "Added support for :pep:`526` variable annotation syntax." msgstr "" -#: ../Doc/library/typing.rst:959 +#: ../Doc/library/typing.rst:958 msgid "Added support for default values, methods, and docstrings." msgstr "" -#: ../Doc/library/typing.rst:962 +#: ../Doc/library/typing.rst:961 msgid "" "Deprecated the ``_field_types`` attribute in favor of the more standard " "``__annotations__`` attribute which has the same information." msgstr "" -#: ../Doc/library/typing.rst:966 +#: ../Doc/library/typing.rst:965 msgid "" "The ``_field_types`` and ``__annotations__`` attributes are now regular " "dictionaries instead of instances of ``OrderedDict``." msgstr "" -#: ../Doc/library/typing.rst:972 +#: ../Doc/library/typing.rst:971 msgid "" "A simple typed namespace. At runtime it is equivalent to a plain :class:" "`dict`." msgstr "" -#: ../Doc/library/typing.rst:975 +#: ../Doc/library/typing.rst:974 msgid "" "``TypedDict`` creates a dictionary type that expects all of its instances to " "have a certain set of keys, where each key is associated with a value of a " @@ -813,7 +812,7 @@ msgid "" "enforced by type checkers. Usage::" msgstr "" -#: ../Doc/library/typing.rst:991 +#: ../Doc/library/typing.rst:990 msgid "" "The type info for introspection can be accessed via ``Point2D." "__annotations__`` and ``Point2D.__total__``. To allow using this feature " @@ -821,13 +820,13 @@ msgid "" "supports two additional equivalent syntactic forms::" msgstr "" -#: ../Doc/library/typing.rst:999 +#: ../Doc/library/typing.rst:998 msgid "" "See :pep:`589` for more examples and detailed rules of using ``TypedDict`` " "with type checkers." msgstr "" -#: ../Doc/library/typing.rst:1006 +#: ../Doc/library/typing.rst:1005 msgid "" "A class used for internal typing representation of string forward " "references. For example, ``List[\"SomeClass\"]`` is implicitly transformed " @@ -835,31 +834,31 @@ msgid "" "instantiated by a user, but may be used by introspection tools." msgstr "" -#: ../Doc/library/typing.rst:1013 +#: ../Doc/library/typing.rst:1012 msgid "" "A helper function to indicate a distinct types to a typechecker, see :ref:" "`distinct`. At runtime it returns a function that returns its argument. " "Usage::" msgstr "" -#: ../Doc/library/typing.rst:1024 +#: ../Doc/library/typing.rst:1023 msgid "Cast a value to a type." msgstr "" -#: ../Doc/library/typing.rst:1026 +#: ../Doc/library/typing.rst:1025 msgid "" "This returns the value unchanged. To the type checker this signals that the " "return value has the designated type, but at runtime we intentionally don't " "check anything (we want this to be as fast as possible)." msgstr "" -#: ../Doc/library/typing.rst:1033 +#: ../Doc/library/typing.rst:1032 msgid "" "Return a dictionary containing type hints for a function, method, module or " "class object." msgstr "" -#: ../Doc/library/typing.rst:1036 +#: ../Doc/library/typing.rst:1035 msgid "" "This is often the same as ``obj.__annotations__``. In addition, forward " "references encoded as string literals are handled by evaluating them in " @@ -869,11 +868,11 @@ msgid "" "merging all the ``__annotations__`` along ``C.__mro__`` in reverse order." msgstr "" -#: ../Doc/library/typing.rst:1047 +#: ../Doc/library/typing.rst:1046 msgid "Provide basic introspection for generic types and special typing forms." msgstr "" -#: ../Doc/library/typing.rst:1049 +#: ../Doc/library/typing.rst:1048 msgid "" "For a typing object of the form ``X[Y, Z, ...]`` these functions return " "``X`` and ``(Y, Z, ...)``. If ``X`` is a generic alias for a builtin or :mod:" @@ -881,7 +880,7 @@ msgid "" "unsupported objects return ``None`` and ``()`` correspondingly. Examples::" msgstr "" -#: ../Doc/library/typing.rst:1065 +#: ../Doc/library/typing.rst:1064 msgid "" "The ``@overload`` decorator allows describing functions and methods that " "support multiple different combinations of argument types. A series of " @@ -896,69 +895,69 @@ msgid "" "variable::" msgstr "" -#: ../Doc/library/typing.rst:1089 +#: ../Doc/library/typing.rst:1088 msgid "See :pep:`484` for details and comparison with other typing semantics." msgstr "" -#: ../Doc/library/typing.rst:1093 +#: ../Doc/library/typing.rst:1092 msgid "" "A decorator to indicate to type checkers that the decorated method cannot be " "overridden, and the decorated class cannot be subclassed. For example::" msgstr "" -#: ../Doc/library/typing.rst:1111 ../Doc/library/typing.rst:1338 +#: ../Doc/library/typing.rst:1110 ../Doc/library/typing.rst:1337 msgid "" "There is no runtime checking of these properties. See :pep:`591` for more " "details." msgstr "" -#: ../Doc/library/typing.rst:1118 +#: ../Doc/library/typing.rst:1117 msgid "Decorator to indicate that annotations are not type hints." msgstr "" -#: ../Doc/library/typing.rst:1120 +#: ../Doc/library/typing.rst:1119 msgid "" "This works as class or function :term:`decorator`. With a class, it applies " "recursively to all methods defined in that class (but not to methods defined " "in its superclasses or subclasses)." msgstr "" -#: ../Doc/library/typing.rst:1124 +#: ../Doc/library/typing.rst:1123 msgid "This mutates the function(s) in place." msgstr "" -#: ../Doc/library/typing.rst:1128 +#: ../Doc/library/typing.rst:1127 msgid "Decorator to give another decorator the :func:`no_type_check` effect." msgstr "" -#: ../Doc/library/typing.rst:1130 +#: ../Doc/library/typing.rst:1129 msgid "" "This wraps the decorator with something that wraps the decorated function " "in :func:`no_type_check`." msgstr "" -#: ../Doc/library/typing.rst:1135 +#: ../Doc/library/typing.rst:1134 msgid "Decorator to mark a class or function to be unavailable at runtime." msgstr "" -#: ../Doc/library/typing.rst:1137 +#: ../Doc/library/typing.rst:1136 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:1148 +#: ../Doc/library/typing.rst:1147 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:1153 +#: ../Doc/library/typing.rst:1152 msgid "Mark a protocol class as a runtime protocol." msgstr "" -#: ../Doc/library/typing.rst:1155 +#: ../Doc/library/typing.rst:1154 msgid "" "Such a protocol can be used with :func:`isinstance` and :func:`issubclass`. " "This raises :exc:`TypeError` when applied to a non-protocol class. This " @@ -966,81 +965,81 @@ msgid "" "\" in :mod:`collections.abc` such as :class:`Iterable`. For example::" msgstr "" -#: ../Doc/library/typing.rst:1166 +#: ../Doc/library/typing.rst:1165 msgid "" "**Warning:** this will check only the presence of the required methods, not " "their type signatures!" msgstr "" -#: ../Doc/library/typing.rst:1173 +#: ../Doc/library/typing.rst:1172 msgid "Special type indicating an unconstrained type." msgstr "" -#: ../Doc/library/typing.rst:1175 +#: ../Doc/library/typing.rst:1174 msgid "Every type is compatible with :data:`Any`." msgstr "" -#: ../Doc/library/typing.rst:1176 +#: ../Doc/library/typing.rst:1175 msgid ":data:`Any` is compatible with every type." msgstr "" -#: ../Doc/library/typing.rst:1180 +#: ../Doc/library/typing.rst:1179 msgid "Special type indicating that a function never returns. For example::" msgstr "" -#: ../Doc/library/typing.rst:1193 +#: ../Doc/library/typing.rst:1192 msgid "Union type; ``Union[X, Y]`` means either X or Y." msgstr "" -#: ../Doc/library/typing.rst:1195 +#: ../Doc/library/typing.rst:1194 msgid "To define a union, use e.g. ``Union[int, str]``. Details:" msgstr "" -#: ../Doc/library/typing.rst:1197 +#: ../Doc/library/typing.rst:1196 msgid "The arguments must be types and there must be at least one." msgstr "" -#: ../Doc/library/typing.rst:1199 +#: ../Doc/library/typing.rst:1198 msgid "Unions of unions are flattened, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:1203 +#: ../Doc/library/typing.rst:1202 msgid "Unions of a single argument vanish, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:1207 +#: ../Doc/library/typing.rst:1206 msgid "Redundant arguments are skipped, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:1211 +#: ../Doc/library/typing.rst:1210 msgid "When comparing unions, the argument order is ignored, e.g.::" msgstr "" -#: ../Doc/library/typing.rst:1215 +#: ../Doc/library/typing.rst:1214 msgid "You cannot subclass or instantiate a union." msgstr "" -#: ../Doc/library/typing.rst:1217 +#: ../Doc/library/typing.rst:1216 msgid "You cannot write ``Union[X][Y]``." msgstr "" -#: ../Doc/library/typing.rst:1219 +#: ../Doc/library/typing.rst:1218 msgid "You can use ``Optional[X]`` as a shorthand for ``Union[X, None]``." msgstr "" -#: ../Doc/library/typing.rst:1221 +#: ../Doc/library/typing.rst:1220 msgid "Don't remove explicit subclasses from unions at runtime." msgstr "" -#: ../Doc/library/typing.rst:1226 +#: ../Doc/library/typing.rst:1225 msgid "Optional type." msgstr "" -#: ../Doc/library/typing.rst:1228 +#: ../Doc/library/typing.rst:1227 msgid "``Optional[X]`` is equivalent to ``Union[X, None]``." msgstr "" -#: ../Doc/library/typing.rst:1230 +#: ../Doc/library/typing.rst:1229 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 " @@ -1048,46 +1047,46 @@ msgid "" "optional. For example::" msgstr "" -#: ../Doc/library/typing.rst:1238 +#: ../Doc/library/typing.rst:1237 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:1247 +#: ../Doc/library/typing.rst:1246 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. The type of the empty tuple " "can be written as ``Tuple[()]``." msgstr "" -#: ../Doc/library/typing.rst:1251 +#: ../Doc/library/typing.rst:1250 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:1255 +#: ../Doc/library/typing.rst:1254 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:1261 +#: ../Doc/library/typing.rst:1260 msgid "Callable type; ``Callable[[int], str]`` is a function of (int) -> str." msgstr "" -#: ../Doc/library/typing.rst:1263 +#: ../Doc/library/typing.rst:1262 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:1268 +#: ../Doc/library/typing.rst:1267 msgid "" "There is no syntax to indicate optional or keyword arguments; such function " "types are rarely used as callback types. ``Callable[..., ReturnType]`` " @@ -1097,36 +1096,36 @@ msgid "" "Callable`." msgstr "" -#: ../Doc/library/typing.rst:1278 +#: ../Doc/library/typing.rst:1277 msgid "" "A type that can be used to indicate to type checkers that the corresponding " "variable or function parameter has a value equivalent to the provided " "literal (or one of several literals). For example::" msgstr "" -#: ../Doc/library/typing.rst:1292 +#: ../Doc/library/typing.rst:1291 msgid "" "``Literal[...]`` cannot be subclassed. At runtime, an arbitrary value is " "allowed as type argument to ``Literal[...]``, but type checkers may impose " "restrictions. See :pep:`586` for more details about literal types." msgstr "" -#: ../Doc/library/typing.rst:1300 +#: ../Doc/library/typing.rst:1299 msgid "Special type construct to mark class variables." msgstr "" -#: ../Doc/library/typing.rst:1302 +#: ../Doc/library/typing.rst:1301 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:1310 +#: ../Doc/library/typing.rst:1309 msgid ":data:`ClassVar` accepts only types and cannot be further subscribed." msgstr "" -#: ../Doc/library/typing.rst:1312 +#: ../Doc/library/typing.rst:1311 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 " @@ -1134,31 +1133,31 @@ msgid "" "example, a type checker might flag the following code as an error::" msgstr "" -#: ../Doc/library/typing.rst:1326 +#: ../Doc/library/typing.rst:1325 msgid "" "A special typing construct to indicate to type checkers that a name cannot " "be re-assigned or overridden in a subclass. For example::" msgstr "" -#: ../Doc/library/typing.rst:1345 +#: ../Doc/library/typing.rst:1344 msgid "" "``AnyStr`` is a type variable defined as ``AnyStr = TypeVar('AnyStr', str, " "bytes)``." msgstr "" -#: ../Doc/library/typing.rst:1348 +#: ../Doc/library/typing.rst:1347 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:1360 +#: ../Doc/library/typing.rst:1359 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:1369 +#: ../Doc/library/typing.rst:1368 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/unicodedata.po b/library/unicodedata.po index 6482df1f3..6275e4ec4 100644 --- a/library/unicodedata.po +++ b/library/unicodedata.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-10-11 17:16+0200\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -34,10 +34,11 @@ msgstr "" "Public/11.0.0/ucd>`_." #: ../Doc/library/unicodedata.rst:23 +#, fuzzy msgid "" "The module uses the same names and symbols as defined by Unicode Standard " -"Annex #44, `\"Unicode Character Database\" `_. It defines the following functions:" +"Annex #44, `\"Unicode Character Database\" `_. It defines the following functions:" msgstr "" "Ce module utilise les mêmes noms et symboles définis dans l'annexe 44 du " "standard Unicode (*Unicode Standard Annex*), `\"Unicode Character Database\" " diff --git a/library/unittest.mock-examples.po b/library/unittest.mock-examples.po index 90e9d07dd..63873c90a 100644 --- a/library/unittest.mock-examples.po +++ b/library/unittest.mock-examples.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -18,46 +18,46 @@ msgstr "" msgid ":mod:`unittest.mock` --- getting started" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:26 +#: ../Doc/library/unittest.mock-examples.rst:27 msgid "Using Mock" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:29 +#: ../Doc/library/unittest.mock-examples.rst:30 msgid "Mock Patching Methods" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:31 +#: ../Doc/library/unittest.mock-examples.rst:32 msgid "Common uses for :class:`Mock` objects include:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:33 +#: ../Doc/library/unittest.mock-examples.rst:34 msgid "Patching methods" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:34 +#: ../Doc/library/unittest.mock-examples.rst:35 msgid "Recording method calls on objects" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:36 +#: ../Doc/library/unittest.mock-examples.rst:37 msgid "" "You might want to replace a method on an object to check that it is called " "with the correct arguments by another part of the system:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:44 +#: ../Doc/library/unittest.mock-examples.rst:45 msgid "" "Once our mock has been used (``real.method`` in this example) it has methods " "and attributes that allow you to make assertions about how it has been used." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:49 +#: ../Doc/library/unittest.mock-examples.rst:50 msgid "" "In most of these examples the :class:`Mock` and :class:`MagicMock` classes " "are interchangeable. As the ``MagicMock`` is the more capable class it makes " "a sensible one to use by default." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:53 +#: ../Doc/library/unittest.mock-examples.rst:54 msgid "" "Once the mock has been called its :attr:`~Mock.called` attribute is set to " "``True``. More importantly we can use the :meth:`~Mock.assert_called_with` " @@ -65,17 +65,17 @@ msgid "" "with the correct arguments." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:58 +#: ../Doc/library/unittest.mock-examples.rst:59 msgid "" "This example tests that calling ``ProductionClass().method`` results in a " "call to the ``something`` method:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:75 +#: ../Doc/library/unittest.mock-examples.rst:76 msgid "Mock for Method Calls on an Object" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:77 +#: ../Doc/library/unittest.mock-examples.rst:78 msgid "" "In the last example we patched a method directly on an object to check that " "it was called correctly. Another common use case is to pass an object into a " @@ -83,19 +83,19 @@ msgid "" "used in the correct way." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:82 +#: ../Doc/library/unittest.mock-examples.rst:83 msgid "" "The simple ``ProductionClass`` below has a ``closer`` method. If it is " "called with an object then it calls ``close`` on it." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:90 +#: ../Doc/library/unittest.mock-examples.rst:91 msgid "" "So to test it we need to pass in an object with a ``close`` method and check " "that it was called correctly." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:98 +#: ../Doc/library/unittest.mock-examples.rst:99 msgid "" "We don't have to do any work to provide the 'close' method on our mock. " "Accessing close creates it. So, if 'close' hasn't already been called then " @@ -103,11 +103,11 @@ msgid "" "assert_called_with` will raise a failure exception." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:105 +#: ../Doc/library/unittest.mock-examples.rst:106 msgid "Mocking Classes" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:107 +#: ../Doc/library/unittest.mock-examples.rst:108 msgid "" "A common use case is to mock out classes instantiated by your code under " "test. When you patch a class, then that class is replaced with a mock. " @@ -115,7 +115,7 @@ msgid "" "\"mock instance\" by looking at the return value of the mocked class." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:112 +#: ../Doc/library/unittest.mock-examples.rst:113 msgid "" "In the example below we have a function ``some_function`` that instantiates " "``Foo`` and calls a method on it. The call to :func:`patch` replaces the " @@ -124,29 +124,29 @@ msgid "" "return_value`. ::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:129 +#: ../Doc/library/unittest.mock-examples.rst:130 msgid "Naming your mocks" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:131 +#: ../Doc/library/unittest.mock-examples.rst:132 msgid "" "It can be useful to give your mocks a name. The name is shown in the repr of " "the mock and can be helpful when the mock appears in test failure messages. " "The name is also propagated to attributes or methods of the mock:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:143 +#: ../Doc/library/unittest.mock-examples.rst:144 msgid "Tracking all Calls" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:145 +#: ../Doc/library/unittest.mock-examples.rst:146 msgid "" "Often you want to track more than a single call to a method. The :attr:" "`~Mock.mock_calls` attribute records all calls to child attributes of the " "mock - and also to their children." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:157 +#: ../Doc/library/unittest.mock-examples.rst:158 msgid "" "If you make an assertion about ``mock_calls`` and any unexpected methods " "have been called, then the assertion will fail. This is useful because as " @@ -154,74 +154,74 @@ msgid "" "checking that they were made in the right order and with no additional calls:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:162 +#: ../Doc/library/unittest.mock-examples.rst:163 msgid "" "You use the :data:`call` object to construct lists for comparing with " "``mock_calls``:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:169 +#: ../Doc/library/unittest.mock-examples.rst:170 msgid "" "However, parameters to calls that return mocks are not recorded, which means " "it is not possible to track nested calls where the parameters used to create " "ancestors are important:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:180 +#: ../Doc/library/unittest.mock-examples.rst:181 msgid "Setting Return Values and Attributes" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:182 +#: ../Doc/library/unittest.mock-examples.rst:183 msgid "Setting the return values on a mock object is trivially easy:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:189 +#: ../Doc/library/unittest.mock-examples.rst:190 msgid "Of course you can do the same for methods on the mock:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:196 +#: ../Doc/library/unittest.mock-examples.rst:197 msgid "The return value can also be set in the constructor:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:202 +#: ../Doc/library/unittest.mock-examples.rst:203 msgid "If you need an attribute setting on your mock, just do it:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:209 +#: ../Doc/library/unittest.mock-examples.rst:210 msgid "" "Sometimes you want to mock up a more complex situation, like for example " "``mock.connection.cursor().execute(\"SELECT 1\")``. If we wanted this call " "to return a list, then we have to configure the result of the nested call." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:213 +#: ../Doc/library/unittest.mock-examples.rst:214 msgid "" "We can use :data:`call` to construct the set of calls in a \"chained call\" " "like this for easy assertion afterwards:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:227 +#: ../Doc/library/unittest.mock-examples.rst:228 msgid "" "It is the call to ``.call_list()`` that turns our call object into a list of " "calls representing the chained calls." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:232 +#: ../Doc/library/unittest.mock-examples.rst:233 msgid "Raising exceptions with mocks" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:234 +#: ../Doc/library/unittest.mock-examples.rst:235 msgid "" "A useful attribute is :attr:`~Mock.side_effect`. If you set this to an " "exception class or instance then the exception will be raised when the mock " "is called." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:246 +#: ../Doc/library/unittest.mock-examples.rst:247 msgid "Side effect functions and iterables" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:248 +#: ../Doc/library/unittest.mock-examples.rst:249 msgid "" "``side_effect`` can also be set to a function or an iterable. The use case " "for ``side_effect`` as an iterable is where your mock is going to be called " @@ -230,7 +230,7 @@ msgid "" "value from the iterable:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:263 +#: ../Doc/library/unittest.mock-examples.rst:264 msgid "" "For more advanced use cases, like dynamically varying the return values " "depending on what the mock is called with, ``side_effect`` can be a " @@ -238,11 +238,35 @@ msgid "" "Whatever the function returns is what the call returns:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:280 +#: ../Doc/library/unittest.mock-examples.rst:281 +msgid "Mocking asynchronous iterators" +msgstr "" + +#: ../Doc/library/unittest.mock-examples.rst:283 +msgid "" +"Since Python 3.8, ``AsyncMock`` and ``MagicMock`` have support to mock :ref:" +"`async-iterators` through ``__aiter__``. The :attr:`~Mock.return_value` " +"attribute of ``__aiter__`` can be used to set the return values to be used " +"for iteration." +msgstr "" + +#: ../Doc/library/unittest.mock-examples.rst:298 +msgid "Mocking asynchronous context manager" +msgstr "" + +#: ../Doc/library/unittest.mock-examples.rst:300 +msgid "" +"Since Python 3.8, ``AsyncMock`` and ``MagicMock`` have support to mock :ref:" +"`async-context-managers` through ``__aenter__`` and ``__aexit__``. By " +"default, ``__aenter__`` and ``__aexit__`` are ``AsyncMock`` instances that " +"return an async function." +msgstr "" + +#: ../Doc/library/unittest.mock-examples.rst:322 msgid "Creating a Mock from an Existing Object" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:282 +#: ../Doc/library/unittest.mock-examples.rst:324 msgid "" "One problem with over use of mocking is that it couples your tests to the " "implementation of your mocks rather than your real code. Suppose you have a " @@ -252,7 +276,7 @@ msgid "" "then your tests will continue to pass even though your code is now broken!" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:289 +#: ../Doc/library/unittest.mock-examples.rst:331 msgid "" ":class:`Mock` allows you to provide an object as a specification for the " "mock, using the *spec* keyword argument. Accessing methods / attributes on " @@ -262,31 +286,31 @@ msgid "" "without you having to instantiate the class in those tests." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:302 +#: ../Doc/library/unittest.mock-examples.rst:344 msgid "" "Using a specification also enables a smarter matching of calls made to the " "mock, regardless of whether some parameters were passed as positional or " "named arguments::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:313 +#: ../Doc/library/unittest.mock-examples.rst:355 msgid "" "If you want this smarter matching to also work with method calls on the " "mock, you can use :ref:`auto-speccing `." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:316 +#: ../Doc/library/unittest.mock-examples.rst:358 msgid "" "If you want a stronger form of specification that prevents the setting of " "arbitrary attributes as well as the getting of them then you can use " "*spec_set* instead of *spec*." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:323 +#: ../Doc/library/unittest.mock-examples.rst:365 msgid "Patch Decorators" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:327 +#: ../Doc/library/unittest.mock-examples.rst:369 msgid "" "With :func:`patch` it matters that you patch objects in the namespace where " "they are looked up. This is normally straightforward, but for a quick guide " @@ -296,7 +320,7 @@ msgstr "" "de nommage où ils sont recherchés. C'est ce qui se fait normalement, mais " "pour un guide rapide, lisez :ref:`où patcher `." -#: ../Doc/library/unittest.mock-examples.rst:332 +#: ../Doc/library/unittest.mock-examples.rst:374 msgid "" "A common need in tests is to patch a class attribute or a module attribute, " "for example patching a builtin or patching a class in a module to test that " @@ -305,7 +329,7 @@ msgid "" "tests and cause hard to diagnose problems." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:338 +#: ../Doc/library/unittest.mock-examples.rst:380 msgid "" "mock provides three convenient decorators for this: :func:`patch`, :func:" "`patch.object` and :func:`patch.dict`. ``patch`` takes a single string, of " @@ -316,38 +340,38 @@ msgid "" "to patch it with." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:346 +#: ../Doc/library/unittest.mock-examples.rst:388 #, fuzzy msgid "``patch.object``::" msgstr "``patch.object``:" -#: ../Doc/library/unittest.mock-examples.rst:363 +#: ../Doc/library/unittest.mock-examples.rst:405 msgid "" "If you are patching a module (including :mod:`builtins`) then use :func:" "`patch` instead of :func:`patch.object`:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:373 +#: ../Doc/library/unittest.mock-examples.rst:415 msgid "" "The module name can be 'dotted', in the form ``package.module`` if needed::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:382 +#: ../Doc/library/unittest.mock-examples.rst:424 msgid "A nice pattern is to actually decorate test methods themselves:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:393 +#: ../Doc/library/unittest.mock-examples.rst:435 msgid "" "If you want to patch with a Mock, you can use :func:`patch` with only one " "argument (or :func:`patch.object` with two arguments). The mock will be " "created for you and passed into the test function / method:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:405 +#: ../Doc/library/unittest.mock-examples.rst:447 msgid "You can stack up multiple patch decorators using this pattern::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:416 +#: ../Doc/library/unittest.mock-examples.rst:458 msgid "" "When you nest patch decorators the mocks are passed in to the decorated " "function in the same order they applied (the normal *Python* order that " @@ -355,7 +379,7 @@ msgid "" "above the mock for ``test_module.ClassName2`` is passed in first." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:421 +#: ../Doc/library/unittest.mock-examples.rst:463 msgid "" "There is also :func:`patch.dict` for setting values in a dictionary just " "during a scope and restoring the dictionary to its original state when the " @@ -365,38 +389,38 @@ msgstr "" "dictionnaire au sein d'une portée et restaurer ce dictionnaire à son état " "d'origine lorsque le test se termine ::" -#: ../Doc/library/unittest.mock-examples.rst:432 +#: ../Doc/library/unittest.mock-examples.rst:474 msgid "" "``patch``, ``patch.object`` and ``patch.dict`` can all be used as context " "managers." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:434 +#: ../Doc/library/unittest.mock-examples.rst:476 msgid "" "Where you use :func:`patch` to create a mock for you, you can get a " "reference to the mock using the \"as\" form of the with statement:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:449 +#: ../Doc/library/unittest.mock-examples.rst:491 msgid "" "As an alternative ``patch``, ``patch.object`` and ``patch.dict`` can be used " "as class decorators. When used in this way it is the same as applying the " "decorator individually to every method whose name starts with \"test\"." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:457 +#: ../Doc/library/unittest.mock-examples.rst:499 msgid "Further Examples" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:460 +#: ../Doc/library/unittest.mock-examples.rst:502 msgid "Here are some more examples for some slightly more advanced scenarios." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:464 +#: ../Doc/library/unittest.mock-examples.rst:506 msgid "Mocking chained calls" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:466 +#: ../Doc/library/unittest.mock-examples.rst:508 msgid "" "Mocking chained calls is actually straightforward with mock once you " "understand the :attr:`~Mock.return_value` attribute. When a mock is called " @@ -404,31 +428,31 @@ msgid "" "called, a new :class:`Mock` is created." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:471 +#: ../Doc/library/unittest.mock-examples.rst:513 msgid "" "This means that you can see how the object returned from a call to a mocked " "object has been used by interrogating the ``return_value`` mock:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:479 +#: ../Doc/library/unittest.mock-examples.rst:521 msgid "" "From here it is a simple step to configure and then make assertions about " "chained calls. Of course another alternative is writing your code in a more " "testable way in the first place..." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:483 +#: ../Doc/library/unittest.mock-examples.rst:525 msgid "So, suppose we have some code that looks a little bit like this:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:492 +#: ../Doc/library/unittest.mock-examples.rst:534 msgid "" "Assuming that ``BackendProvider`` is already well tested, how do we test " "``method()``? Specifically, we want to test that the code section ``# more " "code`` uses the response object in the correct way." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:496 +#: ../Doc/library/unittest.mock-examples.rst:538 msgid "" "As this chain of calls is made from an instance attribute we can monkey " "patch the ``backend`` attribute on a ``Something`` instance. In this " @@ -438,26 +462,26 @@ msgid "" "response object uses the builtin :func:`open` as its ``spec``." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:503 +#: ../Doc/library/unittest.mock-examples.rst:545 msgid "" "To do this we create a mock instance as our mock backend and create a mock " "response object for it. To set the response as the return value for that " "final ``start_call`` we could do this::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:509 +#: ../Doc/library/unittest.mock-examples.rst:551 msgid "" "We can do that in a slightly nicer way using the :meth:`~Mock." "configure_mock` method to directly set the return value for us::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:518 +#: ../Doc/library/unittest.mock-examples.rst:560 msgid "" "With these we monkey patch the \"mock backend\" in place and can make the " "real call::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:524 +#: ../Doc/library/unittest.mock-examples.rst:566 msgid "" "Using :attr:`~Mock.mock_calls` we can check the chained call with a single " "assert. A chained call is several calls in one line of code, so there will " @@ -465,11 +489,11 @@ msgid "" "create this list of calls for us::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:535 +#: ../Doc/library/unittest.mock-examples.rst:577 msgid "Partial mocking" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:537 +#: ../Doc/library/unittest.mock-examples.rst:579 msgid "" "In some tests I wanted to mock out a call to :meth:`datetime.date.today` to " "return a known date, but I didn't want to prevent the code under test from " @@ -478,14 +502,14 @@ msgid "" "method." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:542 +#: ../Doc/library/unittest.mock-examples.rst:584 msgid "" "I found a simple way of doing this that involved effectively wrapping the " "date class with a mock, but passing through calls to the constructor to the " "real class (and returning real instances)." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:546 +#: ../Doc/library/unittest.mock-examples.rst:588 msgid "" "The :func:`patch decorator ` is used here to mock out the ``date`` " "class in the module under test. The :attr:`side_effect` attribute on the " @@ -494,13 +518,13 @@ msgid "" "returned by ``side_effect``. ::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:560 +#: ../Doc/library/unittest.mock-examples.rst:602 msgid "" "Note that we don't patch :class:`datetime.date` globally, we patch ``date`` " "in the module that *uses* it. See :ref:`where to patch `." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:563 +#: ../Doc/library/unittest.mock-examples.rst:605 msgid "" "When ``date.today()`` is called a known date is returned, but calls to the " "``date(...)`` constructor still return normal dates. Without this you can " @@ -508,30 +532,30 @@ msgid "" "algorithm as the code under test, which is a classic testing anti-pattern." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:568 +#: ../Doc/library/unittest.mock-examples.rst:610 msgid "" "Calls to the date constructor are recorded in the ``mock_date`` attributes " "(``call_count`` and friends) which may also be useful for your tests." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:571 +#: ../Doc/library/unittest.mock-examples.rst:613 msgid "" "An alternative way of dealing with mocking dates, or other builtin classes, " "is discussed in `this blog entry `_." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:577 +#: ../Doc/library/unittest.mock-examples.rst:619 msgid "Mocking a Generator Method" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:579 +#: ../Doc/library/unittest.mock-examples.rst:621 msgid "" "A Python generator is a function or method that uses the :keyword:`yield` " "statement to return a series of values when iterated over [#]_." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:582 +#: ../Doc/library/unittest.mock-examples.rst:624 msgid "" "A generator method / function is called to return the generator object. It " "is the generator object that is then iterated over. The protocol method for " @@ -539,23 +563,23 @@ msgid "" "`MagicMock`." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:587 +#: ../Doc/library/unittest.mock-examples.rst:629 msgid "" "Here's an example class with an \"iter\" method implemented as a generator:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:599 +#: ../Doc/library/unittest.mock-examples.rst:641 msgid "How would we mock this class, and in particular its \"iter\" method?" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:601 +#: ../Doc/library/unittest.mock-examples.rst:643 msgid "" "To configure the values returned from the iteration (implicit in the call " "to :class:`list`), we need to configure the object returned by the call to " "``foo.iter()``." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:609 +#: ../Doc/library/unittest.mock-examples.rst:651 msgid "" "There are also generator expressions and more `advanced uses `_ of generators, but we aren't concerned " @@ -564,11 +588,11 @@ msgid "" "com/generators/>`_." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:617 +#: ../Doc/library/unittest.mock-examples.rst:659 msgid "Applying the same patch to every test method" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:619 +#: ../Doc/library/unittest.mock-examples.rst:661 msgid "" "If you want several patches in place for multiple test methods the obvious " "way is to apply the patch decorators to every method. This can feel like " @@ -578,14 +602,14 @@ msgid "" "methods whose names start with ``test``::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:643 +#: ../Doc/library/unittest.mock-examples.rst:685 msgid "" "An alternative way of managing patches is to use the :ref:`start-and-stop`. " "These allow you to move the patching into your ``setUp`` and ``tearDown`` " "methods. ::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:660 +#: ../Doc/library/unittest.mock-examples.rst:702 msgid "" "If you use this technique you must ensure that the patching is \"undone\" by " "calling ``stop``. This can be fiddlier than you might think, because if an " @@ -593,11 +617,11 @@ msgid "" "`unittest.TestCase.addCleanup` makes this easier::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:678 +#: ../Doc/library/unittest.mock-examples.rst:720 msgid "Mocking Unbound Methods" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:680 +#: ../Doc/library/unittest.mock-examples.rst:722 msgid "" "Whilst writing tests today I needed to patch an *unbound method* (patching " "the method on the class rather than on the instance). I needed self to be " @@ -611,7 +635,7 @@ msgid "" "becomes a nuisance." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:691 +#: ../Doc/library/unittest.mock-examples.rst:733 msgid "" "If you pass ``autospec=True`` to patch then it does the patching with a " "*real* function object. This function object has the same signature as the " @@ -623,30 +647,30 @@ msgid "" "exactly what I wanted:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:712 +#: ../Doc/library/unittest.mock-examples.rst:754 msgid "" "If we don't use ``autospec=True`` then the unbound method is patched out " "with a Mock instance instead, and isn't called with ``self``." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:717 +#: ../Doc/library/unittest.mock-examples.rst:759 msgid "Checking multiple calls with mock" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:719 +#: ../Doc/library/unittest.mock-examples.rst:761 msgid "" "mock has a nice API for making assertions about how your mock objects are " "used." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:726 +#: ../Doc/library/unittest.mock-examples.rst:768 msgid "" "If your mock is only being called once you can use the :meth:" "`assert_called_once_with` method that also asserts that the :attr:" "`call_count` is one." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:737 +#: ../Doc/library/unittest.mock-examples.rst:779 msgid "" "Both ``assert_called_with`` and ``assert_called_once_with`` make assertions " "about the *most recent* call. If your mock is going to be called several " @@ -654,7 +678,7 @@ msgid "" "attr:`~Mock.call_args_list`:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:749 +#: ../Doc/library/unittest.mock-examples.rst:791 msgid "" "The :data:`call` helper makes it easy to make assertions about these calls. " "You can build up a list of expected calls and compare it to " @@ -662,11 +686,11 @@ msgid "" "``call_args_list``:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:759 +#: ../Doc/library/unittest.mock-examples.rst:801 msgid "Coping with mutable arguments" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:761 +#: ../Doc/library/unittest.mock-examples.rst:803 msgid "" "Another situation is rare, but can bite you, is when your mock is called " "with mutable arguments. ``call_args`` and ``call_args_list`` store " @@ -675,26 +699,26 @@ msgid "" "when the mock was called." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:766 +#: ../Doc/library/unittest.mock-examples.rst:808 msgid "" "Here's some example code that shows the problem. Imagine the following " "functions defined in 'mymodule'::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:777 +#: ../Doc/library/unittest.mock-examples.rst:819 msgid "" "When we try to test that ``grob`` calls ``frob`` with the correct argument " "look what happens::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:792 +#: ../Doc/library/unittest.mock-examples.rst:834 msgid "" "One possibility would be for mock to copy the arguments you pass in. This " "could then cause problems if you do assertions that rely on object identity " "for equality." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:796 +#: ../Doc/library/unittest.mock-examples.rst:838 msgid "" "Here's one solution that uses the :attr:`side_effect` functionality. If you " "provide a ``side_effect`` function for a mock then ``side_effect`` will be " @@ -704,28 +728,28 @@ msgid "" "doing the assertion. Again a helper function sets this up for me. ::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:825 +#: ../Doc/library/unittest.mock-examples.rst:867 msgid "" "``copy_call_args`` is called with the mock that will be called. It returns a " "new mock that we do the assertion on. The ``side_effect`` function makes a " "copy of the args and calls our ``new_mock`` with the copy." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:831 +#: ../Doc/library/unittest.mock-examples.rst:873 msgid "" "If your mock is only going to be used once there is an easier way of " "checking arguments at the point they are called. You can simply do the " "checking inside a ``side_effect`` function." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:845 +#: ../Doc/library/unittest.mock-examples.rst:887 msgid "" "An alternative approach is to create a subclass of :class:`Mock` or :class:" "`MagicMock` that copies (using :func:`copy.deepcopy`) the arguments. Here's " "an example implementation:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:869 +#: ../Doc/library/unittest.mock-examples.rst:911 msgid "" "When you subclass ``Mock`` or ``MagicMock`` all dynamically created " "attributes, and the ``return_value`` will use your subclass automatically. " @@ -733,18 +757,18 @@ msgid "" "``CopyingMock``." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:875 +#: ../Doc/library/unittest.mock-examples.rst:917 msgid "Nesting Patches" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:877 +#: ../Doc/library/unittest.mock-examples.rst:919 msgid "" "Using patch as a context manager is nice, but if you do multiple patches you " "can end up with nested with statements indenting further and further to the " "right::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:895 +#: ../Doc/library/unittest.mock-examples.rst:937 msgid "" "With unittest ``cleanup`` functions and the :ref:`start-and-stop` we can " "achieve the same effect without the nested indentation. A simple helper " @@ -752,24 +776,24 @@ msgid "" "mock for us::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:923 +#: ../Doc/library/unittest.mock-examples.rst:965 msgid "Mocking a dictionary with MagicMock" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:925 +#: ../Doc/library/unittest.mock-examples.rst:967 msgid "" "You may want to mock a dictionary, or other container object, recording all " "access to it whilst having it still behave like a dictionary." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:928 +#: ../Doc/library/unittest.mock-examples.rst:970 msgid "" "We can do this with :class:`MagicMock`, which will behave like a dictionary, " "and using :data:`~Mock.side_effect` to delegate dictionary access to a real " "underlying dictionary that is under our control." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:932 +#: ../Doc/library/unittest.mock-examples.rst:974 msgid "" "When the :meth:`__getitem__` and :meth:`__setitem__` methods of our " "``MagicMock`` are called (normal dictionary access) then ``side_effect`` is " @@ -777,49 +801,49 @@ msgid "" "can also control what is returned." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:936 +#: ../Doc/library/unittest.mock-examples.rst:978 msgid "" "After the ``MagicMock`` has been used we can use attributes like :data:" "`~Mock.call_args_list` to assert about how the dictionary was used:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:952 +#: ../Doc/library/unittest.mock-examples.rst:994 msgid "" "An alternative to using ``MagicMock`` is to use ``Mock`` and *only* provide " "the magic methods you specifically want:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:959 +#: ../Doc/library/unittest.mock-examples.rst:1001 msgid "" "A *third* option is to use ``MagicMock`` but passing in ``dict`` as the " "*spec* (or *spec_set*) argument so that the ``MagicMock`` created only has " "dictionary magic methods available:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:967 +#: ../Doc/library/unittest.mock-examples.rst:1009 msgid "" "With these side effect functions in place, the ``mock`` will behave like a " "normal dictionary but recording the access. It even raises a :exc:`KeyError` " "if you try to access a key that doesn't exist." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:986 +#: ../Doc/library/unittest.mock-examples.rst:1028 msgid "" "After it has been used you can make assertions about the access using the " "normal mock methods and attributes:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:998 +#: ../Doc/library/unittest.mock-examples.rst:1040 msgid "Mock subclasses and their attributes" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1000 +#: ../Doc/library/unittest.mock-examples.rst:1042 msgid "" "There are various reasons why you might want to subclass :class:`Mock`. One " "reason might be to add helper methods. Here's a silly example:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1016 +#: ../Doc/library/unittest.mock-examples.rst:1058 msgid "" "The standard behaviour for ``Mock`` instances is that attributes and the " "return value mocks are of the same type as the mock they are accessed on. " @@ -829,7 +853,7 @@ msgid "" "mock of instances of your subclass." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1032 +#: ../Doc/library/unittest.mock-examples.rst:1074 msgid "" "Sometimes this is inconvenient. For example, `one user `_ is subclassing mock to created a `Twisted " @@ -838,7 +862,7 @@ msgid "" "errors." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1038 +#: ../Doc/library/unittest.mock-examples.rst:1080 msgid "" "``Mock`` (in all its flavours) uses a method called ``_get_child_mock`` to " "create these \"sub-mocks\" for attributes and return values. You can prevent " @@ -847,25 +871,25 @@ msgid "" "are then passed onto the mock constructor:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1055 +#: ../Doc/library/unittest.mock-examples.rst:1097 msgid "" "An exception to this rule are the non-callable mocks. Attributes use the " "callable variant because otherwise non-callable mocks couldn't have callable " "methods." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1061 +#: ../Doc/library/unittest.mock-examples.rst:1103 msgid "Mocking imports with patch.dict" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1063 +#: ../Doc/library/unittest.mock-examples.rst:1105 msgid "" "One situation where mocking can be hard is where you have a local import " "inside a function. These are harder to mock because they aren't using an " "object from the module namespace that we can patch out." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1067 +#: ../Doc/library/unittest.mock-examples.rst:1109 msgid "" "Generally local imports are to be avoided. They are sometimes done to " "prevent circular dependencies, for which there is *usually* a much better " @@ -875,7 +899,7 @@ msgid "" "and only do the import on first use)." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1074 +#: ../Doc/library/unittest.mock-examples.rst:1116 msgid "" "That aside there is a way to use ``mock`` to affect the results of an " "import. Importing fetches an *object* from the :data:`sys.modules` " @@ -885,7 +909,7 @@ msgid "" "back. This need not be the case however." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1081 +#: ../Doc/library/unittest.mock-examples.rst:1123 msgid "" "This means you can use :func:`patch.dict` to *temporarily* put a mock in " "place in :data:`sys.modules`. Any imports whilst this patch is active will " @@ -894,29 +918,29 @@ msgid "" "whatever was there previously will be restored safely." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1087 +#: ../Doc/library/unittest.mock-examples.rst:1129 msgid "Here's an example that mocks out the 'fooble' module." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1099 +#: ../Doc/library/unittest.mock-examples.rst:1141 msgid "" "As you can see the ``import fooble`` succeeds, but on exit there is no " "'fooble' left in :data:`sys.modules`." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1102 +#: ../Doc/library/unittest.mock-examples.rst:1144 msgid "This also works for the ``from module import name`` form:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1112 +#: ../Doc/library/unittest.mock-examples.rst:1154 msgid "With slightly more work you can also mock package imports:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1125 +#: ../Doc/library/unittest.mock-examples.rst:1167 msgid "Tracking order of calls and less verbose call assertions" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1127 +#: ../Doc/library/unittest.mock-examples.rst:1169 msgid "" "The :class:`Mock` class allows you to track the *order* of method calls on " "your mock objects through the :attr:`~Mock.method_calls` attribute. This " @@ -924,7 +948,7 @@ msgid "" "however we can use :attr:`~Mock.mock_calls` to achieve the same effect." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1132 +#: ../Doc/library/unittest.mock-examples.rst:1174 msgid "" "Because mocks track calls to child mocks in ``mock_calls``, and accessing an " "arbitrary attribute of a mock creates a child mock, we can create our " @@ -932,20 +956,20 @@ msgid "" "recorded, in order, in the ``mock_calls`` of the parent:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1149 +#: ../Doc/library/unittest.mock-examples.rst:1191 msgid "" "We can then assert about the calls, including the order, by comparing with " "the ``mock_calls`` attribute on the manager mock:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1156 +#: ../Doc/library/unittest.mock-examples.rst:1198 msgid "" "If ``patch`` is creating, and putting in place, your mocks then you can " "attach them to a manager mock using the :meth:`~Mock.attach_mock` method. " "After attaching calls will be recorded in ``mock_calls`` of the manager. ::" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1175 +#: ../Doc/library/unittest.mock-examples.rst:1217 msgid "" "If many calls have been made, but you're only interested in a particular " "sequence of them then an alternative is to use the :meth:`~Mock." @@ -954,13 +978,13 @@ msgid "" "mock_calls` then the assert succeeds." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1189 +#: ../Doc/library/unittest.mock-examples.rst:1231 msgid "" "Even though the chained call ``m.one().two().three()`` aren't the only calls " "that have been made to the mock, the assert still succeeds." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1192 +#: ../Doc/library/unittest.mock-examples.rst:1234 msgid "" "Sometimes a mock may have several calls made to it, and you are only " "interested in asserting about *some* of those calls. You may not even care " @@ -968,17 +992,17 @@ msgid "" "``assert_has_calls``:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1204 +#: ../Doc/library/unittest.mock-examples.rst:1246 msgid "More complex argument matching" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1206 +#: ../Doc/library/unittest.mock-examples.rst:1248 msgid "" "Using the same basic concept as :data:`ANY` we can implement matchers to do " "more complex assertions on objects used as arguments to mocks." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1209 +#: ../Doc/library/unittest.mock-examples.rst:1251 msgid "" "Suppose we expect some object to be passed to a mock that by default " "compares equal based on object identity (which is the Python default for " @@ -988,28 +1012,28 @@ msgid "" "attributes for us." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1216 +#: ../Doc/library/unittest.mock-examples.rst:1258 msgid "" "You can see in this example how a 'standard' call to ``assert_called_with`` " "isn't sufficient:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1231 +#: ../Doc/library/unittest.mock-examples.rst:1273 msgid "" "A comparison function for our ``Foo`` class might look something like this:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1243 +#: ../Doc/library/unittest.mock-examples.rst:1285 msgid "" "And a matcher object that can use comparison functions like this for its " "equality operation would look something like this:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1254 +#: ../Doc/library/unittest.mock-examples.rst:1296 msgid "Putting all this together:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1259 +#: ../Doc/library/unittest.mock-examples.rst:1301 msgid "" "The ``Matcher`` is instantiated with our compare function and the ``Foo`` " "object we want to compare against. In ``assert_called_with`` the ``Matcher`` " @@ -1019,13 +1043,13 @@ msgid "" "raised:" msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1272 +#: ../Doc/library/unittest.mock-examples.rst:1314 msgid "" "With a bit of tweaking you could have the comparison function raise the :exc:" "`AssertionError` directly and provide a more useful failure message." msgstr "" -#: ../Doc/library/unittest.mock-examples.rst:1275 +#: ../Doc/library/unittest.mock-examples.rst:1317 msgid "" "As of version 1.5, the Python testing library `PyHamcrest `_ provides similar functionality, that may be " diff --git a/library/unittest.mock.po b/library/unittest.mock.po index 5939cdb30..4fd26a19d 100644 --- a/library/unittest.mock.po +++ b/library/unittest.mock.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-04-22 12:07+0200\n" "Last-Translator: Bousquié Pierre \n" "Language-Team: FRENCH \n" @@ -629,26 +629,26 @@ msgstr "Un booléen représentant si le simulacre a bien été appelé ou non : msgid "An integer telling you how many times the mock object has been called:" msgstr "Un entier indiquant combien de fois le simulacre a été appelé :" -#: ../Doc/library/unittest.mock.rst:520 +#: ../Doc/library/unittest.mock.rst:519 msgid "Set this to configure the value returned by calling the mock:" msgstr "" "Définir cette option pour configurer la valeur renvoyé par appel du " "simulacre :" -#: ../Doc/library/unittest.mock.rst:527 +#: ../Doc/library/unittest.mock.rst:526 msgid "" "The default return value is a mock object and you can configure it in the " "normal way:" msgstr "" "La valeur de revoie par défaut est un simulacre configurable normalement :" -#: ../Doc/library/unittest.mock.rst:536 +#: ../Doc/library/unittest.mock.rst:535 msgid ":attr:`return_value` can also be set in the constructor:" msgstr "" "L'attribut :attr:`return_value` peut également être défini dans le " "constructeur :" -#: ../Doc/library/unittest.mock.rst:547 +#: ../Doc/library/unittest.mock.rst:546 msgid "" "This can either be a function to be called when the mock is called, an " "iterable or an exception (class or instance) to be raised." @@ -656,7 +656,7 @@ msgstr "" "C'est soit une fonction à appeler lors de l'appel du simulacre, soit une " "exception (classe ou instance) à lever." -#: ../Doc/library/unittest.mock.rst:550 +#: ../Doc/library/unittest.mock.rst:549 msgid "" "If you pass in a function it will be called with same arguments as the mock " "and unless the function returns the :data:`DEFAULT` singleton the call to " @@ -670,7 +670,7 @@ msgstr "" "Si la fonction renvoie :data:`DEFAULT` alors le simulacre renvoie sa valeur " "normale (celle de :attr:`return_value`)." -#: ../Doc/library/unittest.mock.rst:556 +#: ../Doc/library/unittest.mock.rst:555 msgid "" "If you pass in an iterable, it is used to retrieve an iterator which must " "yield a value on every call. This value can either be an exception instance " @@ -683,7 +683,7 @@ msgstr "" "simulacre (le traitement :data:`DEFAULT` est identique au renvoie de la " "fonction simulée)." -#: ../Doc/library/unittest.mock.rst:561 +#: ../Doc/library/unittest.mock.rst:560 msgid "" "An example of a mock that raises an exception (to test exception handling of " "an API):" @@ -691,15 +691,15 @@ msgstr "" "Un exemple d'un simulacre qui lève une exception (pour tester la gestion des " "exceptions d'une API) :" -#: ../Doc/library/unittest.mock.rst:571 +#: ../Doc/library/unittest.mock.rst:570 msgid "Using :attr:`side_effect` to return a sequence of values:" msgstr "Utiliser :attr:`side_effect` pour renvoyer une séquence de valeurs :" -#: ../Doc/library/unittest.mock.rst:578 +#: ../Doc/library/unittest.mock.rst:577 msgid "Using a callable:" msgstr "Utilisation d'un objet appelable :" -#: ../Doc/library/unittest.mock.rst:588 +#: ../Doc/library/unittest.mock.rst:587 msgid "" ":attr:`side_effect` can be set in the constructor. Here's an example that " "adds one to the value the mock is called with and returns it:" @@ -707,11 +707,11 @@ msgstr "" "Un attribut :attr:`side_effect` peut être défini dans le constructeur. Voici " "un exemple qui ajoute un à la valeur du simulacre appelé et qui le renvoie :" -#: ../Doc/library/unittest.mock.rst:598 +#: ../Doc/library/unittest.mock.rst:597 msgid "Setting :attr:`side_effect` to ``None`` clears it:" msgstr "Positionner :attr:`side_effect` sur ``None`` l'efface :" -#: ../Doc/library/unittest.mock.rst:612 +#: ../Doc/library/unittest.mock.rst:611 #, fuzzy msgid "" "This is either ``None`` (if the mock hasn't been called), or the arguments " @@ -727,7 +727,7 @@ msgstr "" "avec lequel le simulacre a été appelé (ou un tuple vide) et le second " "élément est l'ensemble des arguments nommés (ou un dictionnaire vide)." -#: ../Doc/library/unittest.mock.rst:645 +#: ../Doc/library/unittest.mock.rst:644 msgid "" ":attr:`call_args`, along with members of the lists :attr:`call_args_list`, :" "attr:`method_calls` and :attr:`mock_calls` are :data:`call` objects. These " @@ -740,7 +740,7 @@ msgstr "" "faire des affirmations plus complexes sur chacun des arguments. Voir :ref:" "`appels comme tuples `." -#: ../Doc/library/unittest.mock.rst:654 +#: ../Doc/library/unittest.mock.rst:653 msgid "" "This is a list of all the calls made to the mock object in sequence (so the " "length of the list is the number of times it has been called). Before any " @@ -749,47 +749,47 @@ msgid "" "`call_args_list`." msgstr "" -#: ../Doc/library/unittest.mock.rst:670 +#: ../Doc/library/unittest.mock.rst:669 msgid "" "Members of :attr:`call_args_list` are :data:`call` objects. These can be " "unpacked as tuples to get at the individual arguments. See :ref:`calls as " "tuples `." msgstr "" -#: ../Doc/library/unittest.mock.rst:677 +#: ../Doc/library/unittest.mock.rst:676 msgid "" "As well as tracking calls to themselves, mocks also track calls to methods " "and attributes, and *their* methods and attributes:" msgstr "" -#: ../Doc/library/unittest.mock.rst:688 +#: ../Doc/library/unittest.mock.rst:687 msgid "" "Members of :attr:`method_calls` are :data:`call` objects. These can be " "unpacked as tuples to get at the individual arguments. See :ref:`calls as " "tuples `." msgstr "" -#: ../Doc/library/unittest.mock.rst:695 +#: ../Doc/library/unittest.mock.rst:694 msgid "" ":attr:`mock_calls` records *all* calls to the mock object, its methods, " "magic methods *and* return value mocks." msgstr "" -#: ../Doc/library/unittest.mock.rst:713 +#: ../Doc/library/unittest.mock.rst:712 msgid "" "Members of :attr:`mock_calls` are :data:`call` objects. These can be " "unpacked as tuples to get at the individual arguments. See :ref:`calls as " "tuples `." msgstr "" -#: ../Doc/library/unittest.mock.rst:719 +#: ../Doc/library/unittest.mock.rst:718 msgid "" "The way :attr:`mock_calls` are recorded means that where nested calls are " "made, the parameters of ancestor calls are not recorded and so will always " "compare equal:" msgstr "" -#: ../Doc/library/unittest.mock.rst:733 +#: ../Doc/library/unittest.mock.rst:732 msgid "" "Normally the :attr:`__class__` attribute of an object will return its type. " "For a mock object with a :attr:`spec`, ``__class__`` returns the spec class " @@ -797,32 +797,32 @@ msgid "" "object they are replacing / masquerading as:" msgstr "" -#: ../Doc/library/unittest.mock.rst:742 +#: ../Doc/library/unittest.mock.rst:741 msgid "" ":attr:`__class__` is assignable to, this allows a mock to pass an :func:" "`isinstance` check without forcing you to use a spec:" msgstr "" -#: ../Doc/library/unittest.mock.rst:752 +#: ../Doc/library/unittest.mock.rst:751 msgid "" "A non-callable version of :class:`Mock`. The constructor parameters have the " "same meaning of :class:`Mock`, with the exception of *return_value* and " "*side_effect* which have no meaning on a non-callable mock." msgstr "" -#: ../Doc/library/unittest.mock.rst:756 +#: ../Doc/library/unittest.mock.rst:755 msgid "" "Mock objects that use a class or an instance as a :attr:`spec` or :attr:" "`spec_set` are able to pass :func:`isinstance` tests:" msgstr "" -#: ../Doc/library/unittest.mock.rst:766 +#: ../Doc/library/unittest.mock.rst:765 msgid "" "The :class:`Mock` classes have support for mocking magic methods. See :ref:" "`magic methods ` for the full details." msgstr "" -#: ../Doc/library/unittest.mock.rst:769 +#: ../Doc/library/unittest.mock.rst:768 msgid "" "The mock classes and the :func:`patch` decorators all take arbitrary keyword " "arguments for configuration. For the :func:`patch` decorators the keywords " @@ -830,14 +830,14 @@ msgid "" "arguments are for configuring attributes of the mock:" msgstr "" -#: ../Doc/library/unittest.mock.rst:780 +#: ../Doc/library/unittest.mock.rst:779 msgid "" "The return value and side effect of child mocks can be set in the same way, " "using dotted notation. As you can't use dotted names directly in a call you " "have to create a dictionary and unpack it using ``**``:" msgstr "" -#: ../Doc/library/unittest.mock.rst:795 +#: ../Doc/library/unittest.mock.rst:794 msgid "" "A callable mock which was created with a *spec* (or a *spec_set*) will " "introspect the specification object's signature when matching calls to the " @@ -845,7 +845,7 @@ msgid "" "whether they were passed positionally or by name::" msgstr "" -#: ../Doc/library/unittest.mock.rst:808 +#: ../Doc/library/unittest.mock.rst:807 msgid "" "This applies to :meth:`~Mock.assert_called_with`, :meth:`~Mock." "assert_called_once_with`, :meth:`~Mock.assert_has_calls` and :meth:`~Mock." @@ -853,91 +853,102 @@ msgid "" "calls on the mock object." msgstr "" -#: ../Doc/library/unittest.mock.rst:813 +#: ../Doc/library/unittest.mock.rst:812 msgid "Added signature introspection on specced and autospecced mock objects." msgstr "" -#: ../Doc/library/unittest.mock.rst:819 +#: ../Doc/library/unittest.mock.rst:818 msgid "" "A mock intended to be used as a property, or other descriptor, on a class. :" "class:`PropertyMock` provides :meth:`__get__` and :meth:`__set__` methods so " "you can specify a return value when it is fetched." msgstr "" -#: ../Doc/library/unittest.mock.rst:823 +#: ../Doc/library/unittest.mock.rst:822 msgid "" "Fetching a :class:`PropertyMock` instance from an object calls the mock, " "with no args. Setting it calls the mock with the value being set. ::" msgstr "" -#: ../Doc/library/unittest.mock.rst:844 +#: ../Doc/library/unittest.mock.rst:843 msgid "" "Because of the way mock attributes are stored you can't directly attach a :" "class:`PropertyMock` to a mock object. Instead you can attach it to the mock " "type object::" msgstr "" -#: ../Doc/library/unittest.mock.rst:858 +#: ../Doc/library/unittest.mock.rst:857 msgid "" "An asynchronous version of :class:`Mock`. The :class:`AsyncMock` object will " "behave so the object is recognized as an async function, and the result of a " "call is an awaitable." msgstr "" -#: ../Doc/library/unittest.mock.rst:868 +#: ../Doc/library/unittest.mock.rst:867 msgid "" "The result of ``mock()`` is an async function which will have the outcome of " -"``side_effect`` or ``return_value``:" +"``side_effect`` or ``return_value`` after it has been awaited:" msgstr "" -#: ../Doc/library/unittest.mock.rst:871 +#: ../Doc/library/unittest.mock.rst:870 msgid "" "if ``side_effect`` is a function, the async function will return the result " "of that function," msgstr "" -#: ../Doc/library/unittest.mock.rst:873 +#: ../Doc/library/unittest.mock.rst:872 msgid "" "if ``side_effect`` is an exception, the async function will raise the " "exception," msgstr "" -#: ../Doc/library/unittest.mock.rst:875 +#: ../Doc/library/unittest.mock.rst:874 msgid "" "if ``side_effect`` is an iterable, the async function will return the next " "value of the iterable, however, if the sequence of result is exhausted, " "``StopIteration`` is raised immediately," msgstr "" -#: ../Doc/library/unittest.mock.rst:878 +#: ../Doc/library/unittest.mock.rst:877 msgid "" "if ``side_effect`` is not defined, the async function will return the value " "defined by ``return_value``, hence, by default, the async function returns a " "new :class:`AsyncMock` object." msgstr "" -#: ../Doc/library/unittest.mock.rst:883 +#: ../Doc/library/unittest.mock.rst:882 msgid "" "Setting the *spec* of a :class:`Mock` or :class:`MagicMock` to an async " "function will result in a coroutine object being returned after calling." msgstr "" -#: ../Doc/library/unittest.mock.rst:896 -#, fuzzy -msgid "Assert that the mock was awaited at least once." -msgstr "Asserter que le *mock* a été appelé au moins une fois." +#: ../Doc/library/unittest.mock.rst:894 +msgid "" +"Setting the *spec* of a :class:`Mock`, :class:`MagicMock`, or :class:" +"`AsyncMock` to a class with asynchronous and synchronous functions will " +"automatically detect the synchronous functions and set them as :class:" +"`MagicMock` (if the parent mock is :class:`AsyncMock` or :class:`MagicMock`) " +"or :class:`Mock` (if the parent mock is :class:`Mock`). All asynchronous " +"functions will be :class:`AsyncMock`." +msgstr "" + +#: ../Doc/library/unittest.mock.rst:921 +msgid "" +"Assert that the mock was awaited at least once. Note that this is separate " +"from the object having been called, the ``await`` keyword must be used:" +msgstr "" -#: ../Doc/library/unittest.mock.rst:912 +#: ../Doc/library/unittest.mock.rst:940 #, fuzzy msgid "Assert that the mock was awaited exactly once." msgstr "Asserter que le *mock* a été appelé exactement une fois." -#: ../Doc/library/unittest.mock.rst:928 +#: ../Doc/library/unittest.mock.rst:956 #, fuzzy msgid "Assert that the last await was with the specified arguments." msgstr "Asserter que le simulacre a été appelé avec les arguments spécifiés." -#: ../Doc/library/unittest.mock.rst:945 +#: ../Doc/library/unittest.mock.rst:973 #, fuzzy msgid "" "Assert that the mock was awaited exactly once and with the specified " @@ -946,12 +957,12 @@ msgstr "" "Asserter que le simulacre a été appelé exactement une fois et que cet appel " "était avec les arguments spécifiés." -#: ../Doc/library/unittest.mock.rst:962 +#: ../Doc/library/unittest.mock.rst:990 #, fuzzy msgid "Assert the mock has ever been awaited with the specified arguments." msgstr "Asserter que le simulacre a été appelé avec les arguments spécifiés." -#: ../Doc/library/unittest.mock.rst:978 +#: ../Doc/library/unittest.mock.rst:1006 #, fuzzy msgid "" "Assert the mock has been awaited with the specified calls. The :attr:" @@ -960,7 +971,7 @@ msgstr "" "Asserter que le simulacre a été appelé avec les appels spécifiés. " "L'attribut :attr:`mock_calls` est comparé à la liste des appels." -#: ../Doc/library/unittest.mock.rst:981 +#: ../Doc/library/unittest.mock.rst:1009 #, fuzzy msgid "" "If *any_order* is False (the default) then the awaits must be sequential. " @@ -970,7 +981,7 @@ msgstr "" "séquentiels. Il peut y avoir des appels supplémentaires avant ou après les " "appels spécifiés." -#: ../Doc/library/unittest.mock.rst:985 +#: ../Doc/library/unittest.mock.rst:1013 #, fuzzy msgid "" "If *any_order* is True then the awaits can be in any order, but they must " @@ -979,42 +990,42 @@ msgstr "" "Si *any_order* est vrai alors les appels peuvent être dans n'importe quel " "ordre, mais ils doivent tous apparaître dans :attr:`mock_calls`." -#: ../Doc/library/unittest.mock.rst:1004 +#: ../Doc/library/unittest.mock.rst:1033 #, fuzzy msgid "Assert that the mock was never awaited." msgstr "Asserter que le simulacre n'a jamais été appelé." -#: ../Doc/library/unittest.mock.rst:1011 +#: ../Doc/library/unittest.mock.rst:1040 msgid "" "See :func:`Mock.reset_mock`. Also sets :attr:`await_count` to 0, :attr:" "`await_args` to None, and clears the :attr:`await_args_list`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1016 +#: ../Doc/library/unittest.mock.rst:1045 #, fuzzy msgid "" "An integer keeping track of how many times the mock object has been awaited." msgstr "Un entier indiquant combien de fois le simulacre a été appelé :" -#: ../Doc/library/unittest.mock.rst:1031 +#: ../Doc/library/unittest.mock.rst:1060 msgid "" "This is either ``None`` (if the mock hasn’t been awaited), or the arguments " "that the mock was last awaited with. Functions the same as :attr:`Mock." "call_args`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1049 +#: ../Doc/library/unittest.mock.rst:1078 msgid "" "This is a list of all the awaits made to the mock object in sequence (so the " "length of the list is the number of times it has been awaited). Before any " "awaits have been made it is an empty list." msgstr "" -#: ../Doc/library/unittest.mock.rst:1068 +#: ../Doc/library/unittest.mock.rst:1097 msgid "Calling" msgstr "" -#: ../Doc/library/unittest.mock.rst:1070 +#: ../Doc/library/unittest.mock.rst:1099 msgid "" "Mock objects are callable. The call will return the value set as the :attr:" "`~Mock.return_value` attribute. The default return value is a new Mock " @@ -1023,26 +1034,26 @@ msgid "" "returned each time." msgstr "" -#: ../Doc/library/unittest.mock.rst:1076 +#: ../Doc/library/unittest.mock.rst:1105 msgid "" "Calls made to the object will be recorded in the attributes like :attr:" "`~Mock.call_args` and :attr:`~Mock.call_args_list`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1079 +#: ../Doc/library/unittest.mock.rst:1108 msgid "" "If :attr:`~Mock.side_effect` is set then it will be called after the call " "has been recorded, so if :attr:`side_effect` raises an exception the call is " "still recorded." msgstr "" -#: ../Doc/library/unittest.mock.rst:1083 +#: ../Doc/library/unittest.mock.rst:1112 msgid "" "The simplest way to make a mock raise an exception when called is to make :" "attr:`~Mock.side_effect` an exception class or instance:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1101 +#: ../Doc/library/unittest.mock.rst:1130 msgid "" "If :attr:`side_effect` is a function then whatever that function returns is " "what calls to the mock return. The :attr:`side_effect` function is called " @@ -1050,7 +1061,7 @@ msgid "" "value of the call dynamically, based on the input:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1117 +#: ../Doc/library/unittest.mock.rst:1146 msgid "" "If you want the mock to still return the default return value (a new mock), " "or any set return value, then there are two ways of doing this. Either " @@ -1058,36 +1069,36 @@ msgid "" "data:`DEFAULT`:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1136 +#: ../Doc/library/unittest.mock.rst:1165 msgid "" "To remove a :attr:`side_effect`, and return to the default behaviour, set " "the :attr:`side_effect` to ``None``:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1150 +#: ../Doc/library/unittest.mock.rst:1179 msgid "" "The :attr:`side_effect` can also be any iterable object. Repeated calls to " "the mock will return values from the iterable (until the iterable is " "exhausted and a :exc:`StopIteration` is raised):" msgstr "" -#: ../Doc/library/unittest.mock.rst:1166 +#: ../Doc/library/unittest.mock.rst:1195 msgid "" "If any members of the iterable are exceptions they will be raised instead of " "returned::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1184 +#: ../Doc/library/unittest.mock.rst:1213 msgid "Deleting Attributes" msgstr "" -#: ../Doc/library/unittest.mock.rst:1186 +#: ../Doc/library/unittest.mock.rst:1215 msgid "" "Mock objects create attributes on demand. This allows them to pretend to be " "objects of any type." msgstr "" -#: ../Doc/library/unittest.mock.rst:1189 +#: ../Doc/library/unittest.mock.rst:1218 msgid "" "You may want a mock object to return ``False`` to a :func:`hasattr` call, or " "raise an :exc:`AttributeError` when an attribute is fetched. You can do this " @@ -1095,17 +1106,17 @@ msgid "" "convenient." msgstr "" -#: ../Doc/library/unittest.mock.rst:1193 +#: ../Doc/library/unittest.mock.rst:1222 msgid "" "You \"block\" attributes by deleting them. Once deleted, accessing an " "attribute will raise an :exc:`AttributeError`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1210 +#: ../Doc/library/unittest.mock.rst:1239 msgid "Mock names and the name attribute" msgstr "" -#: ../Doc/library/unittest.mock.rst:1212 +#: ../Doc/library/unittest.mock.rst:1241 msgid "" "Since \"name\" is an argument to the :class:`Mock` constructor, if you want " "your mock object to have a \"name\" attribute you can't just pass it in at " @@ -1113,17 +1124,17 @@ msgid "" "configure_mock`::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1222 +#: ../Doc/library/unittest.mock.rst:1251 msgid "" "A simpler option is to simply set the \"name\" attribute after mock " "creation::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1229 +#: ../Doc/library/unittest.mock.rst:1258 msgid "Attaching Mocks as Attributes" msgstr "" -#: ../Doc/library/unittest.mock.rst:1231 +#: ../Doc/library/unittest.mock.rst:1260 msgid "" "When you attach a mock as an attribute of another mock (or as the return " "value) it becomes a \"child\" of that mock. Calls to the child are recorded " @@ -1134,20 +1145,20 @@ msgid "" "calls between mocks:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1249 +#: ../Doc/library/unittest.mock.rst:1278 msgid "" "The exception to this is if the mock has a name. This allows you to prevent " "the \"parenting\" if for some reason you don't want it to happen." msgstr "" -#: ../Doc/library/unittest.mock.rst:1260 +#: ../Doc/library/unittest.mock.rst:1289 msgid "" "Mocks created for you by :func:`patch` are automatically given names. To " "attach mocks that have names to a parent you use the :meth:`~Mock." "attach_mock` method::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1278 +#: ../Doc/library/unittest.mock.rst:1307 msgid "" "The only exceptions are magic methods and attributes (those that have " "leading and trailing double underscores). Mock doesn't create these but " @@ -1157,11 +1168,11 @@ msgid "" "support see :ref:`magic methods `." msgstr "" -#: ../Doc/library/unittest.mock.rst:1287 +#: ../Doc/library/unittest.mock.rst:1316 msgid "The patchers" msgstr "" -#: ../Doc/library/unittest.mock.rst:1289 +#: ../Doc/library/unittest.mock.rst:1318 msgid "" "The patch decorators are used for patching objects only within the scope of " "the function they decorate. They automatically handle the unpatching for " @@ -1169,17 +1180,17 @@ msgid "" "in with statements or as class decorators." msgstr "" -#: ../Doc/library/unittest.mock.rst:1296 +#: ../Doc/library/unittest.mock.rst:1325 msgid "patch" msgstr "" -#: ../Doc/library/unittest.mock.rst:1300 +#: ../Doc/library/unittest.mock.rst:1329 msgid "" ":func:`patch` is straightforward to use. The key is to do the patching in " "the right namespace. See the section `where to patch`_." msgstr "" -#: ../Doc/library/unittest.mock.rst:1305 +#: ../Doc/library/unittest.mock.rst:1334 msgid "" ":func:`patch` acts as a function decorator, class decorator or a context " "manager. Inside the body of the function or with statement, the *target* is " @@ -1187,16 +1198,17 @@ msgid "" "patch is undone." msgstr "" -#: ../Doc/library/unittest.mock.rst:1310 +#: ../Doc/library/unittest.mock.rst:1339 msgid "" -"If *new* is omitted, then the target is replaced with a :class:`MagicMock`. " -"If :func:`patch` is used as a decorator and *new* is omitted, the created " -"mock is passed in as an extra argument to the decorated function. If :func:" -"`patch` is used as a context manager the created mock is returned by the " -"context manager." +"If *new* is omitted, then the target is replaced with an :class:`AsyncMock` " +"if the patched object is an async function or a :class:`MagicMock` " +"otherwise. If :func:`patch` is used as a decorator and *new* is omitted, the " +"created mock is passed in as an extra argument to the decorated function. " +"If :func:`patch` is used as a context manager the created mock is returned " +"by the context manager." msgstr "" -#: ../Doc/library/unittest.mock.rst:1316 +#: ../Doc/library/unittest.mock.rst:1347 msgid "" "*target* should be a string in the form ``'package.module.ClassName'``. The " "*target* is imported and the specified object replaced with the *new* " @@ -1205,26 +1217,26 @@ msgid "" "function is executed, not at decoration time." msgstr "" -#: ../Doc/library/unittest.mock.rst:1322 +#: ../Doc/library/unittest.mock.rst:1353 msgid "" "The *spec* and *spec_set* keyword arguments are passed to the :class:" "`MagicMock` if patch is creating one for you." msgstr "" -#: ../Doc/library/unittest.mock.rst:1325 +#: ../Doc/library/unittest.mock.rst:1356 msgid "" "In addition you can pass ``spec=True`` or ``spec_set=True``, which causes " "patch to pass in the object being mocked as the spec/spec_set object." msgstr "" -#: ../Doc/library/unittest.mock.rst:1328 +#: ../Doc/library/unittest.mock.rst:1359 msgid "" "*new_callable* allows you to specify a different class, or callable object, " "that will be called to create the *new* object. By default :class:" -"`MagicMock` is used." +"`AsyncMock` is used for async functions and :class:`MagicMock` for the rest." msgstr "" -#: ../Doc/library/unittest.mock.rst:1332 +#: ../Doc/library/unittest.mock.rst:1363 msgid "" "A more powerful form of *spec* is *autospec*. If you set ``autospec=True`` " "then the mock will be created with a spec from the object being replaced. " @@ -1236,13 +1248,13 @@ msgid "" "func:`create_autospec` function and :ref:`auto-speccing`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1342 +#: ../Doc/library/unittest.mock.rst:1373 msgid "" "Instead of ``autospec=True`` you can pass ``autospec=some_object`` to use an " "arbitrary object as the spec instead of the one being replaced." msgstr "" -#: ../Doc/library/unittest.mock.rst:1345 +#: ../Doc/library/unittest.mock.rst:1376 msgid "" "By default :func:`patch` will fail to replace attributes that don't exist. " "If you pass in ``create=True``, and the attribute doesn't exist, patch will " @@ -1253,13 +1265,13 @@ msgid "" "write passing tests against APIs that don't actually exist!" msgstr "" -#: ../Doc/library/unittest.mock.rst:1355 +#: ../Doc/library/unittest.mock.rst:1386 msgid "" "If you are patching builtins in a module then you don't need to pass " "``create=True``, it will be added by default." msgstr "" -#: ../Doc/library/unittest.mock.rst:1359 +#: ../Doc/library/unittest.mock.rst:1390 msgid "" "Patch can be used as a :class:`TestCase` class decorator. It works by " "decorating each test method in the class. This reduces the boilerplate code " @@ -1270,7 +1282,7 @@ msgid "" "TEST_PREFIX``." msgstr "" -#: ../Doc/library/unittest.mock.rst:1366 +#: ../Doc/library/unittest.mock.rst:1397 msgid "" "Patch can be used as a context manager, with the with statement. Here the " "patching applies to the indented block after the with statement. If you use " @@ -1278,64 +1290,64 @@ msgid "" "very useful if :func:`patch` is creating a mock object for you." msgstr "" -#: ../Doc/library/unittest.mock.rst:1371 +#: ../Doc/library/unittest.mock.rst:1402 msgid "" ":func:`patch` takes arbitrary keyword arguments. These will be passed to " "the :class:`Mock` (or *new_callable*) on construction." msgstr "" -#: ../Doc/library/unittest.mock.rst:1374 +#: ../Doc/library/unittest.mock.rst:1405 msgid "" "``patch.dict(...)``, ``patch.multiple(...)`` and ``patch.object(...)`` are " "available for alternate use-cases." msgstr "" -#: ../Doc/library/unittest.mock.rst:1377 +#: ../Doc/library/unittest.mock.rst:1408 msgid "" ":func:`patch` as function decorator, creating the mock for you and passing " "it into the decorated function::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1387 +#: ../Doc/library/unittest.mock.rst:1418 msgid "" "Patching a class replaces the class with a :class:`MagicMock` *instance*. If " "the class is instantiated in the code under test then it will be the :attr:" "`~Mock.return_value` of the mock that will be used." msgstr "" -#: ../Doc/library/unittest.mock.rst:1391 +#: ../Doc/library/unittest.mock.rst:1422 msgid "" "If the class is instantiated multiple times you could use :attr:`~Mock." "side_effect` to return a new mock each time. Alternatively you can set the " "*return_value* to be anything you want." msgstr "" -#: ../Doc/library/unittest.mock.rst:1395 +#: ../Doc/library/unittest.mock.rst:1426 msgid "" "To configure return values on methods of *instances* on the patched class " "you must do this on the :attr:`return_value`. For example::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1409 +#: ../Doc/library/unittest.mock.rst:1440 msgid "" "If you use *spec* or *spec_set* and :func:`patch` is replacing a *class*, " "then the return value of the created mock will have the same spec. ::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1419 +#: ../Doc/library/unittest.mock.rst:1450 msgid "" "The *new_callable* argument is useful where you want to use an alternative " "class to the default :class:`MagicMock` for the created mock. For example, " "if you wanted a :class:`NonCallableMock` to be used::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1432 +#: ../Doc/library/unittest.mock.rst:1463 msgid "" "Another use case might be to replace an object with an :class:`io.StringIO` " "instance::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1445 +#: ../Doc/library/unittest.mock.rst:1476 msgid "" "When :func:`patch` is creating a mock for you, it is common that the first " "thing you need to do is to configure the mock. Some of that configuration " @@ -1343,7 +1355,7 @@ msgid "" "call will be used to set attributes on the created mock::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1457 +#: ../Doc/library/unittest.mock.rst:1488 msgid "" "As well as attributes on the created mock attributes, like the :attr:`~Mock." "return_value` and :attr:`~Mock.side_effect`, of child mocks can also be " @@ -1352,30 +1364,36 @@ msgid "" "func:`patch` call using ``**``::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1473 +#: ../Doc/library/unittest.mock.rst:1504 msgid "" "By default, attempting to patch a function in a module (or a method or an " "attribute in a class) that does not exist will fail with :exc:" "`AttributeError`::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1485 +#: ../Doc/library/unittest.mock.rst:1516 msgid "" "but adding ``create=True`` in the call to :func:`patch` will make the " "previous example work as expected::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1496 +#: ../Doc/library/unittest.mock.rst:1527 +msgid "" +":func:`patch` now returns an :class:`AsyncMock` if the target is an async " +"function." +msgstr "" + +#: ../Doc/library/unittest.mock.rst:1531 msgid "patch.object" msgstr "" -#: ../Doc/library/unittest.mock.rst:1500 +#: ../Doc/library/unittest.mock.rst:1535 msgid "" "patch the named member (*attribute*) on an object (*target*) with a mock " "object." msgstr "" -#: ../Doc/library/unittest.mock.rst:1503 +#: ../Doc/library/unittest.mock.rst:1538 msgid "" ":func:`patch.object` can be used as a decorator, class decorator or a " "context manager. Arguments *new*, *spec*, *create*, *spec_set*, *autospec* " @@ -1384,100 +1402,115 @@ msgid "" "configuring the mock object it creates." msgstr "" -#: ../Doc/library/unittest.mock.rst:1509 +#: ../Doc/library/unittest.mock.rst:1544 msgid "" "When used as a class decorator :func:`patch.object` honours ``patch." "TEST_PREFIX`` for choosing which methods to wrap." msgstr "" -#: ../Doc/library/unittest.mock.rst:1512 +#: ../Doc/library/unittest.mock.rst:1547 msgid "" "You can either call :func:`patch.object` with three arguments or two " "arguments. The three argument form takes the object to be patched, the " "attribute name and the object to replace the attribute with." msgstr "" -#: ../Doc/library/unittest.mock.rst:1516 +#: ../Doc/library/unittest.mock.rst:1551 msgid "" "When calling with the two argument form you omit the replacement object, and " "a mock is created for you and passed in as an extra argument to the " "decorated function:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1527 +#: ../Doc/library/unittest.mock.rst:1562 msgid "" "*spec*, *create* and the other arguments to :func:`patch.object` have the " "same meaning as they do for :func:`patch`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1532 +#: ../Doc/library/unittest.mock.rst:1567 msgid "patch.dict" msgstr "" -#: ../Doc/library/unittest.mock.rst:1536 +#: ../Doc/library/unittest.mock.rst:1571 msgid "" "Patch a dictionary, or dictionary like object, and restore the dictionary to " "its original state after the test." msgstr "" -#: ../Doc/library/unittest.mock.rst:1539 +#: ../Doc/library/unittest.mock.rst:1574 msgid "" "*in_dict* can be a dictionary or a mapping like container. If it is a " "mapping then it must at least support getting, setting and deleting items " "plus iterating over keys." msgstr "" -#: ../Doc/library/unittest.mock.rst:1543 +#: ../Doc/library/unittest.mock.rst:1578 msgid "" "*in_dict* can also be a string specifying the name of the dictionary, which " "will then be fetched by importing it." msgstr "" -#: ../Doc/library/unittest.mock.rst:1546 +#: ../Doc/library/unittest.mock.rst:1581 msgid "" "*values* can be a dictionary of values to set in the dictionary. *values* " "can also be an iterable of ``(key, value)`` pairs." msgstr "" -#: ../Doc/library/unittest.mock.rst:1549 +#: ../Doc/library/unittest.mock.rst:1584 msgid "" "If *clear* is true then the dictionary will be cleared before the new values " "are set." msgstr "" -#: ../Doc/library/unittest.mock.rst:1552 +#: ../Doc/library/unittest.mock.rst:1587 msgid "" ":func:`patch.dict` can also be called with arbitrary keyword arguments to " "set values in the dictionary." msgstr "" -#: ../Doc/library/unittest.mock.rst:1555 +#: ../Doc/library/unittest.mock.rst:1592 +msgid "" +":func:`patch.dict` now returns the patched dictionary when used as a context " +"manager." +msgstr "" + +#: ../Doc/library/unittest.mock.rst:1595 +#, fuzzy msgid "" ":func:`patch.dict` can be used as a context manager, decorator or class " -"decorator. When used as a class decorator :func:`patch.dict` honours ``patch." -"TEST_PREFIX`` for choosing which methods to wrap." +"decorator:" msgstr "" +"Comme tout décorateur, :func:`patch` peut être utilisé comme gestionnaire de " +"contexte avec une instruction *with* ::" -#: ../Doc/library/unittest.mock.rst:1561 +#: ../Doc/library/unittest.mock.rst:1605 msgid "" -":func:`patch.dict` now returns the patched dictionary when used as a context " -"manager." +"When used as a class decorator :func:`patch.dict` honours ``patch." +"TEST_PREFIX`` (default to ``'test'``) for choosing which methods to wrap:" +msgstr "" + +#: ../Doc/library/unittest.mock.rst:1616 +msgid "" +"If you want to use a different prefix for your test, you can inform the " +"patchers of the different prefix by setting ``patch.TEST_PREFIX``. For more " +"details about how to change the value of see :ref:`test-prefix`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1564 +#: ../Doc/library/unittest.mock.rst:1620 msgid "" ":func:`patch.dict` can be used to add members to a dictionary, or simply let " "a test change a dictionary, and ensure the dictionary is restored when the " "test ends." msgstr "" -#: ../Doc/library/unittest.mock.rst:1585 +#: ../Doc/library/unittest.mock.rst:1641 msgid "" "Keywords can be used in the :func:`patch.dict` call to set values in the " "dictionary:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1595 +#: ../Doc/library/unittest.mock.rst:1651 msgid "" ":func:`patch.dict` can be used with dictionary like objects that aren't " "actually dictionaries. At the very minimum they must support item getting, " @@ -1486,18 +1519,18 @@ msgid "" "`__delitem__` and either :meth:`__iter__` or :meth:`__contains__`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1624 +#: ../Doc/library/unittest.mock.rst:1680 msgid "patch.multiple" msgstr "" -#: ../Doc/library/unittest.mock.rst:1628 +#: ../Doc/library/unittest.mock.rst:1684 msgid "" "Perform multiple patches in a single call. It takes the object to be patched " "(either as an object or a string to fetch the object by importing) and " "keyword arguments for the patches::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1635 +#: ../Doc/library/unittest.mock.rst:1691 msgid "" "Use :data:`DEFAULT` as the value if you want :func:`patch.multiple` to " "create mocks for you. In this case the created mocks are passed into a " @@ -1505,7 +1538,7 @@ msgid "" "`patch.multiple` is used as a context manager." msgstr "" -#: ../Doc/library/unittest.mock.rst:1640 +#: ../Doc/library/unittest.mock.rst:1696 msgid "" ":func:`patch.multiple` can be used as a decorator, class decorator or a " "context manager. The arguments *spec*, *spec_set*, *create*, *autospec* and " @@ -1513,13 +1546,13 @@ msgid "" "will be applied to *all* patches done by :func:`patch.multiple`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1645 +#: ../Doc/library/unittest.mock.rst:1701 msgid "" "When used as a class decorator :func:`patch.multiple` honours ``patch." "TEST_PREFIX`` for choosing which methods to wrap." msgstr "" -#: ../Doc/library/unittest.mock.rst:1648 +#: ../Doc/library/unittest.mock.rst:1704 msgid "" "If you want :func:`patch.multiple` to create mocks for you, then you can " "use :data:`DEFAULT` as the value. If you use :func:`patch.multiple` as a " @@ -1527,32 +1560,32 @@ msgid "" "keyword. ::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1662 +#: ../Doc/library/unittest.mock.rst:1718 msgid "" ":func:`patch.multiple` can be nested with other ``patch`` decorators, but " "put arguments passed by keyword *after* any of the standard arguments " "created by :func:`patch`::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1674 +#: ../Doc/library/unittest.mock.rst:1730 msgid "" "If :func:`patch.multiple` is used as a context manager, the value returned " "by the context manager is a dictionary where created mocks are keyed by " "name::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1688 +#: ../Doc/library/unittest.mock.rst:1744 msgid "patch methods: start and stop" msgstr "" -#: ../Doc/library/unittest.mock.rst:1690 +#: ../Doc/library/unittest.mock.rst:1746 msgid "" "All the patchers have :meth:`start` and :meth:`stop` methods. These make it " "simpler to do patching in ``setUp`` methods or where you want to do multiple " "patches without nesting decorators or with statements." msgstr "" -#: ../Doc/library/unittest.mock.rst:1694 +#: ../Doc/library/unittest.mock.rst:1750 msgid "" "To use them call :func:`patch`, :func:`patch.object` or :func:`patch.dict` " "as normal and keep a reference to the returned ``patcher`` object. You can " @@ -1560,19 +1593,19 @@ msgid "" "it." msgstr "" -#: ../Doc/library/unittest.mock.rst:1698 +#: ../Doc/library/unittest.mock.rst:1754 msgid "" "If you are using :func:`patch` to create a mock for you then it will be " "returned by the call to ``patcher.start``. ::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1712 +#: ../Doc/library/unittest.mock.rst:1768 msgid "" "A typical use case for this might be for doing multiple patches in the " "``setUp`` method of a :class:`TestCase`::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1734 +#: ../Doc/library/unittest.mock.rst:1790 msgid "" "If you use this technique you must ensure that the patching is \"undone\" by " "calling ``stop``. This can be fiddlier than you might think, because if an " @@ -1580,37 +1613,37 @@ msgid "" "`unittest.TestCase.addCleanup` makes this easier::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1749 +#: ../Doc/library/unittest.mock.rst:1805 msgid "" "As an added bonus you no longer need to keep a reference to the ``patcher`` " "object." msgstr "" -#: ../Doc/library/unittest.mock.rst:1752 +#: ../Doc/library/unittest.mock.rst:1808 msgid "" "It is also possible to stop all patches which have been started by using :" "func:`patch.stopall`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1757 +#: ../Doc/library/unittest.mock.rst:1813 msgid "Stop all active patches. Only stops patches started with ``start``." msgstr "" -#: ../Doc/library/unittest.mock.rst:1763 +#: ../Doc/library/unittest.mock.rst:1819 msgid "patch builtins" msgstr "" -#: ../Doc/library/unittest.mock.rst:1764 +#: ../Doc/library/unittest.mock.rst:1820 msgid "" "You can patch any builtins within a module. The following example patches " "builtin :func:`ord`::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1777 +#: ../Doc/library/unittest.mock.rst:1835 msgid "TEST_PREFIX" msgstr "" -#: ../Doc/library/unittest.mock.rst:1779 +#: ../Doc/library/unittest.mock.rst:1837 msgid "" "All of the patchers can be used as class decorators. When used in this way " "they wrap every test method on the class. The patchers recognise methods " @@ -1618,39 +1651,39 @@ msgid "" "the :class:`unittest.TestLoader` finds test methods by default." msgstr "" -#: ../Doc/library/unittest.mock.rst:1784 +#: ../Doc/library/unittest.mock.rst:1842 msgid "" "It is possible that you want to use a different prefix for your tests. You " "can inform the patchers of the different prefix by setting ``patch." "TEST_PREFIX``::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1807 +#: ../Doc/library/unittest.mock.rst:1865 msgid "Nesting Patch Decorators" msgstr "" -#: ../Doc/library/unittest.mock.rst:1809 +#: ../Doc/library/unittest.mock.rst:1867 msgid "" "If you want to perform multiple patches then you can simply stack up the " "decorators." msgstr "" -#: ../Doc/library/unittest.mock.rst:1812 +#: ../Doc/library/unittest.mock.rst:1870 msgid "You can stack up multiple patch decorators using this pattern:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1828 +#: ../Doc/library/unittest.mock.rst:1886 msgid "" "Note that the decorators are applied from the bottom upwards. This is the " "standard way that Python applies decorators. The order of the created mocks " "passed into your test function matches this order." msgstr "" -#: ../Doc/library/unittest.mock.rst:1836 +#: ../Doc/library/unittest.mock.rst:1894 msgid "Where to patch" msgstr "" -#: ../Doc/library/unittest.mock.rst:1838 +#: ../Doc/library/unittest.mock.rst:1896 msgid "" ":func:`patch` works by (temporarily) changing the object that a *name* " "points to with another one. There can be many names pointing to any " @@ -1658,19 +1691,19 @@ msgid "" "the name used by the system under test." msgstr "" -#: ../Doc/library/unittest.mock.rst:1843 +#: ../Doc/library/unittest.mock.rst:1901 msgid "" "The basic principle is that you patch where an object is *looked up*, which " "is not necessarily the same place as where it is defined. A couple of " "examples will help to clarify this." msgstr "" -#: ../Doc/library/unittest.mock.rst:1847 +#: ../Doc/library/unittest.mock.rst:1905 msgid "" "Imagine we have a project that we want to test with the following structure::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1856 +#: ../Doc/library/unittest.mock.rst:1914 msgid "" "Now we want to test ``some_function`` but we want to mock out ``SomeClass`` " "using :func:`patch`. The problem is that when we import module b, which we " @@ -1680,7 +1713,7 @@ msgid "" "like our patching had no effect." msgstr "" -#: ../Doc/library/unittest.mock.rst:1863 +#: ../Doc/library/unittest.mock.rst:1921 msgid "" "The key is to patch out ``SomeClass`` where it is used (or where it is " "looked up). In this case ``some_function`` will actually look up " @@ -1688,7 +1721,7 @@ msgid "" "look like::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1869 +#: ../Doc/library/unittest.mock.rst:1927 msgid "" "However, consider the alternative scenario where instead of ``from a import " "SomeClass`` module b does ``import a`` and ``some_function`` uses ``a." @@ -1697,11 +1730,11 @@ msgid "" "``a.SomeClass`` instead::" msgstr "" -#: ../Doc/library/unittest.mock.rst:1878 +#: ../Doc/library/unittest.mock.rst:1936 msgid "Patching Descriptors and Proxy Objects" msgstr "" -#: ../Doc/library/unittest.mock.rst:1880 +#: ../Doc/library/unittest.mock.rst:1938 msgid "" "Both patch_ and patch.object_ correctly patch and restore descriptors: class " "methods, static methods and properties. You should patch these on the " @@ -1710,22 +1743,22 @@ msgid "" "voidspace.org.uk/python/weblog/arch_d7_2010_12_04.shtml#e1198>`_." msgstr "" -#: ../Doc/library/unittest.mock.rst:1888 +#: ../Doc/library/unittest.mock.rst:1946 msgid "MagicMock and magic method support" msgstr "" -#: ../Doc/library/unittest.mock.rst:1893 +#: ../Doc/library/unittest.mock.rst:1951 msgid "Mocking Magic Methods" msgstr "" -#: ../Doc/library/unittest.mock.rst:1895 +#: ../Doc/library/unittest.mock.rst:1953 msgid "" ":class:`Mock` supports mocking the Python protocol methods, also known as " "\"magic methods\". This allows mock objects to replace containers or other " "objects that implement Python protocols." msgstr "" -#: ../Doc/library/unittest.mock.rst:1899 +#: ../Doc/library/unittest.mock.rst:1957 msgid "" "Because magic methods are looked up differently from normal methods [#]_, " "this support has been specially implemented. This means that only specific " @@ -1733,74 +1766,74 @@ msgid "" "them. If there are any missing that you need please let us know." msgstr "" -#: ../Doc/library/unittest.mock.rst:1904 +#: ../Doc/library/unittest.mock.rst:1962 msgid "" "You mock magic methods by setting the method you are interested in to a " "function or a mock instance. If you are using a function then it *must* take " "``self`` as the first argument [#]_." msgstr "" -#: ../Doc/library/unittest.mock.rst:1927 +#: ../Doc/library/unittest.mock.rst:1985 msgid "" "One use case for this is for mocking objects used as context managers in a :" "keyword:`with` statement:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1939 +#: ../Doc/library/unittest.mock.rst:1997 msgid "" "Calls to magic methods do not appear in :attr:`~Mock.method_calls`, but they " "are recorded in :attr:`~Mock.mock_calls`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1944 +#: ../Doc/library/unittest.mock.rst:2002 msgid "" "If you use the *spec* keyword argument to create a mock then attempting to " "set a magic method that isn't in the spec will raise an :exc:" "`AttributeError`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1947 +#: ../Doc/library/unittest.mock.rst:2005 msgid "The full list of supported magic methods is:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1949 +#: ../Doc/library/unittest.mock.rst:2007 msgid "``__hash__``, ``__sizeof__``, ``__repr__`` and ``__str__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1950 +#: ../Doc/library/unittest.mock.rst:2008 msgid "``__dir__``, ``__format__`` and ``__subclasses__``" msgstr "``__dir__``, ``__format__`` et ``__subclasses__``" -#: ../Doc/library/unittest.mock.rst:1951 +#: ../Doc/library/unittest.mock.rst:2009 #, fuzzy msgid "``__round__``, ``__floor__``, ``__trunc__`` and ``__ceil__``" msgstr "``__floor__``, ``__trunc__`` et ``__ceil__``" -#: ../Doc/library/unittest.mock.rst:1952 +#: ../Doc/library/unittest.mock.rst:2010 msgid "" "Comparisons: ``__lt__``, ``__gt__``, ``__le__``, ``__ge__``, ``__eq__`` and " "``__ne__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1954 +#: ../Doc/library/unittest.mock.rst:2012 msgid "" "Container methods: ``__getitem__``, ``__setitem__``, ``__delitem__``, " "``__contains__``, ``__len__``, ``__iter__``, ``__reversed__`` and " "``__missing__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1957 +#: ../Doc/library/unittest.mock.rst:2015 #, fuzzy msgid "" "Context manager: ``__enter__``, ``__exit__``, ``__aenter__`` and " "``__aexit__``" msgstr "``__get__``, ``__set__`` et ``__delete__``" -#: ../Doc/library/unittest.mock.rst:1958 +#: ../Doc/library/unittest.mock.rst:2016 msgid "Unary numeric methods: ``__neg__``, ``__pos__`` and ``__invert__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1959 +#: ../Doc/library/unittest.mock.rst:2017 msgid "" "The numeric methods (including right hand and in-place variants): " "``__add__``, ``__sub__``, ``__mul__``, ``__matmul__``, ``__div__``, " @@ -1809,100 +1842,100 @@ msgid "" "``__pow__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1963 +#: ../Doc/library/unittest.mock.rst:2021 msgid "" "Numeric conversion methods: ``__complex__``, ``__int__``, ``__float__`` and " "``__index__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1965 +#: ../Doc/library/unittest.mock.rst:2023 msgid "Descriptor methods: ``__get__``, ``__set__`` and ``__delete__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1966 +#: ../Doc/library/unittest.mock.rst:2024 msgid "" "Pickling: ``__reduce__``, ``__reduce_ex__``, ``__getinitargs__``, " "``__getnewargs__``, ``__getstate__`` and ``__setstate__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1968 +#: ../Doc/library/unittest.mock.rst:2026 msgid "File system path representation: ``__fspath__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1969 +#: ../Doc/library/unittest.mock.rst:2027 msgid "Asynchronous iteration methods: ``__aiter__`` and ``__anext__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1971 +#: ../Doc/library/unittest.mock.rst:2029 msgid "Added support for :func:`os.PathLike.__fspath__`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1974 +#: ../Doc/library/unittest.mock.rst:2032 msgid "" "Added support for ``__aenter__``, ``__aexit__``, ``__aiter__`` and " "``__anext__``." msgstr "" -#: ../Doc/library/unittest.mock.rst:1978 +#: ../Doc/library/unittest.mock.rst:2036 msgid "" "The following methods exist but are *not* supported as they are either in " "use by mock, can't be set dynamically, or can cause problems:" msgstr "" -#: ../Doc/library/unittest.mock.rst:1981 +#: ../Doc/library/unittest.mock.rst:2039 msgid "``__getattr__``, ``__setattr__``, ``__init__`` and ``__new__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1982 +#: ../Doc/library/unittest.mock.rst:2040 msgid "" "``__prepare__``, ``__instancecheck__``, ``__subclasscheck__``, ``__del__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:1987 +#: ../Doc/library/unittest.mock.rst:2045 msgid "Magic Mock" msgstr "" -#: ../Doc/library/unittest.mock.rst:1989 +#: ../Doc/library/unittest.mock.rst:2047 msgid "" "There are two ``MagicMock`` variants: :class:`MagicMock` and :class:" "`NonCallableMagicMock`." msgstr "" -#: ../Doc/library/unittest.mock.rst:1994 +#: ../Doc/library/unittest.mock.rst:2052 msgid "" "``MagicMock`` is a subclass of :class:`Mock` with default implementations of " "most of the magic methods. You can use ``MagicMock`` without having to " "configure the magic methods yourself." msgstr "" -#: ../Doc/library/unittest.mock.rst:1998 +#: ../Doc/library/unittest.mock.rst:2056 msgid "The constructor parameters have the same meaning as for :class:`Mock`." msgstr "" -#: ../Doc/library/unittest.mock.rst:2000 +#: ../Doc/library/unittest.mock.rst:2058 msgid "" "If you use the *spec* or *spec_set* arguments then *only* magic methods that " "exist in the spec will be created." msgstr "" -#: ../Doc/library/unittest.mock.rst:2006 +#: ../Doc/library/unittest.mock.rst:2064 msgid "A non-callable version of :class:`MagicMock`." msgstr "" -#: ../Doc/library/unittest.mock.rst:2008 +#: ../Doc/library/unittest.mock.rst:2066 msgid "" "The constructor parameters have the same meaning as for :class:`MagicMock`, " "with the exception of *return_value* and *side_effect* which have no meaning " "on a non-callable mock." msgstr "" -#: ../Doc/library/unittest.mock.rst:2012 +#: ../Doc/library/unittest.mock.rst:2070 msgid "" "The magic methods are setup with :class:`MagicMock` objects, so you can " "configure them and use them in the usual way:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2022 +#: ../Doc/library/unittest.mock.rst:2080 msgid "" "By default many of the protocol methods are required to return objects of a " "specific type. These methods are preconfigured with a default return value, " @@ -1911,84 +1944,84 @@ msgid "" "manually if you want to change the default." msgstr "" -#: ../Doc/library/unittest.mock.rst:2028 +#: ../Doc/library/unittest.mock.rst:2086 msgid "Methods and their defaults:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2030 +#: ../Doc/library/unittest.mock.rst:2088 msgid "``__lt__``: NotImplemented" msgstr "``__lt__``: NotImplemented" -#: ../Doc/library/unittest.mock.rst:2031 +#: ../Doc/library/unittest.mock.rst:2089 msgid "``__gt__``: NotImplemented" msgstr "``__gt__``: NotImplemented" -#: ../Doc/library/unittest.mock.rst:2032 +#: ../Doc/library/unittest.mock.rst:2090 msgid "``__le__``: NotImplemented" msgstr "``__le__``: NotImplemented" -#: ../Doc/library/unittest.mock.rst:2033 +#: ../Doc/library/unittest.mock.rst:2091 msgid "``__ge__``: NotImplemented" msgstr "``__ge__``: NotImplemented" -#: ../Doc/library/unittest.mock.rst:2034 +#: ../Doc/library/unittest.mock.rst:2092 msgid "``__int__``: 1" msgstr "``__int__``: 1" -#: ../Doc/library/unittest.mock.rst:2035 +#: ../Doc/library/unittest.mock.rst:2093 msgid "``__contains__``: False" msgstr "``__contains__``: False" -#: ../Doc/library/unittest.mock.rst:2036 +#: ../Doc/library/unittest.mock.rst:2094 msgid "``__len__``: 0" msgstr "" -#: ../Doc/library/unittest.mock.rst:2037 +#: ../Doc/library/unittest.mock.rst:2095 msgid "``__iter__``: iter([])" msgstr "``__iter__``: iter([])" -#: ../Doc/library/unittest.mock.rst:2038 +#: ../Doc/library/unittest.mock.rst:2096 msgid "``__exit__``: False" msgstr "``__exit__``: False" -#: ../Doc/library/unittest.mock.rst:2039 +#: ../Doc/library/unittest.mock.rst:2097 #, fuzzy msgid "``__aexit__``: False" msgstr "``__exit__``: False" -#: ../Doc/library/unittest.mock.rst:2040 +#: ../Doc/library/unittest.mock.rst:2098 msgid "``__complex__``: 1j" msgstr "``__complex__``: 1j" -#: ../Doc/library/unittest.mock.rst:2041 +#: ../Doc/library/unittest.mock.rst:2099 msgid "``__float__``: 1.0" msgstr "``__float__``: 1.0" -#: ../Doc/library/unittest.mock.rst:2042 +#: ../Doc/library/unittest.mock.rst:2100 msgid "``__bool__``: True" msgstr "``__bool__``: True" -#: ../Doc/library/unittest.mock.rst:2043 +#: ../Doc/library/unittest.mock.rst:2101 msgid "``__index__``: 1" msgstr "``__index__``: 1" -#: ../Doc/library/unittest.mock.rst:2044 +#: ../Doc/library/unittest.mock.rst:2102 msgid "``__hash__``: default hash for the mock" msgstr "" -#: ../Doc/library/unittest.mock.rst:2045 +#: ../Doc/library/unittest.mock.rst:2103 msgid "``__str__``: default str for the mock" msgstr "" -#: ../Doc/library/unittest.mock.rst:2046 +#: ../Doc/library/unittest.mock.rst:2104 msgid "``__sizeof__``: default sizeof for the mock" msgstr "" -#: ../Doc/library/unittest.mock.rst:2048 +#: ../Doc/library/unittest.mock.rst:2106 msgid "For example:" msgstr "Par exemple :" -#: ../Doc/library/unittest.mock.rst:2060 +#: ../Doc/library/unittest.mock.rst:2118 msgid "" "The two equality methods, :meth:`__eq__` and :meth:`__ne__`, are special. " "They do the default equality comparison on identity, using the :attr:`~Mock." @@ -1996,102 +2029,102 @@ msgid "" "something else::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2074 +#: ../Doc/library/unittest.mock.rst:2132 msgid "" "The return value of :meth:`MagicMock.__iter__` can be any iterable object " "and isn't required to be an iterator:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2084 +#: ../Doc/library/unittest.mock.rst:2142 msgid "" "If the return value *is* an iterator, then iterating over it once will " "consume it and subsequent iterations will result in an empty list:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2093 +#: ../Doc/library/unittest.mock.rst:2151 msgid "" "``MagicMock`` has all of the supported magic methods configured except for " "some of the obscure and obsolete ones. You can still set these up if you " "want." msgstr "" -#: ../Doc/library/unittest.mock.rst:2096 +#: ../Doc/library/unittest.mock.rst:2154 msgid "" "Magic methods that are supported but not setup by default in ``MagicMock`` " "are:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2098 +#: ../Doc/library/unittest.mock.rst:2156 msgid "``__subclasses__``" msgstr "``__subclasses__``" -#: ../Doc/library/unittest.mock.rst:2099 +#: ../Doc/library/unittest.mock.rst:2157 msgid "``__dir__``" msgstr "``__dir__``" -#: ../Doc/library/unittest.mock.rst:2100 +#: ../Doc/library/unittest.mock.rst:2158 msgid "``__format__``" msgstr "``__format__``" -#: ../Doc/library/unittest.mock.rst:2101 +#: ../Doc/library/unittest.mock.rst:2159 msgid "``__get__``, ``__set__`` and ``__delete__``" msgstr "``__get__``, ``__set__`` et ``__delete__``" -#: ../Doc/library/unittest.mock.rst:2102 +#: ../Doc/library/unittest.mock.rst:2160 msgid "``__reversed__`` and ``__missing__``" msgstr "``__reversed__`` et ``__missing__``" -#: ../Doc/library/unittest.mock.rst:2103 +#: ../Doc/library/unittest.mock.rst:2161 msgid "" "``__reduce__``, ``__reduce_ex__``, ``__getinitargs__``, ``__getnewargs__``, " "``__getstate__`` and ``__setstate__``" msgstr "" -#: ../Doc/library/unittest.mock.rst:2105 +#: ../Doc/library/unittest.mock.rst:2163 msgid "``__getformat__`` and ``__setformat__``" msgstr "``__getformat__`` et ``__setformat__``" -#: ../Doc/library/unittest.mock.rst:2109 +#: ../Doc/library/unittest.mock.rst:2167 msgid "" "Magic methods *should* be looked up on the class rather than the instance. " "Different versions of Python are inconsistent about applying this rule. The " "supported protocol methods should work with all supported versions of Python." msgstr "" -#: ../Doc/library/unittest.mock.rst:2113 +#: ../Doc/library/unittest.mock.rst:2171 msgid "" "The function is basically hooked up to the class, but each ``Mock`` instance " "is kept isolated from the others." msgstr "" -#: ../Doc/library/unittest.mock.rst:2118 +#: ../Doc/library/unittest.mock.rst:2176 msgid "Helpers" msgstr "" -#: ../Doc/library/unittest.mock.rst:2121 +#: ../Doc/library/unittest.mock.rst:2179 msgid "sentinel" msgstr "" -#: ../Doc/library/unittest.mock.rst:2125 +#: ../Doc/library/unittest.mock.rst:2183 msgid "" "The ``sentinel`` object provides a convenient way of providing unique " "objects for your tests." msgstr "" -#: ../Doc/library/unittest.mock.rst:2128 +#: ../Doc/library/unittest.mock.rst:2186 msgid "" "Attributes are created on demand when you access them by name. Accessing the " "same attribute will always return the same object. The objects returned have " "a sensible repr so that test failure messages are readable." msgstr "" -#: ../Doc/library/unittest.mock.rst:2132 +#: ../Doc/library/unittest.mock.rst:2190 msgid "" "The ``sentinel`` attributes now preserve their identity when they are :mod:" "`copied ` or :mod:`pickled `." msgstr "" -#: ../Doc/library/unittest.mock.rst:2136 +#: ../Doc/library/unittest.mock.rst:2194 msgid "" "Sometimes when testing you need to test that a specific object is passed as " "an argument to another method, or returned. It can be common to create named " @@ -2099,28 +2132,28 @@ msgid "" "creating and testing the identity of objects like this." msgstr "" -#: ../Doc/library/unittest.mock.rst:2141 +#: ../Doc/library/unittest.mock.rst:2199 msgid "" "In this example we monkey patch ``method`` to return ``sentinel." "some_object``:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2153 +#: ../Doc/library/unittest.mock.rst:2211 msgid "DEFAULT" msgstr "" -#: ../Doc/library/unittest.mock.rst:2158 +#: ../Doc/library/unittest.mock.rst:2216 msgid "" "The :data:`DEFAULT` object is a pre-created sentinel (actually ``sentinel." "DEFAULT``). It can be used by :attr:`~Mock.side_effect` functions to " "indicate that the normal return value should be used." msgstr "" -#: ../Doc/library/unittest.mock.rst:2164 +#: ../Doc/library/unittest.mock.rst:2222 msgid "call" msgstr "" -#: ../Doc/library/unittest.mock.rst:2168 +#: ../Doc/library/unittest.mock.rst:2226 msgid "" ":func:`call` is a helper object for making simpler assertions, for comparing " "with :attr:`~Mock.call_args`, :attr:`~Mock.call_args_list`, :attr:`~Mock." @@ -2128,13 +2161,13 @@ msgid "" "with :meth:`~Mock.assert_has_calls`." msgstr "" -#: ../Doc/library/unittest.mock.rst:2181 +#: ../Doc/library/unittest.mock.rst:2239 msgid "" "For a call object that represents multiple calls, :meth:`call_list` returns " "a list of all the intermediate calls as well as the final call." msgstr "" -#: ../Doc/library/unittest.mock.rst:2185 +#: ../Doc/library/unittest.mock.rst:2243 msgid "" "``call_list`` is particularly useful for making assertions on \"chained calls" "\". A chained call is multiple calls on a single line of code. This results " @@ -2142,13 +2175,13 @@ msgid "" "constructing the sequence of calls can be tedious." msgstr "" -#: ../Doc/library/unittest.mock.rst:2190 +#: ../Doc/library/unittest.mock.rst:2248 msgid "" ":meth:`~call.call_list` can construct the sequence of calls from the same " "chained call:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2207 +#: ../Doc/library/unittest.mock.rst:2265 msgid "" "A ``call`` object is either a tuple of (positional args, keyword args) or " "(name, positional args, keyword args) depending on how it was constructed. " @@ -2158,7 +2191,7 @@ msgid "" "to get at the individual arguments they contain." msgstr "" -#: ../Doc/library/unittest.mock.rst:2214 +#: ../Doc/library/unittest.mock.rst:2272 msgid "" "The ``call`` objects in :attr:`Mock.call_args` and :attr:`Mock." "call_args_list` are two-tuples of (positional args, keyword args) whereas " @@ -2167,7 +2200,7 @@ msgid "" "args)." msgstr "" -#: ../Doc/library/unittest.mock.rst:2219 +#: ../Doc/library/unittest.mock.rst:2277 msgid "" "You can use their \"tupleness\" to pull out the individual arguments for " "more complex introspection and assertions. The positional arguments are a " @@ -2175,29 +2208,29 @@ msgid "" "arguments are a dictionary:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2252 +#: ../Doc/library/unittest.mock.rst:2310 msgid "create_autospec" msgstr "" -#: ../Doc/library/unittest.mock.rst:2256 +#: ../Doc/library/unittest.mock.rst:2314 msgid "" "Create a mock object using another object as a spec. Attributes on the mock " "will use the corresponding attribute on the *spec* object as their spec." msgstr "" -#: ../Doc/library/unittest.mock.rst:2260 +#: ../Doc/library/unittest.mock.rst:2318 msgid "" "Functions or methods being mocked will have their arguments checked to " "ensure that they are called with the correct signature." msgstr "" -#: ../Doc/library/unittest.mock.rst:2263 +#: ../Doc/library/unittest.mock.rst:2321 msgid "" "If *spec_set* is ``True`` then attempting to set attributes that don't exist " "on the spec object will raise an :exc:`AttributeError`." msgstr "" -#: ../Doc/library/unittest.mock.rst:2266 +#: ../Doc/library/unittest.mock.rst:2324 msgid "" "If a class is used as a spec then the return value of the mock (the instance " "of the class) will have the same spec. You can use a class as the spec for " @@ -2205,23 +2238,29 @@ msgid "" "be callable if instances of the mock are callable." msgstr "" -#: ../Doc/library/unittest.mock.rst:2271 +#: ../Doc/library/unittest.mock.rst:2329 msgid "" ":func:`create_autospec` also takes arbitrary keyword arguments that are " "passed to the constructor of the created mock." msgstr "" -#: ../Doc/library/unittest.mock.rst:2274 +#: ../Doc/library/unittest.mock.rst:2332 msgid "" "See :ref:`auto-speccing` for examples of how to use auto-speccing with :func:" "`create_autospec` and the *autospec* argument to :func:`patch`." msgstr "" -#: ../Doc/library/unittest.mock.rst:2279 +#: ../Doc/library/unittest.mock.rst:2338 +msgid "" +":func:`create_autospec` now returns an :class:`AsyncMock` if the target is " +"an async function." +msgstr "" + +#: ../Doc/library/unittest.mock.rst:2343 msgid "ANY" msgstr "" -#: ../Doc/library/unittest.mock.rst:2283 +#: ../Doc/library/unittest.mock.rst:2347 msgid "" "Sometimes you may need to make assertions about *some* of the arguments in a " "call to mock, but either not care about some of the arguments or want to " @@ -2229,24 +2268,24 @@ msgid "" "assertions on them." msgstr "" -#: ../Doc/library/unittest.mock.rst:2288 +#: ../Doc/library/unittest.mock.rst:2352 msgid "" "To ignore certain arguments you can pass in objects that compare equal to " "*everything*. Calls to :meth:`~Mock.assert_called_with` and :meth:`~Mock." "assert_called_once_with` will then succeed no matter what was passed in." msgstr "" -#: ../Doc/library/unittest.mock.rst:2297 +#: ../Doc/library/unittest.mock.rst:2361 msgid "" ":data:`ANY` can also be used in comparisons with call lists like :attr:" "`~Mock.mock_calls`:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2310 +#: ../Doc/library/unittest.mock.rst:2374 msgid "FILTER_DIR" msgstr "" -#: ../Doc/library/unittest.mock.rst:2314 +#: ../Doc/library/unittest.mock.rst:2378 msgid "" ":data:`FILTER_DIR` is a module level variable that controls the way mock " "objects respond to :func:`dir` (only for Python 2.6 or more recent). The " @@ -2255,7 +2294,7 @@ msgid "" "diagnostic purposes, then set ``mock.FILTER_DIR = False``." msgstr "" -#: ../Doc/library/unittest.mock.rst:2320 +#: ../Doc/library/unittest.mock.rst:2384 msgid "" "With filtering on, ``dir(some_mock)`` shows only useful attributes and will " "include any dynamically created attributes that wouldn't normally be shown. " @@ -2264,7 +2303,7 @@ msgid "" "yet:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2347 +#: ../Doc/library/unittest.mock.rst:2411 msgid "" "Many of the not-very-useful (private to :class:`Mock` rather than the thing " "being mocked) underscore and double underscore prefixed attributes have been " @@ -2273,31 +2312,31 @@ msgid "" "switch :data:`FILTER_DIR`:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2368 +#: ../Doc/library/unittest.mock.rst:2432 msgid "" "Alternatively you can just use ``vars(my_mock)`` (instance members) and " "``dir(type(my_mock))`` (type members) to bypass the filtering irrespective " "of :data:`mock.FILTER_DIR`." msgstr "" -#: ../Doc/library/unittest.mock.rst:2374 +#: ../Doc/library/unittest.mock.rst:2438 msgid "mock_open" msgstr "" -#: ../Doc/library/unittest.mock.rst:2378 +#: ../Doc/library/unittest.mock.rst:2442 msgid "" "A helper function to create a mock to replace the use of :func:`open`. It " "works for :func:`open` called directly or used as a context manager." msgstr "" -#: ../Doc/library/unittest.mock.rst:2381 +#: ../Doc/library/unittest.mock.rst:2445 msgid "" "The *mock* argument is the mock object to configure. If ``None`` (the " "default) then a :class:`MagicMock` will be created for you, with the API " "limited to methods or attributes available on standard file handles." msgstr "" -#: ../Doc/library/unittest.mock.rst:2385 +#: ../Doc/library/unittest.mock.rst:2449 msgid "" "*read_data* is a string for the :meth:`~io.IOBase.read`, :meth:`~io.IOBase." "readline`, and :meth:`~io.IOBase.readlines` methods of the file handle to " @@ -2310,51 +2349,51 @@ msgid "" "realistic filesystem for testing." msgstr "" -#: ../Doc/library/unittest.mock.rst:2395 +#: ../Doc/library/unittest.mock.rst:2459 msgid "" "Added :meth:`~io.IOBase.readline` and :meth:`~io.IOBase.readlines` support. " "The mock of :meth:`~io.IOBase.read` changed to consume *read_data* rather " "than returning it on each call." msgstr "" -#: ../Doc/library/unittest.mock.rst:2400 +#: ../Doc/library/unittest.mock.rst:2464 msgid "*read_data* is now reset on each call to the *mock*." msgstr "" -#: ../Doc/library/unittest.mock.rst:2403 +#: ../Doc/library/unittest.mock.rst:2467 msgid "" "Added :meth:`__iter__` to implementation so that iteration (such as in for " "loops) correctly consumes *read_data*." msgstr "" -#: ../Doc/library/unittest.mock.rst:2407 +#: ../Doc/library/unittest.mock.rst:2471 msgid "" "Using :func:`open` as a context manager is a great way to ensure your file " "handles are closed properly and is becoming common::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2413 +#: ../Doc/library/unittest.mock.rst:2477 msgid "" "The issue is that even if you mock out the call to :func:`open` it is the " "*returned object* that is used as a context manager (and has :meth:" "`__enter__` and :meth:`__exit__` called)." msgstr "" -#: ../Doc/library/unittest.mock.rst:2417 +#: ../Doc/library/unittest.mock.rst:2481 msgid "" "Mocking context managers with a :class:`MagicMock` is common enough and " "fiddly enough that a helper function is useful. ::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2434 +#: ../Doc/library/unittest.mock.rst:2498 msgid "And for reading files::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2447 +#: ../Doc/library/unittest.mock.rst:2511 msgid "Autospeccing" msgstr "" -#: ../Doc/library/unittest.mock.rst:2449 +#: ../Doc/library/unittest.mock.rst:2513 msgid "" "Autospeccing is based on the existing :attr:`spec` feature of mock. It " "limits the api of mocks to the api of an original object (the spec), but it " @@ -2364,11 +2403,11 @@ msgid "" "`TypeError` if they are called incorrectly." msgstr "" -#: ../Doc/library/unittest.mock.rst:2456 +#: ../Doc/library/unittest.mock.rst:2520 msgid "Before I explain how auto-speccing works, here's why it is needed." msgstr "" -#: ../Doc/library/unittest.mock.rst:2458 +#: ../Doc/library/unittest.mock.rst:2522 msgid "" ":class:`Mock` is a very powerful and flexible object, but it suffers from " "two flaws when used to mock out objects from a system under test. One of " @@ -2376,25 +2415,25 @@ msgid "" "general problem with using mock objects." msgstr "" -#: ../Doc/library/unittest.mock.rst:2463 +#: ../Doc/library/unittest.mock.rst:2527 msgid "" "First the problem specific to :class:`Mock`. :class:`Mock` has two assert " "methods that are extremely handy: :meth:`~Mock.assert_called_with` and :meth:" "`~Mock.assert_called_once_with`." msgstr "" -#: ../Doc/library/unittest.mock.rst:2476 +#: ../Doc/library/unittest.mock.rst:2540 msgid "" "Because mocks auto-create attributes on demand, and allow you to call them " "with arbitrary arguments, if you misspell one of these assert methods then " "your assertion is gone:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2486 +#: ../Doc/library/unittest.mock.rst:2550 msgid "Your tests can pass silently and incorrectly because of the typo." msgstr "" -#: ../Doc/library/unittest.mock.rst:2488 +#: ../Doc/library/unittest.mock.rst:2552 msgid "" "The second issue is more general to mocking. If you refactor some of your " "code, rename members and so on, any tests for code that is still using the " @@ -2402,7 +2441,7 @@ msgid "" "means your tests can all pass even though your code is broken." msgstr "" -#: ../Doc/library/unittest.mock.rst:2493 +#: ../Doc/library/unittest.mock.rst:2557 msgid "" "Note that this is another reason why you need integration tests as well as " "unit tests. Testing everything in isolation is all fine and dandy, but if " @@ -2410,20 +2449,20 @@ msgid "" "room for bugs that tests might have caught." msgstr "" -#: ../Doc/library/unittest.mock.rst:2498 +#: ../Doc/library/unittest.mock.rst:2562 msgid "" ":mod:`mock` already provides a feature to help with this, called speccing. " "If you use a class or instance as the :attr:`spec` for a mock then you can " "only access attributes on the mock that exist on the real class:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2509 +#: ../Doc/library/unittest.mock.rst:2573 msgid "" "The spec only applies to the mock itself, so we still have the same issue " "with any methods on the mock:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2518 +#: ../Doc/library/unittest.mock.rst:2582 msgid "" "Auto-speccing solves this problem. You can either pass ``autospec=True`` to :" "func:`patch` / :func:`patch.object` or use the :func:`create_autospec` " @@ -2435,24 +2474,24 @@ msgid "" "import modules) without a big performance hit." msgstr "" -#: ../Doc/library/unittest.mock.rst:2527 +#: ../Doc/library/unittest.mock.rst:2591 msgid "Here's an example of it in use::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2537 +#: ../Doc/library/unittest.mock.rst:2601 msgid "" "You can see that :class:`request.Request` has a spec. :class:`request." "Request` takes two arguments in the constructor (one of which is *self*). " "Here's what happens if we try to call it incorrectly::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2546 +#: ../Doc/library/unittest.mock.rst:2610 msgid "" "The spec also applies to instantiated classes (i.e. the return value of " "specced mocks)::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2553 +#: ../Doc/library/unittest.mock.rst:2617 msgid "" ":class:`Request` objects are not callable, so the return value of " "instantiating our mocked out :class:`request.Request` is a non-callable " @@ -2460,20 +2499,20 @@ msgid "" "error::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2565 +#: ../Doc/library/unittest.mock.rst:2629 msgid "" "In many cases you will just be able to add ``autospec=True`` to your " "existing :func:`patch` calls and then be protected against bugs due to typos " "and api changes." msgstr "" -#: ../Doc/library/unittest.mock.rst:2569 +#: ../Doc/library/unittest.mock.rst:2633 msgid "" "As well as using *autospec* through :func:`patch` there is a :func:" "`create_autospec` for creating autospecced mocks directly:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2577 +#: ../Doc/library/unittest.mock.rst:2641 msgid "" "This isn't without caveats and limitations however, which is why it is not " "the default behaviour. In order to know what attributes are available on the " @@ -2485,7 +2524,7 @@ msgid "" "objects so that introspection is safe [#]_." msgstr "" -#: ../Doc/library/unittest.mock.rst:2586 +#: ../Doc/library/unittest.mock.rst:2650 msgid "" "A more serious problem is that it is common for instance attributes to be " "created in the :meth:`__init__` method and not to exist on the class at all. " @@ -2493,7 +2532,7 @@ msgid "" "the api to visible attributes. ::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2603 +#: ../Doc/library/unittest.mock.rst:2667 msgid "" "There are a few different ways of resolving this problem. The easiest, but " "not necessarily the least annoying, way is to simply set the required " @@ -2502,7 +2541,7 @@ msgid "" "setting them::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2614 +#: ../Doc/library/unittest.mock.rst:2678 msgid "" "There is a more aggressive version of both *spec* and *autospec* that *does* " "prevent you setting non-existent attributes. This is useful if you want to " @@ -2510,7 +2549,7 @@ msgid "" "this particular scenario:" msgstr "" -#: ../Doc/library/unittest.mock.rst:2627 +#: ../Doc/library/unittest.mock.rst:2691 msgid "" "Probably the best way of solving the problem is to add class attributes as " "default values for instance members initialised in :meth:`__init__`. Note " @@ -2519,7 +2558,7 @@ msgid "" "faster too. e.g." msgstr "" -#: ../Doc/library/unittest.mock.rst:2637 +#: ../Doc/library/unittest.mock.rst:2701 msgid "" "This brings up another issue. It is relatively common to provide a default " "value of ``None`` for members that will later be an object of a different " @@ -2530,7 +2569,7 @@ msgid "" "These will just be ordinary mocks (well - MagicMocks):" msgstr "" -#: ../Doc/library/unittest.mock.rst:2652 +#: ../Doc/library/unittest.mock.rst:2716 msgid "" "If modifying your production classes to add defaults isn't to your liking " "then there are more options. One of these is simply to use an instance as " @@ -2541,27 +2580,31 @@ msgid "" "alternative object as the *autospec* argument::" msgstr "" -#: ../Doc/library/unittest.mock.rst:2673 +#: ../Doc/library/unittest.mock.rst:2737 msgid "" "This only applies to classes or already instantiated objects. Calling a " "mocked class to create a mock instance *does not* create a real instance. It " "is only attribute lookups - along with calls to :func:`dir` - that are done." msgstr "" -#: ../Doc/library/unittest.mock.rst:2678 +#: ../Doc/library/unittest.mock.rst:2742 msgid "Sealing mocks" msgstr "" -#: ../Doc/library/unittest.mock.rst:2687 +#: ../Doc/library/unittest.mock.rst:2751 msgid "" "Seal will disable the automatic creation of mocks when accessing an " "attribute of the mock being sealed or any of its attributes that are already " "mocks recursively." msgstr "" -#: ../Doc/library/unittest.mock.rst:2690 +#: ../Doc/library/unittest.mock.rst:2754 msgid "" "If a mock instance with a name or a spec is assigned to an attribute it " "won't be considered in the sealing chain. This allows one to prevent seal " "from fixing part of the mock object. ::" msgstr "" + +#, fuzzy +#~ msgid "Assert that the mock was awaited at least once." +#~ msgstr "Asserter que le *mock* a été appelé au moins une fois." diff --git a/library/unittest.po b/library/unittest.po index 10272eefb..a9b33235f 100644 --- a/library/unittest.po +++ b/library/unittest.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-08-16 23:24+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -2356,7 +2356,82 @@ msgstr "" "nettoyage une à la fois, de sorte qu'elles peuvent être appelées à tout " "moment." -#: ../Doc/library/unittest.rst:1495 +#: ../Doc/library/unittest.rst:1491 +msgid "" +"This class provides an API similar to :class:`TestCase` and also accepts " +"coroutines as test functions." +msgstr "" + +#: ../Doc/library/unittest.rst:1498 +#, fuzzy +msgid "" +"Method called to prepare the test fixture. This is called after :meth:" +"`setUp`. This is called immediately before calling the test method; other " +"than :exc:`AssertionError` or :exc:`SkipTest`, any exception raised by this " +"method will be considered an error rather than a test failure. The default " +"implementation does nothing." +msgstr "" +"Méthode appelée pour réaliser la mise en place du test. Elle est exécutée " +"immédiatement avant l'appel de la méthode de test ; à l'exception de :exc:" +"`AssertionError` ou :exc:`SkipTest`, toute exception levée par cette méthode " +"est considérée comme une erreur et non pas comme un échec du test. " +"L'implémentation par défaut ne fait rien." + +#: ../Doc/library/unittest.rst:1506 +#, fuzzy +msgid "" +"Method called immediately after the test method has been called and the " +"result recorded. This is called before :meth:`tearDown`. This is called " +"even if the test method raised an exception, so the implementation in " +"subclasses may need to be particularly careful about checking internal " +"state. Any exception, other than :exc:`AssertionError` or :exc:`SkipTest`, " +"raised by this method will be considered an additional error rather than a " +"test failure (thus increasing the total number of reported errors). This " +"method will only be called if the :meth:`asyncSetUp` succeeds, regardless of " +"the outcome of the test method. The default implementation does nothing." +msgstr "" +"Méthode appelée immédiatement après l'appel de la méthode de test et " +"l'enregistrement du résultat. Elle est appelée même si la méthode de test a " +"levé une exception. De fait, l'implémentation d'un sous-classes doit être " +"fait avec précaution si vous vérifiez l'état interne de la classe. Toute " +"exception, autre que :exc:`AssertionError` ou :exc:`SkipTest`, levée par " +"cette méthode est considérée comme une erreur supplémentaire plutôt que " +"comme un échec du test (augmentant ainsi le nombre total des erreurs " +"signalées). Cette méthode est appelée uniquement si l'exécution de :meth:" +"`setUp` est réussie quel que soit le résultat de la méthode de test. " +"L'implémentation par défaut ne fait rien." + +#: ../Doc/library/unittest.rst:1518 +msgid "This method accepts a coroutine that can be used as a cleanup function." +msgstr "" + +#: ../Doc/library/unittest.rst:1522 +#, fuzzy +msgid "" +"Sets up a new event loop to run the test, collecting the result into the :" +"class:`TestResult` object passed as *result*. If *result* is omitted or " +"``None``, a temporary result object is created (by calling the :meth:" +"`defaultTestResult` method) and used. The result object is returned to :meth:" +"`run`'s caller. At the end of the test all the tasks in the event loop are " +"cancelled." +msgstr "" +"Exécute le test, en collectant le résultat dans l'objet :class:`TestResult` " +"passé comme *result*. Si *result* est omis ou vaut ``None``, un objet " +"temporaire de résultat est créé (en appelant la méthode :meth:" +"`defaultTestResult`) et utilisé. L'objet résultat est renvoyé à l'appelant " +"de :meth:`run`." + +#: ../Doc/library/unittest.rst:1530 +msgid "An example illustrating the order::" +msgstr "" + +#: ../Doc/library/unittest.rst:1566 +msgid "" +"After running the test ``events`` would contain ``[\"setUp\", \"asyncSetUp" +"\", \"test_response\", \"asyncTearDown\", \"tearDown\", \"cleanup\"]``" +msgstr "" + +#: ../Doc/library/unittest.rst:1571 msgid "" "This class implements the portion of the :class:`TestCase` interface which " "allows the test runner to drive the test, but does not provide the methods " @@ -2371,11 +2446,11 @@ msgstr "" "code de test existant afin de faciliter l'intégration dans un *framework* de " "test basé sur :mod:`unittest`." -#: ../Doc/library/unittest.rst:1505 +#: ../Doc/library/unittest.rst:1581 msgid "Deprecated aliases" msgstr "Alias obsolètes" -#: ../Doc/library/unittest.rst:1507 +#: ../Doc/library/unittest.rst:1583 msgid "" "For historical reasons, some of the :class:`TestCase` methods had one or " "more aliases that are now deprecated. The following table lists the correct " @@ -2385,123 +2460,123 @@ msgstr "" "`TestCase` avaient un ou plusieurs alias qui sont maintenant obsolètes. Le " "tableau suivant énumère les noms corrects ainsi que leurs alias obsolètes  ::" -#: ../Doc/library/unittest.rst:1512 +#: ../Doc/library/unittest.rst:1588 msgid "Method Name" msgstr "Nom de méthode" -#: ../Doc/library/unittest.rst:1512 +#: ../Doc/library/unittest.rst:1588 msgid "Deprecated alias" msgstr "Alias obsolètes" -#: ../Doc/library/unittest.rst:1514 +#: ../Doc/library/unittest.rst:1590 msgid ":meth:`.assertEqual`" msgstr ":meth:`.assertEqual`" -#: ../Doc/library/unittest.rst:1514 +#: ../Doc/library/unittest.rst:1590 msgid "failUnlessEqual" msgstr "failUnlessEqual" -#: ../Doc/library/unittest.rst:1514 +#: ../Doc/library/unittest.rst:1590 msgid "assertEquals" msgstr "assertEquals" -#: ../Doc/library/unittest.rst:1515 +#: ../Doc/library/unittest.rst:1591 msgid ":meth:`.assertNotEqual`" msgstr ":meth:`.assertNotEqual`" -#: ../Doc/library/unittest.rst:1515 +#: ../Doc/library/unittest.rst:1591 msgid "failIfEqual" msgstr "failIfEqual" -#: ../Doc/library/unittest.rst:1515 +#: ../Doc/library/unittest.rst:1591 msgid "assertNotEquals" msgstr "assertNotEquals" -#: ../Doc/library/unittest.rst:1516 +#: ../Doc/library/unittest.rst:1592 msgid ":meth:`.assertTrue`" msgstr ":meth:`.assertTrue`" -#: ../Doc/library/unittest.rst:1516 +#: ../Doc/library/unittest.rst:1592 msgid "failUnless" msgstr "failUnless" -#: ../Doc/library/unittest.rst:1516 +#: ../Doc/library/unittest.rst:1592 msgid "assert\\_" msgstr "assert\\_" -#: ../Doc/library/unittest.rst:1517 +#: ../Doc/library/unittest.rst:1593 msgid ":meth:`.assertFalse`" msgstr ":meth:`.assertFalse`" -#: ../Doc/library/unittest.rst:1517 +#: ../Doc/library/unittest.rst:1593 msgid "failIf" msgstr "failIf" -#: ../Doc/library/unittest.rst:1518 +#: ../Doc/library/unittest.rst:1594 msgid ":meth:`.assertRaises`" msgstr ":meth:`.assertRaises`" -#: ../Doc/library/unittest.rst:1518 +#: ../Doc/library/unittest.rst:1594 msgid "failUnlessRaises" msgstr "failUnlessRaises" -#: ../Doc/library/unittest.rst:1519 +#: ../Doc/library/unittest.rst:1595 msgid ":meth:`.assertAlmostEqual`" msgstr ":meth:`.assertAlmostEqual`" -#: ../Doc/library/unittest.rst:1519 +#: ../Doc/library/unittest.rst:1595 msgid "failUnlessAlmostEqual" msgstr "failUnlessAlmostEqual" -#: ../Doc/library/unittest.rst:1519 +#: ../Doc/library/unittest.rst:1595 msgid "assertAlmostEquals" msgstr "assertAlmostEquals" -#: ../Doc/library/unittest.rst:1520 +#: ../Doc/library/unittest.rst:1596 msgid ":meth:`.assertNotAlmostEqual`" msgstr ":meth:`.assertNotAlmostEqual`" -#: ../Doc/library/unittest.rst:1520 +#: ../Doc/library/unittest.rst:1596 msgid "failIfAlmostEqual" msgstr "failIfAlmostEqual" -#: ../Doc/library/unittest.rst:1520 +#: ../Doc/library/unittest.rst:1596 msgid "assertNotAlmostEquals" msgstr "assertNotAlmostEquals" -#: ../Doc/library/unittest.rst:1521 +#: ../Doc/library/unittest.rst:1597 msgid ":meth:`.assertRegex`" msgstr ":meth:`.assertRegex`" -#: ../Doc/library/unittest.rst:1521 +#: ../Doc/library/unittest.rst:1597 msgid "assertRegexpMatches" msgstr "assertRegexpMatches" -#: ../Doc/library/unittest.rst:1522 +#: ../Doc/library/unittest.rst:1598 msgid ":meth:`.assertNotRegex`" msgstr ":meth:`.assertNotRegex`" -#: ../Doc/library/unittest.rst:1522 +#: ../Doc/library/unittest.rst:1598 msgid "assertNotRegexpMatches" msgstr "assertNotRegexpMatches" -#: ../Doc/library/unittest.rst:1523 +#: ../Doc/library/unittest.rst:1599 msgid ":meth:`.assertRaisesRegex`" msgstr ":meth:`.assertRaisesRegex`" -#: ../Doc/library/unittest.rst:1523 +#: ../Doc/library/unittest.rst:1599 msgid "assertRaisesRegexp" msgstr "assertRaisesRegexp" -#: ../Doc/library/unittest.rst:1526 +#: ../Doc/library/unittest.rst:1602 msgid "The fail* aliases listed in the second column have been deprecated." msgstr "Les alias ``fail*`` sont énumérés dans la deuxième colonne." -#: ../Doc/library/unittest.rst:1528 +#: ../Doc/library/unittest.rst:1604 msgid "The assert* aliases listed in the third column have been deprecated." msgstr "Les alias ``assert*`` sont énumérés dans la troisième colonne." -#: ../Doc/library/unittest.rst:1530 +#: ../Doc/library/unittest.rst:1606 msgid "" "``assertRegexpMatches`` and ``assertRaisesRegexp`` have been renamed to :" "meth:`.assertRegex` and :meth:`.assertRaisesRegex`." @@ -2509,7 +2584,7 @@ msgstr "" "Les expressions ``assertRegexpMatches`` et ``assertRaisesRegexp`` ont été " "renommées en :meth:`.assertRegex` et :meth:`.assertRaisesRegex`." -#: ../Doc/library/unittest.rst:1533 +#: ../Doc/library/unittest.rst:1609 msgid "" "The ``assertNotRegexpMatches`` name is deprecated in favor of :meth:`." "assertNotRegex`." @@ -2517,11 +2592,11 @@ msgstr "" "Le nom ``assertNotRegexpMatches`` est obsolète en faveur de :meth:`." "assertNotRegex`." -#: ../Doc/library/unittest.rst:1539 +#: ../Doc/library/unittest.rst:1615 msgid "Grouping tests" msgstr "Regroupement des tests" -#: ../Doc/library/unittest.rst:1543 +#: ../Doc/library/unittest.rst:1619 msgid "" "This class represents an aggregation of individual test cases and test " "suites. The class presents the interface needed by the test runner to allow " @@ -2534,7 +2609,7 @@ msgstr "" "instance de :class:`TestSuite` est identique à l'itération sur la suite, en " "exécutant chaque test indépendamment." -#: ../Doc/library/unittest.rst:1548 +#: ../Doc/library/unittest.rst:1624 msgid "" "If *tests* is given, it must be an iterable of individual test cases or " "other test suites that will be used to build the suite initially. Additional " @@ -2545,7 +2620,7 @@ msgstr "" "la suite initial. Des méthodes supplémentaires sont fournies pour ajouter " "ultérieurement des cas de test et des suites à la collection." -#: ../Doc/library/unittest.rst:1552 +#: ../Doc/library/unittest.rst:1628 msgid "" ":class:`TestSuite` objects behave much like :class:`TestCase` objects, " "except they do not actually implement a test. Instead, they are used to " @@ -2559,12 +2634,12 @@ msgstr "" "doivent être exécutés ensemble. Des méthodes supplémentaires sont " "disponibles pour ajouter des tests aux instances de :class:`TestSuite` :" -#: ../Doc/library/unittest.rst:1560 +#: ../Doc/library/unittest.rst:1636 msgid "Add a :class:`TestCase` or :class:`TestSuite` to the suite." msgstr "" "Ajouter un objet :class:`TestCase` ou :class:`TestSuite` à la suite de tests." -#: ../Doc/library/unittest.rst:1565 +#: ../Doc/library/unittest.rst:1641 msgid "" "Add all the tests from an iterable of :class:`TestCase` and :class:" "`TestSuite` instances to this test suite." @@ -2572,7 +2647,7 @@ msgstr "" "Ajouter tous les tests d'un itérable d'instances de :class:`TestCase` et de :" "class:`TestSuite` à cette suite de tests." -#: ../Doc/library/unittest.rst:1568 +#: ../Doc/library/unittest.rst:1644 msgid "" "This is equivalent to iterating over *tests*, calling :meth:`addTest` for " "each element." @@ -2580,12 +2655,12 @@ msgstr "" "C'est l'équivalent d'une itération sur *tests*, appelant :meth:`addTest` " "pour chaque élément." -#: ../Doc/library/unittest.rst:1571 +#: ../Doc/library/unittest.rst:1647 msgid ":class:`TestSuite` shares the following methods with :class:`TestCase`:" msgstr "" ":class:`TestSuite` partage les méthodes suivantes avec :class:`TestCase` :" -#: ../Doc/library/unittest.rst:1576 +#: ../Doc/library/unittest.rst:1652 msgid "" "Run the tests associated with this suite, collecting the result into the " "test result object passed as *result*. Note that unlike :meth:`TestCase." @@ -2596,7 +2671,7 @@ msgstr "" "à :meth:`TestCase.run`, :meth:`TestSuite.run` nécessite que l'objet résultat " "soit passé." -#: ../Doc/library/unittest.rst:1584 +#: ../Doc/library/unittest.rst:1660 msgid "" "Run the tests associated with this suite without collecting the result. This " "allows exceptions raised by the test to be propagated to the caller and can " @@ -2606,7 +2681,7 @@ msgstr "" "permet aux exceptions levées par le test d'être propagées à l'appelant et " "peut être utilisé pour exécuter des tests sous un débogueur." -#: ../Doc/library/unittest.rst:1591 +#: ../Doc/library/unittest.rst:1667 msgid "" "Return the number of tests represented by this test object, including all " "individual tests and sub-suites." @@ -2614,7 +2689,7 @@ msgstr "" "Renvoie le nombre de tests représentés par cet objet de test, y compris tous " "les tests individuels et les sous-suites." -#: ../Doc/library/unittest.rst:1597 +#: ../Doc/library/unittest.rst:1673 msgid "" "Tests grouped by a :class:`TestSuite` are always accessed by iteration. " "Subclasses can lazily provide tests by overriding :meth:`__iter__`. Note " @@ -2636,7 +2711,7 @@ msgstr "" "n'utilisent une sous-classe qui remplace :meth:`TestSuite." "_removeTestAtIndex` pour préserver les références des tests." -#: ../Doc/library/unittest.rst:1607 +#: ../Doc/library/unittest.rst:1683 msgid "" "In earlier versions the :class:`TestSuite` accessed tests directly rather " "than through iteration, so overriding :meth:`__iter__` wasn't sufficient for " @@ -2646,7 +2721,7 @@ msgstr "" "tests directement plutôt que par itération, donc surcharger la méthode :meth:" "`__iter__` n'était pas suffisante pour fournir les tests." -#: ../Doc/library/unittest.rst:1612 +#: ../Doc/library/unittest.rst:1688 msgid "" "In earlier versions the :class:`TestSuite` held references to each :class:" "`TestCase` after :meth:`TestSuite.run`. Subclasses can restore that behavior " @@ -2657,7 +2732,7 @@ msgstr "" "Les sous-classes peuvent restaurer ce comportement en surchargeant :meth:" "`TestSuite._removeTestAtIndex`." -#: ../Doc/library/unittest.rst:1617 +#: ../Doc/library/unittest.rst:1693 msgid "" "In the typical usage of a :class:`TestSuite` object, the :meth:`run` method " "is invoked by a :class:`TestRunner` rather than by the end-user test harness." @@ -2666,11 +2741,11 @@ msgstr "" "`run` est invoquée par une classe :class:`TestRunner` plutôt que par le " "système de test de l'utilisateur." -#: ../Doc/library/unittest.rst:1622 +#: ../Doc/library/unittest.rst:1698 msgid "Loading and running tests" msgstr "Chargement et exécution des tests" -#: ../Doc/library/unittest.rst:1626 +#: ../Doc/library/unittest.rst:1702 msgid "" "The :class:`TestLoader` class is used to create test suites from classes and " "modules. Normally, there is no need to create an instance of this class; " @@ -2685,12 +2760,12 @@ msgstr "" "L'utilisation d'une sous-classe ou d'une instance permet cependant de " "personnaliser certaines propriétés configurables." -#: ../Doc/library/unittest.rst:1632 +#: ../Doc/library/unittest.rst:1708 msgid ":class:`TestLoader` objects have the following attributes:" msgstr "" "Les objets de la classe :class:`TestLoader` ont les attributs suivants :" -#: ../Doc/library/unittest.rst:1637 +#: ../Doc/library/unittest.rst:1713 msgid "" "A list of the non-fatal errors encountered while loading tests. Not reset by " "the loader at any point. Fatal errors are signalled by the relevant a method " @@ -2703,12 +2778,12 @@ msgstr "" "exception à l'appelant. Les erreurs non fatales sont également indiquées par " "un test synthétique qui lève l'erreur initiale lors de l'exécution." -#: ../Doc/library/unittest.rst:1646 +#: ../Doc/library/unittest.rst:1722 msgid ":class:`TestLoader` objects have the following methods:" msgstr "" "Les objets de la classe :class:`TestLoader` ont les attributs suivants :" -#: ../Doc/library/unittest.rst:1651 +#: ../Doc/library/unittest.rst:1727 msgid "" "Return a suite of all test cases contained in the :class:`TestCase`\\ -" "derived :class:`testCaseClass`." @@ -2716,7 +2791,7 @@ msgstr "" "Renvoie une suite de tous les cas de test contenus dans la classe :class:" "`TestCaseClass`\\ dérivée de :class:`testCase`." -#: ../Doc/library/unittest.rst:1654 +#: ../Doc/library/unittest.rst:1730 msgid "" "A test case instance is created for each method named by :meth:" "`getTestCaseNames`. By default these are the method names beginning with " @@ -2730,7 +2805,7 @@ msgstr "" "que la méthode :meth:`runTest` est implémentée, un seul cas de test est créé " "pour cette méthode à la place." -#: ../Doc/library/unittest.rst:1663 +#: ../Doc/library/unittest.rst:1739 msgid "" "Return a suite of all test cases contained in the given module. This method " "searches *module* for classes derived from :class:`TestCase` and creates an " @@ -2741,7 +2816,7 @@ msgstr "" "`TestCase` et crée une instance de la classe pour chaque méthode de test " "définie pour cette classe." -#: ../Doc/library/unittest.rst:1670 +#: ../Doc/library/unittest.rst:1746 msgid "" "While using a hierarchy of :class:`TestCase`\\ -derived classes can be " "convenient in sharing fixtures and helper functions, defining test methods " @@ -2756,7 +2831,7 @@ msgstr "" "pas bien avec cette méthode. Cela peut toutefois s'avérer utile lorsque les " "*fixtures* sont différentes et définies dans des sous-classes." -#: ../Doc/library/unittest.rst:1676 +#: ../Doc/library/unittest.rst:1752 msgid "" "If a module provides a ``load_tests`` function it will be called to load the " "tests. This allows modules to customize test loading. This is the " @@ -2768,11 +2843,11 @@ msgstr "" "C'est le protocole `load_tests protocol`_. L'argument *pattern* est passé " "comme troisième argument à ``load_tests``." -#: ../Doc/library/unittest.rst:1681 +#: ../Doc/library/unittest.rst:1757 msgid "Support for ``load_tests`` added." msgstr "Ajout de la prise en charge de ``load_tests``." -#: ../Doc/library/unittest.rst:1684 +#: ../Doc/library/unittest.rst:1760 msgid "" "The undocumented and unofficial *use_load_tests* default argument is " "deprecated and ignored, although it is still accepted for backward " @@ -2784,13 +2859,13 @@ msgstr "" "descendante. La méthode accepte aussi maintenant un argument *pattern* qui " "est passé à ``load_tests`` comme troisième argument." -#: ../Doc/library/unittest.rst:1693 +#: ../Doc/library/unittest.rst:1769 msgid "Return a suite of all test cases given a string specifier." msgstr "" "Renvoie une suite de tous les cas de test en fonction d'un spécificateur de " "chaîne de caractères." -#: ../Doc/library/unittest.rst:1695 +#: ../Doc/library/unittest.rst:1771 msgid "" "The specifier *name* is a \"dotted name\" that may resolve either to a " "module, a test case class, a test method within a test case class, a :class:" @@ -2809,7 +2884,7 @@ msgstr "" "choisie comme \"méthode de test dans une classe de cas de test\", plutôt que " "comme \"un objet appelable\"." -#: ../Doc/library/unittest.rst:1703 +#: ../Doc/library/unittest.rst:1779 msgid "" "For example, if you have a module :mod:`SampleTests` containing a :class:" "`TestCase`\\ -derived class :class:`SampleTestCase` with three test methods " @@ -2831,11 +2906,11 @@ msgstr "" "spécificateur peut se référer à des modules et packages qui n'ont pas été " "importés. Ils seront importés par un effet de bord." -#: ../Doc/library/unittest.rst:1713 +#: ../Doc/library/unittest.rst:1789 msgid "The method optionally resolves *name* relative to the given *module*." msgstr "La méthode résout facultativement *name* relatif au *module* donné." -#: ../Doc/library/unittest.rst:1715 +#: ../Doc/library/unittest.rst:1791 msgid "" "If an :exc:`ImportError` or :exc:`AttributeError` occurs while traversing " "*name* then a synthetic test that raises that error when run will be " @@ -2846,7 +2921,7 @@ msgstr "" "de l'exécution est renvoyé. Ces erreurs sont incluses dans les erreurs " "accumulées par *self.errors*." -#: ../Doc/library/unittest.rst:1724 +#: ../Doc/library/unittest.rst:1800 msgid "" "Similar to :meth:`loadTestsFromName`, but takes a sequence of names rather " "than a single name. The return value is a test suite which supports all the " @@ -2856,7 +2931,7 @@ msgstr "" "plutôt qu'un seul nom. La valeur renvoyée est une suite de tests qui gère " "tous les tests définis pour chaque nom." -#: ../Doc/library/unittest.rst:1731 +#: ../Doc/library/unittest.rst:1807 msgid "" "Return a sorted sequence of method names found within *testCaseClass*; this " "should be a subclass of :class:`TestCase`." @@ -2864,7 +2939,7 @@ msgstr "" "Renvoie une séquence triée de noms de méthodes trouvés dans " "*testCaseClass* ; ceci doit être une sous-classe de :class:`TestCase`." -#: ../Doc/library/unittest.rst:1737 +#: ../Doc/library/unittest.rst:1813 msgid "" "Find all the test modules by recursing into subdirectories from the " "specified start directory, and return a TestSuite object containing them. " @@ -2878,7 +2953,7 @@ msgstr "" "chargés. Seuls les noms de modules qui sont importables (c'est-à-dire qui " "sont des identifiants Python valides) sont chargés." -#: ../Doc/library/unittest.rst:1743 +#: ../Doc/library/unittest.rst:1819 msgid "" "All test modules must be importable from the top level of the project. If " "the start directory is not the top level directory then the top level " @@ -2888,7 +2963,7 @@ msgstr "" "projet. Si le répertoire de démarrage n'est pas la racine, le répertoire " "racine doit être spécifié séparément." -#: ../Doc/library/unittest.rst:1747 +#: ../Doc/library/unittest.rst:1823 msgid "" "If importing a module fails, for example due to a syntax error, then this " "will be recorded as a single error and discovery will continue. If the " @@ -2901,7 +2976,7 @@ msgstr "" "`SkipTest` est levé, il est enregistré comme un saut plutôt que comme un " "message d'erreur." -#: ../Doc/library/unittest.rst:1752 +#: ../Doc/library/unittest.rst:1828 msgid "" "If a package (a directory containing a file named :file:`__init__.py`) is " "found, the package will be checked for a ``load_tests`` function. If this " @@ -2917,7 +2992,7 @@ msgstr "" "paquet n'est vérifié qu'une seule fois au cours d'une invocation, même si la " "fonction *load_tests* appelle elle-même ``loader.discover``." -#: ../Doc/library/unittest.rst:1760 +#: ../Doc/library/unittest.rst:1836 msgid "" "If ``load_tests`` exists then discovery does *not* recurse into the package, " "``load_tests`` is responsible for loading all tests in the package." @@ -2926,7 +3001,7 @@ msgstr "" "dans le paquet, ``load_tests`` a la responsabilité de charger tous les tests " "dans le paquet." -#: ../Doc/library/unittest.rst:1764 +#: ../Doc/library/unittest.rst:1840 msgid "" "The pattern is deliberately not stored as a loader attribute so that " "packages can continue discovery themselves. *top_level_dir* is stored so " @@ -2938,11 +3013,11 @@ msgstr "" "*top_level_dir* est stocké de sorte que ``load_tests`` n'a pas besoin de " "passer cet argument a ``loader. discover()``." -#: ../Doc/library/unittest.rst:1769 +#: ../Doc/library/unittest.rst:1845 msgid "*start_dir* can be a dotted module name as well as a directory." msgstr "*start_dir* peut être un nom de module ainsi qu'un répertoire." -#: ../Doc/library/unittest.rst:1773 +#: ../Doc/library/unittest.rst:1849 msgid "" "Modules that raise :exc:`SkipTest` on import are recorded as skips, not " "errors. Discovery works for :term:`namespace packages `. " @@ -2957,7 +3032,7 @@ msgstr "" "soit le même, même si l'ordre du système de fichiers sous-jacent ne dépend " "pas du nom du fichier." -#: ../Doc/library/unittest.rst:1781 +#: ../Doc/library/unittest.rst:1857 msgid "" "Found packages are now checked for ``load_tests`` regardless of whether " "their path matches *pattern*, because it is impossible for a package name to " @@ -2968,7 +3043,7 @@ msgstr "" "*pattern*, car il est impossible pour un nom de paquet de correspondre au " "motif par défaut." -#: ../Doc/library/unittest.rst:1787 +#: ../Doc/library/unittest.rst:1863 msgid "" "The following attributes of a :class:`TestLoader` can be configured either " "by subclassing or assignment on an instance:" @@ -2976,7 +3051,7 @@ msgstr "" "Les attributs suivants d'une classe :class:`TestLoader` peuvent être " "configurés soit par héritage, soit par affectation sur une instance  ::" -#: ../Doc/library/unittest.rst:1793 +#: ../Doc/library/unittest.rst:1869 msgid "" "String giving the prefix of method names which will be interpreted as test " "methods. The default value is ``'test'``." @@ -2984,7 +3059,7 @@ msgstr "" "Chaîne donnant le préfixe des noms de méthodes qui seront interprétés comme " "méthodes de test. La valeur par défaut est ``'test'``." -#: ../Doc/library/unittest.rst:1796 +#: ../Doc/library/unittest.rst:1872 msgid "" "This affects :meth:`getTestCaseNames` and all the :meth:`loadTestsFrom\\*` " "methods." @@ -2992,7 +3067,7 @@ msgstr "" "Ceci affecte les méthodes :meth:`getTestCaseNames` et toutes les méthodes :" "meth:`loadTestsFrom\\*`." -#: ../Doc/library/unittest.rst:1802 +#: ../Doc/library/unittest.rst:1878 msgid "" "Function to be used to compare method names when sorting them in :meth:" "`getTestCaseNames` and all the :meth:`loadTestsFrom\\*` methods." @@ -3001,7 +3076,7 @@ msgstr "" "les méthodes :meth:`getTestCaseNames` et toutes les méthodes :meth:" "`loadTestsFrom\\*`." -#: ../Doc/library/unittest.rst:1808 +#: ../Doc/library/unittest.rst:1884 msgid "" "Callable object that constructs a test suite from a list of tests. No " "methods on the resulting object are needed. The default value is the :class:" @@ -3011,11 +3086,11 @@ msgstr "" "tests. Aucune méthode sur l'objet résultant n'est nécessaire. La valeur par " "défaut est la classe :class:`TestSuite`." -#: ../Doc/library/unittest.rst:1812 ../Doc/library/unittest.rst:1825 +#: ../Doc/library/unittest.rst:1888 ../Doc/library/unittest.rst:1901 msgid "This affects all the :meth:`loadTestsFrom\\*` methods." msgstr "Cela affecte toutes les méthodes :meth:`loadTestsFrom\\*`." -#: ../Doc/library/unittest.rst:1816 +#: ../Doc/library/unittest.rst:1892 msgid "" "List of Unix shell-style wildcard test name patterns that test methods have " "to match to be included in test suites (see ``-v`` option)." @@ -3024,7 +3099,7 @@ msgstr "" "méthodes de test doivent valider pour être incluses dans les suites de test " "(voir l'option ``-v``)." -#: ../Doc/library/unittest.rst:1819 +#: ../Doc/library/unittest.rst:1895 msgid "" "If this attribute is not ``None`` (the default), all test methods to be " "included in test suites must match one of the patterns in this list. Note " @@ -3039,7 +3114,7 @@ msgstr "" "à l'option ``-v``, les motifs de sous-chaînes simples doivent être convertis " "avec le joker ``*``." -#: ../Doc/library/unittest.rst:1832 +#: ../Doc/library/unittest.rst:1908 msgid "" "This class is used to compile information about which tests have succeeded " "and which have failed." @@ -3047,7 +3122,7 @@ msgstr "" "Cette classe est utilisée pour compiler des informations sur les tests qui " "ont réussi et ceux qui ont échoué." -#: ../Doc/library/unittest.rst:1835 +#: ../Doc/library/unittest.rst:1911 msgid "" "A :class:`TestResult` object stores the results of a set of tests. The :" "class:`TestCase` and :class:`TestSuite` classes ensure that results are " @@ -3059,7 +3134,7 @@ msgstr "" "résultats sont correctement enregistrés. Les auteurs du test n'ont pas à se " "soucier de l'enregistrement des résultats des tests." -#: ../Doc/library/unittest.rst:1840 +#: ../Doc/library/unittest.rst:1916 msgid "" "Testing frameworks built on top of :mod:`unittest` may want access to the :" "class:`TestResult` object generated by running a set of tests for reporting " @@ -3072,7 +3147,7 @@ msgstr "" "`TestResult` est alors renvoyée par la méthode :meth:`TestRunner.run` à " "cette fin." -#: ../Doc/library/unittest.rst:1845 +#: ../Doc/library/unittest.rst:1921 msgid "" ":class:`TestResult` instances have the following attributes that will be of " "interest when inspecting the results of running a set of tests:" @@ -3081,7 +3156,7 @@ msgstr "" "intéressant pour l'inspection des résultats de l'exécution d'un ensemble de " "tests  ::" -#: ../Doc/library/unittest.rst:1851 +#: ../Doc/library/unittest.rst:1927 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents a test which raised an " @@ -3091,7 +3166,7 @@ msgstr "" "chaînes de caractères contenant des traces formatées. Chaque couple " "représente un test qui a levé une exception inattendue." -#: ../Doc/library/unittest.rst:1857 +#: ../Doc/library/unittest.rst:1933 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents a test where a failure " @@ -3102,7 +3177,7 @@ msgstr "" "représente un test où un échec a été explicitement signalé en utilisant les " "méthodes :meth:`TestCase.assert\\*`." -#: ../Doc/library/unittest.rst:1863 +#: ../Doc/library/unittest.rst:1939 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding the reason for skipping the test." @@ -3110,7 +3185,7 @@ msgstr "" "Une liste contenant un couple d'instances de :class:`TestCase` et une " "chaînes de caractères contenant la raison de l'omission du test." -#: ../Doc/library/unittest.rst:1870 +#: ../Doc/library/unittest.rst:1946 msgid "" "A list containing 2-tuples of :class:`TestCase` instances and strings " "holding formatted tracebacks. Each tuple represents an expected failure of " @@ -3120,7 +3195,7 @@ msgstr "" "caractères contenant des traces formatées. Chaque coulpe représente un échec " "attendu du scénario de test." -#: ../Doc/library/unittest.rst:1876 +#: ../Doc/library/unittest.rst:1952 msgid "" "A list containing :class:`TestCase` instances that were marked as expected " "failures, but succeeded." @@ -3128,18 +3203,18 @@ msgstr "" "Une liste contenant les instances :class:`TestCase` qui ont été marquées " "comme des échecs attendus, mais qui ont réussi." -#: ../Doc/library/unittest.rst:1881 +#: ../Doc/library/unittest.rst:1957 msgid "" "Set to ``True`` when the execution of tests should stop by :meth:`stop`." msgstr "" "A positionner sur ``True`` quand l'exécution des tests doit être arrêter " "par :meth:`stop`." -#: ../Doc/library/unittest.rst:1885 +#: ../Doc/library/unittest.rst:1961 msgid "The total number of tests run so far." msgstr "Le nombre total de tests effectués jusqu'à présent." -#: ../Doc/library/unittest.rst:1889 +#: ../Doc/library/unittest.rst:1965 msgid "" "If set to true, ``sys.stdout`` and ``sys.stderr`` will be buffered in " "between :meth:`startTest` and :meth:`stopTest` being called. Collected " @@ -3153,7 +3228,7 @@ msgstr "" "stderr`` réels uniquement en cas d'échec ou d'erreur du test. Toute sortie " "est également attachée au message d'erreur." -#: ../Doc/library/unittest.rst:1898 +#: ../Doc/library/unittest.rst:1974 msgid "" "If set to true :meth:`stop` will be called on the first failure or error, " "halting the test run." @@ -3161,13 +3236,13 @@ msgstr "" "Si la valeur est *true* :meth:`stop` est appelée lors de la première " "défaillance ou erreur, ce qui interrompt le test en cours d'exécution." -#: ../Doc/library/unittest.rst:1905 +#: ../Doc/library/unittest.rst:1981 msgid "If set to true then local variables will be shown in tracebacks." msgstr "" "Si la valeur est *true*, les variables locales sont affichées dans les " "traces d'appels." -#: ../Doc/library/unittest.rst:1911 +#: ../Doc/library/unittest.rst:1987 msgid "" "Return ``True`` if all tests run so far have passed, otherwise returns " "``False``." @@ -3175,7 +3250,7 @@ msgstr "" "Renvoie ``True`` si tous les tests effectués jusqu'à présent ont réussi, " "sinon renvoie ``False``." -#: ../Doc/library/unittest.rst:1914 +#: ../Doc/library/unittest.rst:1990 msgid "" "Returns ``False`` if there were any :attr:`unexpectedSuccesses` from tests " "marked with the :func:`expectedFailure` decorator." @@ -3183,7 +3258,7 @@ msgstr "" "Renvoie ``False`` s'il y a eu des :attr:`unexpectedSuccesses` dans les tests " "annotés avec le décorateur :func:`expectedFailure`." -#: ../Doc/library/unittest.rst:1920 +#: ../Doc/library/unittest.rst:1996 msgid "" "This method can be called to signal that the set of tests being run should " "be aborted by setting the :attr:`shouldStop` attribute to ``True``. :class:" @@ -3195,7 +3270,7 @@ msgstr "" "`shouldStop` sur ``True``. Les instances de :class:`TestRunner` doivent " "respecter ce signal et se terminer sans exécuter de tests supplémentaires." -#: ../Doc/library/unittest.rst:1925 +#: ../Doc/library/unittest.rst:2001 msgid "" "For example, this feature is used by the :class:`TextTestRunner` class to " "stop the test framework when the user signals an interrupt from the " @@ -3207,7 +3282,7 @@ msgstr "" "lance une interruption clavier. Les outils interactifs qui fournissent des " "implémentations de :class:`TestRunner` peuvent l'utiliser de la même manière." -#: ../Doc/library/unittest.rst:1930 +#: ../Doc/library/unittest.rst:2006 msgid "" "The following methods of the :class:`TestResult` class are used to maintain " "the internal data structures, and may be extended in subclasses to support " @@ -3221,27 +3296,27 @@ msgstr "" "outils qui prennent en charge la génération de rapports interactifs pendant " "l'exécution des tests." -#: ../Doc/library/unittest.rst:1938 +#: ../Doc/library/unittest.rst:2014 msgid "Called when the test case *test* is about to be run." msgstr "" "Appelé lorsque le scénario de test *test* est sur le point d'être exécuté." -#: ../Doc/library/unittest.rst:1942 +#: ../Doc/library/unittest.rst:2018 msgid "" "Called after the test case *test* has been executed, regardless of the " "outcome." msgstr "" "Appelé après l'exécution du cas de test *test*, quel qu'en soit le résultat." -#: ../Doc/library/unittest.rst:1947 +#: ../Doc/library/unittest.rst:2023 msgid "Called once before any tests are executed." msgstr "Appelé une fois avant l'exécution des tests." -#: ../Doc/library/unittest.rst:1954 +#: ../Doc/library/unittest.rst:2030 msgid "Called once after all tests are executed." msgstr "Appelé une fois après l'exécution des tests." -#: ../Doc/library/unittest.rst:1961 +#: ../Doc/library/unittest.rst:2037 msgid "" "Called when the test case *test* raises an unexpected exception. *err* is a " "tuple of the form returned by :func:`sys.exc_info`: ``(type, value, " @@ -3251,7 +3326,7 @@ msgstr "" "est un couple du formulaire renvoyé par :func:`sys.exc_info` : ``(type, " "valeur, traceback)``." -#: ../Doc/library/unittest.rst:1965 +#: ../Doc/library/unittest.rst:2041 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`errors` attribute, where *formatted_err* is a formatted " @@ -3261,7 +3336,7 @@ msgstr "" "l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " "formatée à partir de *err*." -#: ../Doc/library/unittest.rst:1972 +#: ../Doc/library/unittest.rst:2048 msgid "" "Called when the test case *test* signals a failure. *err* is a tuple of the " "form returned by :func:`sys.exc_info`: ``(type, value, traceback)``." @@ -3270,7 +3345,7 @@ msgstr "" "est un triplet de la même forme que celui renvoyé par :func:`sys.exc_info` : " "``(type, valeur, traceback)``." -#: ../Doc/library/unittest.rst:1975 +#: ../Doc/library/unittest.rst:2051 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`failures` attribute, where *formatted_err* is a formatted " @@ -3280,15 +3355,15 @@ msgstr "" "l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " "formatée à partir de *err*." -#: ../Doc/library/unittest.rst:1982 +#: ../Doc/library/unittest.rst:2058 msgid "Called when the test case *test* succeeds." msgstr "Appelé lorsque le scénario de test *test* réussit." -#: ../Doc/library/unittest.rst:1984 +#: ../Doc/library/unittest.rst:2060 msgid "The default implementation does nothing." msgstr "L'implémentation par défaut ne fait rien." -#: ../Doc/library/unittest.rst:1989 +#: ../Doc/library/unittest.rst:2065 msgid "" "Called when the test case *test* is skipped. *reason* is the reason the " "test gave for skipping." @@ -3296,7 +3371,7 @@ msgstr "" "Appelé lorsque le scénario de test *test* est ignoré. *raison* est la raison " "pour laquelle le test donné à été ignoré." -#: ../Doc/library/unittest.rst:1992 +#: ../Doc/library/unittest.rst:2068 msgid "" "The default implementation appends a tuple ``(test, reason)`` to the " "instance's :attr:`skipped` attribute." @@ -3304,7 +3379,7 @@ msgstr "" "L'implémentation par défaut ajoute un couple ``(test, raison)`` à " "l'attribut :attr:`skipped` de l'instance." -#: ../Doc/library/unittest.rst:1998 +#: ../Doc/library/unittest.rst:2074 msgid "" "Called when the test case *test* fails, but was marked with the :func:" "`expectedFailure` decorator." @@ -3312,7 +3387,7 @@ msgstr "" "Appelé lorsque le scénario de test *test* échoue, mais qui a été marqué avec " "le décorateur :func:`expectedFailure`." -#: ../Doc/library/unittest.rst:2001 +#: ../Doc/library/unittest.rst:2077 msgid "" "The default implementation appends a tuple ``(test, formatted_err)`` to the " "instance's :attr:`expectedFailures` attribute, where *formatted_err* is a " @@ -3322,7 +3397,7 @@ msgstr "" "l'attribut :attr:`errors` de l'instance, où *formatted_err* est une trace " "formatée à partir de *err*." -#: ../Doc/library/unittest.rst:2008 +#: ../Doc/library/unittest.rst:2084 msgid "" "Called when the test case *test* was marked with the :func:`expectedFailure` " "decorator, but succeeded." @@ -3330,7 +3405,7 @@ msgstr "" "Appelé lorsque le scénario de test *test* réussit, mais que ce scénario a " "été marqué avec le décorateur :func:`expectedFailure`." -#: ../Doc/library/unittest.rst:2011 +#: ../Doc/library/unittest.rst:2087 msgid "" "The default implementation appends the test to the instance's :attr:" "`unexpectedSuccesses` attribute." @@ -3338,7 +3413,7 @@ msgstr "" "L'implémentation par défaut ajoute le test à l'attribut :attr:" "`unexpectedSuccesses` de l'instance." -#: ../Doc/library/unittest.rst:2017 +#: ../Doc/library/unittest.rst:2093 msgid "" "Called when a subtest finishes. *test* is the test case corresponding to " "the test method. *subtest* is a custom :class:`TestCase` instance " @@ -3348,7 +3423,7 @@ msgstr "" "méthode de test. *subtest* est une instance dérivée de :class:`TestCase` " "décrivant le sous-test." -#: ../Doc/library/unittest.rst:2021 +#: ../Doc/library/unittest.rst:2097 msgid "" "If *outcome* is :const:`None`, the subtest succeeded. Otherwise, it failed " "with an exception where *outcome* is a tuple of the form returned by :func:" @@ -3358,7 +3433,7 @@ msgstr "" "avec une exception où *outcome* est un triplet du formulaire renvoyé par :" "func:`sys.exc_info` : ``(type, valeur, traceback)``." -#: ../Doc/library/unittest.rst:2025 +#: ../Doc/library/unittest.rst:2101 msgid "" "The default implementation does nothing when the outcome is a success, and " "records subtest failures as normal failures." @@ -3366,7 +3441,7 @@ msgstr "" "L'implémentation par défaut ne fait rien lorsque le résultat est un succès, " "et enregistre les échecs de sous-test comme des échecs normaux." -#: ../Doc/library/unittest.rst:2033 +#: ../Doc/library/unittest.rst:2109 msgid "" "A concrete implementation of :class:`TestResult` used by the :class:" "`TextTestRunner`." @@ -3374,7 +3449,7 @@ msgstr "" "Une implémentation concrète de :class:`TestResult` utilisé par la classe :" "class:`TextTestRunner`." -#: ../Doc/library/unittest.rst:2036 +#: ../Doc/library/unittest.rst:2112 msgid "" "This class was previously named ``_TextTestResult``. The old name still " "exists as an alias but is deprecated." @@ -3382,7 +3457,7 @@ msgstr "" "Cette classe s'appelait auparavant ``_TextTestResult``. L'ancien nom existe " "toujours en tant qu'alias, mais il est obsolète." -#: ../Doc/library/unittest.rst:2043 +#: ../Doc/library/unittest.rst:2119 msgid "" "Instance of the :class:`TestLoader` class intended to be shared. If no " "customization of the :class:`TestLoader` is needed, this instance can be " @@ -3393,7 +3468,7 @@ msgstr "" "cette instance peut être utilisée au lieu de créer plusieurs fois de " "nouvelles instances." -#: ../Doc/library/unittest.rst:2051 +#: ../Doc/library/unittest.rst:2127 msgid "" "A basic test runner implementation that outputs results to a stream. If " "*stream* is ``None``, the default, :data:`sys.stderr` is used as the output " @@ -3412,7 +3487,7 @@ msgstr "" "``**kwargs`` car l'interface pour construire les lanceurs change lorsque des " "fonctionnalités sont ajoutées à *unittest*." -#: ../Doc/library/unittest.rst:2058 +#: ../Doc/library/unittest.rst:2134 msgid "" "By default this runner shows :exc:`DeprecationWarning`, :exc:" "`PendingDeprecationWarning`, :exc:`ResourceWarning` and :exc:`ImportWarning` " @@ -3435,11 +3510,11 @@ msgstr "" "de Python (voir :ref:`Gestion des avertissements `) et en " "laissant *warnings* à ``None``." -#: ../Doc/library/unittest.rst:2069 +#: ../Doc/library/unittest.rst:2145 msgid "Added the ``warnings`` argument." msgstr "Ajout du paramètre ``warnings``." -#: ../Doc/library/unittest.rst:2072 +#: ../Doc/library/unittest.rst:2148 msgid "" "The default stream is set to :data:`sys.stderr` at instantiation time rather " "than import time." @@ -3447,11 +3522,11 @@ msgstr "" "Le flux par défaut est défini sur :data:`sys.stderr` au moment de " "l'instanciation plutôt qu'à l'importation." -#: ../Doc/library/unittest.rst:2076 +#: ../Doc/library/unittest.rst:2152 msgid "Added the tb_locals parameter." msgstr "Ajout du paramètre *tb_locals*." -#: ../Doc/library/unittest.rst:2081 +#: ../Doc/library/unittest.rst:2157 msgid "" "This method returns the instance of ``TestResult`` used by :meth:`run`. It " "is not intended to be called directly, but can be overridden in subclasses " @@ -3461,7 +3536,7 @@ msgstr "" "Il n'est pas destiné à être appelé directement, mais peut être surchargée " "dans des sous-classes pour fournir un ``TestResult`` personnalisé." -#: ../Doc/library/unittest.rst:2085 +#: ../Doc/library/unittest.rst:2161 msgid "" "``_makeResult()`` instantiates the class or callable passed in the " "``TextTestRunner`` constructor as the ``resultclass`` argument. It defaults " @@ -3473,7 +3548,7 @@ msgstr "" "défaut :class:`TextTestResult` si aucune ``resultclass`` n'est fournie. La " "classe de résultat est instanciée avec les arguments suivants  ::" -#: ../Doc/library/unittest.rst:2094 +#: ../Doc/library/unittest.rst:2170 msgid "" "This method is the main public interface to the ``TextTestRunner``. This " "method takes a :class:`TestSuite` or :class:`TestCase` instance. A :class:" @@ -3485,7 +3560,7 @@ msgstr "" "Un :class:`TestResult` est créé en appelant :func:`_makeResult` et le ou les " "tests sont exécutés et les résultats affichés sur la sortie standard." -#: ../Doc/library/unittest.rst:2105 +#: ../Doc/library/unittest.rst:2181 msgid "" "A command-line program that loads a set of tests from *module* and runs " "them; this is primarily for making test modules conveniently executable. The " @@ -3498,7 +3573,7 @@ msgstr "" "cette fonction est d'inclure la ligne suivante à la fin d'un script de test " " ::" -#: ../Doc/library/unittest.rst:2113 +#: ../Doc/library/unittest.rst:2189 msgid "" "You can run tests with more detailed information by passing in the verbosity " "argument::" @@ -3506,7 +3581,7 @@ msgstr "" "Vous pouvez exécuter des tests avec des informations plus détaillées en " "utilisant l'option de verbosité  ::" -#: ../Doc/library/unittest.rst:2119 +#: ../Doc/library/unittest.rst:2195 msgid "" "The *defaultTest* argument is either the name of a single test or an " "iterable of test names to run if no test names are specified via *argv*. If " @@ -3518,7 +3593,7 @@ msgstr "" "aucun nom de test n'est fourni via *argv*, tous les tests trouvés dans " "*module* sont exécutés." -#: ../Doc/library/unittest.rst:2124 +#: ../Doc/library/unittest.rst:2200 msgid "" "The *argv* argument can be a list of options passed to the program, with the " "first element being the program name. If not specified or ``None``, the " @@ -3528,7 +3603,7 @@ msgstr "" "premier élément étant le nom du programme. S'il n'est pas spécifié ou vaut " "``None``, les valeurs de :data:`sys.argv` sont utilisées." -#: ../Doc/library/unittest.rst:2128 +#: ../Doc/library/unittest.rst:2204 msgid "" "The *testRunner* argument can either be a test runner class or an already " "created instance of it. By default ``main`` calls :func:`sys.exit` with an " @@ -3539,7 +3614,7 @@ msgstr "" "exit` avec un code de sortie indiquant le succès ou l'échec des tests " "exécutés." -#: ../Doc/library/unittest.rst:2132 +#: ../Doc/library/unittest.rst:2208 msgid "" "The *testLoader* argument has to be a :class:`TestLoader` instance, and " "defaults to :data:`defaultTestLoader`." @@ -3547,7 +3622,7 @@ msgstr "" "L'argument *testLoader* doit être une instance de :class:`TestLoader`, et " "par défaut de :data:`defaultTestLoader`." -#: ../Doc/library/unittest.rst:2135 +#: ../Doc/library/unittest.rst:2211 msgid "" "``main`` supports being used from the interactive interpreter by passing in " "the argument ``exit=False``. This displays the result on standard output " @@ -3557,7 +3632,7 @@ msgstr "" "dans l'argument ``exit=False``. Ceci affiche le résultat sur la sortie " "standard sans appeler :func:`sys.exit`  ::" -#: ../Doc/library/unittest.rst:2142 +#: ../Doc/library/unittest.rst:2218 msgid "" "The *failfast*, *catchbreak* and *buffer* parameters have the same effect as " "the same-name `command-line options`_." @@ -3565,7 +3640,7 @@ msgstr "" "Les paramètres *failfast*, *catchbreak* et *buffer* ont le même effet que la " "même option en ligne de commande `command-line options`_." -#: ../Doc/library/unittest.rst:2145 +#: ../Doc/library/unittest.rst:2221 msgid "" "The *warnings* argument specifies the :ref:`warning filter ` " "that should be used while running the tests. If it's not specified, it will " @@ -3580,7 +3655,7 @@ msgstr "" "avertissements `), sinon elle sera réglée sur " "``'default'``." -#: ../Doc/library/unittest.rst:2151 +#: ../Doc/library/unittest.rst:2227 msgid "" "Calling ``main`` actually returns an instance of the ``TestProgram`` class. " "This stores the result of the tests run as the ``result`` attribute." @@ -3589,11 +3664,11 @@ msgstr "" "``TestProgram``. Le résultat des tests effectués est enregistré sous " "l'attribut ``result``." -#: ../Doc/library/unittest.rst:2154 +#: ../Doc/library/unittest.rst:2230 msgid "The *exit* parameter was added." msgstr "Ajout du paramètre *exit*." -#: ../Doc/library/unittest.rst:2157 +#: ../Doc/library/unittest.rst:2233 msgid "" "The *verbosity*, *failfast*, *catchbreak*, *buffer* and *warnings* " "parameters were added." @@ -3601,7 +3676,7 @@ msgstr "" "Ajout des paramètres *verbosity*, *failfast*, *catchbreak*, *buffer* et " "*warnings*." -#: ../Doc/library/unittest.rst:2161 +#: ../Doc/library/unittest.rst:2237 msgid "" "The *defaultTest* parameter was changed to also accept an iterable of test " "names." @@ -3609,11 +3684,11 @@ msgstr "" "Le paramètre *defaultTest* a été modifié pour accepter également un itérable " "de noms de test." -#: ../Doc/library/unittest.rst:2167 +#: ../Doc/library/unittest.rst:2243 msgid "load_tests Protocol" msgstr "Protocole de chargement des tests (*load_tests Protocol*)" -#: ../Doc/library/unittest.rst:2171 +#: ../Doc/library/unittest.rst:2247 msgid "" "Modules or packages can customize how tests are loaded from them during " "normal test runs or test discovery by implementing a function called " @@ -3623,7 +3698,7 @@ msgstr "" "chargés à partir de ceux-ci pendant l'exécution des tests ou pendant la " "découverte de tests en implémentant une fonction appelée ``load_tests``." -#: ../Doc/library/unittest.rst:2174 +#: ../Doc/library/unittest.rst:2250 msgid "" "If a test module defines ``load_tests`` it will be called by :meth:" "`TestLoader.loadTestsFromModule` with the following arguments::" @@ -3631,7 +3706,7 @@ msgstr "" "Si un module de test définit ``load_tests`` il est appelé par :meth:" "`TestLoader.loadTestsFromModule` avec les arguments suivants  ::" -#: ../Doc/library/unittest.rst:2179 +#: ../Doc/library/unittest.rst:2255 msgid "" "where *pattern* is passed straight through from ``loadTestsFromModule``. It " "defaults to ``None``." @@ -3639,11 +3714,11 @@ msgstr "" "où *pattern* est passé directement depuis ``loadTestsFromModule``. La valeur " "par défaut est ``None``." -#: ../Doc/library/unittest.rst:2182 +#: ../Doc/library/unittest.rst:2258 msgid "It should return a :class:`TestSuite`." msgstr "Elle doit renvoyer une classe :class:`TestSuite`." -#: ../Doc/library/unittest.rst:2184 +#: ../Doc/library/unittest.rst:2260 msgid "" "*loader* is the instance of :class:`TestLoader` doing the loading. " "*standard_tests* are the tests that would be loaded by default from the " @@ -3658,7 +3733,7 @@ msgstr "" "argument est utilisé lors du chargement de paquets dans le cadre de la " "découverte de tests." -#: ../Doc/library/unittest.rst:2190 +#: ../Doc/library/unittest.rst:2266 msgid "" "A typical ``load_tests`` function that loads tests from a specific set of :" "class:`TestCase` classes may look like::" @@ -3666,7 +3741,7 @@ msgstr "" "Une fonction typique de ``load_tests`` qui charge les tests d'un ensemble " "spécifique de classes :class:`TestCase` peut ressembler à  ::" -#: ../Doc/library/unittest.rst:2202 +#: ../Doc/library/unittest.rst:2278 msgid "" "If discovery is started in a directory containing a package, either from the " "command line or by calling :meth:`TestLoader.discover`, then the package :" @@ -3683,7 +3758,7 @@ msgstr "" "répertoire. Sinon, la découverte des tests du paquet est effectuée par " "``load_tests`` qui est appelé avec les arguments suivants  ::" -#: ../Doc/library/unittest.rst:2211 +#: ../Doc/library/unittest.rst:2287 msgid "" "This should return a :class:`TestSuite` representing all the tests from the " "package. (``standard_tests`` will only contain tests collected from :file:" @@ -3693,7 +3768,7 @@ msgstr "" "paquet. (``standard_tests`` ne contient que les tests collectés dans le " "fichier :file:`__init__.py`)." -#: ../Doc/library/unittest.rst:2215 +#: ../Doc/library/unittest.rst:2291 msgid "" "Because the pattern is passed into ``load_tests`` the package is free to " "continue (and potentially modify) test discovery. A 'do nothing' " @@ -3703,7 +3778,7 @@ msgstr "" "(et potentiellement de modifier) la découverte des tests. Une fonction « ne " "rien faire » ``load_tests`` pour un paquet de test ressemblerait à  ::" -#: ../Doc/library/unittest.rst:2226 +#: ../Doc/library/unittest.rst:2302 msgid "" "Discovery no longer checks package names for matching *pattern* due to the " "impossibility of package names matching the default pattern." @@ -3712,11 +3787,11 @@ msgstr "" "à *pattern* en raison de l'impossibilité de trouver des noms de paquets " "correspondant au motif par défaut." -#: ../Doc/library/unittest.rst:2233 +#: ../Doc/library/unittest.rst:2309 msgid "Class and Module Fixtures" msgstr "Classes et modules d'aménagements des tests" -#: ../Doc/library/unittest.rst:2235 +#: ../Doc/library/unittest.rst:2311 msgid "" "Class and module level fixtures are implemented in :class:`TestSuite`. When " "the test suite encounters a test from a new class then :meth:`tearDownClass` " @@ -3728,7 +3803,7 @@ msgstr "" "classe, alors :meth:`tearDownClass` de la classe précédente (s'il y en a " "une) est appelé, suivi de :meth:`setUpClass` de la nouvelle classe." -#: ../Doc/library/unittest.rst:2240 +#: ../Doc/library/unittest.rst:2316 msgid "" "Similarly if a test is from a different module from the previous test then " "``tearDownModule`` from the previous module is run, followed by " @@ -3738,7 +3813,7 @@ msgstr "" "``tearDownModule`` du module précédent est exécuté, suivi par " "``setUpModule`` du nouveau module." -#: ../Doc/library/unittest.rst:2244 +#: ../Doc/library/unittest.rst:2320 msgid "" "After all the tests have run the final ``tearDownClass`` and " "``tearDownModule`` are run." @@ -3746,7 +3821,7 @@ msgstr "" "Après que tous les tests ont été exécutés, les ``tearDownClass`` et " "``tearDownModule`` finaux sont exécutés." -#: ../Doc/library/unittest.rst:2247 +#: ../Doc/library/unittest.rst:2323 msgid "" "Note that shared fixtures do not play well with [potential] features like " "test parallelization and they break test isolation. They should be used with " @@ -3756,7 +3831,7 @@ msgstr "" "de « potentielles » fonctions comme la parallélisation de test et qu'ils " "brisent l'isolation des tests. Ils doivent être utilisés avec parcimonie." -#: ../Doc/library/unittest.rst:2250 +#: ../Doc/library/unittest.rst:2326 msgid "" "The default ordering of tests created by the unittest test loaders is to " "group all tests from the same modules and classes together. This will lead " @@ -3773,7 +3848,7 @@ msgstr "" "uns aux autres, alors ces fonctions d'aménagements partagées peuvent être " "appelées plusieurs fois dans un même test." -#: ../Doc/library/unittest.rst:2257 +#: ../Doc/library/unittest.rst:2333 msgid "" "Shared fixtures are not intended to work with suites with non-standard " "ordering. A ``BaseTestSuite`` still exists for frameworks that don't want to " @@ -3784,7 +3859,7 @@ msgstr "" "toujours pour les cadriciels qui ne veulent pas gérer les aménagements de " "tests partagés." -#: ../Doc/library/unittest.rst:2261 +#: ../Doc/library/unittest.rst:2337 msgid "" "If there are any exceptions raised during one of the shared fixture " "functions the test is reported as an error. Because there is no " @@ -3801,17 +3876,17 @@ msgstr "" "détail n'a pas d'importance, mais si vous êtes un auteur de cadriciel de " "test, il peut être pertinent." -#: ../Doc/library/unittest.rst:2270 +#: ../Doc/library/unittest.rst:2346 msgid "setUpClass and tearDownClass" msgstr "" "Classes de mise en place (*setUpClass*) et de démantèlement des tests " "(*tearDownClass*)" -#: ../Doc/library/unittest.rst:2272 +#: ../Doc/library/unittest.rst:2348 msgid "These must be implemented as class methods::" msgstr "Elles doivent être implémentées en tant que méthodes de classe  ::" -#: ../Doc/library/unittest.rst:2285 +#: ../Doc/library/unittest.rst:2361 msgid "" "If you want the ``setUpClass`` and ``tearDownClass`` on base classes called " "then you must call up to them yourself. The implementations in :class:" @@ -3821,7 +3896,7 @@ msgstr "" "soient appelées, vous devez les appeler vous-même. Les implémentations dans :" "class:`TestCase` sont vides." -#: ../Doc/library/unittest.rst:2289 +#: ../Doc/library/unittest.rst:2365 msgid "" "If an exception is raised during a ``setUpClass`` then the tests in the " "class are not run and the ``tearDownClass`` is not run. Skipped classes will " @@ -3836,17 +3911,17 @@ msgstr "" "`SkipTest` alors la classe est signalée comme ayant été ignorée au lieu " "d'être en échec." -#: ../Doc/library/unittest.rst:2297 +#: ../Doc/library/unittest.rst:2373 msgid "setUpModule and tearDownModule" msgstr "" "Module de mise en place (*setUpModule*) et de démantèlement des tests " "(*tearDownModule*)" -#: ../Doc/library/unittest.rst:2299 +#: ../Doc/library/unittest.rst:2375 msgid "These should be implemented as functions::" msgstr "Elles doivent être implémentées en tant que fonctions  ::" -#: ../Doc/library/unittest.rst:2307 +#: ../Doc/library/unittest.rst:2383 msgid "" "If an exception is raised in a ``setUpModule`` then none of the tests in the " "module will be run and the ``tearDownModule`` will not be run. If the " @@ -3859,13 +3934,13 @@ msgstr "" "exception :exc:`SkipTest` alors le module est signalé comme ayant été ignoré " "au lieu d'être en échec." -#: ../Doc/library/unittest.rst:2312 +#: ../Doc/library/unittest.rst:2388 msgid "" "To add cleanup code that must be run even in the case of an exception, use " "``addModuleCleanup``:" msgstr "" -#: ../Doc/library/unittest.rst:2318 +#: ../Doc/library/unittest.rst:2394 #, fuzzy msgid "" "Add a function to be called after :func:`tearDownModule` to cleanup " @@ -3881,7 +3956,7 @@ msgstr "" "arguments et arguments de mots-clés passés à :meth:`addCleanup` quand elles " "sont ajoutées." -#: ../Doc/library/unittest.rst:2324 +#: ../Doc/library/unittest.rst:2400 #, fuzzy msgid "" "If :meth:`setUpModule` fails, meaning that :func:`tearDownModule` is not " @@ -3891,7 +3966,7 @@ msgstr "" "appelé, alors que les fonctions de nettoyage ajoutées seront toujours " "appelées." -#: ../Doc/library/unittest.rst:2332 +#: ../Doc/library/unittest.rst:2408 #, fuzzy msgid "" "This function is called unconditionally after :func:`tearDownModule`, or " @@ -3900,7 +3975,7 @@ msgstr "" "Cette méthode est appelée sans conditions après :meth:`tearDown`, ou après :" "meth:`setUp` si :meth:`setUp` lève une exception." -#: ../Doc/library/unittest.rst:2335 +#: ../Doc/library/unittest.rst:2411 #, fuzzy msgid "" "It is responsible for calling all the cleanup functions added by :func:" @@ -3912,7 +3987,7 @@ msgstr "" "nettoyage à appeler *avant* l'appel à :meth:`tearDown` alors vous pouvez " "appeler :meth:`doCleanups` vous-même." -#: ../Doc/library/unittest.rst:2340 +#: ../Doc/library/unittest.rst:2416 #, fuzzy msgid "" ":func:`doModuleCleanups` pops methods off the stack of cleanup functions one " @@ -3922,11 +3997,11 @@ msgstr "" "nettoyage une à la fois, de sorte qu'elles peuvent être appelées à tout " "moment." -#: ../Doc/library/unittest.rst:2346 +#: ../Doc/library/unittest.rst:2422 msgid "Signal Handling" msgstr "Traitement des signaux" -#: ../Doc/library/unittest.rst:2350 +#: ../Doc/library/unittest.rst:2426 msgid "" "The :option:`-c/--catch ` command-line option to unittest, " "along with the ``catchbreak`` parameter to :func:`unittest.main()`, provide " @@ -3943,7 +4018,7 @@ msgstr "" "rapporte tous les résultats obtenus jusqu'à présent. Un deuxième contrôle-C " "lève une exception classique :exc:`KeyboardInterrupt`." -#: ../Doc/library/unittest.rst:2357 +#: ../Doc/library/unittest.rst:2433 msgid "" "The control-c handling signal handler attempts to remain compatible with " "code or tests that install their own :const:`signal.SIGINT` handler. If the " @@ -3964,7 +4039,7 @@ msgstr "" "individuels qui ont besoin que le signal *contrôle-C* \"*unittest*\" soit " "désactivée, le décorateur :func:`removeHandler` peut être utilisé." -#: ../Doc/library/unittest.rst:2366 +#: ../Doc/library/unittest.rst:2442 msgid "" "There are a few utility functions for framework authors to enable control-c " "handling functionality within test frameworks." @@ -3973,7 +4048,7 @@ msgstr "" "d'activer la fonctionnalité de gestion des *contrôle-C* dans les cadriciels " "de test." -#: ../Doc/library/unittest.rst:2371 +#: ../Doc/library/unittest.rst:2447 msgid "" "Install the control-c handler. When a :const:`signal.SIGINT` is received " "(usually in response to the user pressing control-c) all registered results " @@ -3984,7 +4059,7 @@ msgstr "" "tous les résultats enregistrés vont appeler la méthode :meth:`~TestResult." "stop`." -#: ../Doc/library/unittest.rst:2378 +#: ../Doc/library/unittest.rst:2454 msgid "" "Register a :class:`TestResult` object for control-c handling. Registering a " "result stores a weak reference to it, so it doesn't prevent the result from " @@ -3995,7 +4070,7 @@ msgstr "" "sorte qu'il n'empêche pas que le résultat soit collecté par le ramasse-" "miette." -#: ../Doc/library/unittest.rst:2382 +#: ../Doc/library/unittest.rst:2458 msgid "" "Registering a :class:`TestResult` object has no side-effects if control-c " "handling is not enabled, so test frameworks can unconditionally register all " @@ -4006,7 +4081,7 @@ msgstr "" "peuvent enregistrer sans condition tous les résultats qu'ils créent " "indépendamment du fait que la gestion soit activée ou non." -#: ../Doc/library/unittest.rst:2389 +#: ../Doc/library/unittest.rst:2465 msgid "" "Remove a registered result. Once a result has been removed then :meth:" "`~TestResult.stop` will no longer be called on that result object in " @@ -4016,7 +4091,7 @@ msgstr "" "meth:`~TestResult.stop` n'est plus appelé sur cet objet résultat en réponse " "à un *contrôle-c*." -#: ../Doc/library/unittest.rst:2396 +#: ../Doc/library/unittest.rst:2472 msgid "" "When called without arguments this function removes the control-c handler if " "it has been installed. This function can also be used as a test decorator to " diff --git a/library/venv.po b/library/venv.po index 3f45496ab..7a06e3c8b 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-06 13:49+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -491,11 +491,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:127 ../Doc/library/venv.rst:245 +#: ../Doc/library/venv.rst:127 ../Doc/library/venv.rst:253 msgid "Added the ``with_pip`` parameter" msgstr "Ajout du paramètre ``with_pip``" -#: ../Doc/library/venv.rst:130 ../Doc/library/venv.rst:248 +#: ../Doc/library/venv.rst:130 ../Doc/library/venv.rst:256 msgid "Added the ``prompt`` parameter" msgstr "Ajout du paramètre ``prompt``" @@ -586,6 +586,13 @@ msgstr "" #: ../Doc/library/venv.rst:191 msgid "" +"Upgrades the core venv dependency packages (currently ``pip`` and " +"``setuptools``) in the environment. This is done by shelling out to the " +"``pip`` executable in the environment." +msgstr "" + +#: ../Doc/library/venv.rst:199 +msgid "" "A placeholder method which can be overridden in third party implementations " "to pre-install packages in the virtual environment or perform other post-" "creation steps." @@ -594,7 +601,7 @@ msgstr "" "implémentation externes pour pré installer des paquets dans l'environnement " "virtuel ou pour exécuter des étapes post-création." -#: ../Doc/library/venv.rst:195 +#: ../Doc/library/venv.rst:203 msgid "" "Windows now uses redirector scripts for ``python[w].exe`` instead of copying " "the actual binaries. In 3.7.2 only :meth:`setup_python` does nothing unless " @@ -605,7 +612,7 @@ msgstr "" "`setup_python` ne fait rien sauf s'il s'exécute à partir d'un *build* dans " "l'arborescence source." -#: ../Doc/library/venv.rst:200 +#: ../Doc/library/venv.rst:208 msgid "" "Windows copies the redirector scripts as part of :meth:`setup_python` " "instead of :meth:`setup_scripts`. This was not the case in 3.7.2. When using " @@ -616,7 +623,7 @@ msgstr "" "3.7.2. Lorsque vous utilisez des liens symboliques, les exécutables " "originaux seront liés." -#: ../Doc/library/venv.rst:205 +#: ../Doc/library/venv.rst:213 msgid "" "In addition, :class:`EnvBuilder` provides this utility method that can be " "called from :meth:`setup_scripts` or :meth:`post_setup` in subclasses to " @@ -627,7 +634,7 @@ msgstr "" "pour assister dans l'installation de scripts customs dans l'environnement " "virtuel." -#: ../Doc/library/venv.rst:211 +#: ../Doc/library/venv.rst:219 msgid "" "*path* is the path to a directory that should contain subdirectories \"common" "\", \"posix\", \"nt\", each containing scripts destined for the bin " @@ -641,7 +648,7 @@ msgstr "" "dossier \"**common**\" et le dossier correspondant à :data:`os.name` sont " "copiés après quelque remplacement de texte temporaires :" -#: ../Doc/library/venv.rst:217 +#: ../Doc/library/venv.rst:225 msgid "" "``__VENV_DIR__`` is replaced with the absolute path of the environment " "directory." @@ -649,7 +656,7 @@ msgstr "" "``__VENV_DIR__`` est remplacé avec le chemin absolu du dossier de " "l'environnement." -#: ../Doc/library/venv.rst:220 +#: ../Doc/library/venv.rst:228 msgid "" "``__VENV_NAME__`` is replaced with the environment name (final path segment " "of environment directory)." @@ -657,7 +664,7 @@ msgstr "" "``__VENV_NAME__`` est remplacé avec le nom de l'environnement (le dernier " "segment du chemin vers le dossier de l'environnement)." -#: ../Doc/library/venv.rst:223 +#: ../Doc/library/venv.rst:231 msgid "" "``__VENV_PROMPT__`` is replaced with the prompt (the environment name " "surrounded by parentheses and with a following space)" @@ -665,7 +672,7 @@ msgstr "" "``__VENV_PROMPT__`` est remplacé par le prompt (nom de l'environnement " "entouré de parenthèses et avec un espace le suivant)." -#: ../Doc/library/venv.rst:226 +#: ../Doc/library/venv.rst:234 msgid "" "``__VENV_BIN_NAME__`` is replaced with the name of the bin directory (either " "``bin`` or ``Scripts``)." @@ -673,7 +680,7 @@ msgstr "" "``__VENV_BIN_NAME__`` est remplacé par le nom du dossier **bin** (soit " "``bin`` soit ``Scripts``)." -#: ../Doc/library/venv.rst:229 +#: ../Doc/library/venv.rst:237 msgid "" "``__VENV_PYTHON__`` is replaced with the absolute path of the environment's " "executable." @@ -681,7 +688,7 @@ msgstr "" "``__VENV_PYTHON__`` est remplacé avec le chemin absolu de l’exécutable de " "l'environnement." -#: ../Doc/library/venv.rst:232 +#: ../Doc/library/venv.rst:240 msgid "" "The directories are allowed to exist (for when an existing environment is " "being upgraded)." @@ -689,11 +696,11 @@ msgstr "" "Les dossiers peuvent exister (pour quand un environnement existant est mis à " "jour)." -#: ../Doc/library/venv.rst:235 +#: ../Doc/library/venv.rst:243 msgid "There is also a module-level convenience function:" msgstr "Il y a aussi une fonction pratique au niveau du module :" -#: ../Doc/library/venv.rst:240 +#: ../Doc/library/venv.rst:248 msgid "" "Create an :class:`EnvBuilder` with the given keyword arguments, and call " "its :meth:`~EnvBuilder.create` method with the *env_dir* argument." @@ -701,11 +708,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:252 +#: ../Doc/library/venv.rst:260 msgid "An example of extending ``EnvBuilder``" msgstr "Un exemple d'extension de ``EnvBuilder``" -#: ../Doc/library/venv.rst:254 +#: ../Doc/library/venv.rst:262 msgid "" "The following script shows how to extend :class:`EnvBuilder` by implementing " "a subclass which installs setuptools and pip into a created virtual " @@ -715,7 +722,7 @@ msgstr "" "implémentant une sous-classe qui installe **setuptools** et **pip** dans un " "environnement créé ::" -#: ../Doc/library/venv.rst:473 +#: ../Doc/library/venv.rst:481 msgid "" "This script is also available for download `online `_." diff --git a/library/xml.etree.elementtree.po b/library/xml.etree.elementtree.po index 5d26b9682..e0c5d75eb 100644 --- a/library/xml.etree.elementtree.po +++ b/library/xml.etree.elementtree.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-07-04 11:02+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -288,6 +288,7 @@ msgid "" msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:376 +#: ../Doc/library/xml.etree.elementtree.rst:738 msgid "Example" msgstr "Exemple" @@ -442,10 +443,12 @@ msgid "" msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:474 +#: ../Doc/library/xml.etree.elementtree.rst:790 msgid "Reference" msgstr "Référence" #: ../Doc/library/xml.etree.elementtree.rst:479 +#: ../Doc/library/xml.etree.elementtree.rst:795 msgid "Functions" msgstr "Fonctions" @@ -621,7 +624,7 @@ msgid "" msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:608 -#: ../Doc/library/xml.etree.elementtree.rst:1356 +#: ../Doc/library/xml.etree.elementtree.rst:1445 msgid "If you need a fully populated element, look for \"end\" events instead." msgstr "" @@ -630,7 +633,7 @@ msgid "The *parser* argument." msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:613 -#: ../Doc/library/xml.etree.elementtree.rst:1360 +#: ../Doc/library/xml.etree.elementtree.rst:1449 msgid "The ``comment`` and ``pi`` events were added." msgstr "" @@ -696,7 +699,7 @@ msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:674 #: ../Doc/library/xml.etree.elementtree.rst:701 -#: ../Doc/library/xml.etree.elementtree.rst:1068 +#: ../Doc/library/xml.etree.elementtree.rst:1157 msgid "The *short_empty_elements* parameter." msgstr "Le paramètre *short_empty_elements*." @@ -749,16 +752,94 @@ msgid "" msgstr "" #: ../Doc/library/xml.etree.elementtree.rst:732 +msgid "XInclude support" +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:734 +msgid "" +"This module provides limited support for `XInclude directives `_, via the :mod:`xml.etree.ElementInclude` helper " +"module. This module can be used to insert subtrees and text strings into " +"element trees, based on information in the tree." +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:740 +msgid "" +"Here's an example that demonstrates use of the XInclude module. To include " +"an XML document in the current document, use the ``{http://www.w3.org/2001/" +"XInclude}include`` element and set the **parse** attribute to ``\"xml\"``, " +"and use the **href** attribute to specify the document to include." +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:749 +msgid "" +"By default, the **href** attribute is treated as a file name. You can use " +"custom loaders to override this behaviour. Also note that the standard " +"helper does not support XPointer syntax." +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:751 +msgid "" +"To process this file, load it as usual, and pass the root element to the :" +"mod:`xml.etree.ElementTree` module:" +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:762 +msgid "" +"The ElementInclude module replaces the ``{http://www.w3.org/2001/XInclude}" +"include`` element with the root element from the **source.xml** document. " +"The result might look something like this:" +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:770 +msgid "" +"If the **parse** attribute is omitted, it defaults to \"xml\". The href " +"attribute is required." +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:772 +msgid "" +"To include a text document, use the ``{http://www.w3.org/2001/XInclude}" +"include`` element, and set the **parse** attribute to \"text\":" +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:781 +msgid "The result might look something like:" +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:799 +msgid "" +"Default loader. This default loader reads an included resource from disk. " +"*href* is a URL. *parse* is for parse mode either \"xml\" or \"text\". " +"*encoding* is an optional text encoding. If not given, encoding is " +"``utf-8``. Returns the expanded resource. If the parse mode is ``\"xml" +"\"``, this is an ElementTree instance. If the parse mode is \"text\", this " +"is a Unicode string. If the loader fails, it can return None or raise an " +"exception." +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:809 +msgid "" +"This function expands XInclude directives. *elem* is the root element. " +"*loader* is an optional resource loader. If omitted, it defaults to :func:" +"`default_loader`. If given, it should be a callable that implements the same " +"interface as :func:`default_loader`. Returns the expanded resource. If the " +"parse mode is ``\"xml\"``, this is an ElementTree instance. If the parse " +"mode is \"text\", this is a Unicode string. If the loader fails, it can " +"return None or raise an exception." +msgstr "" + +#: ../Doc/library/xml.etree.elementtree.rst:821 msgid "Element Objects" msgstr "Objets Elements" -#: ../Doc/library/xml.etree.elementtree.rst:736 +#: ../Doc/library/xml.etree.elementtree.rst:825 msgid "" "Element class. This class defines the Element interface, and provides a " "reference implementation of this interface." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:739 +#: ../Doc/library/xml.etree.elementtree.rst:828 msgid "" "The element name, attribute names, and attribute values can be either " "bytestrings or Unicode strings. *tag* is the element name. *attrib* is an " @@ -766,13 +847,13 @@ msgid "" "additional attributes, given as keyword arguments." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:747 +#: ../Doc/library/xml.etree.elementtree.rst:836 msgid "" "A string identifying what kind of data this element represents (the element " "type, in other words)." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:754 +#: ../Doc/library/xml.etree.elementtree.rst:843 msgid "" "These attributes can be used to hold additional data associated with the " "element. Their values are usually strings but may be any application-" @@ -783,7 +864,7 @@ msgid "" "the XML data" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:766 +#: ../Doc/library/xml.etree.elementtree.rst:855 msgid "" "the *a* element has ``None`` for both *text* and *tail* attributes, the *b* " "element has *text* ``\"1\"`` and *tail* ``\"4\"``, the *c* element has " @@ -791,17 +872,17 @@ msgid "" "``None`` and *tail* ``\"3\"``." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:771 +#: ../Doc/library/xml.etree.elementtree.rst:860 msgid "" "To collect the inner text of an element, see :meth:`itertext`, for example ``" "\"\".join(element.itertext())``." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:774 +#: ../Doc/library/xml.etree.elementtree.rst:863 msgid "Applications may store arbitrary objects in these attributes." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:779 +#: ../Doc/library/xml.etree.elementtree.rst:868 msgid "" "A dictionary containing the element's attributes. Note that while the " "*attrib* value is always a real mutable Python dictionary, an ElementTree " @@ -810,59 +891,59 @@ msgid "" "implementations, use the dictionary methods below whenever possible." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:785 +#: ../Doc/library/xml.etree.elementtree.rst:874 msgid "The following dictionary-like methods work on the element attributes." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:790 +#: ../Doc/library/xml.etree.elementtree.rst:879 msgid "" "Resets an element. This function removes all subelements, clears all " "attributes, and sets the text and tail attributes to ``None``." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:796 +#: ../Doc/library/xml.etree.elementtree.rst:885 msgid "Gets the element attribute named *key*." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:798 +#: ../Doc/library/xml.etree.elementtree.rst:887 msgid "" "Returns the attribute value, or *default* if the attribute was not found." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:803 +#: ../Doc/library/xml.etree.elementtree.rst:892 msgid "" "Returns the element attributes as a sequence of (name, value) pairs. The " "attributes are returned in an arbitrary order." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:809 +#: ../Doc/library/xml.etree.elementtree.rst:898 msgid "" "Returns the elements attribute names as a list. The names are returned in " "an arbitrary order." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:815 +#: ../Doc/library/xml.etree.elementtree.rst:904 msgid "Set the attribute *key* on the element to *value*." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:817 +#: ../Doc/library/xml.etree.elementtree.rst:906 msgid "The following methods work on the element's children (subelements)." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:822 +#: ../Doc/library/xml.etree.elementtree.rst:911 msgid "" "Adds the element *subelement* to the end of this element's internal list of " "subelements. Raises :exc:`TypeError` if *subelement* is not an :class:" "`Element`." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:829 +#: ../Doc/library/xml.etree.elementtree.rst:918 msgid "" "Appends *subelements* from a sequence object with zero or more elements. " "Raises :exc:`TypeError` if a subelement is not an :class:`Element`." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:837 +#: ../Doc/library/xml.etree.elementtree.rst:926 msgid "" "Finds the first subelement matching *match*. *match* may be a tag name or " "a :ref:`path `. Returns an element instance or " @@ -871,7 +952,7 @@ msgid "" "expression into the given namespace." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:846 +#: ../Doc/library/xml.etree.elementtree.rst:935 msgid "" "Finds all matching subelements, by tag name or :ref:`path `. Returns a list containing all matching elements in document " @@ -880,7 +961,7 @@ msgid "" "expression into the given namespace." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:855 +#: ../Doc/library/xml.etree.elementtree.rst:944 msgid "" "Finds text for the first subelement matching *match*. *match* may be a tag " "name or a :ref:`path `. Returns the text content of the " @@ -891,21 +972,21 @@ msgid "" "into the given namespace." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:867 +#: ../Doc/library/xml.etree.elementtree.rst:956 msgid "Use ``list(elem)`` or iteration." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:873 +#: ../Doc/library/xml.etree.elementtree.rst:962 msgid "Use method :meth:`Element.iter` instead." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:878 +#: ../Doc/library/xml.etree.elementtree.rst:967 msgid "" "Inserts *subelement* at the given position in this element. Raises :exc:" "`TypeError` if *subelement* is not an :class:`Element`." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:884 +#: ../Doc/library/xml.etree.elementtree.rst:973 msgid "" "Creates a tree :term:`iterator` with the current element as the root. The " "iterator iterates over this element and all elements below it, in document " @@ -914,7 +995,7 @@ msgid "" "structure is modified during iteration, the result is undefined." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:895 +#: ../Doc/library/xml.etree.elementtree.rst:984 msgid "" "Finds all matching subelements, by tag name or :ref:`path `. Returns an iterable yielding all matching elements in document " @@ -922,40 +1003,40 @@ msgid "" "name." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:906 +#: ../Doc/library/xml.etree.elementtree.rst:995 msgid "" "Creates a text iterator. The iterator loops over this element and all " "subelements, in document order, and returns all inner text." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:914 +#: ../Doc/library/xml.etree.elementtree.rst:1003 msgid "" "Creates a new element object of the same type as this element. Do not call " "this method, use the :func:`SubElement` factory function instead." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:920 +#: ../Doc/library/xml.etree.elementtree.rst:1009 msgid "" "Removes *subelement* from the element. Unlike the find\\* methods this " "method compares elements based on the instance identity, not on tag value or " "contents." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:924 +#: ../Doc/library/xml.etree.elementtree.rst:1013 msgid "" ":class:`Element` objects also support the following sequence type methods " "for working with subelements: :meth:`~object.__delitem__`, :meth:`~object." "__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__len__`." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:929 +#: ../Doc/library/xml.etree.elementtree.rst:1018 msgid "" "Caution: Elements with no subelements will test as ``False``. This behavior " "will change in future versions. Use specific ``len(elem)`` or ``elem is " "None`` test instead. ::" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:941 +#: ../Doc/library/xml.etree.elementtree.rst:1030 msgid "" "Prior to Python 3.8, the serialisation order of the XML attributes of " "elements was artificially made predictable by sorting the attributes by " @@ -964,7 +1045,7 @@ msgid "" "attributes were originally parsed or created by user code." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:947 +#: ../Doc/library/xml.etree.elementtree.rst:1036 msgid "" "In general, user code should try not to depend on a specific ordering of " "attributes, given that the `XML Information Set `_ writer. Arguments are the " "same as for the :func:`canonicalize` function. This class does not build a " @@ -1203,11 +1284,11 @@ msgid "" "using the *write* function." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1231 +#: ../Doc/library/xml.etree.elementtree.rst:1320 msgid "XMLParser Objects" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1236 +#: ../Doc/library/xml.etree.elementtree.rst:1325 msgid "" "This class is the low-level building block of the module. It uses :mod:`xml." "parsers.expat` for efficient, event-based parsing of XML. It can be fed XML " @@ -1218,24 +1299,24 @@ msgid "" "XML file." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1244 +#: ../Doc/library/xml.etree.elementtree.rst:1333 msgid "" "Parameters are now :ref:`keyword-only `. The *html* " "argument no longer supported." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1251 +#: ../Doc/library/xml.etree.elementtree.rst:1340 msgid "" "Finishes feeding data to the parser. Returns the result of calling the " "``close()`` method of the *target* passed during construction; by default, " "this is the toplevel document element." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1258 +#: ../Doc/library/xml.etree.elementtree.rst:1347 msgid "Feeds data to the parser. *data* is encoded data." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1260 +#: ../Doc/library/xml.etree.elementtree.rst:1349 msgid "" ":meth:`XMLParser.feed` calls *target*\\'s ``start(tag, attrs_dict)`` method " "for each opening tag, its ``end(tag)`` method for each closing tag, and data " @@ -1246,11 +1327,11 @@ msgid "" "of an XML file::" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1304 +#: ../Doc/library/xml.etree.elementtree.rst:1393 msgid "XMLPullParser Objects" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1308 +#: ../Doc/library/xml.etree.elementtree.rst:1397 msgid "" "A pull parser suitable for non-blocking applications. Its input-side API is " "similar to that of :class:`XMLParser`, but instead of pushing calls to a " @@ -1262,11 +1343,11 @@ msgid "" "is omitted, only ``\"end\"`` events are reported." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1319 +#: ../Doc/library/xml.etree.elementtree.rst:1408 msgid "Feed the given bytes data to the parser." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1323 +#: ../Doc/library/xml.etree.elementtree.rst:1412 msgid "" "Signal the parser that the data stream is terminated. Unlike :meth:" "`XMLParser.close`, this method always returns :const:`None`. Any events not " @@ -1274,7 +1355,7 @@ msgid "" "`read_events`." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1330 +#: ../Doc/library/xml.etree.elementtree.rst:1419 msgid "" "Return an iterator over the events which have been encountered in the data " "fed to the parser. The iterator yields ``(event, elem)`` pairs, where " @@ -1283,25 +1364,25 @@ msgid "" "follows." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1336 +#: ../Doc/library/xml.etree.elementtree.rst:1425 msgid "``start``, ``end``: the current Element." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1337 +#: ../Doc/library/xml.etree.elementtree.rst:1426 msgid "``comment``, ``pi``: the current comment / processing instruction" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1338 +#: ../Doc/library/xml.etree.elementtree.rst:1427 msgid "" "``start-ns``: a tuple ``(prefix, uri)`` naming the declared namespace " "mapping." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1340 +#: ../Doc/library/xml.etree.elementtree.rst:1429 msgid "``end-ns``: :const:`None` (this may change in a future version)" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1342 +#: ../Doc/library/xml.etree.elementtree.rst:1431 msgid "" "Events provided in a previous call to :meth:`read_events` will not be " "yielded again. Events are consumed from the internal queue only when they " @@ -1310,7 +1391,7 @@ msgid "" "results." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1350 +#: ../Doc/library/xml.etree.elementtree.rst:1439 msgid "" ":class:`XMLPullParser` only guarantees that it has seen the \">\" character " "of a starting tag when it emits a \"start\" event, so the attributes are " @@ -1319,11 +1400,11 @@ msgid "" "be present." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1365 +#: ../Doc/library/xml.etree.elementtree.rst:1454 msgid "Exceptions" msgstr "Exceptions" -#: ../Doc/library/xml.etree.elementtree.rst:1369 +#: ../Doc/library/xml.etree.elementtree.rst:1458 msgid "" "XML parse error, raised by the various parsing methods in this module when " "parsing fails. The string representation of an instance of this exception " @@ -1331,22 +1412,22 @@ msgid "" "following attributes available:" msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1376 +#: ../Doc/library/xml.etree.elementtree.rst:1465 msgid "" "A numeric error code from the expat parser. See the documentation of :mod:" "`xml.parsers.expat` for the list of error codes and their meanings." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1381 +#: ../Doc/library/xml.etree.elementtree.rst:1470 msgid "" "A tuple of *line*, *column* numbers, specifying where the error occurred." msgstr "" -#: ../Doc/library/xml.etree.elementtree.rst:1384 +#: ../Doc/library/xml.etree.elementtree.rst:1473 msgid "Footnotes" msgstr "Notes" -#: ../Doc/library/xml.etree.elementtree.rst:1385 +#: ../Doc/library/xml.etree.elementtree.rst:1474 msgid "" "The encoding string included in XML output should conform to the appropriate " "standards. For example, \"UTF-8\" is valid, but \"UTF8\" is not. See " diff --git a/library/zipfile.po b/library/zipfile.po index db5d6733f..e37c39aa7 100644 --- a/library/zipfile.po +++ b/library/zipfile.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-02-28 09:13+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -1207,6 +1207,71 @@ msgstr "" msgid "Test whether the zipfile is valid or not." msgstr "Teste si le fichier zip est valide." +#: ../Doc/library/zipfile.rst:820 +msgid "Decompression pitfalls" +msgstr "" + +#: ../Doc/library/zipfile.rst:822 +msgid "" +"The extraction in zipfile module might fail due to some pitfalls listed " +"below." +msgstr "" + +#: ../Doc/library/zipfile.rst:825 +msgid "From file itself" +msgstr "" + +#: ../Doc/library/zipfile.rst:827 +msgid "" +"Decompression may fail due to incorrect password / CRC checksum / ZIP format " +"or unsupported compression method / decryption." +msgstr "" + +#: ../Doc/library/zipfile.rst:831 +msgid "File System limitations" +msgstr "" + +#: ../Doc/library/zipfile.rst:833 +msgid "" +"Exceeding limitations on different file systems can cause decompression " +"failed. Such as allowable characters in the directory entries, length of the " +"file name, length of the pathname, size of a single file, and number of " +"files, etc." +msgstr "" + +#: ../Doc/library/zipfile.rst:838 +msgid "Resources limitations" +msgstr "" + +#: ../Doc/library/zipfile.rst:840 +msgid "" +"The lack of memory or disk volume would lead to decompression failed. For " +"example, decompression bombs (aka `ZIP bomb`_) apply to zipfile library that " +"can cause disk volume exhaustion." +msgstr "" + +#: ../Doc/library/zipfile.rst:845 +msgid "Interruption" +msgstr "" + +#: ../Doc/library/zipfile.rst:847 +msgid "" +"Interruption during the decompression, such as pressing control-C or killing " +"the decompression process may result in incomplete decompression of the " +"archive." +msgstr "" + +#: ../Doc/library/zipfile.rst:851 +msgid "Default behaviors of extraction" +msgstr "" + +#: ../Doc/library/zipfile.rst:853 +msgid "" +"Not knowing the default extraction behaviors can cause unexpected " +"decompression results. For example, when extracting the same archive twice, " +"it overwrites files without asking." +msgstr "" + #~ msgid "" #~ "There is no official file name encoding for ZIP files. If you have " #~ "unicode file names, you must convert them to byte strings in your desired " diff --git a/reference/datamodel.po b/reference/datamodel.po index fe975e35a..6ba4c70a5 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-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-18 22:08+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -3781,11 +3781,14 @@ msgstr "" "méthode :meth:`__bool__`." #: ../Doc/reference/datamodel.rst:2156 +#, fuzzy msgid "" "Called to implement :func:`operator.length_hint`. Should return an estimated " "length for the object (which may be greater or less than the actual length). " -"The length must be an integer ``>=`` 0. This method is purely an " -"optimization and is never required for correctness." +"The length must be an integer ``>=`` 0. The return value may also be :const:" +"`NotImplemented`, which is treated the same as if the ``__length_hint__`` " +"method didn't exist at all. This method is purely an optimization and is " +"never required for correctness." msgstr "" "Appelée pour implémenter :func:`operator.length_hint`. Elle doit renvoyer " "une longueur estimée de l'objet (qui peut être plus grande ou plus petite " @@ -3793,22 +3796,22 @@ msgstr "" "méthode est utilisée uniquement pour optimiser les traitements et n'est " "jamais tenue de renvoyer un résultat exact." -#: ../Doc/reference/datamodel.rst:2168 +#: ../Doc/reference/datamodel.rst:2170 msgid "" "Slicing is done exclusively with the following three methods. A call like ::" msgstr "" "Le découpage est effectué uniquement à l'aide des trois méthodes suivantes. " "Un appel comme ::" -#: ../Doc/reference/datamodel.rst:2172 +#: ../Doc/reference/datamodel.rst:2174 msgid "is translated to ::" msgstr "est traduit en ::" -#: ../Doc/reference/datamodel.rst:2176 +#: ../Doc/reference/datamodel.rst:2178 msgid "and so forth. Missing slice items are always filled in with ``None``." msgstr "et ainsi de suite. Les éléments manquants sont remplacés par ``None``." -#: ../Doc/reference/datamodel.rst:2181 +#: ../Doc/reference/datamodel.rst:2183 msgid "" "Called to implement evaluation of ``self[key]``. For sequence types, the " "accepted keys should be integers and slice objects. Note that the special " @@ -3829,7 +3832,7 @@ msgstr "" "`IndexError` doit être levée. Pour les tableaux de correspondances, si *key* " "n'existe pas dans le conteneur, une :exc:`KeyError` doit être levée." -#: ../Doc/reference/datamodel.rst:2192 +#: ../Doc/reference/datamodel.rst:2194 msgid "" ":keyword:`for` loops expect that an :exc:`IndexError` will be raised for " "illegal indexes to allow proper detection of the end of the sequence." @@ -3837,7 +3840,7 @@ msgstr "" ":keyword:`for` s'attend à ce qu'une :exc:`IndexError` soit levée en cas " "d'indice illégal afin de détecter correctement la fin de la séquence." -#: ../Doc/reference/datamodel.rst:2198 +#: ../Doc/reference/datamodel.rst:2200 msgid "" "Called to implement assignment to ``self[key]``. Same note as for :meth:" "`__getitem__`. This should only be implemented for mappings if the objects " @@ -3853,7 +3856,7 @@ msgstr "" "exceptions que pour la méthode :meth:`__getitem__` doivent être levées en " "cas de mauvaises valeurs de clés." -#: ../Doc/reference/datamodel.rst:2207 +#: ../Doc/reference/datamodel.rst:2209 msgid "" "Called to implement deletion of ``self[key]``. Same note as for :meth:" "`__getitem__`. This should only be implemented for mappings if the objects " @@ -3868,7 +3871,7 @@ msgstr "" "Les mêmes exceptions que pour la méthode :meth:`__getitem__` doivent être " "levées en cas de mauvaises valeurs de clés." -#: ../Doc/reference/datamodel.rst:2216 +#: ../Doc/reference/datamodel.rst:2218 msgid "" "Called by :class:`dict`\\ .\\ :meth:`__getitem__` to implement ``self[key]`` " "for dict subclasses when key is not in the dictionary." @@ -3877,7 +3880,7 @@ msgstr "" "``self[key]`` dans les sous-classes de dictionnaires lorsque la clé n'est " "pas dans le dictionnaire." -#: ../Doc/reference/datamodel.rst:2222 +#: ../Doc/reference/datamodel.rst:2224 msgid "" "This method is called when an iterator is required for a container. This " "method should return a new iterator object that can iterate over all the " @@ -3889,7 +3892,7 @@ msgstr "" "tous les objets du conteneur. Pour les tableaux de correspondances, elle " "doit itérer sur les clés du conteneur." -#: ../Doc/reference/datamodel.rst:2226 +#: ../Doc/reference/datamodel.rst:2228 msgid "" "Iterator objects also need to implement this method; they are required to " "return themselves. For more information on iterator objects, see :ref:" @@ -3899,7 +3902,7 @@ msgstr "" "alors se renvoyer eux-mêmes. Pour plus d'information sur les objets " "itérateurs, lisez :ref:`typeiter`." -#: ../Doc/reference/datamodel.rst:2232 +#: ../Doc/reference/datamodel.rst:2234 msgid "" "Called (if present) by the :func:`reversed` built-in to implement reverse " "iteration. It should return a new iterator object that iterates over all " @@ -3909,7 +3912,7 @@ msgstr "" "implémenter l'itération en sens inverse. Elle doit renvoyer un nouvel objet " "itérateur qui itère sur tous les objets du conteneur en sens inverse." -#: ../Doc/reference/datamodel.rst:2236 +#: ../Doc/reference/datamodel.rst:2238 msgid "" "If the :meth:`__reversed__` method is not provided, the :func:`reversed` " "built-in will fall back to using the sequence protocol (:meth:`__len__` and :" @@ -3923,7 +3926,7 @@ msgstr "" "doivent fournir :meth:`__reversed__` que si l'implémentation qu'ils " "proposent est plus efficace que celle de :func:`reversed`." -#: ../Doc/reference/datamodel.rst:2243 +#: ../Doc/reference/datamodel.rst:2245 msgid "" "The membership test operators (:keyword:`in` and :keyword:`not in`) are " "normally implemented as an iteration through a sequence. However, container " @@ -3936,7 +3939,7 @@ msgstr "" "suivantes avec une implémentation plus efficace, qui ne requièrent " "d'ailleurs pas que l'objet soit une séquence." -#: ../Doc/reference/datamodel.rst:2250 +#: ../Doc/reference/datamodel.rst:2252 msgid "" "Called to implement membership test operators. Should return true if *item* " "is in *self*, false otherwise. For mapping objects, this should consider " @@ -3947,7 +3950,7 @@ msgstr "" "tableaux de correspondances, seules les clés sont considérées (pas les " "valeurs des paires clés-valeurs)." -#: ../Doc/reference/datamodel.rst:2254 +#: ../Doc/reference/datamodel.rst:2256 msgid "" "For objects that don't define :meth:`__contains__`, the membership test " "first tries iteration via :meth:`__iter__`, then the old sequence iteration " @@ -3960,11 +3963,11 @@ msgstr "" "reportez-vous à :ref:`cette section dans la référence du langage `." -#: ../Doc/reference/datamodel.rst:2263 +#: ../Doc/reference/datamodel.rst:2265 msgid "Emulating numeric types" msgstr "Émulation de types numériques" -#: ../Doc/reference/datamodel.rst:2265 +#: ../Doc/reference/datamodel.rst:2267 msgid "" "The following methods can be defined to emulate numeric objects. Methods " "corresponding to operations that are not supported by the particular kind of " @@ -3977,7 +3980,7 @@ msgstr "" "opérations bit à bit pour les nombres qui ne sont pas entiers) doivent être " "laissées indéfinies." -#: ../Doc/reference/datamodel.rst:2291 +#: ../Doc/reference/datamodel.rst:2293 msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4000,7 +4003,7 @@ msgstr "" "accepter un troisième argument optionnel si la version ternaire de la " "fonction native :func:`pow` est autorisée." -#: ../Doc/reference/datamodel.rst:2302 +#: ../Doc/reference/datamodel.rst:2304 msgid "" "If one of those methods does not support the operation with the supplied " "arguments, it should return ``NotImplemented``." @@ -4008,7 +4011,7 @@ msgstr "" "Si l'une de ces méthodes n'autorise pas l'opération avec les arguments " "donnés, elle doit renvoyer ``NotImplemented``." -#: ../Doc/reference/datamodel.rst:2325 +#: ../Doc/reference/datamodel.rst:2327 msgid "" "These methods are called to implement the binary arithmetic operations (``" "+``, ``-``, ``*``, ``@``, ``/``, ``//``, ``%``, :func:`divmod`, :func:`pow`, " @@ -4029,7 +4032,7 @@ msgstr "" "`__rsub__`, ``y.__rsub__(x)`` est appelée si ``x.__sub__(y)`` renvoie " "*NotImplemented*." -#: ../Doc/reference/datamodel.rst:2336 +#: ../Doc/reference/datamodel.rst:2338 msgid "" "Note that ternary :func:`pow` will not try calling :meth:`__rpow__` (the " "coercion rules would become too complicated)." @@ -4037,7 +4040,7 @@ msgstr "" "Notez que la fonction ternaire :func:`pow` n'essaie pas d'appeler :meth:" "`__rpow__` (les règles de coercition seraient trop compliquées)." -#: ../Doc/reference/datamodel.rst:2341 +#: ../Doc/reference/datamodel.rst:2343 msgid "" "If the right operand's type is a subclass of the left operand's type and " "that subclass provides the reflected method for the operation, this method " @@ -4050,7 +4053,7 @@ msgstr "" "l'opérande gauche. Ce comportement permet à des sous-classes de surcharger " "les opérations de leurs ancêtres." -#: ../Doc/reference/datamodel.rst:2361 +#: ../Doc/reference/datamodel.rst:2363 msgid "" "These methods are called to implement the augmented arithmetic assignments " "(``+=``, ``-=``, ``*=``, ``@=``, ``/=``, ``//=``, ``%=``, ``**=``, ``<<=``, " @@ -4079,7 +4082,7 @@ msgstr "" "erreurs inattendues (voir :ref:`faq-augmented-assignment-tuple-error`), mais " "ce comportement est en fait partie intégrante du modèle de données." -#: ../Doc/reference/datamodel.rst:2382 +#: ../Doc/reference/datamodel.rst:2384 msgid "" "Called to implement the unary arithmetic operations (``-``, ``+``, :func:" "`abs` and ``~``)." @@ -4087,7 +4090,7 @@ msgstr "" "Appelée pour implémenter les opérations arithmétiques unaires (``-``, ``" "+``, :func:`abs` et ``~``)." -#: ../Doc/reference/datamodel.rst:2395 +#: ../Doc/reference/datamodel.rst:2397 msgid "" "Called to implement the built-in functions :func:`complex`, :func:`int` and :" "func:`float`. Should return a value of the appropriate type." @@ -4095,7 +4098,7 @@ msgstr "" "Appelées pour implémenter les fonctions natives :func:`complex`, :func:`int` " "et :func:`float`. Elles doivent renvoyer une valeur du type approprié." -#: ../Doc/reference/datamodel.rst:2402 +#: ../Doc/reference/datamodel.rst:2404 msgid "" "Called to implement :func:`operator.index`, and whenever Python needs to " "losslessly convert the numeric object to an integer object (such as in " @@ -4109,7 +4112,7 @@ msgstr "" "`oct`). La présence de cette méthode indique que l'objet numérique est un " "type entier. Elle doit renvoyer un entier." -#: ../Doc/reference/datamodel.rst:2408 +#: ../Doc/reference/datamodel.rst:2410 #, fuzzy msgid "" "If :meth:`__int__`, :meth:`__float__` and :meth:`__complex__` are not " @@ -4119,7 +4122,7 @@ msgstr "" "Si :meth:`__int__` n'est pas définie, alors la fonction native :func:`int` " "se replie sur :meth:`__trunc__`." -#: ../Doc/reference/datamodel.rst:2420 +#: ../Doc/reference/datamodel.rst:2422 msgid "" "Called to implement the built-in function :func:`round` and :mod:`math` " "functions :func:`~math.trunc`, :func:`~math.floor` and :func:`~math.ceil`. " @@ -4133,7 +4136,7 @@ msgstr "" "toutes ces méthodes doivent renvoyer la valeur de l'objet tronquée pour " "donner un :class:`~numbers.Integral` (typiquement un :class:`int`)." -#: ../Doc/reference/datamodel.rst:2426 +#: ../Doc/reference/datamodel.rst:2428 msgid "" "If :meth:`__int__` is not defined then the built-in function :func:`int` " "falls back to :meth:`__trunc__`." @@ -4141,11 +4144,11 @@ msgstr "" "Si :meth:`__int__` n'est pas définie, alors la fonction native :func:`int` " "se replie sur :meth:`__trunc__`." -#: ../Doc/reference/datamodel.rst:2433 +#: ../Doc/reference/datamodel.rst:2435 msgid "With Statement Context Managers" msgstr "Gestionnaire de contexte With" -#: ../Doc/reference/datamodel.rst:2435 +#: ../Doc/reference/datamodel.rst:2437 msgid "" "A :dfn:`context manager` is an object that defines the runtime context to be " "established when executing a :keyword:`with` statement. The context manager " @@ -4162,7 +4165,7 @@ msgstr "" "dans la section :ref:`with`), mais ils peuvent aussi être directement " "invoqués par leurs méthodes." -#: ../Doc/reference/datamodel.rst:2446 +#: ../Doc/reference/datamodel.rst:2448 msgid "" "Typical uses of context managers include saving and restoring various kinds " "of global state, locking and unlocking resources, closing opened files, etc." @@ -4171,14 +4174,14 @@ msgstr "" "et la restauration d'états divers, le verrouillage et le déverrouillage de " "ressources, la fermeture de fichiers ouverts, etc." -#: ../Doc/reference/datamodel.rst:2449 +#: ../Doc/reference/datamodel.rst:2451 msgid "" "For more information on context managers, see :ref:`typecontextmanager`." msgstr "" "Pour plus d'informations sur les gestionnaires de contexte, lisez :ref:" "`typecontextmanager`." -#: ../Doc/reference/datamodel.rst:2454 +#: ../Doc/reference/datamodel.rst:2456 msgid "" "Enter the runtime context related to this object. The :keyword:`with` " "statement will bind this method's return value to the target(s) specified in " @@ -4189,7 +4192,7 @@ msgstr "" "cible spécifiée par la clause :keyword:`!as` de l'instruction, si elle est " "spécifiée." -#: ../Doc/reference/datamodel.rst:2461 +#: ../Doc/reference/datamodel.rst:2463 msgid "" "Exit the runtime context related to this object. The parameters describe the " "exception that caused the context to be exited. If the context was exited " @@ -4199,7 +4202,7 @@ msgstr "" "l'exception qui a causé la sortie du contexte. Si l'on sort du contexte sans " "exception, les trois arguments sont à :const:`None`." -#: ../Doc/reference/datamodel.rst:2465 +#: ../Doc/reference/datamodel.rst:2467 msgid "" "If an exception is supplied, and the method wishes to suppress the exception " "(i.e., prevent it from being propagated), it should return a true value. " @@ -4211,7 +4214,7 @@ msgstr "" "propagée), elle doit renvoyer ``True``. Sinon, l'exception est traitée " "normalement à la sortie de cette méthode." -#: ../Doc/reference/datamodel.rst:2469 +#: ../Doc/reference/datamodel.rst:2471 msgid "" "Note that :meth:`__exit__` methods should not reraise the passed-in " "exception; this is the caller's responsibility." @@ -4219,11 +4222,11 @@ msgstr "" "Notez qu'une méthode :meth:`__exit__` ne doit pas lever à nouveau " "l'exception qu'elle reçoit ; c'est du ressort de l'appelant." -#: ../Doc/reference/datamodel.rst:2476 +#: ../Doc/reference/datamodel.rst:2478 msgid ":pep:`343` - The \"with\" statement" msgstr ":pep:`343` — L'instruction ``with``" -#: ../Doc/reference/datamodel.rst:2476 +#: ../Doc/reference/datamodel.rst:2478 msgid "" "The specification, background, and examples for the Python :keyword:`with` " "statement." @@ -4231,11 +4234,11 @@ msgstr "" "La spécification, les motivations et des exemples de l'instruction :keyword:" "`with` en Python." -#: ../Doc/reference/datamodel.rst:2483 +#: ../Doc/reference/datamodel.rst:2485 msgid "Special method lookup" msgstr "Recherche des méthodes spéciales" -#: ../Doc/reference/datamodel.rst:2485 +#: ../Doc/reference/datamodel.rst:2487 msgid "" "For custom classes, implicit invocations of special methods are only " "guaranteed to work correctly if defined on an object's type, not in the " @@ -4247,7 +4250,7 @@ msgstr "" "type d'objet, pas dans le dictionnaire de l'objet instance. Ce comportement " "explique pourquoi le code suivant lève une exception ::" -#: ../Doc/reference/datamodel.rst:2500 +#: ../Doc/reference/datamodel.rst:2502 msgid "" "The rationale behind this behaviour lies with a number of special methods " "such as :meth:`__hash__` and :meth:`__repr__` that are implemented by all " @@ -4261,7 +4264,7 @@ msgstr "" "méthodes utilisait le processus normal de recherche, elles ne " "fonctionneraient pas si on les appelait sur l'objet type lui-même ::" -#: ../Doc/reference/datamodel.rst:2513 +#: ../Doc/reference/datamodel.rst:2515 msgid "" "Incorrectly attempting to invoke an unbound method of a class in this way is " "sometimes referred to as 'metaclass confusion', and is avoided by bypassing " @@ -4271,7 +4274,7 @@ msgstr "" "parfois appelé \"confusion de méta-classe\" et se contourne en shuntant " "l'instance lors de la recherche des méthodes spéciales ::" -#: ../Doc/reference/datamodel.rst:2522 +#: ../Doc/reference/datamodel.rst:2524 msgid "" "In addition to bypassing any instance attributes in the interest of " "correctness, implicit special method lookup generally also bypasses the :" @@ -4281,7 +4284,7 @@ msgstr "" "correctement, la recherche des méthodes spéciales implicites shunte aussi la " "méthode :meth:`__getattribute__` même dans la méta-classe de l'objet ::" -#: ../Doc/reference/datamodel.rst:2548 +#: ../Doc/reference/datamodel.rst:2550 msgid "" "Bypassing the :meth:`__getattribute__` machinery in this fashion provides " "significant scope for speed optimisations within the interpreter, at the " @@ -4295,15 +4298,15 @@ msgstr "" "être définie sur l'objet classe lui-même afin d'être invoquée de manière " "cohérente par l'interpréteur)." -#: ../Doc/reference/datamodel.rst:2559 +#: ../Doc/reference/datamodel.rst:2561 msgid "Coroutines" msgstr "Coroutines" -#: ../Doc/reference/datamodel.rst:2563 +#: ../Doc/reference/datamodel.rst:2565 msgid "Awaitable Objects" msgstr "Objets *attendables* (*awaitables*)" -#: ../Doc/reference/datamodel.rst:2565 +#: ../Doc/reference/datamodel.rst:2567 msgid "" "An :term:`awaitable` object generally implements an :meth:`__await__` " "method. :term:`Coroutine` objects returned from :keyword:`async def` " @@ -4313,7 +4316,7 @@ msgstr "" "`__await__`. Les objets :term:`Coroutine` renvoyés par les fonctions :" "keyword:`async def` sont des *awaitables*." -#: ../Doc/reference/datamodel.rst:2571 +#: ../Doc/reference/datamodel.rst:2573 msgid "" "The :term:`generator iterator` objects returned from generators decorated " "with :func:`types.coroutine` or :func:`asyncio.coroutine` are also " @@ -4323,7 +4326,7 @@ msgstr "" "décorés par :func:`types.coroutine` ou :func:`asyncio.coroutine` sont aussi " "des *awaitables*, mais ils n'implémentent pas :meth:`__await__`." -#: ../Doc/reference/datamodel.rst:2577 +#: ../Doc/reference/datamodel.rst:2579 msgid "" "Must return an :term:`iterator`. Should be used to implement :term:" "`awaitable` objects. For instance, :class:`asyncio.Future` implements this " @@ -4333,15 +4336,15 @@ msgstr "" "objets :term:`awaitable`. Par exemple, :class:`asyncio.Future` implémente " "cette méthode pour être compatible avec les expressions :keyword:`await`." -#: ../Doc/reference/datamodel.rst:2583 +#: ../Doc/reference/datamodel.rst:2585 msgid ":pep:`492` for additional information about awaitable objects." msgstr ":pep:`492` pour les informations relatives aux objets *awaitables*." -#: ../Doc/reference/datamodel.rst:2589 +#: ../Doc/reference/datamodel.rst:2591 msgid "Coroutine Objects" msgstr "Objets coroutines" -#: ../Doc/reference/datamodel.rst:2591 +#: ../Doc/reference/datamodel.rst:2593 msgid "" ":term:`Coroutine` objects are :term:`awaitable` objects. A coroutine's " "execution can be controlled by calling :meth:`__await__` and iterating over " @@ -4359,7 +4362,7 @@ msgstr "" "exception, elle est propagée par l'itérateur. Les coroutines ne doivent pas " "lever directement des exceptions :exc:`StopIteration` non gérées." -#: ../Doc/reference/datamodel.rst:2599 +#: ../Doc/reference/datamodel.rst:2601 msgid "" "Coroutines also have the methods listed below, which are analogous to those " "of generators (see :ref:`generator-methods`). However, unlike generators, " @@ -4370,13 +4373,13 @@ msgstr "" "contraire des générateurs, vous ne pouvez pas itérer directement sur des " "coroutines." -#: ../Doc/reference/datamodel.rst:2603 +#: ../Doc/reference/datamodel.rst:2605 msgid "It is a :exc:`RuntimeError` to await on a coroutine more than once." msgstr "" "Utiliser *await* plus d'une fois sur une coroutine lève une :exc:" "`RuntimeError`." -#: ../Doc/reference/datamodel.rst:2609 +#: ../Doc/reference/datamodel.rst:2611 msgid "" "Starts or resumes execution of the coroutine. If *value* is ``None``, this " "is equivalent to advancing the iterator returned by :meth:`__await__`. If " @@ -4393,7 +4396,7 @@ msgstr "" "est le même que lorsque vous itérez sur la valeur de retour de :meth:" "`__await__`, décrite ci-dessus." -#: ../Doc/reference/datamodel.rst:2619 +#: ../Doc/reference/datamodel.rst:2621 msgid "" "Raises the specified exception in the coroutine. This method delegates to " "the :meth:`~generator.throw` method of the iterator that caused the " @@ -4411,7 +4414,7 @@ msgstr "" "retour de :meth:`__await__`, décrite ci-dessus. Si l'exception n'est pas " "gérée par la coroutine, elle est propagée à l'appelant." -#: ../Doc/reference/datamodel.rst:2630 +#: ../Doc/reference/datamodel.rst:2632 msgid "" "Causes the coroutine to clean itself up and exit. If the coroutine is " "suspended, this method first delegates to the :meth:`~generator.close` " @@ -4428,7 +4431,7 @@ msgstr "" "la coroutine est marquée comme ayant terminé son exécution, même si elle n'a " "jamais démarré." -#: ../Doc/reference/datamodel.rst:2638 +#: ../Doc/reference/datamodel.rst:2640 msgid "" "Coroutine objects are automatically closed using the above process when they " "are about to be destroyed." @@ -4436,11 +4439,11 @@ msgstr "" "Les objets coroutines sont automatiquement fermés en utilisant le processus " "décrit au-dessus au moment où ils sont détruits." -#: ../Doc/reference/datamodel.rst:2644 +#: ../Doc/reference/datamodel.rst:2646 msgid "Asynchronous Iterators" msgstr "Itérateurs asynchrones" -#: ../Doc/reference/datamodel.rst:2646 +#: ../Doc/reference/datamodel.rst:2648 msgid "" "An *asynchronous iterator* can call asynchronous code in its ``__anext__`` " "method." @@ -4448,18 +4451,18 @@ msgstr "" "Un *itérateur asynchrone* peut appeler du code asynchrone dans sa méthode " "``__anext__``." -#: ../Doc/reference/datamodel.rst:2649 +#: ../Doc/reference/datamodel.rst:2651 msgid "" "Asynchronous iterators can be used in an :keyword:`async for` statement." msgstr "" "Les itérateurs asynchrones peuvent être utilisés dans des instructions :" "keyword:`async for`." -#: ../Doc/reference/datamodel.rst:2653 +#: ../Doc/reference/datamodel.rst:2655 msgid "Must return an *asynchronous iterator* object." msgstr "Doit renvoyer un objet *itérateur asynchrone*." -#: ../Doc/reference/datamodel.rst:2657 +#: ../Doc/reference/datamodel.rst:2659 msgid "" "Must return an *awaitable* resulting in a next value of the iterator. " "Should raise a :exc:`StopAsyncIteration` error when the iteration is over." @@ -4468,11 +4471,11 @@ msgstr "" "l'itérateur. Doit lever une :exc:`StopAsyncIteration` quand l'itération est " "terminée." -#: ../Doc/reference/datamodel.rst:2660 +#: ../Doc/reference/datamodel.rst:2662 msgid "An example of an asynchronous iterable object::" msgstr "Un exemple d'objet itérateur asynchrone ::" -#: ../Doc/reference/datamodel.rst:2677 +#: ../Doc/reference/datamodel.rst:2679 msgid "" "Prior to Python 3.7, ``__aiter__`` could return an *awaitable* that would " "resolve to an :term:`asynchronous iterator `." @@ -4481,7 +4484,7 @@ msgstr "" "résolvait potentiellement en un :term:`itérateur asynchrone `." -#: ../Doc/reference/datamodel.rst:2682 +#: ../Doc/reference/datamodel.rst:2684 msgid "" "Starting with Python 3.7, ``__aiter__`` must return an asynchronous iterator " "object. Returning anything else will result in a :exc:`TypeError` error." @@ -4489,11 +4492,11 @@ msgstr "" "À partir de Python 3.7, ``__aiter__`` doit renvoyer un objet itérateur " "asynchrone. Renvoyer autre chose entraine une erreur :exc:`TypeError`." -#: ../Doc/reference/datamodel.rst:2690 +#: ../Doc/reference/datamodel.rst:2692 msgid "Asynchronous Context Managers" msgstr "Gestionnaires de contexte asynchrones" -#: ../Doc/reference/datamodel.rst:2692 +#: ../Doc/reference/datamodel.rst:2694 msgid "" "An *asynchronous context manager* is a *context manager* that is able to " "suspend execution in its ``__aenter__`` and ``__aexit__`` methods." @@ -4502,7 +4505,7 @@ msgstr "" "qui est capable de suspendre son exécution dans ses méthodes ``__aenter__`` " "et ``__aexit__``." -#: ../Doc/reference/datamodel.rst:2695 +#: ../Doc/reference/datamodel.rst:2697 msgid "" "Asynchronous context managers can be used in an :keyword:`async with` " "statement." @@ -4510,7 +4513,7 @@ msgstr "" "Les gestionnaires de contexte asynchrones peuvent être utilisés dans des " "instructions :keyword:`async with`." -#: ../Doc/reference/datamodel.rst:2699 +#: ../Doc/reference/datamodel.rst:2701 #, fuzzy msgid "" "Semantically similar to :meth:`__enter__`, the only difference being that it " @@ -4519,7 +4522,7 @@ msgstr "" "Cette méthode est sémantiquement équivalente à :meth:`__enter__`, à la seule " "différence près qu'elle doit renvoyer un *awaitable*." -#: ../Doc/reference/datamodel.rst:2704 +#: ../Doc/reference/datamodel.rst:2706 #, fuzzy msgid "" "Semantically similar to :meth:`__exit__`, the only difference being that it " @@ -4528,15 +4531,15 @@ msgstr "" "Cette méthode est sémantiquement équivalente à :meth:`__exit__`, à la seule " "différence près qu'elle doit renvoyer un *awaitable*." -#: ../Doc/reference/datamodel.rst:2707 +#: ../Doc/reference/datamodel.rst:2709 msgid "An example of an asynchronous context manager class::" msgstr "Un exemple de classe de gestionnaire de contexte asynchrone ::" -#: ../Doc/reference/datamodel.rst:2720 +#: ../Doc/reference/datamodel.rst:2722 msgid "Footnotes" msgstr "Notes" -#: ../Doc/reference/datamodel.rst:2721 +#: ../Doc/reference/datamodel.rst:2723 msgid "" "It *is* possible in some cases to change an object's type, under certain " "controlled conditions. It generally isn't a good idea though, since it can " @@ -4547,7 +4550,7 @@ msgstr "" "car cela peut conduire à un comportement très étrange si ce n'est pas géré " "correctement." -#: ../Doc/reference/datamodel.rst:2725 +#: ../Doc/reference/datamodel.rst:2727 msgid "" "The :meth:`__hash__`, :meth:`__iter__`, :meth:`__reversed__`, and :meth:" "`__contains__` methods have special handling for this; others will still " @@ -4559,7 +4562,7 @@ msgstr "" "lèvent toujours :exc:`TypeError`, mais le font en considérant que ``None`` " "n'est pas un appelable." -#: ../Doc/reference/datamodel.rst:2730 +#: ../Doc/reference/datamodel.rst:2732 msgid "" "\"Does not support\" here means that the class has no such method, or the " "method returns ``NotImplemented``. Do not set the method to ``None`` if you " @@ -4571,7 +4574,7 @@ msgstr "" "``None`` à la méthode si vous voulez un repli vers la méthode symétrique de " "l'opérande de droite — cela aurait pour effet de *bloquer* un tel repli." -#: ../Doc/reference/datamodel.rst:2736 +#: ../Doc/reference/datamodel.rst:2738 msgid "" "For operands of the same type, it is assumed that if the non-reflected " "method (such as :meth:`__add__`) fails the operation is not supported, which " diff --git a/reference/expressions.po b/reference/expressions.po index b64a9a932..03165c879 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: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-06-19 21:43+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -228,7 +228,7 @@ msgstr "" "(c'est-à-dire que deux occurrences du n-uplet vide peuvent, ou pas, produire " "le même objet)." -#: ../Doc/reference/expressions.rst:155 +#: ../Doc/reference/expressions.rst:154 msgid "" "Note that tuples are not formed by the parentheses, but rather by use of the " "comma operator. The exception is the empty tuple, for which parentheses " @@ -241,11 +241,11 @@ msgstr "" "dans les expressions aurait généré des ambigüités et aurait permis à " "certaines coquilles de passer inaperçu)." -#: ../Doc/reference/expressions.rst:164 +#: ../Doc/reference/expressions.rst:163 msgid "Displays for lists, sets and dictionaries" msgstr "Agencements des listes, ensembles et dictionnaires" -#: ../Doc/reference/expressions.rst:166 +#: ../Doc/reference/expressions.rst:165 msgid "" "For constructing a list, a set or a dictionary Python provides special " "syntax called \"displays\", each of them in two flavors:" @@ -254,11 +254,11 @@ msgstr "" "des syntaxes spéciales dites \"agencements\" (*displays* en anglais), chaque " "agencement comportant deux variantes :" -#: ../Doc/reference/expressions.rst:169 +#: ../Doc/reference/expressions.rst:168 msgid "either the container contents are listed explicitly, or" msgstr "soit le contenu du conteneur est listé explicitement," -#: ../Doc/reference/expressions.rst:171 +#: ../Doc/reference/expressions.rst:170 msgid "" "they are computed via a set of looping and filtering instructions, called a :" "dfn:`comprehension`." @@ -267,13 +267,13 @@ msgstr "" "d'instructions de filtrage, appelée une :dfn:`compréhension` (dans le sens " "de ce qui sert à définir un concept, par opposition à *extension*)." -#: ../Doc/reference/expressions.rst:179 +#: ../Doc/reference/expressions.rst:178 msgid "Common syntax elements for comprehensions are:" msgstr "" "Les compréhensions sont constituées des éléments de syntaxe communs " "suivants :" -#: ../Doc/reference/expressions.rst:187 +#: ../Doc/reference/expressions.rst:186 msgid "" "The comprehension consists of a single expression followed by at least one :" "keyword:`!for` clause and zero or more :keyword:`!for` or :keyword:`!if` " @@ -290,7 +290,7 @@ msgstr "" "droite, et évalué l'expression pour produire un élément à chaque fois que le " "bloc le plus imbriqué était atteint." -#: ../Doc/reference/expressions.rst:194 +#: ../Doc/reference/expressions.rst:193 msgid "" "However, aside from the iterable expression in the leftmost :keyword:`!for` " "clause, the comprehension is executed in a separate implicitly nested scope. " @@ -302,7 +302,7 @@ msgstr "" "implicitement imbriquée. Ceci assure que les noms assignés dans la liste " "cible ne \"fuient\" pas en dehors de cette portée." -#: ../Doc/reference/expressions.rst:198 +#: ../Doc/reference/expressions.rst:197 #, fuzzy msgid "" "The iterable expression in the leftmost :keyword:`!for` clause is evaluated " @@ -320,7 +320,7 @@ msgstr "" "peuvent dépendre de valeurs obtenues à partir de l'itérable le plus à " "gauche. Par exemple : ``[x*y for x in range(10) for y in range(x, x+10)]``." -#: ../Doc/reference/expressions.rst:205 +#: ../Doc/reference/expressions.rst:204 #, fuzzy msgid "" "To ensure the comprehension always results in a container of the appropriate " @@ -333,7 +333,7 @@ msgstr "" "un :exc:`DeprecationWarning` à la compilation, dans Python 3.8 et suivants, " "elles lèveront une :exc:`SyntaxError`)." -#: ../Doc/reference/expressions.rst:212 +#: ../Doc/reference/expressions.rst:211 msgid "" "Since Python 3.6, in an :keyword:`async def` function, an :keyword:`!async " "for` clause may be used to iterate over a :term:`asynchronous iterator`. A " @@ -358,22 +358,22 @@ msgstr "" "l'exécution de la fonction coroutine dans laquelle elle apparaît. Voir aussi " "la :pep:`530`." -#: ../Doc/reference/expressions.rst:224 +#: ../Doc/reference/expressions.rst:223 msgid "Asynchronous comprehensions were introduced." msgstr "Les compréhensions asynchrones ont été introduites." -#: ../Doc/reference/expressions.rst:227 ../Doc/reference/expressions.rst:398 +#: ../Doc/reference/expressions.rst:226 ../Doc/reference/expressions.rst:397 #, fuzzy msgid "``yield`` and ``yield from`` prohibited in the implicitly nested scope." msgstr "" "``yield`` et ``yield from`` sont obsolètes dans la portée implicite " "imbriquée." -#: ../Doc/reference/expressions.rst:234 +#: ../Doc/reference/expressions.rst:233 msgid "List displays" msgstr "Agencements de listes" -#: ../Doc/reference/expressions.rst:244 +#: ../Doc/reference/expressions.rst:243 msgid "" "A list display is a possibly empty series of expressions enclosed in square " "brackets:" @@ -381,7 +381,7 @@ msgstr "" "Un agencement de liste est une suite (possiblement vide) d'expressions à " "l'intérieur de crochets :" -#: ../Doc/reference/expressions.rst:250 +#: ../Doc/reference/expressions.rst:249 msgid "" "A list display yields a new list object, the contents being specified by " "either a list of expressions or a comprehension. When a comma-separated " @@ -398,11 +398,11 @@ msgstr "" "fournie, la liste est construite à partir des éléments produits par la " "compréhension." -#: ../Doc/reference/expressions.rst:260 +#: ../Doc/reference/expressions.rst:259 msgid "Set displays" msgstr "Agencements d'ensembles" -#: ../Doc/reference/expressions.rst:268 +#: ../Doc/reference/expressions.rst:267 msgid "" "A set display is denoted by curly braces and distinguishable from dictionary " "displays by the lack of colons separating keys and values:" @@ -411,7 +411,7 @@ msgstr "" "distingue de l'agencement d'un dictionnaire par le fait qu'il n'y a pas de " "\"deux points\" ``:`` pour séparer les clés et les valeurs :" -#: ../Doc/reference/expressions.rst:274 +#: ../Doc/reference/expressions.rst:273 msgid "" "A set display yields a new mutable set object, the contents being specified " "by either a sequence of expressions or a comprehension. When a comma-" @@ -427,7 +427,7 @@ msgstr "" "et ajoutés à l'objet ensemble. Quand une compréhension est fournie, " "l'ensemble est construit à partir des éléments produits par la compréhension." -#: ../Doc/reference/expressions.rst:280 +#: ../Doc/reference/expressions.rst:279 msgid "" "An empty set cannot be constructed with ``{}``; this literal constructs an " "empty dictionary." @@ -435,11 +435,11 @@ msgstr "" "Un ensemble vide ne peut pas être construit par ``{}`` ; cette écriture " "construit un dictionnaire vide." -#: ../Doc/reference/expressions.rst:287 +#: ../Doc/reference/expressions.rst:286 msgid "Dictionary displays" msgstr "Agencements de dictionnaires" -#: ../Doc/reference/expressions.rst:297 +#: ../Doc/reference/expressions.rst:296 msgid "" "A dictionary display is a possibly empty series of key/datum pairs enclosed " "in curly braces:" @@ -447,11 +447,11 @@ msgstr "" "Un agencement de dictionnaire est une série (possiblement vide) de couples " "clés-valeurs entourée par des accolades :" -#: ../Doc/reference/expressions.rst:306 +#: ../Doc/reference/expressions.rst:305 msgid "A dictionary display yields a new dictionary object." msgstr "Un agencement de dictionnaire produit un nouvel objet dictionnaire." -#: ../Doc/reference/expressions.rst:308 +#: ../Doc/reference/expressions.rst:307 msgid "" "If a comma-separated sequence of key/datum pairs is given, they are " "evaluated from left to right to define the entries of the dictionary: each " @@ -468,7 +468,7 @@ msgstr "" "plusieurs fois dans la liste des couples clés-valeurs et, dans ce cas, la " "valeur finalement stockée dans le dictionnaire est la dernière donnée." -#: ../Doc/reference/expressions.rst:318 +#: ../Doc/reference/expressions.rst:317 msgid "" "A double asterisk ``**`` denotes :dfn:`dictionary unpacking`. Its operand " "must be a :term:`mapping`. Each mapping item is added to the new " @@ -482,13 +482,13 @@ msgstr "" "couples clés-valeurs antérieurs ou par d'autres dépaquetages de " "dictionnaires antérieurs." -#: ../Doc/reference/expressions.rst:323 +#: ../Doc/reference/expressions.rst:322 msgid "Unpacking into dictionary displays, originally proposed by :pep:`448`." msgstr "" "le dépaquetage peut se faire vers un agencement de dictionnaire, proposé à " "l'origine par la :pep:`448`." -#: ../Doc/reference/expressions.rst:326 +#: ../Doc/reference/expressions.rst:325 msgid "" "A dict comprehension, in contrast to list and set comprehensions, needs two " "expressions separated with a colon followed by the usual \"for\" and \"if\" " @@ -501,7 +501,7 @@ msgstr "" "est exécutée, les éléments clés-valeurs sont insérés dans le nouveau " "dictionnaire dans l'ordre dans lequel ils sont produits." -#: ../Doc/reference/expressions.rst:334 +#: ../Doc/reference/expressions.rst:333 msgid "" "Restrictions on the types of the key values are listed earlier in section :" "ref:`types`. (To summarize, the key type should be :term:`hashable`, which " @@ -516,7 +516,7 @@ msgstr "" "apparaît le plus à droite dans l'agencement) stockée prévaut pour une clé " "donnée." -#: ../Doc/reference/expressions.rst:340 +#: ../Doc/reference/expressions.rst:339 msgid "" "Prior to Python 3.8, in dict comprehensions, the evaluation order of key and " "value was not well-defined. In CPython, the value was evaluated before the " @@ -524,17 +524,17 @@ msgid "" "by :pep:`572`." msgstr "" -#: ../Doc/reference/expressions.rst:350 +#: ../Doc/reference/expressions.rst:349 msgid "Generator expressions" msgstr "Générateurs (expressions)" -#: ../Doc/reference/expressions.rst:357 +#: ../Doc/reference/expressions.rst:356 msgid "A generator expression is a compact generator notation in parentheses:" msgstr "" "Une expression générateur est une notation concise pour un générateur, " "entourée de parenthèses :" -#: ../Doc/reference/expressions.rst:362 +#: ../Doc/reference/expressions.rst:361 msgid "" "A generator expression yields a new generator object. Its syntax is the " "same as for comprehensions, except that it is enclosed in parentheses " @@ -544,7 +544,7 @@ msgstr "" "la même que celle des compréhensions, sauf qu'elle est entourée de " "parenthèses au lieu de crochets ou d'accolades." -#: ../Doc/reference/expressions.rst:366 +#: ../Doc/reference/expressions.rst:365 msgid "" "Variables used in the generator expression are evaluated lazily when the :" "meth:`~generator.__next__` method is called for the generator object (in the " @@ -569,7 +569,7 @@ msgstr "" "valeurs obtenues à partir de boucles :keyword:`!for` plus à gauche. Par " "exemple, ``(x*y for x in range(10) for y in range(x, x+10))``." -#: ../Doc/reference/expressions.rst:377 +#: ../Doc/reference/expressions.rst:376 msgid "" "The parentheses can be omitted on calls with only one argument. See " "section :ref:`calls` for details." @@ -577,7 +577,7 @@ msgstr "" "Les parenthèses peuvent être omises pour les appels qui ne possèdent qu'un " "seul argument. Voir la section :ref:`calls` pour les détails." -#: ../Doc/reference/expressions.rst:380 +#: ../Doc/reference/expressions.rst:379 #, fuzzy msgid "" "To avoid interfering with the expected operation of the generator expression " @@ -590,7 +590,7 @@ msgstr "" "3.7, ces expressions signalent un :exc:`DeprecationWarning` à la " "compilation. En Python 3.8+ elles lèvent une :exc:`SyntaxError`)." -#: ../Doc/reference/expressions.rst:384 +#: ../Doc/reference/expressions.rst:383 msgid "" "If a generator expression contains either :keyword:`!async for` clauses or :" "keyword:`await` expressions it is called an :dfn:`asynchronous generator " @@ -604,11 +604,11 @@ msgstr "" "asynchrone produit un nouvel objet générateur asynchrone qui est un " "itérateur asynchrone (voir :ref:`async-iterators`)." -#: ../Doc/reference/expressions.rst:390 +#: ../Doc/reference/expressions.rst:389 msgid "Asynchronous generator expressions were introduced." msgstr "les expressions générateurs asynchrones ont été introduites." -#: ../Doc/reference/expressions.rst:393 +#: ../Doc/reference/expressions.rst:392 msgid "" "Prior to Python 3.7, asynchronous generator expressions could only appear " "in :keyword:`async def` coroutines. Starting with 3.7, any function can use " @@ -619,11 +619,11 @@ msgstr "" "version 3.7, toute fonction peut utiliser des expressions générateurs " "asynchrones." -#: ../Doc/reference/expressions.rst:405 +#: ../Doc/reference/expressions.rst:404 msgid "Yield expressions" msgstr "Expressions ``yield``" -#: ../Doc/reference/expressions.rst:417 +#: ../Doc/reference/expressions.rst:416 msgid "" "The yield expression is used when defining a :term:`generator` function or " "an :term:`asynchronous generator` function and thus can only be used in the " @@ -640,7 +640,7 @@ msgstr "" "corps d'une fonction :keyword:`async def` entraine que cette fonction " "coroutine devient un générateur asynchrone. Par exemple ::" -#: ../Doc/reference/expressions.rst:430 +#: ../Doc/reference/expressions.rst:429 #, fuzzy msgid "" "Due to their side effects on the containing scope, ``yield`` expressions are " @@ -653,7 +653,7 @@ msgstr "" "Python 3.7, de telles expressions lèvent un :exc:`DeprecationWarning` à la " "compilation ; à partir de Python 3.8, elles lèveront une :exc:`SyntaxError`)." -#: ../Doc/reference/expressions.rst:434 +#: ../Doc/reference/expressions.rst:433 #, fuzzy msgid "" "Yield expressions prohibited in the implicitly nested scopes used to " @@ -663,7 +663,7 @@ msgstr "" "utilisée dans l'implémentation des compréhensions et des expressions " "générateurs." -#: ../Doc/reference/expressions.rst:438 +#: ../Doc/reference/expressions.rst:437 msgid "" "Generator functions are described below, while asynchronous generator " "functions are described separately in section :ref:`asynchronous-generator-" @@ -673,7 +673,7 @@ msgstr "" "générateurs asynchrones sont décrites séparément dans la section :ref:" "`asynchronous-generator-functions`." -#: ../Doc/reference/expressions.rst:442 +#: ../Doc/reference/expressions.rst:441 msgid "" "When a generator function is called, it returns an iterator known as a " "generator. That generator then controls the execution of the generator " @@ -710,7 +710,7 @@ msgstr "" "`~generator.send` qui a été utilisée, alors le résultat est la valeur " "transmise à cette méthode." -#: ../Doc/reference/expressions.rst:461 +#: ../Doc/reference/expressions.rst:460 msgid "" "All of this makes generator functions quite similar to coroutines; they " "yield multiple times, they have more than one entry point and their " @@ -725,7 +725,7 @@ msgstr "" "contrôler où l'exécution doit se poursuivre après une instruction " "``yield`` ; ce contrôle est toujours du ressort de l'appelant au générateur." -#: ../Doc/reference/expressions.rst:467 +#: ../Doc/reference/expressions.rst:466 msgid "" "Yield expressions are allowed anywhere in a :keyword:`try` construct. If " "the generator is not resumed before it is finalized (by reaching a zero " @@ -740,7 +740,7 @@ msgstr "" "close` du générateur-itérateur est appelée, ce qui permet l'exécution de " "toutes les clauses :keyword:`finally` en attente." -#: ../Doc/reference/expressions.rst:476 +#: ../Doc/reference/expressions.rst:475 msgid "" "When ``yield from `` is used, it treats the supplied expression as a " "subiterator. All values produced by that subiterator are passed directly to " @@ -761,7 +761,7 @@ msgstr "" "alors que :meth:`~generator.throw` ne fait que propager l'exception " "immédiatement." -#: ../Doc/reference/expressions.rst:485 +#: ../Doc/reference/expressions.rst:484 msgid "" "When the underlying iterator is complete, the :attr:`~StopIteration.value` " "attribute of the raised :exc:`StopIteration` instance becomes the value of " @@ -775,13 +775,13 @@ msgstr "" "quand vous levez :exc:`StopIteration` ou automatiquement que le sous-" "itérateur est un générateur (en renvoyant une valeur par le sous-générateur)." -#: ../Doc/reference/expressions.rst:491 +#: ../Doc/reference/expressions.rst:490 msgid "Added ``yield from `` to delegate control flow to a subiterator." msgstr "" "``yield from `` a été ajoutée pour déléguer le contrôle du flot " "d'exécution à un sous-itérateur." -#: ../Doc/reference/expressions.rst:494 +#: ../Doc/reference/expressions.rst:493 msgid "" "The parentheses may be omitted when the yield expression is the sole " "expression on the right hand side of an assignment statement." @@ -789,11 +789,11 @@ msgstr "" "Les parenthèses peuvent être omises quand l'expression ``yield`` est la " "seule expression à droite de l'instruction de l'instruction d'assignation." -#: ../Doc/reference/expressions.rst:500 +#: ../Doc/reference/expressions.rst:499 msgid ":pep:`255` - Simple Generators" msgstr ":pep:`255`: Générateurs simples" -#: ../Doc/reference/expressions.rst:500 +#: ../Doc/reference/expressions.rst:499 msgid "" "The proposal for adding generators and the :keyword:`yield` statement to " "Python." @@ -801,11 +801,11 @@ msgstr "" "La proposition d'ajouter à Python des générateurs et l'instruction :keyword:" "`yield`." -#: ../Doc/reference/expressions.rst:504 +#: ../Doc/reference/expressions.rst:503 msgid ":pep:`342` - Coroutines via Enhanced Generators" msgstr ":pep:`342` -- Coroutines *via* des générateurs améliorés" -#: ../Doc/reference/expressions.rst:503 +#: ../Doc/reference/expressions.rst:502 msgid "" "The proposal to enhance the API and syntax of generators, making them usable " "as simple coroutines." @@ -813,11 +813,11 @@ msgstr "" "Proposition d'améliorer l'API et la syntaxe des générateurs, de manière à " "pouvoir les utiliser comme de simples coroutines." -#: ../Doc/reference/expressions.rst:508 +#: ../Doc/reference/expressions.rst:507 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:507 +#: ../Doc/reference/expressions.rst:506 msgid "" "The proposal to introduce the :token:`yield_from` syntax, making delegation " "to subgenerators easy." @@ -825,11 +825,11 @@ msgstr "" "Proposition d'introduire la syntaxe :token:`yield_from`, de manière à " "déléguer facilement l'exécution à un sous-générateur." -#: ../Doc/reference/expressions.rst:511 +#: ../Doc/reference/expressions.rst:510 msgid ":pep:`525` - Asynchronous Generators" msgstr ":pep:`525` : Générateurs asynchrones" -#: ../Doc/reference/expressions.rst:511 +#: ../Doc/reference/expressions.rst:510 msgid "" "The proposal that expanded on :pep:`492` by adding generator capabilities to " "coroutine functions." @@ -837,11 +837,11 @@ msgstr "" "La proposition qui a amélioré la :pep:`492` en ajoutant des capacités de " "générateur pour les coroutines." -#: ../Doc/reference/expressions.rst:518 +#: ../Doc/reference/expressions.rst:517 msgid "Generator-iterator methods" msgstr "Méthodes des générateurs-itérateurs" -#: ../Doc/reference/expressions.rst:520 +#: ../Doc/reference/expressions.rst:519 msgid "" "This subsection describes the methods of a generator iterator. They can be " "used to control the execution of a generator function." @@ -849,7 +849,7 @@ msgstr "" "Cette sous-section décrit les méthodes des générateurs-itérateurs. Elles " "peuvent être utilisées pour contrôler l'exécution des fonctions générateurs." -#: ../Doc/reference/expressions.rst:523 +#: ../Doc/reference/expressions.rst:522 msgid "" "Note that calling any of the generator methods below when the generator is " "already executing raises a :exc:`ValueError` exception." @@ -858,7 +858,7 @@ msgstr "" "générateur est déjà en cours d'exécution lève une exception :exc:" "`ValueError`." -#: ../Doc/reference/expressions.rst:531 +#: ../Doc/reference/expressions.rst:530 msgid "" "Starts the execution of a generator function or resumes it at the last " "executed yield expression. When a generator function is resumed with a :" @@ -878,7 +878,7 @@ msgstr "" "`__next__` de l'appelant. Si le générateur termine sans donner une autre " "valeur, une exception :exc:`StopIteration` est levée." -#: ../Doc/reference/expressions.rst:540 +#: ../Doc/reference/expressions.rst:539 msgid "" "This method is normally called implicitly, e.g. by a :keyword:`for` loop, or " "by the built-in :func:`next` function." @@ -886,7 +886,7 @@ msgstr "" "Cette méthode est normalement appelée implicitement, par exemple par une " "boucle :keyword:`for` ou par la fonction native :func:`next`." -#: ../Doc/reference/expressions.rst:546 +#: ../Doc/reference/expressions.rst:545 msgid "" "Resumes the execution and \"sends\" a value into the generator function. " "The *value* argument becomes the result of the current yield expression. " @@ -904,7 +904,7 @@ msgstr "" "le générateur, elle doit avoir :const:`None` comme argument, car il n'y a " "aucune expression ``yield`` qui peut recevoir la valeur." -#: ../Doc/reference/expressions.rst:557 +#: ../Doc/reference/expressions.rst:556 msgid "" "Raises an exception of type ``type`` at the point where the generator was " "paused, and returns the next value yielded by the generator function. If " @@ -920,7 +920,7 @@ msgstr "" "passée ou lève une autre exception, alors cette exception est propagée vers " "l'appelant." -#: ../Doc/reference/expressions.rst:568 +#: ../Doc/reference/expressions.rst:567 msgid "" "Raises a :exc:`GeneratorExit` at the point where the generator function was " "paused. If the generator function then exits gracefully, is already closed, " @@ -938,11 +938,11 @@ msgstr "" "est propagée à l'appelant. La méthode :meth:`close` ne fait rien si le " "générateur a déjà terminé en raison d'une exception ou d'une fin normale." -#: ../Doc/reference/expressions.rst:579 +#: ../Doc/reference/expressions.rst:578 msgid "Examples" msgstr "Exemples" -#: ../Doc/reference/expressions.rst:581 +#: ../Doc/reference/expressions.rst:580 msgid "" "Here is a simple example that demonstrates the behavior of generators and " "generator functions::" @@ -950,7 +950,7 @@ msgstr "" "Voici un exemple simple qui montre le comportement des générateurs et des " "fonctions générateurs ::" -#: ../Doc/reference/expressions.rst:608 +#: ../Doc/reference/expressions.rst:607 msgid "" "For examples using ``yield from``, see :ref:`pep-380` in \"What's New in " "Python.\"" @@ -958,11 +958,11 @@ msgstr "" "Pour des exemples d'utilisation de ``yield from``, lisez la :ref:`pep-380` " "dans \"Les nouveautés de Python\"." -#: ../Doc/reference/expressions.rst:614 +#: ../Doc/reference/expressions.rst:613 msgid "Asynchronous generator functions" msgstr "Fonctions générateurs asynchrones" -#: ../Doc/reference/expressions.rst:616 +#: ../Doc/reference/expressions.rst:615 msgid "" "The presence of a yield expression in a function or method defined using :" "keyword:`async def` further defines the function as an :term:`asynchronous " @@ -972,7 +972,7 @@ msgstr "" "définie en utilisant :keyword:`async def` transforme cette fonction en " "fonction :term:`générateur asynchrone `." -#: ../Doc/reference/expressions.rst:620 +#: ../Doc/reference/expressions.rst:619 msgid "" "When an asynchronous generator function is called, it returns an " "asynchronous iterator known as an asynchronous generator object. That object " @@ -988,7 +988,7 @@ msgstr "" "à l'intérieur d'une fonction coroutine de la même manière qu'un objet " "générateur serait utilisé dans une instruction :keyword:`for`." -#: ../Doc/reference/expressions.rst:627 +#: ../Doc/reference/expressions.rst:626 msgid "" "Calling one of the asynchronous generator's methods returns an :term:" "`awaitable` object, and the execution starts when this object is awaited on. " @@ -1022,7 +1022,7 @@ msgstr "" "alors le résultat est :const:`None`. Sinon, si c'est :meth:`~agen.asend` qui " "a été utilisée, alors le résultat est la valeur transmise à cette méthode." -#: ../Doc/reference/expressions.rst:643 +#: ../Doc/reference/expressions.rst:642 msgid "" "In an asynchronous generator function, yield expressions are allowed " "anywhere in a :keyword:`try` construct. However, if an asynchronous " @@ -1047,7 +1047,7 @@ msgstr "" "générateur asynchrone et d'exécuter l'objet coroutine résultant, permettant " "ainsi à toute clause :keyword:`!finally` en attente d'être exécutée." -#: ../Doc/reference/expressions.rst:654 +#: ../Doc/reference/expressions.rst:653 msgid "" "To take care of finalization, an event loop should define a *finalizer* " "function which takes an asynchronous generator-iterator and presumably " @@ -1068,7 +1068,7 @@ msgstr "" "*finalizer*, regardez l'implémentation de ``asyncio.Loop." "shutdown_asyncgens`` dans :source:`Lib/asyncio/base_events.py`." -#: ../Doc/reference/expressions.rst:663 +#: ../Doc/reference/expressions.rst:662 msgid "" "The expression ``yield from `` is a syntax error when used in an " "asynchronous generator function." @@ -1076,11 +1076,11 @@ msgstr "" "L'expression ``yield from `` produit une erreur de syntaxe quand elle " "est utilisée dans une fonction générateur asynchrone." -#: ../Doc/reference/expressions.rst:670 +#: ../Doc/reference/expressions.rst:669 msgid "Asynchronous generator-iterator methods" msgstr "Méthodes des générateurs-itérateurs asynchrones" -#: ../Doc/reference/expressions.rst:672 +#: ../Doc/reference/expressions.rst:671 msgid "" "This subsection describes the methods of an asynchronous generator iterator, " "which are used to control the execution of a generator function." @@ -1089,7 +1089,7 @@ msgstr "" "asynchrones. Elles sont utilisées pour contrôler l’exécution des fonctions " "générateurs." -#: ../Doc/reference/expressions.rst:680 +#: ../Doc/reference/expressions.rst:679 msgid "" "Returns an awaitable which when run starts to execute the asynchronous " "generator or resumes it at the last executed yield expression. When an " @@ -1114,14 +1114,14 @@ msgstr "" "lève une exception :exc:`StopAsyncIteration` qui signale que l'itération " "asynchrone est terminée." -#: ../Doc/reference/expressions.rst:692 +#: ../Doc/reference/expressions.rst:691 msgid "" "This method is normally called implicitly by a :keyword:`async for` loop." msgstr "" "Cette méthode est normalement appelée implicitement par une boucle :keyword:" "`async for`." -#: ../Doc/reference/expressions.rst:697 +#: ../Doc/reference/expressions.rst:696 msgid "" "Returns an awaitable which when run resumes the execution of the " "asynchronous generator. As with the :meth:`~generator.send()` method for a " @@ -1146,7 +1146,7 @@ msgstr "" "appelée pour démarrer le générateur asynchrone, l'argument doit être :const:" "`None` car il n'y a pas d'expression ``yield`` pour recevoir la valeur." -#: ../Doc/reference/expressions.rst:712 +#: ../Doc/reference/expressions.rst:711 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 " @@ -1166,7 +1166,7 @@ msgstr "" "l'exception reçue ou lève une autre exception alors, quand le *awaitable* " "est lancé, cette exception est propagée vers l'appelant du *awaitable*." -#: ../Doc/reference/expressions.rst:727 +#: ../Doc/reference/expressions.rst:726 msgid "" "Returns an awaitable that when run will throw a :exc:`GeneratorExit` into " "the asynchronous generator function at the point where it was paused. If the " @@ -1194,11 +1194,11 @@ msgstr "" "déjà terminé (soit par une exception, soit normalement), alors tout nouvel " "appel à :meth:`aclose` renvoie un *awaitable* qui ne fait rien." -#: ../Doc/reference/expressions.rst:743 +#: ../Doc/reference/expressions.rst:742 msgid "Primaries" msgstr "Primaires" -#: ../Doc/reference/expressions.rst:747 +#: ../Doc/reference/expressions.rst:746 msgid "" "Primaries represent the most tightly bound operations of the language. Their " "syntax is:" @@ -1207,17 +1207,17 @@ msgstr "" "les opérations qui se lient au plus proche dans le langage. Leur syntaxe " "est :" -#: ../Doc/reference/expressions.rst:757 +#: ../Doc/reference/expressions.rst:756 msgid "Attribute references" msgstr "Références à des attributs" -#: ../Doc/reference/expressions.rst:763 +#: ../Doc/reference/expressions.rst:762 msgid "An attribute reference is a primary followed by a period and a name:" msgstr "" "Une référence à un attribut (*attributeref* dans la grammaire formelle ci-" "dessous) est une primaire suivie par un point et un nom :" -#: ../Doc/reference/expressions.rst:773 +#: ../Doc/reference/expressions.rst:772 msgid "" "The primary must evaluate to an object of a type that supports attribute " "references, which most objects do. This object is then asked to produce the " @@ -1236,11 +1236,11 @@ msgstr "" "l'objet. Plusieurs évaluations successives d'une référence à un même " "attribut peuvent produire différents objets." -#: ../Doc/reference/expressions.rst:785 +#: ../Doc/reference/expressions.rst:784 msgid "Subscriptions" msgstr "Sélections" -#: ../Doc/reference/expressions.rst:800 +#: ../Doc/reference/expressions.rst:799 msgid "" "A subscription selects an item of a sequence (string, tuple or list) or " "mapping (dictionary) object:" @@ -1249,7 +1249,7 @@ msgstr "" "un élément dans un objet séquence (chaîne, n-uplet ou liste) ou tableau de " "correspondances (dictionnaire) :" -#: ../Doc/reference/expressions.rst:806 +#: ../Doc/reference/expressions.rst:805 msgid "" "The primary must evaluate to an object that supports subscription (lists or " "dictionaries for example). User-defined objects can support subscription by " @@ -1259,13 +1259,13 @@ msgstr "" "ou un dictionnaire par exemple). Les objets définis par l'utilisateur " "peuvent gérer les sélections en définissant une méthode :meth:`__getitem__`." -#: ../Doc/reference/expressions.rst:810 +#: ../Doc/reference/expressions.rst:809 msgid "" "For built-in objects, there are two types of objects that support " "subscription:" msgstr "Pour les objets natifs, deux types d'objets gèrent la sélection :" -#: ../Doc/reference/expressions.rst:812 +#: ../Doc/reference/expressions.rst:811 msgid "" "If the primary is a mapping, the expression list must evaluate to an object " "whose value is one of the keys of the mapping, and the subscription selects " @@ -1279,7 +1279,7 @@ msgstr "" "(la liste d'expressions est un n-uplet sauf si elle comporte exactement un " "élément)." -#: ../Doc/reference/expressions.rst:817 +#: ../Doc/reference/expressions.rst:816 msgid "" "If the primary is a sequence, the expression list must evaluate to an " "integer or a slice (as discussed in the following section)." @@ -1288,7 +1288,7 @@ msgstr "" "dans la grammaire) doit pouvoir être évaluée comme un entier ou une tranche " "(comme expliqué dans la section suivante)." -#: ../Doc/reference/expressions.rst:820 +#: ../Doc/reference/expressions.rst:819 msgid "" "The formal syntax makes no special provision for negative indices in " "sequences; however, built-in sequences all provide a :meth:`__getitem__` " @@ -1312,7 +1312,7 @@ msgstr "" "surchargent cette méthode doivent aussi savoir les gérer, de manière " "explicite." -#: ../Doc/reference/expressions.rst:834 +#: ../Doc/reference/expressions.rst:833 msgid "" "A string's items are characters. A character is not a separate data type " "but a string of exactly one character." @@ -1320,11 +1320,11 @@ msgstr "" "Les éléments des chaînes sont des caractères. Un caractère n'est pas un type " "en tant que tel, c'est une chaîne de longueur un." -#: ../Doc/reference/expressions.rst:841 +#: ../Doc/reference/expressions.rst:840 msgid "Slicings" msgstr "Tranches" -#: ../Doc/reference/expressions.rst:855 +#: ../Doc/reference/expressions.rst:854 msgid "" "A slicing selects a range of items in a sequence object (e.g., a string, " "tuple or list). Slicings may be used as expressions or as targets in " @@ -1337,7 +1337,7 @@ msgstr "" "les assignations ou les instructions :keyword:`del`. La syntaxe est la " "suivante :" -#: ../Doc/reference/expressions.rst:868 +#: ../Doc/reference/expressions.rst:867 msgid "" "There is ambiguity in the formal syntax here: anything that looks like an " "expression list also looks like a slice list, so any subscription can be " @@ -1356,7 +1356,7 @@ msgstr "" "que tranche (c'est le cas si la liste de tranches (*slice_list*) ne contient " "aucune tranche en tant que telle)." -#: ../Doc/reference/expressions.rst:880 +#: ../Doc/reference/expressions.rst:879 msgid "" "The semantics for a slicing are as follows. The primary is indexed (using " "the same :meth:`__getitem__` method as normal subscription) with a key that " @@ -1385,11 +1385,11 @@ msgstr "" "la grammaire) et le pas (*stride* dans la grammaire), respectivement. En cas " "d'expression manquante, la valeur par défaut est ``None``." -#: ../Doc/reference/expressions.rst:904 +#: ../Doc/reference/expressions.rst:903 msgid "Calls" msgstr "Appels" -#: ../Doc/reference/expressions.rst:906 +#: ../Doc/reference/expressions.rst:905 msgid "" "A call calls a callable object (e.g., a :term:`function`) with a possibly " "empty series of :term:`arguments `:" @@ -1398,7 +1398,7 @@ msgstr "" "(par exemple, une :term:`fonction `) avec, possiblement, une liste " "d'\\ :term:`arguments ` :" -#: ../Doc/reference/expressions.rst:922 +#: ../Doc/reference/expressions.rst:921 msgid "" "An optional trailing comma may be present after the positional and keyword " "arguments but does not affect the semantics." @@ -1406,7 +1406,7 @@ msgstr "" "Une virgule finale (optionnelle) peut être présente, après les arguments " "positionnels et par mots-clés, mais elle n'affecte pas la sémantique." -#: ../Doc/reference/expressions.rst:928 +#: ../Doc/reference/expressions.rst:927 msgid "" "The primary must evaluate to a callable object (user-defined functions, " "built-in functions, methods of built-in objects, class objects, methods of " @@ -1423,7 +1423,7 @@ msgstr "" "section :ref:`function` pour la syntaxe des listes de :term:`paramètres " "` formels." -#: ../Doc/reference/expressions.rst:936 +#: ../Doc/reference/expressions.rst:935 msgid "" "If keyword arguments are present, they are first converted to positional " "arguments, as follows. First, a list of unfilled slots is created for the " @@ -1464,7 +1464,7 @@ msgstr "" "n'est définie, une exception :exc:`TypeError` est levée. Sinon, la liste des " "*slots* remplie est utilisée en tant que liste des arguments pour l'appel." -#: ../Doc/reference/expressions.rst:956 +#: ../Doc/reference/expressions.rst:955 msgid "" "An implementation may provide built-in functions whose positional parameters " "do not have names, even if they are 'named' for the purpose of " @@ -1478,7 +1478,7 @@ msgstr "" "CPython, les fonctions implémentées en C qui utilisent :c:func:" "`PyArg_ParseTuple` pour analyser leurs arguments en font partie." -#: ../Doc/reference/expressions.rst:962 +#: ../Doc/reference/expressions.rst:961 msgid "" "If there are more positional arguments than there are formal parameter " "slots, a :exc:`TypeError` exception is raised, unless a formal parameter " @@ -1492,7 +1492,7 @@ msgstr "" "reçoit un n-uplet contenant les arguments positionnels en supplément (ou un " "n-uplet vide s'il n'y avait pas d'arguments positionnel en trop)." -#: ../Doc/reference/expressions.rst:968 +#: ../Doc/reference/expressions.rst:967 msgid "" "If any keyword argument does not correspond to a formal parameter name, a :" "exc:`TypeError` exception is raised, unless a formal parameter using the " @@ -1509,7 +1509,7 @@ msgstr "" "dictionnaire), ou un (nouveau) dictionnaire vide s'il n'y a pas d'argument " "par mot-clé en trop." -#: ../Doc/reference/expressions.rst:979 +#: ../Doc/reference/expressions.rst:978 msgid "" "If the syntax ``*expression`` appears in the function call, ``expression`` " "must evaluate to an :term:`iterable`. Elements from these iterables are " @@ -1525,7 +1525,7 @@ msgstr "" "s'évalue comme une séquence *y1*, ..., *yM*, c'est équivalent à un appel " "avec M+4 arguments positionnels *x1*, *x2*, *y1*, ..., *yM*, *x3*, *x4*." -#: ../Doc/reference/expressions.rst:986 +#: ../Doc/reference/expressions.rst:985 msgid "" "A consequence of this is that although the ``*expression`` syntax may appear " "*after* explicit keyword arguments, it is processed *before* the keyword " @@ -1536,7 +1536,7 @@ msgstr "" "*avant* les arguments par mots-clés (et avant tout argument ``**expression`` " "-- voir ci-dessous). Ainsi ::" -#: ../Doc/reference/expressions.rst:1002 +#: ../Doc/reference/expressions.rst:1001 msgid "" "It is unusual for both keyword arguments and the ``*expression`` syntax to " "be used in the same call, so in practice this confusion does not arise." @@ -1545,7 +1545,7 @@ msgstr "" "``*expression`` soient utilisés simultanément dans un même appel, ce qui " "fait que la confusion reste hypothétique." -#: ../Doc/reference/expressions.rst:1008 +#: ../Doc/reference/expressions.rst:1007 msgid "" "If the syntax ``**expression`` appears in the function call, ``expression`` " "must evaluate to a :term:`mapping`, the contents of which are treated as " @@ -1560,7 +1560,7 @@ msgstr "" "qu'argument par mot-clé explicite, ou venant d'un autre dépaquetage), une " "exception :exc:`TypeError` est levée." -#: ../Doc/reference/expressions.rst:1014 +#: ../Doc/reference/expressions.rst:1013 msgid "" "Formal parameters using the syntax ``*identifier`` or ``**identifier`` " "cannot be used as positional argument slots or as keyword argument names." @@ -1569,7 +1569,7 @@ msgstr "" "``**identifier`` ne peuvent pas être utilisés comme arguments positionnels " "ou comme noms d'arguments par mots-clés." -#: ../Doc/reference/expressions.rst:1017 +#: ../Doc/reference/expressions.rst:1016 msgid "" "Function calls accept any number of ``*`` and ``**`` unpackings, positional " "arguments may follow iterable unpackings (``*``), and keyword arguments may " @@ -1581,7 +1581,7 @@ msgstr "" "dépaquetages de dictionnaires (``**``). Proposé pour la première fois par " "la :pep:`448`." -#: ../Doc/reference/expressions.rst:1023 +#: ../Doc/reference/expressions.rst:1022 msgid "" "A call always returns some value, possibly ``None``, unless it raises an " "exception. How this value is computed depends on the type of the callable " @@ -1591,15 +1591,15 @@ msgstr "" "ne lève une exception. La façon dont celle valeur est calculée dépend du " "type de l'objet appelable." -#: ../Doc/reference/expressions.rst:1027 +#: ../Doc/reference/expressions.rst:1026 msgid "If it is---" msgstr "Si c'est ---" -#: ../Doc/reference/expressions.rst:1040 +#: ../Doc/reference/expressions.rst:1039 msgid "a user-defined function:" msgstr "une fonction définie par l'utilisateur :" -#: ../Doc/reference/expressions.rst:1036 +#: ../Doc/reference/expressions.rst:1035 msgid "" "The code block for the function is executed, passing it the argument list. " "The first thing the code block will do is bind the formal parameters to the " @@ -1613,11 +1613,11 @@ msgstr "" "`function`. Quand le bloc de code exécute l'instruction :keyword:`return`, " "cela spécifie la valeur de retour de l'appel de la fonction." -#: ../Doc/reference/expressions.rst:1054 +#: ../Doc/reference/expressions.rst:1053 msgid "a built-in function or method:" msgstr "une fonction ou une méthode native :" -#: ../Doc/reference/expressions.rst:1053 +#: ../Doc/reference/expressions.rst:1052 msgid "" "The result is up to the interpreter; see :ref:`built-in-funcs` for the " "descriptions of built-in functions and methods." @@ -1625,19 +1625,19 @@ msgstr "" "le résultat dépend de l'interpréteur ; lisez :ref:`built-in-funcs` pour une " "description des fonctions et méthodes natives." -#: ../Doc/reference/expressions.rst:1061 +#: ../Doc/reference/expressions.rst:1060 msgid "a class object:" msgstr "un objet classe :" -#: ../Doc/reference/expressions.rst:1061 +#: ../Doc/reference/expressions.rst:1060 msgid "A new instance of that class is returned." msgstr "une nouvelle instance de cette classe est renvoyée." -#: ../Doc/reference/expressions.rst:1071 +#: ../Doc/reference/expressions.rst:1070 msgid "a class instance method:" msgstr "une méthode d'instance de classe :" -#: ../Doc/reference/expressions.rst:1069 +#: ../Doc/reference/expressions.rst:1068 msgid "" "The corresponding user-defined function is called, with an argument list " "that is one longer than the argument list of the call: the instance becomes " @@ -1647,11 +1647,11 @@ msgstr "" "liste d'arguments qui est plus grande d'un élément que la liste des " "arguments de l'appel : l'instance est placée en tête des arguments." -#: ../Doc/reference/expressions.rst:1080 +#: ../Doc/reference/expressions.rst:1079 msgid "a class instance:" msgstr "une instance de classe :" -#: ../Doc/reference/expressions.rst:1078 +#: ../Doc/reference/expressions.rst:1077 msgid "" "The class must define a :meth:`__call__` method; the effect is then the same " "as if that method was called." @@ -1659,11 +1659,11 @@ msgstr "" "la classe doit définir une méthode :meth:`__call__` ; l'effet est le même " "que si cette méthode était appelée." -#: ../Doc/reference/expressions.rst:1086 ../Doc/reference/expressions.rst:1820 +#: ../Doc/reference/expressions.rst:1085 ../Doc/reference/expressions.rst:1821 msgid "Await expression" msgstr "Expression ``await``" -#: ../Doc/reference/expressions.rst:1088 +#: ../Doc/reference/expressions.rst:1087 msgid "" "Suspend the execution of :term:`coroutine` on an :term:`awaitable` object. " "Can only be used inside a :term:`coroutine function`." @@ -1671,11 +1671,11 @@ msgstr "" "Suspend l'exécution de la :term:`coroutine` sur un objet :term:`awaitable`. " "Ne peut être utilisée qu'à l'intérieur d'une :term:`coroutine function`." -#: ../Doc/reference/expressions.rst:1100 +#: ../Doc/reference/expressions.rst:1099 msgid "The power operator" msgstr "L'opérateur puissance" -#: ../Doc/reference/expressions.rst:1106 +#: ../Doc/reference/expressions.rst:1105 msgid "" "The power operator binds more tightly than unary operators on its left; it " "binds less tightly than unary operators on its right. The syntax is:" @@ -1684,7 +1684,7 @@ msgstr "" "gauche ; il est moins prioritaire que les opérateurs unaires sur sa droite. " "La syntaxe est :" -#: ../Doc/reference/expressions.rst:1112 +#: ../Doc/reference/expressions.rst:1111 msgid "" "Thus, in an unparenthesized sequence of power and unary operators, the " "operators are evaluated from right to left (this does not constrain the " @@ -1694,7 +1694,7 @@ msgstr "" "unaires, les opérateurs sont évalués de droite à gauche (ceci ne contraint " "pas l'ordre d'évaluation des opérandes) : ``-1**2`` donne ``-1``." -#: ../Doc/reference/expressions.rst:1116 +#: ../Doc/reference/expressions.rst:1115 msgid "" "The power operator has the same semantics as the built-in :func:`pow` " "function, when called with two arguments: it yields its left argument raised " @@ -1707,7 +1707,7 @@ msgstr "" "arguments numériques sont d'abord convertis vers un type commun et le " "résultat est de ce type." -#: ../Doc/reference/expressions.rst:1121 +#: ../Doc/reference/expressions.rst:1120 msgid "" "For int operands, the result has the same type as the operands unless the " "second argument is negative; in that case, all arguments are converted to " @@ -1720,7 +1720,7 @@ msgstr "" "virgule flottante. Par exemple, ``10**2`` renvoie ``100`` mais ``10**-2`` " "renvoie ``0.01``." -#: ../Doc/reference/expressions.rst:1126 +#: ../Doc/reference/expressions.rst:1125 msgid "" "Raising ``0.0`` to a negative power results in a :exc:`ZeroDivisionError`. " "Raising a negative number to a fractional power results in a :class:" @@ -1731,28 +1731,28 @@ msgstr "" "renvoie un nombre :class:`complexe ` (dans les versions " "antérieures, cela levait une :exc:`ValueError`)." -#: ../Doc/reference/expressions.rst:1134 +#: ../Doc/reference/expressions.rst:1133 msgid "Unary arithmetic and bitwise operations" msgstr "Arithmétique unaire et opérations sur les bits" -#: ../Doc/reference/expressions.rst:1140 +#: ../Doc/reference/expressions.rst:1139 msgid "All unary arithmetic and bitwise operations have the same priority:" msgstr "" "Toute l'arithmétique unaire et les opérations sur les bits ont la même " "priorité :" -#: ../Doc/reference/expressions.rst:1151 +#: ../Doc/reference/expressions.rst:1150 msgid "" "The unary ``-`` (minus) operator yields the negation of its numeric argument." msgstr "" "L'opérateur unaire ``-`` (moins) produit l'opposé de son argument numérique." -#: ../Doc/reference/expressions.rst:1158 +#: ../Doc/reference/expressions.rst:1157 msgid "The unary ``+`` (plus) operator yields its numeric argument unchanged." msgstr "" "L'opérateur unaire ``+`` (plus) produit son argument numérique inchangé." -#: ../Doc/reference/expressions.rst:1164 +#: ../Doc/reference/expressions.rst:1163 msgid "" "The unary ``~`` (invert) operator yields the bitwise inversion of its " "integer argument. The bitwise inversion of ``x`` is defined as ``-(x+1)``. " @@ -1762,7 +1762,7 @@ msgstr "" "argument entier. L'inversion bit à bit de ``x`` est définie comme ``-(x" "+1)``. Elle s'applique uniquement aux nombres entiers." -#: ../Doc/reference/expressions.rst:1170 +#: ../Doc/reference/expressions.rst:1169 msgid "" "In all three cases, if the argument does not have the proper type, a :exc:" "`TypeError` exception is raised." @@ -1770,11 +1770,11 @@ msgstr "" "Dans ces trois cas, si l'argument n'est pas du bon type, une exception :exc:" "`TypeError` est levée." -#: ../Doc/reference/expressions.rst:1177 +#: ../Doc/reference/expressions.rst:1176 msgid "Binary arithmetic operations" msgstr "Opérations arithmétiques binaires" -#: ../Doc/reference/expressions.rst:1181 +#: ../Doc/reference/expressions.rst:1180 msgid "" "The binary arithmetic operations have the conventional priority levels. " "Note that some of these operations also apply to certain non-numeric types. " @@ -1787,7 +1787,7 @@ msgstr "" "niveaux, le premier pour les opérateurs multiplicatifs et le second pour les " "opérateurs additifs :" -#: ../Doc/reference/expressions.rst:1196 +#: ../Doc/reference/expressions.rst:1195 msgid "" "The ``*`` (multiplication) operator yields the product of its arguments. " "The arguments must either both be numbers, or one argument must be an " @@ -1803,7 +1803,7 @@ msgstr "" "Dans le dernier cas, la séquence est répétée ; une répétition négative " "produit une séquence vide." -#: ../Doc/reference/expressions.rst:1206 +#: ../Doc/reference/expressions.rst:1205 msgid "" "The ``@`` (at) operator is intended to be used for matrix multiplication. " "No builtin Python types implement this operator." @@ -1811,7 +1811,7 @@ msgstr "" "L'opérateur ``@`` (prononcé *at* en anglais) a vocation à multiplier des " "matrices. Aucun type Python natif n'implémente cet opérateur." -#: ../Doc/reference/expressions.rst:1217 +#: ../Doc/reference/expressions.rst:1216 msgid "" "The ``/`` (division) and ``//`` (floor division) operators yield the " "quotient of their arguments. The numeric arguments are first converted to a " @@ -1828,7 +1828,7 @@ msgstr "" "mathématique suivie de la fonction ``floor`` appliquée au résultat. Une " "division par zéro lève une exception :exc:`ZeroDivisionError`." -#: ../Doc/reference/expressions.rst:1228 +#: ../Doc/reference/expressions.rst:1227 msgid "" "The ``%`` (modulo) operator yields the remainder from the division of the " "first argument by the second. The numeric arguments are first converted to " @@ -1848,7 +1848,7 @@ msgstr "" "même signe que le second opérande (ou zéro) ; la valeur absolue du résultat " "est strictement inférieure à la valeur absolue du second opérande [#]_." -#: ../Doc/reference/expressions.rst:1237 +#: ../Doc/reference/expressions.rst:1236 msgid "" "The floor division and modulo operators are connected by the following " "identity: ``x == (x//y)*y + (x%y)``. Floor division and modulo are also " @@ -1860,7 +1860,7 @@ msgstr "" "aussi liés à la fonction native :func:`divmod` : ``divmod(x, y) == (x//y, x" "%y)`` [#]_." -#: ../Doc/reference/expressions.rst:1242 +#: ../Doc/reference/expressions.rst:1241 msgid "" "In addition to performing the modulo operation on numbers, the ``%`` " "operator is also overloaded by string objects to perform old-style string " @@ -1874,7 +1874,7 @@ msgstr "" "décrit dans la référence de la bibliothèque Python, dans la section :ref:" "`old-string-formatting`." -#: ../Doc/reference/expressions.rst:1247 +#: ../Doc/reference/expressions.rst:1246 msgid "" "The floor division operator, the modulo operator, and the :func:`divmod` " "function are not defined for complex numbers. Instead, convert to a " @@ -1885,7 +1885,7 @@ msgstr "" "pouvez, si cela a du sens pour ce que vous voulez faire, les convertir vers " "des nombres à virgule flottante en utilisant la fonction :func:`abs`." -#: ../Doc/reference/expressions.rst:1256 +#: ../Doc/reference/expressions.rst:1255 msgid "" "The ``+`` (addition) operator yields the sum of its arguments. The " "arguments must either both be numbers or both be sequences of the same " @@ -1898,7 +1898,7 @@ msgstr "" "puis sont additionnés entre eux. Dans le dernier cas, les séquences sont " "concaténées." -#: ../Doc/reference/expressions.rst:1266 +#: ../Doc/reference/expressions.rst:1265 msgid "" "The ``-`` (subtraction) operator yields the difference of its arguments. " "The numeric arguments are first converted to a common type." @@ -1906,18 +1906,18 @@ msgstr "" "L'opérateur ``-`` (soustraction) produit la différence entre ses arguments. " "Les arguments numériques sont d'abord convertis vers un type commun." -#: ../Doc/reference/expressions.rst:1273 +#: ../Doc/reference/expressions.rst:1272 msgid "Shifting operations" msgstr "Opérations de décalage" -#: ../Doc/reference/expressions.rst:1280 +#: ../Doc/reference/expressions.rst:1279 msgid "" "The shifting operations have lower priority than the arithmetic operations:" msgstr "" "Les opérations de décalage sont moins prioritaires que les opérations " "arithmétiques :" -#: ../Doc/reference/expressions.rst:1285 +#: ../Doc/reference/expressions.rst:1284 msgid "" "These operators accept integers as arguments. They shift the first argument " "to the left or right by the number of bits given by the second argument." @@ -1926,7 +1926,7 @@ msgstr "" "argument vers la gauche ou vers la droite du nombre de bits donné par le " "deuxième argument." -#: ../Doc/reference/expressions.rst:1290 +#: ../Doc/reference/expressions.rst:1289 msgid "" "A right shift by *n* bits is defined as floor division by ``pow(2,n)``. A " "left shift by *n* bits is defined as multiplication with ``pow(2,n)``." @@ -1935,17 +1935,17 @@ msgstr "" "``pow(2,n)``. Un décalage à gauche de *n* bits est défini comme la " "multiplication par ``pow(2,n)``." -#: ../Doc/reference/expressions.rst:1297 +#: ../Doc/reference/expressions.rst:1296 msgid "Binary bitwise operations" msgstr "Opérations binaires bit à bit" -#: ../Doc/reference/expressions.rst:1301 +#: ../Doc/reference/expressions.rst:1300 msgid "Each of the three bitwise operations has a different priority level:" msgstr "" "Chacune des trois opérations binaires bit à bit possède une priorité " "différente :" -#: ../Doc/reference/expressions.rst:1312 +#: ../Doc/reference/expressions.rst:1311 msgid "" "The ``&`` operator yields the bitwise AND of its arguments, which must be " "integers." @@ -1953,7 +1953,7 @@ msgstr "" "L'opérateur ``&`` produit le ET logique de ses arguments, qui doivent être " "des entiers." -#: ../Doc/reference/expressions.rst:1320 +#: ../Doc/reference/expressions.rst:1319 msgid "" "The ``^`` operator yields the bitwise XOR (exclusive OR) of its arguments, " "which must be integers." @@ -1961,7 +1961,7 @@ msgstr "" "L'opérateur ``^`` produit le OU EXCLUSIF (XOR) logique de ses arguments, qui " "doivent être des entiers." -#: ../Doc/reference/expressions.rst:1328 +#: ../Doc/reference/expressions.rst:1327 msgid "" "The ``|`` operator yields the bitwise (inclusive) OR of its arguments, which " "must be integers." @@ -1969,11 +1969,11 @@ msgstr "" "L'opérateur ``|`` produit le OU logique de ses arguments, qui doivent être " "des entiers." -#: ../Doc/reference/expressions.rst:1335 +#: ../Doc/reference/expressions.rst:1334 msgid "Comparisons" msgstr "Comparaisons" -#: ../Doc/reference/expressions.rst:1347 +#: ../Doc/reference/expressions.rst:1346 msgid "" "Unlike C, all comparison operations in Python have the same priority, which " "is lower than that of any arithmetic, shifting or bitwise operation. Also " @@ -1986,12 +1986,12 @@ msgstr "" "les expressions telles que ``a < b < c`` sont interprétées comme elles le " "seraient conventionnellement en mathématiques :" -#: ../Doc/reference/expressions.rst:1357 +#: ../Doc/reference/expressions.rst:1356 msgid "Comparisons yield boolean values: ``True`` or ``False``." msgstr "" "Les comparaisons produisent des valeurs booléennes : ``True`` ou ``False``." -#: ../Doc/reference/expressions.rst:1361 +#: ../Doc/reference/expressions.rst:1360 msgid "" "Comparisons can be chained arbitrarily, e.g., ``x < y <= z`` is equivalent " "to ``x < y and y <= z``, except that ``y`` is evaluated only once (but in " @@ -2003,7 +2003,7 @@ msgstr "" "seulement une fois (mais dans les deux cas, ``z`` n'est pas évalué du tout " "si ``x < y`` s'avère être faux)." -#: ../Doc/reference/expressions.rst:1365 +#: ../Doc/reference/expressions.rst:1364 msgid "" "Formally, if *a*, *b*, *c*, ..., *y*, *z* are expressions and *op1*, " "*op2*, ..., *opN* are comparison operators, then ``a op1 b op2 c ... y opN " @@ -2015,7 +2015,7 @@ msgstr "" "c ... y opN z`` est équivalent à ``a op1 b and b op2 c and ... y opN z``, " "sauf que chaque expression est évaluée au maximum une fois." -#: ../Doc/reference/expressions.rst:1370 +#: ../Doc/reference/expressions.rst:1369 msgid "" "Note that ``a op1 b op2 c`` doesn't imply any kind of comparison between *a* " "and *c*, so that, e.g., ``x < y > z`` is perfectly legal (though perhaps not " @@ -2025,11 +2025,11 @@ msgstr "" "Ainsi, par exemple, ``x < y > z`` est parfaitement légal (mais peut-être pas " "très élégant)." -#: ../Doc/reference/expressions.rst:1375 +#: ../Doc/reference/expressions.rst:1374 msgid "Value comparisons" msgstr "Comparaisons de valeurs" -#: ../Doc/reference/expressions.rst:1377 +#: ../Doc/reference/expressions.rst:1376 msgid "" "The operators ``<``, ``>``, ``==``, ``>=``, ``<=``, and ``!=`` compare the " "values of two objects. The objects do not need to have the same type." @@ -2037,7 +2037,7 @@ msgstr "" "Les opérateurs ``<``, ``>``, ``==``, ``>=``, ``<=`` et ``!=`` comparent les " "valeurs de deux objets. Les objets n'ont pas besoin d'être du même type." -#: ../Doc/reference/expressions.rst:1380 +#: ../Doc/reference/expressions.rst:1379 msgid "" "Chapter :ref:`objects` states that objects have a value (in addition to type " "and identity). The value of an object is a rather abstract notion in " @@ -2058,7 +2058,7 @@ msgstr "" "d'un objet. Vous pouvez vous le représenter comme une définition indirecte " "de la valeur d'un objet, *via* l'implémentation de leur comparaison." -#: ../Doc/reference/expressions.rst:1389 +#: ../Doc/reference/expressions.rst:1388 msgid "" "Because all types are (direct or indirect) subtypes of :class:`object`, they " "inherit the default comparison behavior from :class:`object`. Types can " @@ -2071,7 +2071,7 @@ msgstr "" "des comparaisons en implémentant des :dfn:`méthodes de comparaisons riches`, " "comme :meth:`__lt__`, décrites dans :ref:`customization`." -#: ../Doc/reference/expressions.rst:1395 +#: ../Doc/reference/expressions.rst:1394 msgid "" "The default behavior for equality comparison (``==`` and ``!=``) is based on " "the identity of the objects. Hence, equality comparison of instances with " @@ -2087,7 +2087,7 @@ msgstr "" "choix est que Python souhaite que tous les objets soient réflexifs, c'est-à-" "dire que ``x is y`` implique ``x == y``." -#: ../Doc/reference/expressions.rst:1402 +#: ../Doc/reference/expressions.rst:1401 msgid "" "A default order comparison (``<``, ``>``, ``<=``, and ``>=``) is not " "provided; an attempt raises :exc:`TypeError`. A motivation for this default " @@ -2097,7 +2097,7 @@ msgstr "" "défaut ; une tentative se solde par une :exc:`TypeError`. La raison de ce " "choix est qu'il n'existe pas d'invariant similaire à celui de l'égalité." -#: ../Doc/reference/expressions.rst:1406 +#: ../Doc/reference/expressions.rst:1405 msgid "" "The behavior of the default equality comparison, that instances with " "different identities are always unequal, may be in contrast to what types " @@ -2112,7 +2112,7 @@ msgstr "" "personnaliser leurs tests de comparaison et, en fait, c'est ce qu'ont fait " "un certain nombre de types natifs." -#: ../Doc/reference/expressions.rst:1412 +#: ../Doc/reference/expressions.rst:1411 msgid "" "The following list describes the comparison behavior of the most important " "built-in types." @@ -2120,7 +2120,7 @@ msgstr "" "La liste suivante décrit le comportement des tests d'égalité pour les types " "natifs les plus importants." -#: ../Doc/reference/expressions.rst:1415 +#: ../Doc/reference/expressions.rst:1414 msgid "" "Numbers of built-in numeric types (:ref:`typesnumeric`) and of the standard " "library types :class:`fractions.Fraction` and :class:`decimal.Decimal` can " @@ -2137,7 +2137,7 @@ msgstr "" "des types concernés, la comparaison mathématique équivaut à la comparaison " "algorithmique, sans perte de précision." -#: ../Doc/reference/expressions.rst:1422 +#: ../Doc/reference/expressions.rst:1421 msgid "" "The not-a-number values ``float('NaN')`` and ``decimal.Decimal('NaN')`` are " "special. Any ordered comparison of a number to a not-a-number value is " @@ -2153,14 +2153,14 @@ msgstr "" "``x = float('NaN')``, ``3 < x``, ``x < 3``, ``x == x``, ``x != x`` sont " "toutes fausses. Ce comportement est en accord avec IEEE 754." -#: ../Doc/reference/expressions.rst:1428 +#: ../Doc/reference/expressions.rst:1427 msgid "" "``None`` and ``NotImplemented`` are singletons. :PEP:`8` advises that " "comparisons for singletons should always be done with ``is`` or ``is not``, " "never the equality operators." msgstr "" -#: ../Doc/reference/expressions.rst:1432 +#: ../Doc/reference/expressions.rst:1431 msgid "" "Binary sequences (instances of :class:`bytes` or :class:`bytearray`) can be " "compared within and across their types. They compare lexicographically " @@ -2171,7 +2171,7 @@ msgstr "" "La comparaison est lexicographique, en utilisant la valeur numérique des " "éléments." -#: ../Doc/reference/expressions.rst:1436 +#: ../Doc/reference/expressions.rst:1435 msgid "" "Strings (instances of :class:`str`) compare lexicographically using the " "numerical Unicode code points (the result of the built-in function :func:" @@ -2181,13 +2181,13 @@ msgstr "" "lexicographique en utilisant la valeur Unicode (le résultat de la fonction " "native :func:`ord`) des caractères [#]_." -#: ../Doc/reference/expressions.rst:1440 +#: ../Doc/reference/expressions.rst:1439 msgid "Strings and binary sequences cannot be directly compared." msgstr "" "Les chaînes de caractères et les séquences binaires ne peuvent pas être " "comparées directement." -#: ../Doc/reference/expressions.rst:1442 +#: ../Doc/reference/expressions.rst:1441 msgid "" "Sequences (instances of :class:`tuple`, :class:`list`, or :class:`range`) " "can be compared only within each of their types, with the restriction that " @@ -2201,7 +2201,7 @@ msgstr "" "d'égalité entre ces types renvoie faux et une comparaison entre instances de " "types différents lève une :exc:`TypeError`." -#: ../Doc/reference/expressions.rst:1448 +#: ../Doc/reference/expressions.rst:1447 msgid "" "Sequences compare lexicographically using comparison of corresponding " "elements. The built-in containers typically assume identical objects are " @@ -2209,13 +2209,13 @@ msgid "" "objects to improve performance and to maintain their internal invariants." msgstr "" -#: ../Doc/reference/expressions.rst:1453 +#: ../Doc/reference/expressions.rst:1452 msgid "" "Lexicographical comparison between built-in collections works as follows:" msgstr "" "L'ordre lexicographique pour les collections natives fonctionne comme suit :" -#: ../Doc/reference/expressions.rst:1455 +#: ../Doc/reference/expressions.rst:1454 msgid "" "For two collections to compare equal, they must be of the same type, have " "the same length, and each pair of corresponding elements must compare equal " @@ -2225,7 +2225,7 @@ msgstr "" "longueur et si les éléments correspondants de chaque paire sont égaux. Par " "exemple, ``[1,2] == (1,2)`` est faux car les types sont différents." -#: ../Doc/reference/expressions.rst:1460 +#: ../Doc/reference/expressions.rst:1459 msgid "" "Collections that support order comparison are ordered the same as their " "first unequal elements (for example, ``[1,2,x] <= [1,2,y]`` has the same " @@ -2239,7 +2239,7 @@ msgstr "" "collection la plus courte est la plus petite (par exemple, ``[1,2] < " "[1,2,3]`` est vrai)." -#: ../Doc/reference/expressions.rst:1466 +#: ../Doc/reference/expressions.rst:1465 msgid "" "Mappings (instances of :class:`dict`) compare equal if and only if they have " "equal `(key, value)` pairs. Equality comparison of the keys and values " @@ -2249,13 +2249,13 @@ msgstr "" "et seulement si toutes leurs paires `(clé, valeur)` sont égales. L'égalité " "des clés et des valeurs met en œuvre la réflexivité." -#: ../Doc/reference/expressions.rst:1470 +#: ../Doc/reference/expressions.rst:1469 msgid "" "Order comparisons (``<``, ``>``, ``<=``, and ``>=``) raise :exc:`TypeError`." msgstr "" "Les comparaisons (``<``, ``>``, ``<=`` et ``>=``) lèvent :exc:`TypeError`." -#: ../Doc/reference/expressions.rst:1472 +#: ../Doc/reference/expressions.rst:1471 msgid "" "Sets (instances of :class:`set` or :class:`frozenset`) can be compared " "within and across their types." @@ -2263,7 +2263,7 @@ msgstr "" "Les ensembles (instances de :class:`set` ou :class:`frozenset`) peuvent être " "comparés au sein de leur propre type et entre types différents." -#: ../Doc/reference/expressions.rst:1475 +#: ../Doc/reference/expressions.rst:1474 msgid "" "They define order comparison operators to mean subset and superset tests. " "Those relations do not define total orderings (for example, the two sets " @@ -2281,11 +2281,11 @@ msgstr "" "exemple, les fonctions :func:`min`, :func:`max` et :func:`sorted` produisent " "des résultats indéfinis si on leur donne des listes d'ensembles en entrée)." -#: ../Doc/reference/expressions.rst:1483 +#: ../Doc/reference/expressions.rst:1482 msgid "Comparison of sets enforces reflexivity of its elements." msgstr "La comparaison des ensembles met en œuvre la réflexivité des éléments." -#: ../Doc/reference/expressions.rst:1485 +#: ../Doc/reference/expressions.rst:1484 msgid "" "Most other built-in types have no comparison methods implemented, so they " "inherit the default comparison behavior." @@ -2293,7 +2293,7 @@ msgstr "" "La plupart des autres types natifs n'implémentent pas de méthodes de " "comparaisons, ils héritent donc du comportement par défaut." -#: ../Doc/reference/expressions.rst:1488 +#: ../Doc/reference/expressions.rst:1487 msgid "" "User-defined classes that customize their comparison behavior should follow " "some consistency rules, if possible:" @@ -2301,7 +2301,7 @@ msgstr "" "Les classes allogènes qui particularisent les opérations de comparaison " "doivent, si possible, respecter quelques règles pour la cohérence :" -#: ../Doc/reference/expressions.rst:1491 +#: ../Doc/reference/expressions.rst:1490 msgid "" "Equality comparison should be reflexive. In other words, identical objects " "should compare equal:" @@ -2309,11 +2309,11 @@ msgstr "" "Le test d'égalité doit être réflexif. En d'autres termes, des objets " "identiques doivent être égaux :" -#: ../Doc/reference/expressions.rst:1494 +#: ../Doc/reference/expressions.rst:1493 msgid "``x is y`` implies ``x == y``" msgstr "``x is y`` implique ``x == y``" -#: ../Doc/reference/expressions.rst:1496 +#: ../Doc/reference/expressions.rst:1495 msgid "" "Comparison should be symmetric. In other words, the following expressions " "should have the same result:" @@ -2321,23 +2321,23 @@ msgstr "" "La comparaison doit être symétrique. En d'autres termes, les expressions " "suivantes doivent donner le même résultat :" -#: ../Doc/reference/expressions.rst:1499 +#: ../Doc/reference/expressions.rst:1498 msgid "``x == y`` and ``y == x``" msgstr "``x == y`` et ``y == x``" -#: ../Doc/reference/expressions.rst:1501 +#: ../Doc/reference/expressions.rst:1500 msgid "``x != y`` and ``y != x``" msgstr "``x != y`` et ``y != x``" -#: ../Doc/reference/expressions.rst:1503 +#: ../Doc/reference/expressions.rst:1502 msgid "``x < y`` and ``y > x``" msgstr "``x < y`` et ``y > x``" -#: ../Doc/reference/expressions.rst:1505 +#: ../Doc/reference/expressions.rst:1504 msgid "``x <= y`` and ``y >= x``" msgstr "``x <= y`` et ``y >= x``" -#: ../Doc/reference/expressions.rst:1507 +#: ../Doc/reference/expressions.rst:1506 msgid "" "Comparison should be transitive. The following (non-exhaustive) examples " "illustrate that:" @@ -2345,15 +2345,15 @@ msgstr "" "La comparaison doit être transitive. Les exemples suivants (liste non " "exhaustive) illustrent ce concept :" -#: ../Doc/reference/expressions.rst:1510 +#: ../Doc/reference/expressions.rst:1509 msgid "``x > y and y > z`` implies ``x > z``" msgstr "``x > y and y > z`` implique ``x > z``" -#: ../Doc/reference/expressions.rst:1512 +#: ../Doc/reference/expressions.rst:1511 msgid "``x < y and y <= z`` implies ``x < z``" msgstr "``x < y and y <= z`` implique ``x < z``" -#: ../Doc/reference/expressions.rst:1514 +#: ../Doc/reference/expressions.rst:1513 msgid "" "Inverse comparison should result in the boolean negation. In other words, " "the following expressions should have the same result:" @@ -2362,19 +2362,19 @@ msgstr "" "booléenne. En d'autres termes, les expressions suivantes doivent produire le " "même résultat :" -#: ../Doc/reference/expressions.rst:1517 +#: ../Doc/reference/expressions.rst:1516 msgid "``x == y`` and ``not x != y``" msgstr "``x == y`` et ``not x != y``" -#: ../Doc/reference/expressions.rst:1519 +#: ../Doc/reference/expressions.rst:1518 msgid "``x < y`` and ``not x >= y`` (for total ordering)" msgstr "``x < y`` et ``not x >= y`` (pour une relation d'ordre total)" -#: ../Doc/reference/expressions.rst:1521 +#: ../Doc/reference/expressions.rst:1520 msgid "``x > y`` and ``not x <= y`` (for total ordering)" msgstr "``x > y`` et ``not x <= y`` (pour une relation d'ordre total)" -#: ../Doc/reference/expressions.rst:1523 +#: ../Doc/reference/expressions.rst:1522 msgid "" "The last two expressions apply to totally ordered collections (e.g. to " "sequences, but not to sets or mappings). See also the :func:`~functools." @@ -2385,7 +2385,7 @@ msgstr "" "de correspondances). Regardez aussi le décorateur :func:`~functools." "total_ordering`." -#: ../Doc/reference/expressions.rst:1527 +#: ../Doc/reference/expressions.rst:1526 msgid "" "The :func:`hash` result should be consistent with equality. Objects that are " "equal should either have the same hash value, or be marked as unhashable." @@ -2394,7 +2394,7 @@ msgstr "" "qui sont égaux doivent avoir la même empreinte ou être marqués comme non-" "hachables." -#: ../Doc/reference/expressions.rst:1531 +#: ../Doc/reference/expressions.rst:1530 msgid "" "Python does not enforce these consistency rules. In fact, the not-a-number " "values are an example for not following these rules." @@ -2402,11 +2402,11 @@ msgstr "" "Python ne vérifie pas ces règles de cohérence. En fait, l'utilisation de " "valeurs non numériques est un exemple de non-respect de ces règles." -#: ../Doc/reference/expressions.rst:1540 +#: ../Doc/reference/expressions.rst:1539 msgid "Membership test operations" msgstr "Opérations de tests d’appartenance à un ensemble" -#: ../Doc/reference/expressions.rst:1542 +#: ../Doc/reference/expressions.rst:1541 msgid "" "The operators :keyword:`in` and :keyword:`not in` test for membership. ``x " "in s`` evaluates to ``True`` if *x* is a member of *s*, and ``False`` " @@ -2426,7 +2426,7 @@ msgstr "" "*collections.deque*, l’expression ``x in y`` est équivalente à ``any(x is e " "or x == e for e in y)``." -#: ../Doc/reference/expressions.rst:1550 +#: ../Doc/reference/expressions.rst:1549 msgid "" "For the string and bytes types, ``x in y`` is ``True`` if and only if *x* is " "a substring of *y*. An equivalent test is ``y.find(x) != -1``. Empty " @@ -2438,7 +2438,7 @@ msgstr "" "``y.find(x) != -1``. Une chaîne vide est considérée comme une sous-chaîne de " "toute autre chaîne, ainsi ``\"\" in \"abc\"`` renvoie ``True``." -#: ../Doc/reference/expressions.rst:1555 +#: ../Doc/reference/expressions.rst:1554 msgid "" "For user-defined classes which define the :meth:`__contains__` method, ``x " "in y`` returns ``True`` if ``y.__contains__(x)`` returns a true value, and " @@ -2448,7 +2448,7 @@ msgstr "" "``x in y`` renvoie ``True`` si ``y.__contains__(x)`` renvoie vrai, et " "``False`` sinon." -#: ../Doc/reference/expressions.rst:1559 +#: ../Doc/reference/expressions.rst:1558 msgid "" "For user-defined classes which do not define :meth:`__contains__` but do " "define :meth:`__iter__`, ``x in y`` is ``True`` if some value ``z``, for " @@ -2462,7 +2462,7 @@ msgstr "" "de l'itération sur ``y``. Si une exception est levée pendant l'itération, " "c'est comme si :keyword:`in` avait levé cette exception." -#: ../Doc/reference/expressions.rst:1565 +#: ../Doc/reference/expressions.rst:1564 msgid "" "Lastly, the old-style iteration protocol is tried: if a class defines :meth:" "`__getitem__`, ``x in y`` is ``True`` if and only if there is a non-negative " @@ -2477,7 +2477,7 @@ msgstr "" "`IndexError` (si toute autre exception est levée, c'est comme si :keyword:" "`in` avait levé cette exception)." -#: ../Doc/reference/expressions.rst:1577 +#: ../Doc/reference/expressions.rst:1576 msgid "" "The operator :keyword:`not in` is defined to have the inverse truth value " "of :keyword:`in`." @@ -2485,11 +2485,11 @@ msgstr "" "L'opérateur :keyword:`not in` est défini comme produisant le contraire de :" "keyword:`in`." -#: ../Doc/reference/expressions.rst:1590 +#: ../Doc/reference/expressions.rst:1589 msgid "Identity comparisons" msgstr "Comparaisons d'identifiants" -#: ../Doc/reference/expressions.rst:1592 +#: ../Doc/reference/expressions.rst:1591 msgid "" "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 " @@ -2502,11 +2502,11 @@ msgstr "" "fonction :meth:`id`. ``x is not y`` renvoie le résultat contraire de " "l'égalité des identifiants [#]_." -#: ../Doc/reference/expressions.rst:1604 +#: ../Doc/reference/expressions.rst:1603 msgid "Boolean operations" msgstr "Opérations booléennes" -#: ../Doc/reference/expressions.rst:1615 +#: ../Doc/reference/expressions.rst:1614 msgid "" "In the context of Boolean operations, and also when expressions are used by " "control flow statements, the following values are interpreted as false: " @@ -2525,7 +2525,7 @@ msgstr "" "allogènes peuvent personnaliser leur table de vérité en implémentant une " "méthode :meth:`__bool__`." -#: ../Doc/reference/expressions.rst:1624 +#: ../Doc/reference/expressions.rst:1623 msgid "" "The operator :keyword:`not` yields ``True`` if its argument is false, " "``False`` otherwise." @@ -2533,7 +2533,7 @@ msgstr "" "L'opérateur :keyword:`not` produit ``True`` si son argument est faux, " "``False`` sinon." -#: ../Doc/reference/expressions.rst:1629 +#: ../Doc/reference/expressions.rst:1628 msgid "" "The expression ``x and y`` first evaluates *x*; if *x* is false, its value " "is returned; otherwise, *y* is evaluated and the resulting value is returned." @@ -2542,7 +2542,7 @@ msgstr "" "valeur est renvoyée ; sinon, *y* est évalué et la valeur résultante est " "renvoyée." -#: ../Doc/reference/expressions.rst:1634 +#: ../Doc/reference/expressions.rst:1633 msgid "" "The expression ``x or y`` first evaluates *x*; if *x* is true, its value is " "returned; otherwise, *y* is evaluated and the resulting value is returned." @@ -2551,7 +2551,7 @@ msgstr "" "valeur est renvoyée ; sinon, *y* est évalué et la valeur résultante est " "renvoyée." -#: ../Doc/reference/expressions.rst:1637 +#: ../Doc/reference/expressions.rst:1636 msgid "" "Note that neither :keyword:`and` nor :keyword:`or` restrict the value and " "type they return to ``False`` and ``True``, but rather return the last " @@ -2570,11 +2570,11 @@ msgstr "" "de son argument (par exemple, ``not 'truc'`` produit ``False`` plutôt que " "``''``." -#: ../Doc/reference/expressions.rst:1649 +#: ../Doc/reference/expressions.rst:1648 msgid "Conditional expressions" msgstr "Expressions conditionnelles" -#: ../Doc/reference/expressions.rst:1662 +#: ../Doc/reference/expressions.rst:1661 msgid "" "Conditional expressions (sometimes called a \"ternary operator\") have the " "lowest priority of all Python operations." @@ -2582,7 +2582,7 @@ msgstr "" "Les expressions conditionnelles (parfois appelées \"opérateur ternaire\") " "sont les moins prioritaires de toutes les opérations Python." -#: ../Doc/reference/expressions.rst:1665 +#: ../Doc/reference/expressions.rst:1664 msgid "" "The expression ``x if C else y`` first evaluates the condition, *C* rather " "than *x*. If *C* is true, *x* is evaluated and its value is returned; " @@ -2592,16 +2592,16 @@ msgstr "" "est vrai, alors *x* est évalué et sa valeur est renvoyée ; sinon, *y* est " "évalué et sa valeur est renvoyée." -#: ../Doc/reference/expressions.rst:1669 +#: ../Doc/reference/expressions.rst:1668 msgid "See :pep:`308` for more details about conditional expressions." msgstr "" "Voir la :pep:`308` pour plus de détails sur les expressions conditionnelles." -#: ../Doc/reference/expressions.rst:1676 +#: ../Doc/reference/expressions.rst:1675 msgid "Lambdas" msgstr "Expressions lambda" -#: ../Doc/reference/expressions.rst:1688 +#: ../Doc/reference/expressions.rst:1687 msgid "" "Lambda expressions (sometimes called lambda forms) are used to create " "anonymous functions. The expression ``lambda parameters: expression`` yields " @@ -2612,7 +2612,7 @@ msgstr "" "L'expression ``lambda parameters: expression`` produit un objet fonction. " "Cet objet anonyme se comporte comme un objet fonction défini par :" -#: ../Doc/reference/expressions.rst:1697 +#: ../Doc/reference/expressions.rst:1696 msgid "" "See section :ref:`function` for the syntax of parameter lists. Note that " "functions created with lambda expressions cannot contain statements or " @@ -2622,11 +2622,11 @@ msgstr "" "Notez que les fonctions créées par des expressions lambda ne peuvent pas " "contenir d'instructions ou d'annotations." -#: ../Doc/reference/expressions.rst:1705 +#: ../Doc/reference/expressions.rst:1704 msgid "Expression lists" msgstr "Listes d'expressions" -#: ../Doc/reference/expressions.rst:1719 +#: ../Doc/reference/expressions.rst:1718 msgid "" "Except when part of a list or set display, an expression list containing at " "least one comma yields a tuple. The length of the tuple is the number of " @@ -2637,7 +2637,7 @@ msgstr "" "(*tuple*). La longueur du n-uplet est le nombre d'expressions dans la liste. " "Les expressions sont évaluées de la gauche vers la droite." -#: ../Doc/reference/expressions.rst:1728 +#: ../Doc/reference/expressions.rst:1727 msgid "" "An asterisk ``*`` denotes :dfn:`iterable unpacking`. Its operand must be " "an :term:`iterable`. The iterable is expanded into a sequence of items, " @@ -2649,14 +2649,14 @@ msgstr "" "L'itérable est développé en une séquence d'éléments qui sont inclus dans un " "nouvel objet *tuple*, *list* ou *set* à l'emplacement du dépaquetage." -#: ../Doc/reference/expressions.rst:1733 +#: ../Doc/reference/expressions.rst:1732 msgid "" "Iterable unpacking in expression lists, originally proposed by :pep:`448`." msgstr "" "dépaquetage d'itérables dans les listes d'expressions, proposé à l'origine " "par la :pep:`448`." -#: ../Doc/reference/expressions.rst:1738 +#: ../Doc/reference/expressions.rst:1737 msgid "" "The trailing comma is required only to create a single tuple (a.k.a. a " "*singleton*); it is optional in all other cases. A single expression " @@ -2670,11 +2670,11 @@ msgstr "" "produit la valeur de cette expression (pour créer un *tuple* vide, utilisez " "une paire de parenthèses vide : ``()``)." -#: ../Doc/reference/expressions.rst:1748 +#: ../Doc/reference/expressions.rst:1747 msgid "Evaluation order" msgstr "Ordre d'évaluation" -#: ../Doc/reference/expressions.rst:1752 +#: ../Doc/reference/expressions.rst:1751 msgid "" "Python evaluates expressions from left to right. Notice that while " "evaluating an assignment, the right-hand side is evaluated before the left-" @@ -2684,7 +2684,7 @@ msgstr "" "lors de l'évaluation d'une assignation, la partie droite de l'assignation " "est évaluée avant la partie gauche." -#: ../Doc/reference/expressions.rst:1755 +#: ../Doc/reference/expressions.rst:1754 msgid "" "In the following lines, expressions will be evaluated in the arithmetic " "order of their suffixes::" @@ -2692,11 +2692,11 @@ msgstr "" "Dans les lignes qui suivent, les expressions sont évaluées suivant l'ordre " "arithmétique de leurs suffixes ::" -#: ../Doc/reference/expressions.rst:1769 +#: ../Doc/reference/expressions.rst:1768 msgid "Operator precedence" msgstr "Priorités des opérateurs" -#: ../Doc/reference/expressions.rst:1774 +#: ../Doc/reference/expressions.rst:1773 msgid "" "The following table summarizes the operator precedence in Python, from " "lowest precedence (least binding) to highest precedence (most binding). " @@ -2711,7 +2711,7 @@ msgstr "" "de la gauche vers la droite (sauf pour la puissance qui regroupe de la " "droite vers la gauche)." -#: ../Doc/reference/expressions.rst:1780 +#: ../Doc/reference/expressions.rst:1779 msgid "" "Note that comparisons, membership tests, and identity tests, all have the " "same precedence and have a left-to-right chaining feature as described in " @@ -2721,55 +2721,64 @@ msgstr "" "d'identifiants possèdent tous la même priorité et s'enchaînent de la gauche " "vers la droite comme décrit dans la section :ref:`comparisons`." -#: ../Doc/reference/expressions.rst:1786 +#: ../Doc/reference/expressions.rst:1785 msgid "Operator" msgstr "Opérateur" -#: ../Doc/reference/expressions.rst:1786 +#: ../Doc/reference/expressions.rst:1785 msgid "Description" msgstr "Description" -#: ../Doc/reference/expressions.rst:1788 +#: ../Doc/reference/expressions.rst:1787 +msgid "``:=``" +msgstr "" + +#: ../Doc/reference/expressions.rst:1787 +#, fuzzy +msgid "Assignment expression" +msgstr "Expression ``await``" + +#: ../Doc/reference/expressions.rst:1789 msgid ":keyword:`lambda`" msgstr ":keyword:`lambda`" -#: ../Doc/reference/expressions.rst:1788 +#: ../Doc/reference/expressions.rst:1789 msgid "Lambda expression" msgstr "Expression lambda" -#: ../Doc/reference/expressions.rst:1790 +#: ../Doc/reference/expressions.rst:1791 msgid ":keyword:`if ` -- :keyword:`!else`" msgstr ":keyword:`if ` -- :keyword:`!else`" -#: ../Doc/reference/expressions.rst:1790 +#: ../Doc/reference/expressions.rst:1791 msgid "Conditional expression" msgstr "Expressions conditionnelle" -#: ../Doc/reference/expressions.rst:1792 +#: ../Doc/reference/expressions.rst:1793 msgid ":keyword:`or`" msgstr ":keyword:`or`" -#: ../Doc/reference/expressions.rst:1792 +#: ../Doc/reference/expressions.rst:1793 msgid "Boolean OR" msgstr "OR (booléen)" -#: ../Doc/reference/expressions.rst:1794 +#: ../Doc/reference/expressions.rst:1795 msgid ":keyword:`and`" msgstr ":keyword:`and`" -#: ../Doc/reference/expressions.rst:1794 +#: ../Doc/reference/expressions.rst:1795 msgid "Boolean AND" msgstr "AND (booléen)" -#: ../Doc/reference/expressions.rst:1796 +#: ../Doc/reference/expressions.rst:1797 msgid ":keyword:`not` ``x``" msgstr ":keyword:`not` ``x``" -#: ../Doc/reference/expressions.rst:1796 +#: ../Doc/reference/expressions.rst:1797 msgid "Boolean NOT" msgstr "NOT (booléen)" -#: ../Doc/reference/expressions.rst:1798 +#: ../Doc/reference/expressions.rst:1799 msgid "" ":keyword:`in`, :keyword:`not in`, :keyword:`is`, :keyword:`is not`, ``<``, " "``<=``, ``>``, ``>=``, ``!=``, ``==``" @@ -2777,56 +2786,56 @@ msgstr "" ":keyword:`in`, :keyword:`not in`, :keyword:`is`, :keyword:`is not`, ``<``, " "``<=``, ``>``, ``>=``, ``!=``, ``==``" -#: ../Doc/reference/expressions.rst:1798 +#: ../Doc/reference/expressions.rst:1799 msgid "Comparisons, including membership tests and identity tests" msgstr "" "Comparaisons, y compris les tests d'appartenance et les tests d'identifiants" -#: ../Doc/reference/expressions.rst:1802 +#: ../Doc/reference/expressions.rst:1803 msgid "``|``" msgstr "``|``" -#: ../Doc/reference/expressions.rst:1802 +#: ../Doc/reference/expressions.rst:1803 msgid "Bitwise OR" msgstr "OR (bit à bit)" -#: ../Doc/reference/expressions.rst:1804 +#: ../Doc/reference/expressions.rst:1805 msgid "``^``" msgstr "``^``" -#: ../Doc/reference/expressions.rst:1804 +#: ../Doc/reference/expressions.rst:1805 msgid "Bitwise XOR" msgstr "XOR (bit à bit)" -#: ../Doc/reference/expressions.rst:1806 +#: ../Doc/reference/expressions.rst:1807 msgid "``&``" msgstr "``&``" -#: ../Doc/reference/expressions.rst:1806 +#: ../Doc/reference/expressions.rst:1807 msgid "Bitwise AND" msgstr "AND (bit à bit)" -#: ../Doc/reference/expressions.rst:1808 +#: ../Doc/reference/expressions.rst:1809 msgid "``<<``, ``>>``" msgstr "``<<``, ``>>``" -#: ../Doc/reference/expressions.rst:1808 +#: ../Doc/reference/expressions.rst:1809 msgid "Shifts" msgstr "décalages" -#: ../Doc/reference/expressions.rst:1810 +#: ../Doc/reference/expressions.rst:1811 msgid "``+``, ``-``" msgstr "``+``, ``-``" -#: ../Doc/reference/expressions.rst:1810 +#: ../Doc/reference/expressions.rst:1811 msgid "Addition and subtraction" msgstr "Addition et soustraction" -#: ../Doc/reference/expressions.rst:1812 +#: ../Doc/reference/expressions.rst:1813 msgid "``*``, ``@``, ``/``, ``//``, ``%``" msgstr "``*``, ``@``, ``/``, ``//``, ``%``" -#: ../Doc/reference/expressions.rst:1812 +#: ../Doc/reference/expressions.rst:1813 msgid "" "Multiplication, matrix multiplication, division, floor division, remainder " "[#]_" @@ -2834,54 +2843,61 @@ msgstr "" "Multiplication, multiplication de matrices, division, division entière, " "reste [#]_" -#: ../Doc/reference/expressions.rst:1816 +#: ../Doc/reference/expressions.rst:1817 msgid "``+x``, ``-x``, ``~x``" msgstr "``+x``, ``-x``, ``~x``" -#: ../Doc/reference/expressions.rst:1816 +#: ../Doc/reference/expressions.rst:1817 msgid "Positive, negative, bitwise NOT" msgstr "NOT (positif, négatif, bit à bit)" -#: ../Doc/reference/expressions.rst:1818 +#: ../Doc/reference/expressions.rst:1819 msgid "``**``" msgstr "``**``" -#: ../Doc/reference/expressions.rst:1818 +#: ../Doc/reference/expressions.rst:1819 msgid "Exponentiation [#]_" msgstr "Puissance [#]_" -#: ../Doc/reference/expressions.rst:1820 +#: ../Doc/reference/expressions.rst:1821 msgid ":keyword:`await` ``x``" msgstr ":keyword:`await` ``x``" -#: ../Doc/reference/expressions.rst:1822 +#: ../Doc/reference/expressions.rst:1823 msgid "``x[index]``, ``x[index:index]``, ``x(arguments...)``, ``x.attribute``" msgstr "" "``x[indice]``, ``x[indice:indice]``, ``x(arguments...)``, ``x.attribut``" -#: ../Doc/reference/expressions.rst:1822 +#: ../Doc/reference/expressions.rst:1823 msgid "Subscription, slicing, call, attribute reference" msgstr "indiçage, tranches, appel, référence à un attribut" -#: ../Doc/reference/expressions.rst:1825 -msgid "" -"``(expressions...)``, ``[expressions...]``, ``{key: value...}``, " -"``{expressions...}``" +#: ../Doc/reference/expressions.rst:1826 +#, fuzzy +msgid "``(expressions...)``," +msgstr "Expressions" + +#: ../Doc/reference/expressions.rst:1828 +#, fuzzy +msgid "``[expressions...]``, ``{key: value...}``, ``{expressions...}``" msgstr "" "``(expressions...)``, ``[expressions...]``, ``{clé: valeur...}``, " "``{expressions...}``" -#: ../Doc/reference/expressions.rst:1825 -msgid "Binding or tuple display, list display, dictionary display, set display" +#: ../Doc/reference/expressions.rst:1826 +#, fuzzy +msgid "" +"Binding or parenthesized expression, list display, dictionary display, set " +"display" msgstr "" "liaison ou agencement de n-uplet, agencement de liste, agencement de " "dictionnaire, agencement d'ensemble" -#: ../Doc/reference/expressions.rst:1833 +#: ../Doc/reference/expressions.rst:1835 msgid "Footnotes" msgstr "Notes" -#: ../Doc/reference/expressions.rst:1834 +#: ../Doc/reference/expressions.rst:1836 msgid "" "While ``abs(x%y) < abs(y)`` is true mathematically, for floats it may not be " "true numerically due to roundoff. For example, and assuming a platform on " @@ -2902,7 +2918,7 @@ msgstr "" "argument, c'est-à-dire ``-1e-100`` dans ce cas. La meilleure approche dépend " "de l'application." -#: ../Doc/reference/expressions.rst:1843 +#: ../Doc/reference/expressions.rst:1845 msgid "" "If x is very close to an exact integer multiple of y, it's possible for ``x//" "y`` to be one larger than ``(x-x%y)//y`` due to rounding. In such cases, " @@ -2914,7 +2930,7 @@ msgstr "" "Dans de tels cas, Python renvoie le second résultat afin d'avoir ``divmod(x," "y)[0] * y + x % y`` le plus proche de ``x``." -#: ../Doc/reference/expressions.rst:1848 +#: ../Doc/reference/expressions.rst:1850 msgid "" "The Unicode standard distinguishes between :dfn:`code points` (e.g. U+0041) " "and :dfn:`abstract characters` (e.g. \"LATIN CAPITAL LETTER A\"). While most " @@ -2939,7 +2955,7 @@ msgstr "" "*U+0043* (LATIN CAPITAL LETTER C) du code, suivi par un :dfn:`caractère " "combiné` à la position *U+0327* (*COMBINING CEDILLA*) du code." -#: ../Doc/reference/expressions.rst:1859 +#: ../Doc/reference/expressions.rst:1861 msgid "" "The comparison operators on strings compare at the level of Unicode code " "points. This may be counter-intuitive to humans. For example, ``\"\\u00C7\" " @@ -2952,7 +2968,7 @@ msgstr "" "chaînes représentent le même caractère abstrait \"LATIN CAPITAL LETTER C " "WITH CEDILLA\"." -#: ../Doc/reference/expressions.rst:1864 +#: ../Doc/reference/expressions.rst:1866 msgid "" "To compare strings at the level of abstract characters (that is, in a way " "intuitive to humans), use :func:`unicodedata.normalize`." @@ -2961,7 +2977,7 @@ msgstr "" "quelque chose d'intuitif pour les humains), utilisez :func:`unicodedata." "normalize`." -#: ../Doc/reference/expressions.rst:1867 +#: ../Doc/reference/expressions.rst:1869 msgid "" "Due to automatic garbage-collection, free lists, and the dynamic nature of " "descriptors, you may notice seemingly unusual behaviour in certain uses of " @@ -2974,7 +2990,7 @@ msgstr "" "cela implique des comparaisons entre des méthodes d'instances ou des " "constantes. Allez vérifier dans la documentation pour plus d'informations." -#: ../Doc/reference/expressions.rst:1872 +#: ../Doc/reference/expressions.rst:1874 msgid "" "The ``%`` operator is also used for string formatting; the same precedence " "applies." @@ -2982,7 +2998,7 @@ msgstr "" "L'opérateur ``%`` est aussi utilisé pour formater les chaînes de " "caractères ; il y possède la même priorité." -#: ../Doc/reference/expressions.rst:1875 +#: ../Doc/reference/expressions.rst:1877 msgid "" "The power operator ``**`` binds less tightly than an arithmetic or bitwise " "unary operator on its right, that is, ``2**-1`` is ``0.5``." diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index 2a3c123a2..c7cb3c7ca 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-16 12:28+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -20,9 +20,10 @@ msgid "More Control Flow Tools" msgstr "D'autres outils de contrôle de flux" #: ../Doc/tutorial/controlflow.rst:7 +#, fuzzy msgid "" -"Besides the :keyword:`while` statement just introduced, Python knows the " -"usual control flow statements known from other languages, with some twists." +"Besides the :keyword:`while` statement just introduced, Python uses the " +"usual flow control statements known from other languages, with some twists." msgstr "" "En plus de l'instruction :keyword:`while` qui vient d'être présentée, Python " "dispose des instructions de contrôle de flux classiques que l'on trouve dans " @@ -775,8 +776,8 @@ msgstr "" #: ../Doc/tutorial/controlflow.rst:698 msgid "" -"For an API, use positional-only to prevent prevent breaking API changes if " -"the parameter's name is modified in the future." +"For an API, use positional-only to prevent breaking API changes if the " +"parameter's name is modified in the future." msgstr "" #: ../Doc/tutorial/controlflow.rst:704 diff --git a/tutorial/errors.po b/tutorial/errors.po index a87c78de0..e075b6b50 100644 --- a/tutorial/errors.po +++ b/tutorial/errors.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-10-09 17:54+0200\n" "PO-Revision-Date: 2019-01-03 17:19+0100\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -425,28 +425,64 @@ msgstr "" #: ../Doc/tutorial/errors.rst:344 msgid "" -"A *finally clause* is always executed before leaving the :keyword:`try` " -"statement, whether an exception has occurred or not. When an exception has " -"occurred in the :keyword:`!try` clause and has not been handled by an :" -"keyword:`except` clause (or it has occurred in an :keyword:`!except` or :" -"keyword:`!else` clause), it is re-raised after the :keyword:`finally` clause " -"has been executed. The :keyword:`!finally` clause is also executed \"on the " -"way out\" when any other clause of the :keyword:`!try` statement is left via " -"a :keyword:`break`, :keyword:`continue` or :keyword:`return` statement. A " -"more complicated example::" -msgstr "" -"Une *clause finally* est toujours exécutée avant de quitter l'instruction :" -"keyword:`try`, qu'une exception ait été levée ou non. Quand une exception a " -"été levée dans la clause :keyword:`!try` et n'a pas été prise en charge par " -"une clause :keyword:`except` (ou si elle a été levée dans une clause :" -"keyword:`!except` ou :keyword:`!else`), elle est propagée après l'exécution " -"de la clause :keyword:`finally`. La clause :keyword:`!finally` est également " -"exécutée \"à la sortie\" quand n'importe quelle autre clause de " -"l'instruction :keyword:`!try` est abandonnée par une instruction :keyword:" -"`break`, :keyword:`continue` ou :keyword:`return`. Voici un exemple plus " -"compliqué ::" - -#: ../Doc/tutorial/errors.rst:377 +"If a :keyword:`finally` clause is present, the :keyword:`finally` clause " +"will execute as the last task before the :keyword:`try` statement completes. " +"The :keyword:`finally` clause runs whether or not the :keyword:`try` " +"statement produces an exception. The following points discuss more complex " +"cases when an exception occurs:" +msgstr "" + +#: ../Doc/tutorial/errors.rst:346 +#, fuzzy +msgid "" +"If an exception occurs during execution of the :keyword:`!try` clause, the " +"exception may be handled by an :keyword:`except` clause. If the exception is " +"not handled by an :keyword:`except` clause, the exception is re-raised after " +"the :keyword:`!finally` clause has been executed." +msgstr "" +"Comme vous pouvez le voir, la clause :keyword:`finally` est exécutée dans " +"tous les cas. L'exception de type :exc:`TypeError`, déclenchée en divisant " +"deux chaînes de caractères, n'est pas prise en charge par la clause :keyword:" +"`except` et est donc propagée après que la clause :keyword:`!finally` a été " +"exécutée." + +#: ../Doc/tutorial/errors.rst:348 +#, fuzzy +msgid "" +"An exception could occur during execution of an :keyword:`!except` or :" +"keyword:`!else` clause. Again, the exception is re-raised after the :keyword:" +"`!finally` clause has been executed." +msgstr "" +"Comme vous pouvez le voir, la clause :keyword:`finally` est exécutée dans " +"tous les cas. L'exception de type :exc:`TypeError`, déclenchée en divisant " +"deux chaînes de caractères, n'est pas prise en charge par la clause :keyword:" +"`except` et est donc propagée après que la clause :keyword:`!finally` a été " +"exécutée." + +#: ../Doc/tutorial/errors.rst:350 +msgid "" +"If the :keyword:`!try` statement reaches a :keyword:`break`, :keyword:" +"`continue` or :keyword:`return` statement, the :keyword:`finally` clause " +"will execute just prior to the :keyword:`break`, :keyword:`continue` or :" +"keyword:`return` statement's execution." +msgstr "" + +#: ../Doc/tutorial/errors.rst:352 +msgid "" +"If a :keyword:`finally` clause includes a :keyword:`return` statement, the :" +"keyword:`finally` clause's :keyword:`return` statement will execute before, " +"and instead of, the :keyword:`return` statement in a :keyword:`try` clause." +msgstr "" + +#: ../Doc/tutorial/errors.rst:354 +msgid "For example::" +msgstr "" + +#: ../Doc/tutorial/errors.rst:365 +msgid "A more complicated example::" +msgstr "" + +#: ../Doc/tutorial/errors.rst:390 msgid "" "As you can see, the :keyword:`finally` clause is executed in any event. " "The :exc:`TypeError` raised by dividing two strings is not handled by the :" @@ -459,7 +495,7 @@ msgstr "" "`except` et est donc propagée après que la clause :keyword:`!finally` a été " "exécutée." -#: ../Doc/tutorial/errors.rst:382 +#: ../Doc/tutorial/errors.rst:395 msgid "" "In real world applications, the :keyword:`finally` clause is useful for " "releasing external resources (such as files or network connections), " @@ -469,11 +505,11 @@ msgstr "" "utile pour libérer des ressources externes (telles que des fichiers ou des " "connexions réseau), quelle qu'ait été l'utilisation de ces ressources." -#: ../Doc/tutorial/errors.rst:390 +#: ../Doc/tutorial/errors.rst:403 msgid "Predefined Clean-up Actions" msgstr "Actions de nettoyage prédéfinies" -#: ../Doc/tutorial/errors.rst:392 +#: ../Doc/tutorial/errors.rst:405 msgid "" "Some objects define standard clean-up actions to be undertaken when the " "object is no longer needed, regardless of whether or not the operation using " @@ -485,7 +521,7 @@ msgstr "" "que l'opération ayant utilisé l'objet ait réussi ou non. Regardez l'exemple " "suivant, qui tente d'ouvrir un fichier et d'afficher son contenu à l'écran ::" -#: ../Doc/tutorial/errors.rst:400 +#: ../Doc/tutorial/errors.rst:413 msgid "" "The problem with this code is that it leaves the file open for an " "indeterminate amount of time after this part of the code has finished " @@ -501,7 +537,7 @@ msgstr "" "objets comme des fichiers d'une façon qui assure qu'ils seront toujours " "nettoyés rapidement et correctement. ::" -#: ../Doc/tutorial/errors.rst:410 +#: ../Doc/tutorial/errors.rst:423 msgid "" "After the statement is executed, the file *f* is always closed, even if a " "problem was encountered while processing the lines. Objects which, like " @@ -512,3 +548,25 @@ msgstr "" "problème est survenu pendant l'exécution de ces lignes. D'autres objets qui, " "comme pour les fichiers, fournissent des actions de nettoyage prédéfinies " "l'indiquent dans leur documentation." + +#~ msgid "" +#~ "A *finally clause* is always executed before leaving the :keyword:`try` " +#~ "statement, whether an exception has occurred or not. When an exception " +#~ "has occurred in the :keyword:`!try` clause and has not been handled by " +#~ "an :keyword:`except` clause (or it has occurred in an :keyword:`!except` " +#~ "or :keyword:`!else` clause), it is re-raised after the :keyword:`finally` " +#~ "clause has been executed. The :keyword:`!finally` clause is also " +#~ "executed \"on the way out\" when any other clause of the :keyword:`!try` " +#~ "statement is left via a :keyword:`break`, :keyword:`continue` or :keyword:" +#~ "`return` statement. A more complicated example::" +#~ msgstr "" +#~ "Une *clause finally* est toujours exécutée avant de quitter " +#~ "l'instruction :keyword:`try`, qu'une exception ait été levée ou non. " +#~ "Quand une exception a été levée dans la clause :keyword:`!try` et n'a pas " +#~ "été prise en charge par une clause :keyword:`except` (ou si elle a été " +#~ "levée dans une clause :keyword:`!except` ou :keyword:`!else`), elle est " +#~ "propagée après l'exécution de la clause :keyword:`finally`. La clause :" +#~ "keyword:`!finally` est également exécutée \"à la sortie\" quand n'importe " +#~ "quelle autre clause de l'instruction :keyword:`!try` est abandonnée par " +#~ "une instruction :keyword:`break`, :keyword:`continue` ou :keyword:" +#~ "`return`. Voici un exemple plus compliqué ::" diff --git a/tutorial/inputoutput.po b/tutorial/inputoutput.po index 6da6bd639..12adab404 100644 --- a/tutorial/inputoutput.po +++ b/tutorial/inputoutput.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-01-03 17:12+0100\n" "Last-Translator: \n" "Language-Team: FRENCH \n" @@ -466,14 +466,16 @@ msgstr "" "``f`` a déjà été créé." #: ../Doc/tutorial/inputoutput.rst:357 +#, fuzzy msgid "" "To read a file's contents, call ``f.read(size)``, which reads some quantity " "of data and returns it as a string (in text mode) or bytes object (in binary " "mode). *size* is an optional numeric argument. When *size* is omitted or " "negative, the entire contents of the file will be read and returned; it's " "your problem if the file is twice as large as your machine's memory. " -"Otherwise, at most *size* bytes are read and returned. If the end of the " -"file has been reached, ``f.read()`` will return an empty string (``''``). ::" +"Otherwise, at most *size* characters (in text mode) or *size* bytes (in " +"binary mode) are read and returned. If the end of the file has been reached, " +"``f.read()`` will return an empty string (``''``). ::" msgstr "" "Pour lire le contenu d'un fichier, appelez ``f.read(taille)`` : elle lit une " "certaine quantité de données et les donne sous la forme d'une chaîne (en " @@ -545,14 +547,15 @@ msgstr "" "est ouvert en mode binaire, ou un nombre obscur en mode texte." #: ../Doc/tutorial/inputoutput.rst:415 -msgid "" -"To change the file object's position, use ``f.seek(offset, from_what)``. " -"The position is computed from adding *offset* to a reference point; the " -"reference point is selected by the *from_what* argument. A *from_what* " -"value of 0 measures from the beginning of the file, 1 uses the current file " -"position, and 2 uses the end of the file as the reference point. " -"*from_what* can be omitted and defaults to 0, using the beginning of the " -"file as the reference point. ::" +#, fuzzy +msgid "" +"To change the file object's position, use ``f.seek(offset, whence)``. The " +"position is computed from adding *offset* to a reference point; the " +"reference point is selected by the *whence* argument. A *whence* value of 0 " +"measures from the beginning of the file, 1 uses the current file position, " +"and 2 uses the end of the file as the reference point. *whence* can be " +"omitted and defaults to 0, using the beginning of the file as the reference " +"point. ::" msgstr "" "Pour modifier la position dans le fichier, utilisez ``f.seek(decalage, " "a_partir_de)``. La position est calculée en ajoutant *decalage* à un point " diff --git a/tutorial/interpreter.po b/tutorial/interpreter.po index 14f53deb5..370d7dbbb 100644 --- a/tutorial/interpreter.po +++ b/tutorial/interpreter.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-08 18:53+0200\n" "Last-Translator: Jules Lasne \n" "Language-Team: FRENCH \n" @@ -68,9 +68,11 @@ msgstr "" "pouvez fermer l'interpréteur en tapant la commande ``quit()``." #: ../Doc/tutorial/interpreter.rst:36 +#, fuzzy msgid "" "The interpreter's line-editing features include interactive editing, history " -"substitution and code completion on systems that support readline. Perhaps " +"substitution and code completion on systems that support the `GNU Readline " +"`_ library. Perhaps " "the quickest check to see whether command line editing is supported is " "typing :kbd:`Control-P` to the first Python prompt you get. If it beeps, " "you have command line editing; see Appendix :ref:`tut-interacting` for an " @@ -89,7 +91,7 @@ msgstr "" "disponible ; vous serez seulement en mesure d'utiliser la touche retour " "arrière pour supprimer des caractères de la ligne courante." -#: ../Doc/tutorial/interpreter.rst:45 +#: ../Doc/tutorial/interpreter.rst:46 msgid "" "The interpreter operates somewhat like the Unix shell: when called with " "standard input connected to a tty device, it reads and executes commands " @@ -102,7 +104,7 @@ msgstr "" "nom de fichier en argument ou avec un fichier comme entrée standard, il lit " "et exécute un *script* depuis ce fichier." -#: ../Doc/tutorial/interpreter.rst:50 +#: ../Doc/tutorial/interpreter.rst:51 msgid "" "A second way of starting the interpreter is ``python -c command [arg] ...``, " "which executes the statement(s) in *command*, analogous to the shell's :" @@ -117,7 +119,7 @@ msgstr "" "shell, il est généralement conseillé de mettre *commande* entre guillemets " "simples." -#: ../Doc/tutorial/interpreter.rst:56 +#: ../Doc/tutorial/interpreter.rst:57 msgid "" "Some Python modules are also useful as scripts. These can be invoked using " "``python -m module [arg] ...``, which executes the source file for *module* " @@ -128,7 +130,7 @@ msgstr "" "source de *module* comme si vous aviez tapé son nom complet dans la ligne de " "commande." -#: ../Doc/tutorial/interpreter.rst:60 +#: ../Doc/tutorial/interpreter.rst:61 msgid "" "When a script file is used, it is sometimes useful to be able to run the " "script and enter interactive mode afterwards. This can be done by passing :" @@ -138,17 +140,17 @@ msgstr "" "lancer le script puis d'entrer dans le mode interactif après coup. Cela est " "possible en passant :option:`-i` avant le script." -#: ../Doc/tutorial/interpreter.rst:64 +#: ../Doc/tutorial/interpreter.rst:65 msgid "All command line options are described in :ref:`using-on-general`." msgstr "" "Tous les paramètres utilisables en ligne de commande sont documentés dans :" "ref:`using-on-general`." -#: ../Doc/tutorial/interpreter.rst:70 +#: ../Doc/tutorial/interpreter.rst:71 msgid "Argument Passing" msgstr "Passage d'arguments" -#: ../Doc/tutorial/interpreter.rst:72 +#: ../Doc/tutorial/interpreter.rst:73 msgid "" "When known to the interpreter, the script name and additional arguments " "thereafter are turned into a list of strings and assigned to the ``argv`` " @@ -176,11 +178,11 @@ msgstr "" "comme options de l'interpréteur Python mais laissées dans ``sys.argv`` pour " "être utilisées par le module ou la commande." -#: ../Doc/tutorial/interpreter.rst:88 +#: ../Doc/tutorial/interpreter.rst:89 msgid "Interactive Mode" msgstr "Mode interactif" -#: ../Doc/tutorial/interpreter.rst:90 +#: ../Doc/tutorial/interpreter.rst:91 msgid "" "When commands are read from a tty, the interpreter is said to be in " "*interactive mode*. In this mode it prompts for the next command with the " @@ -197,7 +199,7 @@ msgstr "" "indiquant son numéro de version et une notice de copyright avant d'afficher " "le premier prompt :" -#: ../Doc/tutorial/interpreter.rst:107 +#: ../Doc/tutorial/interpreter.rst:108 msgid "" "Continuation lines are needed when entering a multi-line construct. As an " "example, take a look at this :keyword:`if` statement::" @@ -205,20 +207,20 @@ msgstr "" "Les lignes de continuation sont nécessaires pour entrer une construction " "multi-lignes. Par exemple, regardez cette instruction :keyword:`if` ::" -#: ../Doc/tutorial/interpreter.rst:117 +#: ../Doc/tutorial/interpreter.rst:118 msgid "For more on interactive mode, see :ref:`tut-interac`." msgstr "" "Pour plus d'informations sur le mode interactif, voir :ref:`tut-interac`." -#: ../Doc/tutorial/interpreter.rst:123 +#: ../Doc/tutorial/interpreter.rst:124 msgid "The Interpreter and Its Environment" msgstr "L'interpréteur et son environnement" -#: ../Doc/tutorial/interpreter.rst:129 +#: ../Doc/tutorial/interpreter.rst:130 msgid "Source Code Encoding" msgstr "Encodage du code source" -#: ../Doc/tutorial/interpreter.rst:131 +#: ../Doc/tutorial/interpreter.rst:132 msgid "" "By default, Python source files are treated as encoded in UTF-8. In that " "encoding, characters of most languages in the world can be used " @@ -238,7 +240,7 @@ msgstr "" "fichier est en UTF-8 et utiliser une police qui comprend tous les caractères " "utilisés dans le fichier." -#: ../Doc/tutorial/interpreter.rst:139 +#: ../Doc/tutorial/interpreter.rst:140 msgid "" "To declare an encoding other than the default one, a special comment line " "should be added as the *first* line of the file. The syntax is as follows::" @@ -247,11 +249,11 @@ msgstr "" "commentaire particulière doit être ajoutée en tant que *première* ligne du " "fichier. Sa syntaxe est la suivante ::" -#: ../Doc/tutorial/interpreter.rst:144 +#: ../Doc/tutorial/interpreter.rst:145 msgid "where *encoding* is one of the valid :mod:`codecs` supported by Python." msgstr "où *encoding* est un des :mod:`codecs` supporté par Python." -#: ../Doc/tutorial/interpreter.rst:146 +#: ../Doc/tutorial/interpreter.rst:147 msgid "" "For example, to declare that Windows-1252 encoding is to be used, the first " "line of your source code file should be::" @@ -259,7 +261,7 @@ msgstr "" "Par exemple, pour déclarer un encodage *Windows-1252*, la première ligne de " "votre code source doit être ::" -#: ../Doc/tutorial/interpreter.rst:151 +#: ../Doc/tutorial/interpreter.rst:152 msgid "" "One exception to the *first line* rule is when the source code starts with " "a :ref:`UNIX \"shebang\" line `. In this case, the encoding " @@ -269,11 +271,11 @@ msgstr "" "un :ref:`shebang UNIX `. Dans ce cas, la déclaration de " "l'encodage doit être placée sur la deuxième ligne du fichier. Par exemple ::" -#: ../Doc/tutorial/interpreter.rst:159 +#: ../Doc/tutorial/interpreter.rst:160 msgid "Footnotes" msgstr "Notes" -#: ../Doc/tutorial/interpreter.rst:160 +#: ../Doc/tutorial/interpreter.rst:161 msgid "" "On Unix, the Python 3.x interpreter is by default not installed with the " "executable named ``python``, so that it does not conflict with a " diff --git a/using/cmdline.po b/using/cmdline.po index 338f60143..797360ec4 100644 --- a/using/cmdline.po +++ b/using/cmdline.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-16 09:11+0200\n" "Last-Translator: Julien Palard \n" "Language-Team: FRENCH \n" @@ -220,6 +220,21 @@ msgstr "" "option:`-c`, le dossier courant est ajouté au début de :data:`sys.path`." #: ../Doc/using/cmdline.rst:104 +#, fuzzy +msgid "" +":option:`-I` option can be used to run the script in isolated mode where :" +"data:`sys.path` contains neither the current directory nor the user's site-" +"packages directory. All :envvar:`PYTHON*` environment variables are ignored, " +"too." +msgstr "" +"Lance Python en mode isolé. Cela implique aussi *-E* et *-s*. En mode " +"isolé, :data:`sys.path` ne contient ni le répertoire du script ni le " +"répertoire *site-packages* de l'utilisateur. Toutes les variables " +"d'environnement :envvar:`PYTHON*` sont aussi ignorées. Davantage de " +"restrictions peuvent être imposées pour éviter que l'utilisateur n'injecte " +"du code malicieux." + +#: ../Doc/using/cmdline.rst:109 msgid "" "Many standard library modules contain code that is invoked on their " "execution as a script. An example is the :mod:`timeit` module::" @@ -228,33 +243,33 @@ msgstr "" "invoqué quand ils sont exécutés comme scripts. Un exemple est le module :mod:" "`timeit`\\ ::" -#: ../Doc/using/cmdline.rst:111 +#: ../Doc/using/cmdline.rst:116 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_module`` with " "argument ``module-name``." msgstr "" -#: ../Doc/using/cmdline.rst:114 +#: ../Doc/using/cmdline.rst:119 msgid ":func:`runpy.run_module`" msgstr ":func:`runpy.run_module`" -#: ../Doc/using/cmdline.rst:114 ../Doc/using/cmdline.rst:158 +#: ../Doc/using/cmdline.rst:119 ../Doc/using/cmdline.rst:171 msgid "Equivalent functionality directly available to Python code" msgstr "Fonctionnalité équivalente directement disponible en code Python" -#: ../Doc/using/cmdline.rst:116 +#: ../Doc/using/cmdline.rst:121 msgid ":pep:`338` -- Executing modules as scripts" msgstr ":pep:`338` -- Exécuter des modules en tant que scripts" -#: ../Doc/using/cmdline.rst:118 +#: ../Doc/using/cmdline.rst:123 msgid "Supply the package name to run a ``__main__`` submodule." msgstr "Fournir le nom d'un paquet pour exécuter un sous-module ``__main__``." -#: ../Doc/using/cmdline.rst:121 +#: ../Doc/using/cmdline.rst:126 msgid "namespace packages are also supported" msgstr "les paquets-espaces de nommage sont aussi gérés" -#: ../Doc/using/cmdline.rst:127 +#: ../Doc/using/cmdline.rst:133 msgid "" "Read commands from standard input (:data:`sys.stdin`). If standard input is " "a terminal, :option:`-i` is implied." @@ -262,7 +277,7 @@ msgstr "" "Lit les commandes depuis l'entrée standard (:data:`sys.stdin`). Si l'entrée " "standard est un terminal, l'option :option:`-i` est activée implicitement." -#: ../Doc/using/cmdline.rst:130 +#: ../Doc/using/cmdline.rst:136 msgid "" "If this option is given, the first element of :data:`sys.argv` will be ``\"-" "\"`` and the current directory will be added to the start of :data:`sys." @@ -271,13 +286,13 @@ msgstr "" "Si cette option est donnée, le premier élément de :data:`sys.argv` est ``\"-" "\"`` et le dossier courant est ajouté au début de :data:`sys.path`." -#: ../Doc/using/cmdline.rst:134 +#: ../Doc/using/cmdline.rst:140 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_stdin`` with no " "arguments." msgstr "" -#: ../Doc/using/cmdline.rst:138 +#: ../Doc/using/cmdline.rst:146 msgid "" "Execute the Python code contained in *script*, which must be a filesystem " "path (absolute or relative) referring to either a Python file, a directory " @@ -289,7 +304,7 @@ msgstr "" "Python, à un répertoire contenant un fichier ``__main__.py`` ou à un fichier " "zip contenant un fichier ``__main__.py``." -#: ../Doc/using/cmdline.rst:143 +#: ../Doc/using/cmdline.rst:151 msgid "" "If this option is given, the first element of :data:`sys.argv` will be the " "script name as given on the command line." @@ -297,7 +312,7 @@ msgstr "" "Si cette option est donnée, le premier élément de :data:`sys.argv` est le " "nom du script tel que donné sur la ligne de commande." -#: ../Doc/using/cmdline.rst:146 +#: ../Doc/using/cmdline.rst:154 msgid "" "If the script name refers directly to a Python file, the directory " "containing that file is added to the start of :data:`sys.path`, and the file " @@ -307,7 +322,7 @@ msgstr "" "contenant ce fichier est ajouté au début de :data:`sys.path` et le fichier " "est exécuté en tant que module :mod:`__main__`." -#: ../Doc/using/cmdline.rst:150 +#: ../Doc/using/cmdline.rst:158 msgid "" "If the script name refers to a directory or zipfile, the script name is " "added to the start of :data:`sys.path` and the ``__main__.py`` file in that " @@ -317,17 +332,32 @@ msgstr "" "du script est ajouté au début de :data:`sys.path` et le fichier ``__main__." "py`` à cet endroit est exécuté en tant que module :mod:`__main__`." -#: ../Doc/using/cmdline.rst:155 +#: ../Doc/using/cmdline.rst:162 +#, fuzzy +msgid "" +":option:`-I` option can be used to run the script in isolated mode where :" +"data:`sys.path` contains neither the script's directory nor the user's site-" +"packages directory. All :envvar:`PYTHON*` environment variables are ignored, " +"too." +msgstr "" +"Lance Python en mode isolé. Cela implique aussi *-E* et *-s*. En mode " +"isolé, :data:`sys.path` ne contient ni le répertoire du script ni le " +"répertoire *site-packages* de l'utilisateur. Toutes les variables " +"d'environnement :envvar:`PYTHON*` sont aussi ignorées. Davantage de " +"restrictions peuvent être imposées pour éviter que l'utilisateur n'injecte " +"du code malicieux." + +#: ../Doc/using/cmdline.rst:168 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_file`` with " "argument ``filename``." msgstr "" -#: ../Doc/using/cmdline.rst:157 +#: ../Doc/using/cmdline.rst:170 msgid ":func:`runpy.run_path`" msgstr ":func:`runpy.run_path`" -#: ../Doc/using/cmdline.rst:161 +#: ../Doc/using/cmdline.rst:174 msgid "" "If no interface option is given, :option:`-i` is implied, ``sys.argv[0]`` is " "an empty string (``\"\"``) and the current directory will be added to the " @@ -341,44 +371,44 @@ msgstr "" "tabulation et l'édition de l'historique sont automatiquement activés, s'ils " "sont disponibles sur votre système (voir :ref:`rlcompleter-config`)." -#: ../Doc/using/cmdline.rst:167 +#: ../Doc/using/cmdline.rst:180 msgid ":ref:`tut-invoking`" msgstr ":ref:`tut-invoking`" -#: ../Doc/using/cmdline.rst:169 +#: ../Doc/using/cmdline.rst:182 msgid "Automatic enabling of tab-completion and history editing." msgstr "" "Activation automatique de la complétion par tabulation et édition de " "l'historique." -#: ../Doc/using/cmdline.rst:174 +#: ../Doc/using/cmdline.rst:187 msgid "Generic options" msgstr "Options génériques" -#: ../Doc/using/cmdline.rst:180 +#: ../Doc/using/cmdline.rst:193 msgid "Print a short description of all command line options." msgstr "" "Affiche une brève description de toutes les options de la ligne de commande." -#: ../Doc/using/cmdline.rst:186 +#: ../Doc/using/cmdline.rst:199 msgid "Print the Python version number and exit. Example output could be:" msgstr "Affiche la version de Python et termine. Par exemple :" -#: ../Doc/using/cmdline.rst:192 +#: ../Doc/using/cmdline.rst:205 msgid "When given twice, print more information about the build, like:" msgstr "" "Lorsque l'option est doublée, affiche davantage d'informations sur la " "manière dont Python a été compilé, comme :" -#: ../Doc/using/cmdline.rst:199 +#: ../Doc/using/cmdline.rst:212 msgid "The ``-VV`` option." msgstr "option ``-VV``." -#: ../Doc/using/cmdline.rst:205 +#: ../Doc/using/cmdline.rst:218 msgid "Miscellaneous options" msgstr "Options diverses" -#: ../Doc/using/cmdline.rst:209 +#: ../Doc/using/cmdline.rst:222 msgid "" "Issue a warning when comparing :class:`bytes` or :class:`bytearray` with :" "class:`str` or :class:`bytes` with :class:`int`. Issue an error when the " @@ -389,11 +419,11 @@ msgstr "" "class:`str` ou un objet de type :class:`bytes` avec un objet de type :class:" "`int`. Lève une erreur si cette option est doublée (:option:`!-bb`)." -#: ../Doc/using/cmdline.rst:213 +#: ../Doc/using/cmdline.rst:226 msgid "Affects comparisons of :class:`bytes` with :class:`int`." msgstr "Concerne les comparaisons de :class:`bytes` avec :class:`int`." -#: ../Doc/using/cmdline.rst:218 +#: ../Doc/using/cmdline.rst:231 msgid "" "If given, Python won't try to write ``.pyc`` files on the import of source " "modules. See also :envvar:`PYTHONDONTWRITEBYTECODE`." @@ -402,7 +432,7 @@ msgstr "" "à l'importation des modules sources. Voir aussi :envvar:" "`PYTHONDONTWRITEBYTECODE`." -#: ../Doc/using/cmdline.rst:224 +#: ../Doc/using/cmdline.rst:237 msgid "" "Control the validation behavior of hash-based ``.pyc`` files. See :ref:`pyc-" "invalidation`. When set to ``default``, checked and unchecked hash-based " @@ -421,7 +451,7 @@ msgstr "" "``.pyc`` ne sont pas validés par rapport à leurs fichiers sources " "correspondants." -#: ../Doc/using/cmdline.rst:232 +#: ../Doc/using/cmdline.rst:245 msgid "" "The semantics of timestamp-based ``.pyc`` files are unaffected by this " "option." @@ -429,7 +459,7 @@ msgstr "" "La sémantique des fichiers ``.pyc`` générés en fonction de l'horodatage " "n'est pas affectée par cette option." -#: ../Doc/using/cmdline.rst:238 +#: ../Doc/using/cmdline.rst:251 msgid "" "Turn on parser debugging output (for expert only, depending on compilation " "options). See also :envvar:`PYTHONDEBUG`." @@ -438,7 +468,7 @@ msgstr "" "uniquement, en fonction des options de compilation). Voir aussi :envvar:" "`PYTHONDEBUG`." -#: ../Doc/using/cmdline.rst:244 +#: ../Doc/using/cmdline.rst:257 msgid "" "Ignore all :envvar:`PYTHON*` environment variables, e.g. :envvar:" "`PYTHONPATH` and :envvar:`PYTHONHOME`, that might be set." @@ -446,7 +476,7 @@ msgstr "" "Ignore toutes les variables d'environnement :envvar:`PYTHON*` qui pourraient " "être définies. Par exemple, :envvar:`PYTHONPATH` et :envvar:`PYTHONHOME`." -#: ../Doc/using/cmdline.rst:250 +#: ../Doc/using/cmdline.rst:263 msgid "" "When a script is passed as first argument or the :option:`-c` option is " "used, enter interactive mode after executing the script or the command, even " @@ -458,7 +488,7 @@ msgstr "" "la commande, même lorsque :data:`sys.stdin` ne semble pas être un terminal. " "Le fichier :envvar:`PYTHONSTARTUP` n'est pas lu." -#: ../Doc/using/cmdline.rst:255 +#: ../Doc/using/cmdline.rst:268 msgid "" "This can be useful to inspect global variables or a stack trace when a " "script raises an exception. See also :envvar:`PYTHONINSPECT`." @@ -467,7 +497,7 @@ msgstr "" "pile lorsque le script lève une exception. Voir aussi :envvar:" "`PYTHONINSPECT`." -#: ../Doc/using/cmdline.rst:261 +#: ../Doc/using/cmdline.rst:274 msgid "" "Run Python in isolated mode. This also implies -E and -s. In isolated mode :" "data:`sys.path` contains neither the script's directory nor the user's site-" @@ -482,7 +512,7 @@ msgstr "" "restrictions peuvent être imposées pour éviter que l'utilisateur n'injecte " "du code malicieux." -#: ../Doc/using/cmdline.rst:272 +#: ../Doc/using/cmdline.rst:285 msgid "" "Remove assert statements and any code conditional on the value of :const:" "`__debug__`. Augment the filename for compiled (:term:`bytecode`) files by " @@ -494,11 +524,11 @@ msgstr "" "(:term:`bytecode`), avant l'extension ``.pyc`` (voir la :pep:`488`). Voir " "aussi :envvar:`PYTHONOPTIMIZE`." -#: ../Doc/using/cmdline.rst:277 ../Doc/using/cmdline.rst:287 +#: ../Doc/using/cmdline.rst:290 ../Doc/using/cmdline.rst:300 msgid "Modify ``.pyc`` filenames according to :pep:`488`." msgstr "modifie les noms de fichiers ``.pyc`` suivant la :pep:`488`." -#: ../Doc/using/cmdline.rst:283 +#: ../Doc/using/cmdline.rst:296 msgid "" "Do :option:`-O` and also discard docstrings. Augment the filename for " "compiled (:term:`bytecode`) files by adding ``.opt-2`` before the ``.pyc`` " @@ -508,12 +538,12 @@ msgstr "" "au nom de fichier du code intermédiaire (:term:`bytecode`), avant " "l'extension ``.pyc`` (voir la :pep:`488`)." -#: ../Doc/using/cmdline.rst:293 +#: ../Doc/using/cmdline.rst:306 msgid "" "Don't display the copyright and version messages even in interactive mode." msgstr "N'affiche pas le copyright et la version, même en mode interactif." -#: ../Doc/using/cmdline.rst:300 +#: ../Doc/using/cmdline.rst:313 msgid "" "Turn on hash randomization. This option only has an effect if the :envvar:" "`PYTHONHASHSEED` environment variable is set to ``0``, since hash " @@ -523,7 +553,7 @@ msgstr "" "la variable d'environnement :envvar:`PYTHONHASHSEED` est mise à ``0``, " "puisque l'imprévisibilité du hachage est activée par défaut." -#: ../Doc/using/cmdline.rst:304 +#: ../Doc/using/cmdline.rst:317 msgid "" "On previous versions of Python, this option turns on hash randomization, so " "that the :meth:`__hash__` values of str and bytes objects are \"salted\" " @@ -538,7 +568,7 @@ msgstr "" "processus Python, il n'est pas prévisible pour des invocations répétées de " "code Python." -#: ../Doc/using/cmdline.rst:310 +#: ../Doc/using/cmdline.rst:323 msgid "" "Hash randomization is intended to provide protection against a denial-of-" "service caused by carefully-chosen inputs that exploit the worst case " @@ -551,7 +581,7 @@ msgstr "" "c'est-à-dire avec une complexité en O(n\\ :sup:`2`). Voir http://www.ocert." "org/advisories/ocert-2011-003.html pour obtenir les détails." -#: ../Doc/using/cmdline.rst:315 +#: ../Doc/using/cmdline.rst:328 msgid "" ":envvar:`PYTHONHASHSEED` allows you to set a fixed value for the hash seed " "secret." @@ -559,11 +589,11 @@ msgstr "" ":envvar:`PYTHONHASHSEED` vous permet de définir vous-même la valeur du sel " "pour l'algorithme de calcul des empreintes." -#: ../Doc/using/cmdline.rst:318 +#: ../Doc/using/cmdline.rst:331 msgid "The option is no longer ignored." msgstr "cette option n'est plus ignorée." -#: ../Doc/using/cmdline.rst:326 +#: ../Doc/using/cmdline.rst:339 msgid "" "Don't add the :data:`user site-packages directory ` to :data:" "`sys.path`." @@ -571,12 +601,12 @@ msgstr "" "N'ajoute pas le répertoire utilisateur :data:`site-packages ` à :data:`sys.path`." -#: ../Doc/using/cmdline.rst:331 ../Doc/using/cmdline.rst:662 -#: ../Doc/using/cmdline.rst:674 +#: ../Doc/using/cmdline.rst:344 ../Doc/using/cmdline.rst:675 +#: ../Doc/using/cmdline.rst:687 msgid ":pep:`370` -- Per user site-packages directory" msgstr ":pep:`370` -- Répertoire site-packages propre à l'utilisateur." -#: ../Doc/using/cmdline.rst:336 +#: ../Doc/using/cmdline.rst:349 msgid "" "Disable the import of the module :mod:`site` and the site-dependent " "manipulations of :data:`sys.path` that it entails. Also disable these " @@ -588,7 +618,7 @@ msgstr "" "mod:`site` est importé explicitement plus tard (appelez :func:`site.main` si " "vous voulez les déclencher)." -#: ../Doc/using/cmdline.rst:344 +#: ../Doc/using/cmdline.rst:357 msgid "" "Force the stdout and stderr streams to be unbuffered. This option has no " "effect on the stdin stream." @@ -596,17 +626,17 @@ msgstr "" "Force les flux de sortie et d'erreur standards à ne pas utiliser de tampon. " "Cette option n'a pas d'effet sur le flux d'entrée standard." -#: ../Doc/using/cmdline.rst:347 +#: ../Doc/using/cmdline.rst:360 msgid "See also :envvar:`PYTHONUNBUFFERED`." msgstr "Voir aussi :envvar:`PYTHONUNBUFFERED`." -#: ../Doc/using/cmdline.rst:349 +#: ../Doc/using/cmdline.rst:362 msgid "The text layer of the stdout and stderr streams now is unbuffered." msgstr "" "la couche texte des flux de sortie et d'erreur standards n'utilise " "maintenant plus de tampon." -#: ../Doc/using/cmdline.rst:355 +#: ../Doc/using/cmdline.rst:368 msgid "" "Print a message each time a module is initialized, showing the place " "(filename or built-in module) from which it is loaded. When given twice (:" @@ -621,7 +651,7 @@ msgstr "" "des informations sur le nettoyage des modules à la fin. Voir aussi :envvar:" "`PYTHONVERBOSE`." -#: ../Doc/using/cmdline.rst:365 +#: ../Doc/using/cmdline.rst:378 msgid "" "Warning control. Python's warning machinery by default prints warning " "messages to :data:`sys.stderr`. A typical warning message has the following " @@ -631,7 +661,7 @@ msgstr "" "défaut, affiche les messages d'avertissement sur :data:`sys.stderr`. Un " "message d'avertissement type est de la forme suivante :" -#: ../Doc/using/cmdline.rst:373 +#: ../Doc/using/cmdline.rst:386 msgid "" "By default, each warning is printed once for each source line where it " "occurs. This option controls how often warnings are printed." @@ -640,7 +670,7 @@ msgstr "" "ligne de source où il se trouve. Cette option définit à quelle fréquence " "afficher ces avertissements." -#: ../Doc/using/cmdline.rst:376 +#: ../Doc/using/cmdline.rst:389 msgid "" "Multiple :option:`-W` options may be given; when a warning matches more than " "one option, the action for the last matching option is performed. Invalid :" @@ -653,7 +683,7 @@ msgstr "" "message d'avertissement est affiché sur les options invalides au moment où " "le premier avertissement est généré)." -#: ../Doc/using/cmdline.rst:381 +#: ../Doc/using/cmdline.rst:394 msgid "" "Warnings can also be controlled using the :envvar:`PYTHONWARNINGS` " "environment variable and from within a Python program using the :mod:" @@ -663,7 +693,7 @@ msgstr "" "d'environnement :envvar:`PYTHONWARNINGS` et depuis un programme Python en " "utilisant le module :mod:`warnings`." -#: ../Doc/using/cmdline.rst:385 ../Doc/using/cmdline.rst:690 +#: ../Doc/using/cmdline.rst:398 ../Doc/using/cmdline.rst:703 msgid "" "The simplest settings apply a particular action unconditionally to all " "warnings emitted by a process (even those that are otherwise ignored by " @@ -673,7 +703,7 @@ msgstr "" "les avertissements émis par un processus (même ceux qui auraient été ignorés " "par défaut) ::" -#: ../Doc/using/cmdline.rst:396 +#: ../Doc/using/cmdline.rst:409 msgid "" "The action names can be abbreviated as desired (e.g. ``-Wi``, ``-Wd``, ``-" "Wa``, ``-We``) and the interpreter will resolve them to the appropriate " @@ -683,7 +713,7 @@ msgstr "" "``-Wi``, ``-Wd``, ``-Wa``, ``-We``), l'interpréteur fait la résolution vers " "le nom adéquat." -#: ../Doc/using/cmdline.rst:400 ../Doc/using/cmdline.rst:701 +#: ../Doc/using/cmdline.rst:413 ../Doc/using/cmdline.rst:714 msgid "" "See :ref:`warning-filter` and :ref:`describing-warning-filters` for more " "details." @@ -691,7 +721,7 @@ msgstr "" "Voir :ref:`warning-filter` et :ref:`describing-warning-filters` pour plus " "de détails." -#: ../Doc/using/cmdline.rst:406 +#: ../Doc/using/cmdline.rst:419 msgid "" "Skip the first line of the source, allowing use of non-Unix forms of ``#!" "cmd``. This is intended for a DOS specific hack only." @@ -700,7 +730,7 @@ msgstr "" "type ``#!cmd`` non conformes au standard Unix. L'objectif est de proposer " "une astuce spécifique pour le DOS." -#: ../Doc/using/cmdline.rst:412 +#: ../Doc/using/cmdline.rst:425 msgid "" "Reserved for various implementation-specific options. CPython currently " "defines the following possible values:" @@ -708,11 +738,11 @@ msgstr "" "Réservée pour les options spécifiques aux différentes implémentations. " "CPython reconnaît actuellement les valeurs suivantes :" -#: ../Doc/using/cmdline.rst:415 +#: ../Doc/using/cmdline.rst:428 msgid "``-X faulthandler`` to enable :mod:`faulthandler`;" msgstr "``-X faulthandler`` pour activer :mod:`faulthandler` ;" -#: ../Doc/using/cmdline.rst:416 +#: ../Doc/using/cmdline.rst:429 msgid "" "``-X showrefcount`` to output the total reference count and number of used " "memory blocks when the program finishes or after each statement in the " @@ -723,7 +753,7 @@ msgstr "" "entrée de l'interpréteur interactif. Ceci ne fonctionne que sur les versions " "compilées en mode débogage." -#: ../Doc/using/cmdline.rst:419 +#: ../Doc/using/cmdline.rst:432 msgid "" "``-X tracemalloc`` to start tracing Python memory allocations using the :mod:" "`tracemalloc` module. By default, only the most recent frame is stored in a " @@ -738,7 +768,7 @@ msgstr "" "limite des traces à *NFRAME* appels. Voir :func:`tracemalloc.start` pour " "plus d'informations." -#: ../Doc/using/cmdline.rst:424 +#: ../Doc/using/cmdline.rst:437 msgid "" "``-X showalloccount`` to output the total count of allocated objects for " "each type when the program finishes. This only works when Python was built " @@ -748,7 +778,7 @@ msgstr "" "total des objets alloués pour chaque type. Ceci ne fonctionne que si Python " "a été compilé avec l'option ``COUNT_ALLOCS``." -#: ../Doc/using/cmdline.rst:427 +#: ../Doc/using/cmdline.rst:440 msgid "" "``-X importtime`` to show how long each import takes. It shows module name, " "cumulative time (including nested imports) and self time (excluding nested " @@ -764,7 +794,7 @@ msgstr "" "X importtime -c 'import asyncio'``. Voir aussi :envvar:" "`PYTHONPROFILEIMPORTTIME`." -#: ../Doc/using/cmdline.rst:432 +#: ../Doc/using/cmdline.rst:445 msgid "" "``-X dev``: enable CPython's \"development mode\", introducing additional " "runtime checks which are too expensive to be enabled by default. It should " @@ -777,13 +807,13 @@ msgstr "" "avertissements supplémentaires ne sont émis que quand un problème est " "détecté. Effets du mode développeur :" -#: ../Doc/using/cmdline.rst:437 +#: ../Doc/using/cmdline.rst:450 msgid "Add ``default`` warning filter, as :option:`-W` ``default``." msgstr "" "ajoute le filtre ``default`` pour les avertissements, comme l'option :option:" "`-W` ``default``." -#: ../Doc/using/cmdline.rst:438 +#: ../Doc/using/cmdline.rst:451 msgid "" "Install debug hooks on memory allocators: see the :c:func:" "`PyMem_SetupDebugHooks` C function." @@ -791,7 +821,7 @@ msgstr "" "Installe des points d'entrée (*hook* en anglais) pour le débogage dans les " "allocateurs de mémoire : voir la fonction C :c:func:`PyMem_SetupDebugHooks`." -#: ../Doc/using/cmdline.rst:440 +#: ../Doc/using/cmdline.rst:453 msgid "" "Enable the :mod:`faulthandler` module to dump the Python traceback on a " "crash." @@ -799,11 +829,11 @@ msgstr "" "Active le module :mod:`faulthandler` pour décharger la pile d'appels de " "Python en cas de crash." -#: ../Doc/using/cmdline.rst:442 +#: ../Doc/using/cmdline.rst:455 msgid "Enable :ref:`asyncio debug mode `." msgstr "Active le :ref:`mode de débogage d'asyncio `." -#: ../Doc/using/cmdline.rst:443 +#: ../Doc/using/cmdline.rst:456 msgid "" "Set the :attr:`~sys.flags.dev_mode` attribute of :attr:`sys.flags` to " "``True``" @@ -811,11 +841,11 @@ msgstr "" "Définit l'attribut :attr:`~sys.flags.dev_mode` de :attr:`sys.flags` à " "``True``." -#: ../Doc/using/cmdline.rst:445 +#: ../Doc/using/cmdline.rst:458 msgid ":class:`io.IOBase` destructor logs ``close()`` exceptions." msgstr "" -#: ../Doc/using/cmdline.rst:447 +#: ../Doc/using/cmdline.rst:460 msgid "" "``-X utf8`` enables UTF-8 mode for operating system interfaces, overriding " "the default locale-aware mode. ``-X utf8=0`` explicitly disables UTF-8 mode " @@ -828,14 +858,14 @@ msgstr "" "(même s'il avait du s'activer automatiquement). Voir :envvar:`PYTHONUTF8` " "pour plus de détails." -#: ../Doc/using/cmdline.rst:451 +#: ../Doc/using/cmdline.rst:464 msgid "" "``-X pycache_prefix=PATH`` enables writing ``.pyc`` files to a parallel tree " "rooted at the given directory instead of to the code tree. See also :envvar:" "`PYTHONPYCACHEPREFIX`." msgstr "" -#: ../Doc/using/cmdline.rst:455 +#: ../Doc/using/cmdline.rst:468 msgid "" "It also allows passing arbitrary values and retrieving them through the :" "data:`sys._xoptions` dictionary." @@ -843,45 +873,45 @@ msgstr "" "Il est aussi possible de passer des valeurs arbitraires et de les récupérer " "par le dictionnaire :data:`sys._xoptions`." -#: ../Doc/using/cmdline.rst:458 +#: ../Doc/using/cmdline.rst:471 msgid "The :option:`-X` option was added." msgstr "l'option :option:`-X` a été ajoutée." -#: ../Doc/using/cmdline.rst:461 +#: ../Doc/using/cmdline.rst:474 msgid "The ``-X faulthandler`` option." msgstr "option ``-X faulthandler``." -#: ../Doc/using/cmdline.rst:464 +#: ../Doc/using/cmdline.rst:477 msgid "The ``-X showrefcount`` and ``-X tracemalloc`` options." msgstr "options ``-X showrefcount`` et ``-X tracemalloc`` ." -#: ../Doc/using/cmdline.rst:467 +#: ../Doc/using/cmdline.rst:480 msgid "The ``-X showalloccount`` option." msgstr "option ``-X showalloccount``." -#: ../Doc/using/cmdline.rst:470 +#: ../Doc/using/cmdline.rst:483 msgid "The ``-X importtime``, ``-X dev`` and ``-X utf8`` options." msgstr "les options ``-X importtime``, ``-X dev`` et ``-X utf8``." -#: ../Doc/using/cmdline.rst:473 +#: ../Doc/using/cmdline.rst:486 msgid "" "The ``-X pycache_prefix`` option. The ``-X dev`` option now logs ``close()`` " "exceptions in :class:`io.IOBase` destructor." msgstr "" -#: ../Doc/using/cmdline.rst:479 +#: ../Doc/using/cmdline.rst:492 msgid "Options you shouldn't use" msgstr "Options à ne pas utiliser" -#: ../Doc/using/cmdline.rst:483 +#: ../Doc/using/cmdline.rst:496 msgid "Reserved for use by Jython_." msgstr "Utilisation réservée à Jython_." -#: ../Doc/using/cmdline.rst:491 +#: ../Doc/using/cmdline.rst:504 msgid "Environment variables" msgstr "Variables d'environnement" -#: ../Doc/using/cmdline.rst:493 +#: ../Doc/using/cmdline.rst:506 msgid "" "These environment variables influence Python's behavior, they are processed " "before the command-line switches other than -E or -I. It is customary that " @@ -893,7 +923,7 @@ msgstr "" "E* ou *-I*. Il est d'usage que les options de la ligne de commande prennent " "le pas sur les variables d'environnement en cas de conflit." -#: ../Doc/using/cmdline.rst:500 +#: ../Doc/using/cmdline.rst:513 msgid "" "Change the location of the standard Python libraries. By default, the " "libraries are searched in :file:`{prefix}/lib/python{version}` and :file:" @@ -907,7 +937,7 @@ msgstr "" "`{préfixe_exec}` sont des répertoires qui dépendent de l'installation (leur " "valeur par défaut étant :file:`/usr/local`)." -#: ../Doc/using/cmdline.rst:506 +#: ../Doc/using/cmdline.rst:519 msgid "" "When :envvar:`PYTHONHOME` is set to a single directory, its value replaces " "both :file:`{prefix}` and :file:`{exec_prefix}`. To specify different " @@ -918,7 +948,7 @@ msgstr "" "spécifier des valeurs différentes à ces variables, définissez :envvar:" "`PYTHONHOME` à :file:`{préfixe}:{préfixe_exec}`." -#: ../Doc/using/cmdline.rst:513 +#: ../Doc/using/cmdline.rst:526 msgid "" "Augment the default search path for module files. The format is the same as " "the shell's :envvar:`PATH`: one or more directory pathnames separated by :" @@ -931,7 +961,7 @@ msgstr "" "caractère deux-points sous Unix et point-virgule sous Windows). Les " "répertoires qui n'existent pas sont ignorés silencieusement." -#: ../Doc/using/cmdline.rst:518 +#: ../Doc/using/cmdline.rst:531 msgid "" "In addition to normal directories, individual :envvar:`PYTHONPATH` entries " "may refer to zipfiles containing pure Python modules (in either source or " @@ -943,7 +973,7 @@ msgstr "" "compilée). Les modules d'extensions ne peuvent pas être importés à partir de " "fichiers zip." -#: ../Doc/using/cmdline.rst:522 +#: ../Doc/using/cmdline.rst:535 msgid "" "The default search path is installation dependent, but generally begins " "with :file:`{prefix}/lib/python{version}` (see :envvar:`PYTHONHOME` above). " @@ -953,7 +983,7 @@ msgstr "" "généralement par :file:`{préfixe}/lib/python{version}` (voir :envvar:" "`PYTHONHOME` ci-dessus). Il est *toujours* ajouté à :envvar:`PYTHONPATH`." -#: ../Doc/using/cmdline.rst:526 +#: ../Doc/using/cmdline.rst:539 msgid "" "An additional directory will be inserted in the search path in front of :" "envvar:`PYTHONPATH` as described above under :ref:`using-on-interface-" @@ -965,7 +995,7 @@ msgstr "" "envvar:`PYTHONPATH`. Le chemin de recherche peut être manipulé depuis un " "programme Python avec la variable :data:`sys.path`." -#: ../Doc/using/cmdline.rst:534 +#: ../Doc/using/cmdline.rst:547 msgid "" "If this is the name of a readable file, the Python commands in that file are " "executed before the first prompt is displayed in interactive mode. The file " @@ -990,13 +1020,13 @@ msgid "" "argument ``filename``." msgstr "" -#: ../Doc/using/cmdline.rst:543 +#: ../Doc/using/cmdline.rst:556 msgid "" "Raises an :ref:`auditing event ` ``cpython.run_startup`` with the " "filename as the argument when called on startup." msgstr "" -#: ../Doc/using/cmdline.rst:549 +#: ../Doc/using/cmdline.rst:562 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-O` option. If set to an integer, it is equivalent to specifying :" @@ -1006,7 +1036,7 @@ msgstr "" "l'option :option:`-O`. Si elle est définie à un entier, c'est équivalent à " "spécifier l'option :option:`-O` plusieurs fois." -#: ../Doc/using/cmdline.rst:556 +#: ../Doc/using/cmdline.rst:569 msgid "" "If this is set, it names a callable using dotted-path notation. The module " "containing the callable will be imported and then the callable will be run " @@ -1025,7 +1055,7 @@ msgstr "" "la chaîne \"0\" entraine que l'implémentation par défaut de :func:`sys." "breakpointhook` ne fait rien et s'interrompt immédiatement." -#: ../Doc/using/cmdline.rst:568 +#: ../Doc/using/cmdline.rst:581 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-d` option. If set to an integer, it is equivalent to specifying :" @@ -1035,7 +1065,7 @@ msgstr "" "l'option :option:`-d`. Si elle est définie à un entier, c'est équivalent à " "spécifier l'option :option:`-d` plusieurs fois." -#: ../Doc/using/cmdline.rst:575 +#: ../Doc/using/cmdline.rst:588 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-i` option." @@ -1043,7 +1073,7 @@ msgstr "" "Si elle est définie à une chaîne non vide, c'est équivalent à spécifier " "l'option :option:`-i`." -#: ../Doc/using/cmdline.rst:578 +#: ../Doc/using/cmdline.rst:591 msgid "" "This variable can also be modified by Python code using :data:`os.environ` " "to force inspect mode on program termination." @@ -1051,7 +1081,7 @@ msgstr "" "Cette variable peut aussi être modifiée par du code Python en utilisant :" "data:`os.environ` pour forcer le mode introspectif à la fin du programme." -#: ../Doc/using/cmdline.rst:584 +#: ../Doc/using/cmdline.rst:597 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-u` option." @@ -1059,7 +1089,7 @@ msgstr "" "Si elle est définie à une chaîne non vide, c'est équivalent à spécifier " "l'option :option:`-u`." -#: ../Doc/using/cmdline.rst:590 +#: ../Doc/using/cmdline.rst:603 msgid "" "If this is set to a non-empty string it is equivalent to specifying the :" "option:`-v` option. If set to an integer, it is equivalent to specifying :" @@ -1069,7 +1099,7 @@ msgstr "" "l'option :option:`-v`. Si elle est définie à un entier, c'est équivalent à " "spécifier l'option :option:`-v` plusieurs fois." -#: ../Doc/using/cmdline.rst:597 +#: ../Doc/using/cmdline.rst:610 msgid "" "If this is set, Python ignores case in :keyword:`import` statements. This " "only works on Windows and OS X." @@ -1077,7 +1107,7 @@ msgstr "" "Si elle est définie, Python ignore la casse dans les instructions :keyword:" "`import`. Ceci ne fonctionne que sous Windows et OS X." -#: ../Doc/using/cmdline.rst:603 +#: ../Doc/using/cmdline.rst:616 msgid "" "If this is set to a non-empty string, Python won't try to write ``.pyc`` " "files on the import of source modules. This is equivalent to specifying " @@ -1087,7 +1117,7 @@ msgstr "" "fichier ``.pyc`` à l'importation des modules sources. C'est équivalent à " "spécifier l'option :option:`-B`." -#: ../Doc/using/cmdline.rst:610 +#: ../Doc/using/cmdline.rst:623 msgid "" "If this is set, Python will write ``.pyc`` files in a mirror directory tree " "at this path, instead of in ``__pycache__`` directories within the source " @@ -1098,7 +1128,7 @@ msgstr "" "``__pycache__`` mais dans une arborescence miroir à ce chemin. C'est " "l'équivalent de l'option :option:`-X` ``pycache_prefix=PATH``." -#: ../Doc/using/cmdline.rst:620 +#: ../Doc/using/cmdline.rst:633 msgid "" "If this variable is not set or set to ``random``, a random value is used to " "seed the hashes of str and bytes objects." @@ -1107,7 +1137,7 @@ msgstr "" "aléatoire est utilisée pour saler les empreintes des objets ``str`` et " "``bytes``." -#: ../Doc/using/cmdline.rst:623 +#: ../Doc/using/cmdline.rst:636 msgid "" "If :envvar:`PYTHONHASHSEED` is set to an integer value, it is used as a " "fixed seed for generating the hash() of the types covered by the hash " @@ -1117,7 +1147,7 @@ msgstr "" "utilisée comme valeur de salage pour générer les empreintes des types " "utilisant l'imprévisibilité du hachage." -#: ../Doc/using/cmdline.rst:627 +#: ../Doc/using/cmdline.rst:640 msgid "" "Its purpose is to allow repeatable hashing, such as for selftests for the " "interpreter itself, or to allow a cluster of python processes to share hash " @@ -1127,7 +1157,7 @@ msgstr "" "l'interpréteur lui-même ou pour qu'un groupe de processus Python puisse " "partager des empreintes." -#: ../Doc/using/cmdline.rst:631 +#: ../Doc/using/cmdline.rst:644 msgid "" "The integer must be a decimal number in the range [0,4294967295]. " "Specifying the value 0 will disable hash randomization." @@ -1136,7 +1166,7 @@ msgstr "" "4 294 967 295. Spécifier la valeur 0 désactive l'imprévisibilité des " "empreintes." -#: ../Doc/using/cmdline.rst:639 +#: ../Doc/using/cmdline.rst:652 msgid "" "If this is set before running the interpreter, it overrides the encoding " "used for stdin/stdout/stderr, in the syntax ``encodingname:errorhandler``. " @@ -1150,7 +1180,7 @@ msgstr "" "facultatifs tous les deux et possèdent la même signification que dans :func:" "`str.encode`." -#: ../Doc/using/cmdline.rst:644 +#: ../Doc/using/cmdline.rst:657 msgid "" "For stderr, the ``:errorhandler`` part is ignored; the handler will always " "be ``'backslashreplace'``." @@ -1158,11 +1188,11 @@ msgstr "" "Pour la sortie d'erreur, la partie ``:gestionnaire_erreur`` est ignorée : le " "gestionnaire est toujours ``'backslashreplace'``." -#: ../Doc/using/cmdline.rst:647 +#: ../Doc/using/cmdline.rst:660 msgid "The ``encodingname`` part is now optional." msgstr "la partie ``nom_encodage`` est maintenant optionnelle." -#: ../Doc/using/cmdline.rst:650 +#: ../Doc/using/cmdline.rst:663 msgid "" "On Windows, the encoding specified by this variable is ignored for " "interactive console buffers unless :envvar:`PYTHONLEGACYWINDOWSSTDIO` is " @@ -1174,7 +1204,7 @@ msgstr "" "`PYTHONLEGACYWINDOWSSTDIO` ne soit aussi spécifié. Les fichiers et tubes " "(*pipes* en anglais) redirigés vers les flux standards ne sont pas concernés." -#: ../Doc/using/cmdline.rst:657 +#: ../Doc/using/cmdline.rst:670 msgid "" "If this is set, Python won't add the :data:`user site-packages directory " "` to :data:`sys.path`." @@ -1182,7 +1212,7 @@ msgstr "" "Si elle est définie, Python n'ajoute pas le répertoire :data:`site-packages " "propre à l'utilisateur ` à :data:`sys.path`." -#: ../Doc/using/cmdline.rst:667 +#: ../Doc/using/cmdline.rst:680 msgid "" "Defines the :data:`user base directory `, which is used to " "compute the path of the :data:`user site-packages directory ` pour ``python setup.py install --" "user``." -#: ../Doc/using/cmdline.rst:679 +#: ../Doc/using/cmdline.rst:692 msgid "" "If this environment variable is set, ``sys.argv[0]`` will be set to its " "value instead of the value got through the C runtime. Only works on Mac OS " @@ -1205,7 +1235,7 @@ msgstr "" "cette valeur au lieu de la valeur fournie par l'exécutable. Ne fonctionne " "que sur Mac OS X." -#: ../Doc/using/cmdline.rst:685 +#: ../Doc/using/cmdline.rst:698 msgid "" "This is equivalent to the :option:`-W` option. If set to a comma separated " "string, it is equivalent to specifying :option:`-W` multiple times, with " @@ -1216,7 +1246,7 @@ msgstr "" "option:`-W` plusieurs fois. Dans ce cas, les filtres spécifiés en derniers " "prennent le pas sur ceux qui les précèdent dans la liste." -#: ../Doc/using/cmdline.rst:707 +#: ../Doc/using/cmdline.rst:720 msgid "" "If this environment variable is set to a non-empty string, :func:" "`faulthandler.enable` is called at startup: install a handler for :const:" @@ -1230,7 +1260,7 @@ msgstr "" "`SIGILL` afin de générer une trace de la pile d'appels. C'est équivalent à " "spécifier l'option :option:`-X` ``faulthandler``." -#: ../Doc/using/cmdline.rst:718 +#: ../Doc/using/cmdline.rst:731 msgid "" "If this environment variable is set to a non-empty string, start tracing " "Python memory allocations using the :mod:`tracemalloc` module. The value of " @@ -1245,7 +1275,7 @@ msgstr "" "ne stocke que l'appel le plus récent. Voir :func:`tracemalloc.start` pour " "davantage d'informations." -#: ../Doc/using/cmdline.rst:729 +#: ../Doc/using/cmdline.rst:742 msgid "" "If this environment variable is set to a non-empty string, Python will show " "how long each import takes. This is exactly equivalent to setting ``-X " @@ -1255,7 +1285,7 @@ msgstr "" "pris par les importations. C'est exactement équivalent à donner ``-X " "importtime`` en ligne de commande." -#: ../Doc/using/cmdline.rst:738 +#: ../Doc/using/cmdline.rst:751 msgid "" "If this environment variable is set to a non-empty string, enable the :ref:" "`debug mode ` of the :mod:`asyncio` module." @@ -1263,17 +1293,17 @@ msgstr "" "Si elle est définie à une chaîne non vide, active le :ref:`mode debogage " "` du module :mod:`asyncio`." -#: ../Doc/using/cmdline.rst:746 +#: ../Doc/using/cmdline.rst:759 msgid "Set the Python memory allocators and/or install debug hooks." msgstr "" "Définit l'allocateur mémoire de Python ou installe des points d'entrée " "(*hooks* en anglais) de débogage." -#: ../Doc/using/cmdline.rst:748 +#: ../Doc/using/cmdline.rst:761 msgid "Set the family of memory allocators used by Python:" msgstr "Définit la famille d'allocateurs mémoire utilisés par Python :" -#: ../Doc/using/cmdline.rst:750 +#: ../Doc/using/cmdline.rst:763 msgid "" "``default``: use the :ref:`default memory allocators `." @@ -1281,7 +1311,7 @@ msgstr "" "``default``: utilise les :ref:`allocateurs de mémoire par défaut `." -#: ../Doc/using/cmdline.rst:752 +#: ../Doc/using/cmdline.rst:765 msgid "" "``malloc``: use the :c:func:`malloc` function of the C library for all " "domains (:c:data:`PYMEM_DOMAIN_RAW`, :c:data:`PYMEM_DOMAIN_MEM`, :c:data:" @@ -1291,7 +1321,7 @@ msgstr "" "standard pour tous les domaines (:c:data:`PYMEM_DOMAIN_RAW`, :c:data:" "`PYMEM_DOMAIN_MEM`, :c:data:`PYMEM_DOMAIN_OBJ`)." -#: ../Doc/using/cmdline.rst:755 +#: ../Doc/using/cmdline.rst:768 msgid "" "``pymalloc``: use the :ref:`pymalloc allocator ` for :c:data:" "`PYMEM_DOMAIN_MEM` and :c:data:`PYMEM_DOMAIN_OBJ` domains and use the :c:" @@ -1302,11 +1332,11 @@ msgstr "" "utilise la fonction :c:func:`malloc` pour le domaine :c:data:" "`PYMEM_DOMAIN_RAW`." -#: ../Doc/using/cmdline.rst:759 +#: ../Doc/using/cmdline.rst:772 msgid "Install debug hooks:" msgstr "Installe des points d'entrée de débogage :" -#: ../Doc/using/cmdline.rst:761 +#: ../Doc/using/cmdline.rst:774 msgid "" "``debug``: install debug hooks on top of the :ref:`default memory allocators " "`." @@ -1314,19 +1344,19 @@ msgstr "" "``debug`` : installe des points d'entrée de débogage pour :ref:`l'allocateur " "de mémoire par défaut `." -#: ../Doc/using/cmdline.rst:763 +#: ../Doc/using/cmdline.rst:776 msgid "``malloc_debug``: same as ``malloc`` but also install debug hooks" msgstr "" "``malloc_debug``: identique à ``malloc`` mais installe aussi des points " "d'entrée de débogage." -#: ../Doc/using/cmdline.rst:764 +#: ../Doc/using/cmdline.rst:777 msgid "``pymalloc_debug``: same as ``pymalloc`` but also install debug hooks" msgstr "" "``pymalloc_debug``: identique à ``pymalloc`` mais installe aussi des points " "d'entrée de débogage." -#: ../Doc/using/cmdline.rst:766 +#: ../Doc/using/cmdline.rst:779 msgid "" "See the :ref:`default memory allocators ` and " "the :c:func:`PyMem_SetupDebugHooks` function (install debug hooks on Python " @@ -1336,11 +1366,11 @@ msgstr "" "c:func:`PyMem_SetupDebugHooks` (configure des points d'entrée de débogage " "sur les allocateurs de mémoire de Python)." -#: ../Doc/using/cmdline.rst:770 +#: ../Doc/using/cmdline.rst:783 msgid "Added the ``\"default\"`` allocator." msgstr "l'allocateur ``default`` a été ajouté." -#: ../Doc/using/cmdline.rst:778 +#: ../Doc/using/cmdline.rst:791 msgid "" "If set to a non-empty string, Python will print statistics of the :ref:" "`pymalloc memory allocator ` every time a new pymalloc object " @@ -1351,7 +1381,7 @@ msgstr "" "qu'un objet est créé par ce gestionnaire, ainsi qu'à la fin de l'exécution " "du programme." -#: ../Doc/using/cmdline.rst:782 +#: ../Doc/using/cmdline.rst:795 msgid "" "This variable is ignored if the :envvar:`PYTHONMALLOC` environment variable " "is used to force the :c:func:`malloc` allocator of the C library, or if " @@ -1362,7 +1392,7 @@ msgstr "" "bibliothèque C standard ou si Python est configuré sans le support de " "``pymalloc``." -#: ../Doc/using/cmdline.rst:786 +#: ../Doc/using/cmdline.rst:799 msgid "" "This variable can now also be used on Python compiled in release mode. It " "now has no effect if set to an empty string." @@ -1370,7 +1400,7 @@ msgstr "" "cette variable peut maintenant être utilisée avec Python compilé en mode " "*release*. Elle n'a pas d'effet si elle est définie à une chaine vide." -#: ../Doc/using/cmdline.rst:793 +#: ../Doc/using/cmdline.rst:806 msgid "" "If set to a non-empty string, the default filesystem encoding and errors " "mode will revert to their pre-3.6 values of 'mbcs' and 'replace', " @@ -1383,7 +1413,7 @@ msgstr "" "nouvelles valeurs par défaut ``\"UTF-8\"`` et ``\"surrogatepass\"`` sont " "utilisées." -#: ../Doc/using/cmdline.rst:797 +#: ../Doc/using/cmdline.rst:810 msgid "" "This may also be enabled at runtime with :func:`sys." "_enablelegacywindowsfsencoding()`." @@ -1391,15 +1421,15 @@ msgstr "" "Vous pouvez aussi activer ceci à l'exécution avec :func:`sys." "_enablelegacywindowsfsencoding()`." -#: ../Doc/using/cmdline.rst:801 ../Doc/using/cmdline.rst:815 +#: ../Doc/using/cmdline.rst:814 ../Doc/using/cmdline.rst:828 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." -#: ../Doc/using/cmdline.rst:802 +#: ../Doc/using/cmdline.rst:815 msgid "See :pep:`529` for more details." msgstr "voir la :pep:`529` pour plus d'informations." -#: ../Doc/using/cmdline.rst:807 +#: ../Doc/using/cmdline.rst:820 msgid "" "If set to a non-empty string, does not use the new console reader and " "writer. This means that Unicode characters will be encoded according to the " @@ -1409,7 +1439,7 @@ msgstr "" "et écrivain de la nouvelle console. Cela signifie que les caractères Unicode " "sont encodés avec l'encodage de la console active plutôt qu'en UTF-8." -#: ../Doc/using/cmdline.rst:811 +#: ../Doc/using/cmdline.rst:824 msgid "" "This variable is ignored if the standard streams are redirected (to files or " "pipes) rather than referring to console buffers." @@ -1418,7 +1448,7 @@ msgstr "" "fichiers ou des tubes) plutôt que pointant vers des mémoires tampons de " "console." -#: ../Doc/using/cmdline.rst:821 +#: ../Doc/using/cmdline.rst:834 msgid "" "If set to the value ``0``, causes the main Python command line application " "to skip coercing the legacy ASCII-based C and POSIX locales to a more " @@ -1429,7 +1459,7 @@ msgstr "" "POSIX à base ASCII, mais bascule sur une alternative basée sur l'UTF-8 qui " "doit posséder plus de possibilités." -#: ../Doc/using/cmdline.rst:825 +#: ../Doc/using/cmdline.rst:838 msgid "" "If this variable is *not* set (or is set to a value other than ``0``), the " "``LC_ALL`` locale override environment variable is also not set, and the " @@ -1448,19 +1478,19 @@ msgstr "" "paramètres régionaux pour la catégorie ``LC_TYPE`` dans l'ordre suivant " "avant de charger l'exécutable de l'interpréteur :" -#: ../Doc/using/cmdline.rst:833 +#: ../Doc/using/cmdline.rst:846 msgid "``C.UTF-8``" msgstr "``C.UTF-8``" -#: ../Doc/using/cmdline.rst:834 +#: ../Doc/using/cmdline.rst:847 msgid "``C.utf8``" msgstr "``C.utf8``" -#: ../Doc/using/cmdline.rst:835 +#: ../Doc/using/cmdline.rst:848 msgid "``UTF-8``" msgstr "``UTF-8``" -#: ../Doc/using/cmdline.rst:837 +#: ../Doc/using/cmdline.rst:850 msgid "" "If setting one of these locale categories succeeds, then the ``LC_CTYPE`` " "environment variable will also be set accordingly in the current process " @@ -1484,7 +1514,7 @@ msgstr "" "régionale C courante, tel que c'est le cas pour la propre fonction Python :" "func:`locale.getdefaultlocale`)." -#: ../Doc/using/cmdline.rst:847 +#: ../Doc/using/cmdline.rst:860 msgid "" "Configuring one of these locales (either explicitly or via the above " "implicit locale coercion) automatically enables the ``surrogateescape`` :ref:" @@ -1501,7 +1531,7 @@ msgstr "" "régionale). Ce comportement relatif à la gestion des flux standards peut " "être surchargé, comme d'habitude, par :envvar:`PYTHONIOENCODING`." -#: ../Doc/using/cmdline.rst:854 +#: ../Doc/using/cmdline.rst:867 msgid "" "For debugging purposes, setting ``PYTHONCOERCECLOCALE=warn`` will cause " "Python to emit warning messages on ``stderr`` if either the locale coercion " @@ -1513,7 +1543,7 @@ msgstr "" "régionale est activée, ou si une configuration régionale qui *aurait* activé " "est toujours active quand l'interpréteur Python est initialisé." -#: ../Doc/using/cmdline.rst:859 +#: ../Doc/using/cmdline.rst:872 msgid "" "Also note that even when locale coercion is disabled, or when it fails to " "find a suitable target locale, :envvar:`PYTHONUTF8` will still activate by " @@ -1528,15 +1558,15 @@ msgstr "" "désactivées pour forcer l'interpréteur à utiliser ``ASCII`` en lieu et place " "de ``UTF-8`` pour les interfaces avec le système." -#: ../Doc/using/cmdline.rst:866 ../Doc/using/cmdline.rst:927 +#: ../Doc/using/cmdline.rst:879 ../Doc/using/cmdline.rst:940 msgid ":ref:`Availability `: \\*nix." msgstr ":ref:`Disponibilité ` : systèmes de type UNIX" -#: ../Doc/using/cmdline.rst:867 +#: ../Doc/using/cmdline.rst:880 msgid "See :pep:`538` for more details." msgstr "voir la :pep:`538` pour plus d'informations." -#: ../Doc/using/cmdline.rst:873 +#: ../Doc/using/cmdline.rst:886 msgid "" "If this environment variable is set to a non-empty string, enable the " "CPython \"development mode\". See the :option:`-X` ``dev`` option." @@ -1544,7 +1574,7 @@ msgstr "" "Si cette variable d'environnement est définie et non vide, active le \"mode " "développeur\" de CPython. Voir l'option :option:`-X` ``dev``." -#: ../Doc/using/cmdline.rst:880 +#: ../Doc/using/cmdline.rst:893 msgid "" "If set to ``1``, enables the interpreter's UTF-8 mode, where ``UTF-8`` is " "used as the text encoding for system interfaces, regardless of the current " @@ -1554,11 +1584,11 @@ msgstr "" "est utilisé pour encoder le texte en interface avec le système, quelle que " "soit la configuration régionale en vigueur." -#: ../Doc/using/cmdline.rst:884 +#: ../Doc/using/cmdline.rst:897 msgid "This means that:" msgstr "Ce qui signifie que :" -#: ../Doc/using/cmdline.rst:886 +#: ../Doc/using/cmdline.rst:899 msgid "" ":func:`sys.getfilesystemencoding()` returns ``'UTF-8'`` (the locale encoding " "is ignored)." @@ -1566,7 +1596,7 @@ msgstr "" ":func:`sys.getfilesystemencoding()` renvoie ``'UTF-8'`` (l'encodage défini " "par la configuration régionale est ignoré)." -#: ../Doc/using/cmdline.rst:888 +#: ../Doc/using/cmdline.rst:901 msgid "" ":func:`locale.getpreferredencoding()` returns ``'UTF-8'`` (the locale " "encoding is ignored, and the function's ``do_setlocale`` parameter has no " @@ -1576,7 +1606,7 @@ msgstr "" "par la configuration régionale est ignoré et le paramètre ``do_setlocale`` " "de la fonction n'a aucun effet)." -#: ../Doc/using/cmdline.rst:891 +#: ../Doc/using/cmdline.rst:904 msgid "" ":data:`sys.stdin`, :data:`sys.stdout`, and :data:`sys.stderr` all use UTF-8 " "as their text encoding, with the ``surrogateescape`` :ref:`error handler " @@ -1591,7 +1621,7 @@ msgstr "" "comme pour le mode par défaut où il prend en compte la configuration " "régionale)." -#: ../Doc/using/cmdline.rst:897 +#: ../Doc/using/cmdline.rst:910 msgid "" "As a consequence of the changes in those lower level APIs, other higher " "level APIs also exhibit different default behaviours:" @@ -1599,7 +1629,7 @@ msgstr "" "En raison des changements apportés à ces API de bas-niveau, les API de haut-" "niveau ont un comportement par défaut différent :" -#: ../Doc/using/cmdline.rst:900 +#: ../Doc/using/cmdline.rst:913 msgid "" "Command line arguments, environment variables and filenames are decoded to " "text using the UTF-8 encoding." @@ -1607,12 +1637,12 @@ msgstr "" "les arguments en ligne de commande, les variables d'environnement et les " "noms de fichiers sont décodés en texte en utilisant l'UTF-8." -#: ../Doc/using/cmdline.rst:902 +#: ../Doc/using/cmdline.rst:915 msgid ":func:`os.fsdecode()` and :func:`os.fsencode()` use the UTF-8 encoding." msgstr "" ":func:`os.fsdecode()` et :func:`os.fsencode()` utilisent l'encodage UTF-8." -#: ../Doc/using/cmdline.rst:903 +#: ../Doc/using/cmdline.rst:916 msgid "" ":func:`open()`, :func:`io.open()`, and :func:`codecs.open()` use the UTF-8 " "encoding by default. However, they still use the strict error handler by " @@ -1625,7 +1655,7 @@ msgstr "" "binaire en mode texte lève une exception plutôt que de produire de la donnée " "sans aucun sens." -#: ../Doc/using/cmdline.rst:908 +#: ../Doc/using/cmdline.rst:921 msgid "" "Note that the standard stream settings in UTF-8 mode can be overridden by :" "envvar:`PYTHONIOENCODING` (just as they can be in the default locale-aware " @@ -1636,13 +1666,13 @@ msgstr "" "peuvent l'être dans le mode par défaut qui est configuré pour la région " "locale)." -#: ../Doc/using/cmdline.rst:912 +#: ../Doc/using/cmdline.rst:925 msgid "If set to ``0``, the interpreter runs in its default locale-aware mode." msgstr "" "Si elle vaut ``0``, l'interpréteur fonctionne dans le mode configuré pour la " "région locale (mode par défaut)." -#: ../Doc/using/cmdline.rst:914 +#: ../Doc/using/cmdline.rst:927 msgid "" "Setting any other non-empty string causes an error during interpreter " "initialisation." @@ -1650,7 +1680,7 @@ msgstr "" "Définir une valeur autre (non vide) entraine une erreur pendant " "l'initialisation de l'interpréteur." -#: ../Doc/using/cmdline.rst:917 +#: ../Doc/using/cmdline.rst:930 msgid "" "If this environment variable is not set at all, then the interpreter " "defaults to using the current locale settings, *unless* the current locale " @@ -1667,37 +1697,37 @@ msgstr "" "l'interpréteur active par défaut le mode UTF-8 à moins que vous n'indiquiez " "explicitement de ne pas le faire." -#: ../Doc/using/cmdline.rst:924 +#: ../Doc/using/cmdline.rst:937 msgid "Also available as the :option:`-X` ``utf8`` option." msgstr "Également disponible en tant qu'option :option:`-X` ``utf8``." -#: ../Doc/using/cmdline.rst:928 +#: ../Doc/using/cmdline.rst:941 msgid "See :pep:`540` for more details." msgstr "voir la :pep:`540` pour plus d'informations." -#: ../Doc/using/cmdline.rst:933 +#: ../Doc/using/cmdline.rst:946 msgid "Debug-mode variables" msgstr "Variables en mode débogage" -#: ../Doc/using/cmdline.rst:935 +#: ../Doc/using/cmdline.rst:948 msgid "Setting these variables only has an effect in a debug build of Python." msgstr "" "Définir ces variables n'a d'effet que si Python a été compilé en mode " "débogage." -#: ../Doc/using/cmdline.rst:939 +#: ../Doc/using/cmdline.rst:952 msgid "If set, Python will print threading debug info." msgstr "" "Si elle est définie, Python affiche des informations de débogage relatives " "aux différents fils d'exécution." -#: ../Doc/using/cmdline.rst:941 +#: ../Doc/using/cmdline.rst:954 msgid "Need Python configured with the ``--with-pydebug`` build option." msgstr "" "Nécessite que Python soit configuré avec l'option de compilation ``--with-" "pydebug``." -#: ../Doc/using/cmdline.rst:946 +#: ../Doc/using/cmdline.rst:959 msgid "" "If set, Python will dump objects and reference counts still alive after " "shutting down the interpreter." @@ -1706,7 +1736,7 @@ msgstr "" "compteurs de références toujours existant après la fermeture de " "l'interpréteur." -#: ../Doc/using/cmdline.rst:949 +#: ../Doc/using/cmdline.rst:962 msgid "Need Python configured with the ``--with-trace-refs`` build option." msgstr "" diff --git a/whatsnew/3.3.po b/whatsnew/3.3.po index ee32b61b8..898086086 100644 --- a/whatsnew/3.3.po +++ b/whatsnew/3.3.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-07-31 23:09+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -2922,9 +2922,8 @@ msgstr "sys" #: ../Doc/whatsnew/3.3.rst:2005 msgid "" -"The :mod:`sys` module has a new :data:`~sys.thread_info` :term:`struct " -"sequence` holding information about the thread implementation (:issue:" -"`11223`)." +"The :mod:`sys` module has a new :data:`~sys.thread_info` :term:`named tuple` " +"holding information about the thread implementation (:issue:`11223`)." msgstr "" #: ../Doc/whatsnew/3.3.rst:2011 diff --git a/whatsnew/3.4.po b/whatsnew/3.4.po index 34ecbb58a..01215f039 100644 --- a/whatsnew/3.4.po +++ b/whatsnew/3.4.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-10-09 17:54+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -2500,8 +2500,8 @@ msgstr "" #: ../Doc/whatsnew/3.4.rst:1852 msgid "" -"The PEP adds additional fields to the :attr:`sys.hash_info` struct sequence " -"to describe the hash algorithm in use by the currently executing binary. " +"The PEP adds additional fields to the :attr:`sys.hash_info` named tuple to " +"describe the hash algorithm in use by the currently executing binary. " "Otherwise, the PEP does not alter any existing CPython APIs." msgstr "" diff --git a/whatsnew/3.7.po b/whatsnew/3.7.po index 42ead2c42..cd1e6d262 100644 --- a/whatsnew/3.7.po +++ b/whatsnew/3.7.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.7\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2018-08-03 23:47+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -3082,7 +3082,7 @@ msgid "" "Smith in :issue:`29137`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2191 ../Doc/whatsnew/3.7.rst:2463 +#: ../Doc/whatsnew/3.7.rst:2191 ../Doc/whatsnew/3.7.rst:2467 msgid "Windows-only Changes" msgstr "" @@ -3380,12 +3380,20 @@ msgstr "" #: ../Doc/whatsnew/3.7.rst:2404 msgid "" +":mod:`argparse` subparsers can now be made mandatory by passing " +"``required=True`` to :meth:`ArgumentParser.add_subparsers() `. (Contributed by Anthony Sottile in :issue:" +"`26510`.)" +msgstr "" + +#: ../Doc/whatsnew/3.7.rst:2408 +msgid "" ":meth:`ast.literal_eval()` is now stricter. Addition and subtraction of " "arbitrary numbers are no longer allowed. (Contributed by Serhiy Storchaka " "in :issue:`31778`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2408 +#: ../Doc/whatsnew/3.7.rst:2412 msgid "" ":meth:`Calendar.itermonthdates ` will now " "consistently raise an exception when a date falls outside of the " @@ -3397,13 +3405,13 @@ msgid "" "date`. (Contributed by Alexander Belopolsky in :issue:`28292`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2418 +#: ../Doc/whatsnew/3.7.rst:2422 msgid "" ":class:`collections.ChainMap` now preserves the order of the underlying " "mappings. (Contributed by Raymond Hettinger in :issue:`32792`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2421 +#: ../Doc/whatsnew/3.7.rst:2425 msgid "" "The ``submit()`` method of :class:`concurrent.futures.ThreadPoolExecutor` " "and :class:`concurrent.futures.ProcessPoolExecutor` now raises a :exc:" @@ -3411,7 +3419,7 @@ msgid "" "Nemec in :issue:`33097`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2426 +#: ../Doc/whatsnew/3.7.rst:2430 msgid "" "The :class:`configparser.ConfigParser` constructor now uses ``read_dict()`` " "to process the default values, making its behavior consistent with the rest " @@ -3420,7 +3428,7 @@ msgid "" "in :issue:`23835`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2432 +#: ../Doc/whatsnew/3.7.rst:2436 msgid "" "Several undocumented internal imports were removed. One example is that ``os." "errno`` is no longer available; use ``import errno`` directly instead. Note " @@ -3428,11 +3436,11 @@ msgid "" "notice, even in micro version releases." msgstr "" -#: ../Doc/whatsnew/3.7.rst:2440 +#: ../Doc/whatsnew/3.7.rst:2444 msgid "Changes in the C API" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2442 +#: ../Doc/whatsnew/3.7.rst:2446 msgid "" "The function :c:func:`PySlice_GetIndicesEx` is considered unsafe for " "resizable sequences. If the slice indices are not instances of :class:" @@ -3444,34 +3452,34 @@ msgid "" "Storchaka in :issue:`27867`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2453 +#: ../Doc/whatsnew/3.7.rst:2457 msgid "CPython bytecode changes" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2455 +#: ../Doc/whatsnew/3.7.rst:2459 msgid "" "There are two new opcodes: :opcode:`LOAD_METHOD` and :opcode:`CALL_METHOD`. " "(Contributed by Yury Selivanov and INADA Naoki in :issue:`26110`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2458 +#: ../Doc/whatsnew/3.7.rst:2462 msgid "" "The :opcode:`STORE_ANNOTATION` opcode has been removed. (Contributed by Mark " "Shannon in :issue:`32550`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2465 +#: ../Doc/whatsnew/3.7.rst:2469 msgid "" "The file used to override :data:`sys.path` is now called ``._pth`` instead of ``'sys.path'``. See :ref:`finding_modules` for " "more information. (Contributed by Steve Dower in :issue:`28137`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2472 +#: ../Doc/whatsnew/3.7.rst:2476 msgid "Other CPython implementation changes" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2474 +#: ../Doc/whatsnew/3.7.rst:2478 msgid "" "In preparation for potential future changes to the public CPython runtime " "initialization API (see :pep:`432` for an initial, but somewhat outdated, " @@ -3486,21 +3494,21 @@ msgid "" "Stinner in a number of other issues). Some known details affected:" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2487 +#: ../Doc/whatsnew/3.7.rst:2491 msgid "" ":c:func:`PySys_AddWarnOptionUnicode` is not currently usable by embedding " "applications due to the requirement to create a Unicode object prior to " "calling `Py_Initialize`. Use :c:func:`PySys_AddWarnOption` instead." msgstr "" -#: ../Doc/whatsnew/3.7.rst:2491 +#: ../Doc/whatsnew/3.7.rst:2495 msgid "" "warnings filters added by an embedding application with :c:func:" "`PySys_AddWarnOption` should now more consistently take precedence over the " "default filters set by the interpreter" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2495 +#: ../Doc/whatsnew/3.7.rst:2499 msgid "" "Due to changes in the way the default warnings filters are configured, " "setting :c:data:`Py_BytesWarningFlag` to a value greater than one is no " @@ -3510,7 +3518,7 @@ msgid "" "BytesWarning`` warnings filter added to convert them to exceptions." msgstr "" -#: ../Doc/whatsnew/3.7.rst:2502 +#: ../Doc/whatsnew/3.7.rst:2506 msgid "" "Due to a change in the way docstrings are handled by the compiler, the " "implicit ``return None`` in a function body consisting solely of a docstring " @@ -3518,7 +3526,7 @@ msgid "" "function's header line." msgstr "" -#: ../Doc/whatsnew/3.7.rst:2507 +#: ../Doc/whatsnew/3.7.rst:2511 msgid "" "The current exception state has been moved from the frame object to the co-" "routine. This simplified the interpreter and fixed a couple of obscure bugs " @@ -3526,11 +3534,11 @@ msgid "" "(Contributed by Mark Shannon in :issue:`25612`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2513 +#: ../Doc/whatsnew/3.7.rst:2517 msgid "Notable changes in Python 3.7.1" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2515 +#: ../Doc/whatsnew/3.7.rst:2519 msgid "" "Starting in 3.7.1, :c:func:`Py_Initialize` now consistently reads and " "respects all of the same environment settings as :c:func:`Py_Main` (in " @@ -3540,14 +3548,14 @@ msgid "" "`Py_IgnoreEnvironmentFlag` to 1 before calling :c:func:`Py_Initialize`." msgstr "" -#: ../Doc/whatsnew/3.7.rst:2522 +#: ../Doc/whatsnew/3.7.rst:2526 msgid "" "In 3.7.1 the C API for Context Variables :ref:`was updated " "` to use :c:type:`PyObject` " "pointers. See also :issue:`34762`." msgstr "" -#: ../Doc/whatsnew/3.7.rst:2526 +#: ../Doc/whatsnew/3.7.rst:2530 msgid "" "In 3.7.1 the :mod:`tokenize` module now implicitly emits a ``NEWLINE`` token " "when provided with input that does not have a trailing new line. This " @@ -3555,11 +3563,11 @@ msgid "" "Ammar Askar in :issue:`33899`.)" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2532 +#: ../Doc/whatsnew/3.7.rst:2536 msgid "Notable changes in Python 3.7.2" msgstr "" -#: ../Doc/whatsnew/3.7.rst:2534 +#: ../Doc/whatsnew/3.7.rst:2538 msgid "" "In 3.7.2, :mod:`venv` on Windows no longer copies the original binaries, but " "creates redirector scripts named ``python.exe`` and ``pythonw.exe`` instead. " diff --git a/whatsnew/3.8.po b/whatsnew/3.8.po index 59aae8abc..99236fa16 100644 --- a/whatsnew/3.8.po +++ b/whatsnew/3.8.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.8\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-04 11:33+0200\n" +"POT-Creation-Date: 2019-10-09 17:54+0200\n" "PO-Revision-Date: 2019-09-04 11:41+0200\n" "Last-Translator: FULL NAME \n" "Language-Team: FRENCH \n" @@ -108,11 +108,11 @@ msgstr "" msgid "(Contributed by Emily Morehouse in :issue:`35224`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:129 +#: ../Doc/whatsnew/3.8.rst:127 msgid "Positional-only parameters" msgstr "" -#: ../Doc/whatsnew/3.8.rst:131 +#: ../Doc/whatsnew/3.8.rst:129 msgid "" "There is a new function parameter syntax ``/`` to indicate that some " "function parameters must be specified positionally and cannot be used as " @@ -121,36 +121,36 @@ msgid "" "python.org/3/howto/clinic.html>`_ tool." msgstr "" -#: ../Doc/whatsnew/3.8.rst:137 +#: ../Doc/whatsnew/3.8.rst:135 msgid "" "In the following example, parameters *a* and *b* are positional-only, while " "*c* or *d* can be positional or keyword, and *e* or *f* are required to be " "keywords::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:144 +#: ../Doc/whatsnew/3.8.rst:142 msgid "The following is a valid call::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:148 +#: ../Doc/whatsnew/3.8.rst:146 msgid "However, these are invalid calls::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:153 +#: ../Doc/whatsnew/3.8.rst:151 msgid "" "One use case for this notation is that it allows pure Python functions to " "fully emulate behaviors of existing C coded functions. For example, the " "built-in :func:`pow` function does not accept keyword arguments::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:162 +#: ../Doc/whatsnew/3.8.rst:160 msgid "" "Another use case is to preclude keyword arguments when the parameter name is " "not helpful. For example, the builtin :func:`len` function has the " "signature ``len(obj, /)``. This precludes awkward calls such as::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:168 +#: ../Doc/whatsnew/3.8.rst:166 msgid "" "A further benefit of marking a parameter as positional-only is that it " "allows the parameter name to be changed in the future without risk of " @@ -159,32 +159,32 @@ msgid "" "with the following function specification::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:177 +#: ../Doc/whatsnew/3.8.rst:175 msgid "" "Since the parameters to the left of ``/`` are not exposed as possible " "keywords, the parameters names remain available for use in ``**kwargs``::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:186 +#: ../Doc/whatsnew/3.8.rst:184 msgid "" "This greatly simplifies the implementation of functions and methods that " "need to accept arbitrary keyword arguments. For example, here is an except " "from code in the :mod:`collections` module::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:195 +#: ../Doc/whatsnew/3.8.rst:193 msgid "See :pep:`570` for a full description." msgstr "" -#: ../Doc/whatsnew/3.8.rst:197 +#: ../Doc/whatsnew/3.8.rst:195 msgid "(Contributed by Pablo Galindo in :issue:`36540`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:203 +#: ../Doc/whatsnew/3.8.rst:201 msgid "Parallel filesystem cache for compiled bytecode files" msgstr "" -#: ../Doc/whatsnew/3.8.rst:205 +#: ../Doc/whatsnew/3.8.rst:203 msgid "" "The new :envvar:`PYTHONPYCACHEPREFIX` setting (also available as :option:`-" "X` ``pycache_prefix``) configures the implicit bytecode cache to use a " @@ -192,28 +192,28 @@ msgid "" "subdirectories within each source directory." msgstr "" -#: ../Doc/whatsnew/3.8.rst:211 +#: ../Doc/whatsnew/3.8.rst:209 msgid "" "The location of the cache is reported in :data:`sys.pycache_prefix` (:const:" "`None` indicates the default location in ``__pycache__`` subdirectories)." msgstr "" -#: ../Doc/whatsnew/3.8.rst:215 +#: ../Doc/whatsnew/3.8.rst:213 msgid "(Contributed by Carl Meyer in :issue:`33499`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:218 +#: ../Doc/whatsnew/3.8.rst:216 msgid "Debug build uses the same ABI as release build" msgstr "" -#: ../Doc/whatsnew/3.8.rst:220 +#: ../Doc/whatsnew/3.8.rst:218 msgid "" "Python now uses the same ABI whether it built in release or debug mode. On " "Unix, when Python is built in debug mode, it is now possible to load C " "extensions built in release mode and C extensions built using the stable ABI." msgstr "" -#: ../Doc/whatsnew/3.8.rst:224 +#: ../Doc/whatsnew/3.8.rst:222 msgid "" "Release builds and debug builds are now ABI compatible: defining the " "``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` macro, which " @@ -223,7 +223,7 @@ msgid "" "refs`` build option. (Contributed by Victor Stinner in :issue:`36465`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:232 +#: ../Doc/whatsnew/3.8.rst:230 msgid "" "On Unix, C extensions are no longer linked to libpython except on Android " "and Cygwin. It is now possible for a statically linked Python to load a C " @@ -231,14 +231,14 @@ msgid "" "Stinner in :issue:`21536`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:239 +#: ../Doc/whatsnew/3.8.rst:237 msgid "" "On Unix, when Python is built in debug mode, import now also looks for C " "extensions compiled in release mode and for C extensions compiled with the " "stable ABI. (Contributed by Victor Stinner in :issue:`36722`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:244 +#: ../Doc/whatsnew/3.8.rst:242 msgid "" "To embed Python into an application, a new ``--embed`` option must be passed " "to ``python3-config --libs --embed`` to get ``-lpython3.8`` (link the " @@ -247,7 +247,7 @@ msgid "" "(without ``--embed``) if the previous command fails." msgstr "" -#: ../Doc/whatsnew/3.8.rst:250 +#: ../Doc/whatsnew/3.8.rst:248 msgid "" "Add a pkg-config ``python-3.8-embed`` module to embed Python into an " "application: ``pkg-config python-3.8-embed --libs`` includes ``-" @@ -257,7 +257,7 @@ msgid "" "the Python version)." msgstr "" -#: ../Doc/whatsnew/3.8.rst:256 +#: ../Doc/whatsnew/3.8.rst:254 msgid "" "On the other hand, ``pkg-config python3.8 --libs`` no longer contains ``-" "lpython3.8``. C extensions must not be linked to libpython (except on " @@ -266,173 +266,173 @@ msgid "" "`36721`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:264 +#: ../Doc/whatsnew/3.8.rst:262 msgid "f-strings support ``=`` for self-documenting expressions and debugging" msgstr "" -#: ../Doc/whatsnew/3.8.rst:266 +#: ../Doc/whatsnew/3.8.rst:264 msgid "" "Added an ``=`` specifier to :term:`f-string`\\s. An f-string such as " "``f'{expr=}'`` will expand to the text of the expression, an equal sign, " "then the representation of the evaluated expression. For example:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:275 +#: ../Doc/whatsnew/3.8.rst:273 msgid "" "The usual :ref:`f-string format specifiers ` allow more control " "over how the result of the expression is displayed::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:282 +#: ../Doc/whatsnew/3.8.rst:280 msgid "" "The ``=`` specifier will display the whole expression so that calculations " "can be shown::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:288 +#: ../Doc/whatsnew/3.8.rst:286 msgid "(Contributed by Eric V. Smith and Larry Hastings in :issue:`36817`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:291 +#: ../Doc/whatsnew/3.8.rst:289 msgid "PEP 587: Python Initialization Configuration" msgstr "" -#: ../Doc/whatsnew/3.8.rst:293 +#: ../Doc/whatsnew/3.8.rst:291 msgid "" "The :pep:`587` adds a new C API to configure the Python Initialization " "providing finer control on the whole configuration and better error " "reporting." msgstr "" -#: ../Doc/whatsnew/3.8.rst:296 +#: ../Doc/whatsnew/3.8.rst:294 msgid "New structures:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:298 +#: ../Doc/whatsnew/3.8.rst:296 msgid ":c:type:`PyConfig`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:299 +#: ../Doc/whatsnew/3.8.rst:297 msgid ":c:type:`PyPreConfig`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:300 +#: ../Doc/whatsnew/3.8.rst:298 msgid ":c:type:`PyStatus`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:301 +#: ../Doc/whatsnew/3.8.rst:299 msgid ":c:type:`PyWideStringList`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:303 +#: ../Doc/whatsnew/3.8.rst:301 msgid "New functions:" msgstr "Nouvelles fonctions :" -#: ../Doc/whatsnew/3.8.rst:305 +#: ../Doc/whatsnew/3.8.rst:303 msgid ":c:func:`PyConfig_Clear`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:306 +#: ../Doc/whatsnew/3.8.rst:304 msgid ":c:func:`PyConfig_InitIsolatedConfig`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:307 +#: ../Doc/whatsnew/3.8.rst:305 msgid ":c:func:`PyConfig_InitPythonConfig`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:308 +#: ../Doc/whatsnew/3.8.rst:306 msgid ":c:func:`PyConfig_Read`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:309 +#: ../Doc/whatsnew/3.8.rst:307 msgid ":c:func:`PyConfig_SetArgv`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:310 +#: ../Doc/whatsnew/3.8.rst:308 msgid ":c:func:`PyConfig_SetBytesArgv`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:311 +#: ../Doc/whatsnew/3.8.rst:309 msgid ":c:func:`PyConfig_SetBytesString`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:312 +#: ../Doc/whatsnew/3.8.rst:310 msgid ":c:func:`PyConfig_SetString`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:313 +#: ../Doc/whatsnew/3.8.rst:311 msgid ":c:func:`PyPreConfig_InitIsolatedConfig`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:314 +#: ../Doc/whatsnew/3.8.rst:312 msgid ":c:func:`PyPreConfig_InitPythonConfig`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:315 +#: ../Doc/whatsnew/3.8.rst:313 msgid ":c:func:`PyStatus_Error`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:316 +#: ../Doc/whatsnew/3.8.rst:314 msgid ":c:func:`PyStatus_Exception`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:317 +#: ../Doc/whatsnew/3.8.rst:315 msgid ":c:func:`PyStatus_Exit`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:318 +#: ../Doc/whatsnew/3.8.rst:316 msgid ":c:func:`PyStatus_IsError`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:319 +#: ../Doc/whatsnew/3.8.rst:317 msgid ":c:func:`PyStatus_IsExit`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:320 +#: ../Doc/whatsnew/3.8.rst:318 msgid ":c:func:`PyStatus_NoMemory`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:321 +#: ../Doc/whatsnew/3.8.rst:319 msgid ":c:func:`PyStatus_Ok`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:322 +#: ../Doc/whatsnew/3.8.rst:320 msgid ":c:func:`PyWideStringList_Append`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:323 +#: ../Doc/whatsnew/3.8.rst:321 msgid ":c:func:`PyWideStringList_Insert`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:324 +#: ../Doc/whatsnew/3.8.rst:322 msgid ":c:func:`Py_BytesMain`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:325 +#: ../Doc/whatsnew/3.8.rst:323 msgid ":c:func:`Py_ExitStatusException`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:326 +#: ../Doc/whatsnew/3.8.rst:324 msgid ":c:func:`Py_InitializeFromConfig`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:327 +#: ../Doc/whatsnew/3.8.rst:325 msgid ":c:func:`Py_PreInitialize`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:328 +#: ../Doc/whatsnew/3.8.rst:326 msgid ":c:func:`Py_PreInitializeFromArgs`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:329 +#: ../Doc/whatsnew/3.8.rst:327 msgid ":c:func:`Py_PreInitializeFromBytesArgs`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:330 +#: ../Doc/whatsnew/3.8.rst:328 msgid ":c:func:`Py_RunMain`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:332 +#: ../Doc/whatsnew/3.8.rst:330 msgid "" "This PEP also adds ``_PyRuntimeState.preconfig`` (:c:type:`PyPreConfig` " "type) and ``PyInterpreterState.config`` (:c:type:`PyConfig` type) fields to " @@ -441,50 +441,50 @@ msgid "" "private variables." msgstr "" -#: ../Doc/whatsnew/3.8.rst:338 +#: ../Doc/whatsnew/3.8.rst:336 msgid "" "See :ref:`Python Initialization Configuration ` for the " "documentation." msgstr "" -#: ../Doc/whatsnew/3.8.rst:341 +#: ../Doc/whatsnew/3.8.rst:339 msgid "See :pep:`587` for a full description." msgstr "" -#: ../Doc/whatsnew/3.8.rst:343 +#: ../Doc/whatsnew/3.8.rst:341 msgid "(Contributed by Victor Stinner in :issue:`36763`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:347 +#: ../Doc/whatsnew/3.8.rst:345 msgid "Vectorcall: a fast calling protocol for CPython" msgstr "" -#: ../Doc/whatsnew/3.8.rst:349 +#: ../Doc/whatsnew/3.8.rst:347 msgid "" "The \"vectorcall\" protocol is added to the Python/C API. It is meant to " "formalize existing optimizations which were already done for various " "classes. Any extension type implementing a callable can use this protocol." msgstr "" -#: ../Doc/whatsnew/3.8.rst:354 +#: ../Doc/whatsnew/3.8.rst:352 msgid "" "This is currently provisional, the aim is to make it fully public in Python " "3.9." msgstr "" -#: ../Doc/whatsnew/3.8.rst:357 +#: ../Doc/whatsnew/3.8.rst:355 msgid "See :pep:`590` for a full description." msgstr "" -#: ../Doc/whatsnew/3.8.rst:359 +#: ../Doc/whatsnew/3.8.rst:357 msgid "(Contributed by Jeroen Demeyer and Mark Shannon in :issue:`36974`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:363 +#: ../Doc/whatsnew/3.8.rst:361 msgid "Pickle protocol 5 with out-of-band data buffers" msgstr "" -#: ../Doc/whatsnew/3.8.rst:365 +#: ../Doc/whatsnew/3.8.rst:363 msgid "" "When :mod:`pickle` is used to transfer large data between Python processes " "in order to take advantage of multi-core or multi-machine processing, it is " @@ -492,33 +492,33 @@ msgid "" "by applying custom techniques such as data-dependent compression." msgstr "" -#: ../Doc/whatsnew/3.8.rst:370 +#: ../Doc/whatsnew/3.8.rst:368 msgid "" "The :mod:`pickle` protocol 5 introduces support for out-of-band buffers " "where :pep:`3118`-compatible data can be transmitted separately from the " "main pickle stream, at the discretion of the communication layer." msgstr "" -#: ../Doc/whatsnew/3.8.rst:374 +#: ../Doc/whatsnew/3.8.rst:372 msgid "See :pep:`574` for a full description." msgstr "" -#: ../Doc/whatsnew/3.8.rst:376 +#: ../Doc/whatsnew/3.8.rst:374 msgid "(Contributed by Antoine Pitrou in :issue:`36785`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:380 +#: ../Doc/whatsnew/3.8.rst:378 msgid "Other Language Changes" msgstr "" -#: ../Doc/whatsnew/3.8.rst:382 +#: ../Doc/whatsnew/3.8.rst:380 msgid "" "A :keyword:`continue` statement was illegal in the :keyword:`finally` clause " "due to a problem with the implementation. In Python 3.8 this restriction " "was lifted. (Contributed by Serhiy Storchaka in :issue:`32489`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:387 +#: ../Doc/whatsnew/3.8.rst:385 msgid "" "The :class:`bool`, :class:`int`, and :class:`fractions.Fraction` types now " "have an :meth:`~int.as_integer_ratio` method like that found in :class:" @@ -528,7 +528,7 @@ msgid "" "`33073` and Raymond Hettinger in :issue:`37819`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:395 +#: ../Doc/whatsnew/3.8.rst:393 msgid "" "Constructors of :class:`int`, :class:`float` and :class:`complex` will now " "use the :meth:`~object.__index__` special method, if available and the " @@ -537,23 +537,23 @@ msgid "" "Storchaka in :issue:`20092`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:401 +#: ../Doc/whatsnew/3.8.rst:399 msgid "" "Added support of ``\\N{name}`` escapes in :mod:`regular expressions `::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:408 +#: ../Doc/whatsnew/3.8.rst:406 msgid "" "(Contributed by Jonathan Eunice and Serhiy Storchaka in :issue:`30688`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:410 +#: ../Doc/whatsnew/3.8.rst:408 msgid "" "Dict and dictviews are now iterable in reversed insertion order using :func:" "`reversed`. (Contributed by Rémi Lapeyre in :issue:`33462`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:413 +#: ../Doc/whatsnew/3.8.rst:411 msgid "" "The syntax allowed for keyword names in function calls was further " "restricted. In particular, ``f((keyword)=arg)`` is no longer allowed. It was " @@ -561,18 +561,18 @@ msgid "" "keyword argument assignment term. See :issue:`34641`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:418 +#: ../Doc/whatsnew/3.8.rst:416 msgid "" "Generalized iterable unpacking in :keyword:`yield` and :keyword:`return` " "statements no longer requires enclosing parentheses. This brings the *yield* " "and *return* syntax into better agreement with normal assignment syntax::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:431 +#: ../Doc/whatsnew/3.8.rst:429 msgid "(Contributed by David Cuthbert and Jordan Chapman in :issue:`32117`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:433 +#: ../Doc/whatsnew/3.8.rst:431 msgid "" "When a comma is missed in code such as ``[(10, 20) (30, 40)]``, the compiler " "displays a :exc:`SyntaxWarning` with a helpful suggestion. This improves on " @@ -580,7 +580,7 @@ msgid "" "callable. (Contributed by Serhiy Storchaka in :issue:`15248`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:439 +#: ../Doc/whatsnew/3.8.rst:437 msgid "" "Arithmetic operations between subclasses of :class:`datetime.date` or :class:" "`datetime.datetime` and :class:`datetime.timedelta` objects now return an " @@ -590,7 +590,7 @@ msgid "" "datetime.astimezone`. (Contributed by Paul Ganssle in :issue:`32417`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:447 +#: ../Doc/whatsnew/3.8.rst:445 msgid "" "When the Python interpreter is interrupted by Ctrl-C (SIGINT) and the " "resulting :exc:`KeyboardInterrupt` exception is not caught, the Python " @@ -600,7 +600,7 @@ msgid "" "sessions. (Contributed by Google via Gregory P. Smith in :issue:`1054041`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:454 +#: ../Doc/whatsnew/3.8.rst:452 msgid "" "Some advanced styles of programming require updating the :class:`types." "CodeType` object for an existing function. Since code objects are " @@ -610,17 +610,17 @@ msgid "" "altered parameters." msgstr "" -#: ../Doc/whatsnew/3.8.rst:461 +#: ../Doc/whatsnew/3.8.rst:459 msgid "" "Here's an example that alters the :func:`statistics.mean` function to " "prevent the *data* parameter from being used as a keyword argument::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:473 +#: ../Doc/whatsnew/3.8.rst:471 msgid "(Contributed by Victor Stinner in :issue:`37032`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:475 +#: ../Doc/whatsnew/3.8.rst:473 msgid "" "For integers, the three-argument form of the :func:`pow` function now " "permits the exponent to be negative in the case where the base is relatively " @@ -631,7 +631,7 @@ msgid "" "38 modulo 137, write::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:489 +#: ../Doc/whatsnew/3.8.rst:487 msgid "" "Modular inverses arise in the solution of `linear Diophantine equations " "`_. For example, to find " @@ -639,110 +639,110 @@ msgid "" "(mod 147)`` then solve:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:499 +#: ../Doc/whatsnew/3.8.rst:497 msgid "(Contributed by Mark Dickinson in :issue:`36027`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:501 +#: ../Doc/whatsnew/3.8.rst:499 msgid "" "Dict comprehensions have been synced-up with dict literals so that the key " "is computed first and the value second::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:516 +#: ../Doc/whatsnew/3.8.rst:514 msgid "" "The guaranteed execution order is helpful with assignment expressions " "because variables assigned in the key expression will be available in the " "value expression::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:528 +#: ../Doc/whatsnew/3.8.rst:526 msgid "New Modules" msgstr "" -#: ../Doc/whatsnew/3.8.rst:530 +#: ../Doc/whatsnew/3.8.rst:528 msgid "" "The new :mod:`importlib.metadata` module provides (provisional) support for " "reading metadata from third-party packages. For example, it can extract an " "installed package's version number, list of entry points, and more::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:549 +#: ../Doc/whatsnew/3.8.rst:547 msgid "(Contributed in :issue:`34632` by Barry Warsaw and Jason R. Coombs.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:553 +#: ../Doc/whatsnew/3.8.rst:551 msgid "Improved Modules" msgstr "" -#: ../Doc/whatsnew/3.8.rst:557 +#: ../Doc/whatsnew/3.8.rst:555 msgid "ast" msgstr "ast" -#: ../Doc/whatsnew/3.8.rst:559 +#: ../Doc/whatsnew/3.8.rst:557 msgid "" "AST nodes now have ``end_lineno`` and ``end_col_offset`` attributes, which " "give the precise location of the end of the node. (This only applies to " "nodes that have ``lineno`` and ``col_offset`` attributes.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:563 +#: ../Doc/whatsnew/3.8.rst:561 msgid "The :func:`ast.parse` function has some new flags:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:565 +#: ../Doc/whatsnew/3.8.rst:563 msgid "" "``type_comments=True`` causes it to return the text of :pep:`484` and :pep:" "`526` type comments associated with certain AST nodes;" msgstr "" -#: ../Doc/whatsnew/3.8.rst:568 +#: ../Doc/whatsnew/3.8.rst:566 msgid "" "``mode='func_type'`` can be used to parse :pep:`484` \"signature type " "comments\" (returned for function definition AST nodes);" msgstr "" -#: ../Doc/whatsnew/3.8.rst:571 +#: ../Doc/whatsnew/3.8.rst:569 msgid "" "``feature_version=(3, N)`` allows specifying an earlier Python 3 version. " "(For example, ``feature_version=(3, 4)`` will treat ``async`` and ``await`` " "as non-reserved words.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:575 +#: ../Doc/whatsnew/3.8.rst:573 msgid "" "New function :func:`ast.get_source_segment` returns the source code for a " "specific AST node." msgstr "" -#: ../Doc/whatsnew/3.8.rst:580 +#: ../Doc/whatsnew/3.8.rst:578 msgid "asyncio" msgstr "asyncio" -#: ../Doc/whatsnew/3.8.rst:582 +#: ../Doc/whatsnew/3.8.rst:580 msgid "" "On Windows, the default event loop is now :class:`~asyncio." "ProactorEventLoop`. (Contributed by Victor Stinner in :issue:`34687`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:585 +#: ../Doc/whatsnew/3.8.rst:583 msgid "" ":class:`~asyncio.ProactorEventLoop` now also supports UDP. (Contributed by " "Adam Meily and Andrew Svetlov in :issue:`29883`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:588 +#: ../Doc/whatsnew/3.8.rst:586 msgid "" ":class:`~asyncio.ProactorEventLoop` can now be interrupted by :exc:" "`KeyboardInterrupt` (\"CTRL+C\"). (Contributed by Vladimir Matveev in :issue:" "`23057`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:594 +#: ../Doc/whatsnew/3.8.rst:592 msgid "builtins" msgstr "" -#: ../Doc/whatsnew/3.8.rst:596 +#: ../Doc/whatsnew/3.8.rst:594 msgid "" "The :func:`compile` built-in has been improved to accept the ``ast." "PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag. With this new flag passed, :func:" @@ -751,15 +751,15 @@ msgid "" "object marked with the ``CO_COROUTINE`` flag may then be returned." msgstr "" -#: ../Doc/whatsnew/3.8.rst:602 +#: ../Doc/whatsnew/3.8.rst:600 msgid "(Contributed by Matthias Bussonnier in :issue:`34616`)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:605 +#: ../Doc/whatsnew/3.8.rst:603 msgid "collections" msgstr "" -#: ../Doc/whatsnew/3.8.rst:607 +#: ../Doc/whatsnew/3.8.rst:605 msgid "" "The :meth:`_asdict()` method for :func:`collections.namedtuple` now returns " "a :class:`dict` instead of a :class:`collections.OrderedDict`. This works " @@ -769,11 +769,11 @@ msgid "" "_asdict())``. (Contributed by Raymond Hettinger in :issue:`35864`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:616 +#: ../Doc/whatsnew/3.8.rst:614 msgid "ctypes" msgstr "ctypes" -#: ../Doc/whatsnew/3.8.rst:618 +#: ../Doc/whatsnew/3.8.rst:616 msgid "" "On Windows, :class:`~ctypes.CDLL` and subclasses now accept a *winmode* " "parameter to specify flags for the underlying ``LoadLibraryEx`` call. The " @@ -783,26 +783,26 @@ msgid "" "add_dll_directory`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:626 +#: ../Doc/whatsnew/3.8.rst:624 msgid "functools" msgstr "" -#: ../Doc/whatsnew/3.8.rst:628 +#: ../Doc/whatsnew/3.8.rst:626 msgid "" ":func:`functools.lru_cache` can now be used as a straight decorator rather " "than as a function returning a decorator. So both of these are now " "supported::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:639 +#: ../Doc/whatsnew/3.8.rst:637 msgid "(Contributed by Raymond Hettinger in :issue:`36772`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:643 +#: ../Doc/whatsnew/3.8.rst:641 msgid "datetime" msgstr "datetime" -#: ../Doc/whatsnew/3.8.rst:645 +#: ../Doc/whatsnew/3.8.rst:643 msgid "" "Added new alternate constructors :meth:`datetime.date.fromisocalendar` and :" "meth:`datetime.datetime.fromisocalendar`, which construct :class:`date` and :" @@ -811,21 +811,21 @@ msgid "" "(Contributed by Paul Ganssle in :issue:`36004`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:653 +#: ../Doc/whatsnew/3.8.rst:651 msgid "gettext" msgstr "" -#: ../Doc/whatsnew/3.8.rst:655 +#: ../Doc/whatsnew/3.8.rst:653 msgid "" "Added :func:`~gettext.pgettext` and its variants. (Contributed by Franz " "Glasner, Éric Araujo, and Cheryl Sabella in :issue:`2504`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:660 ../Doc/whatsnew/3.8.rst:730 +#: ../Doc/whatsnew/3.8.rst:658 ../Doc/whatsnew/3.8.rst:728 msgid "idlelib and IDLE" msgstr "" -#: ../Doc/whatsnew/3.8.rst:662 ../Doc/whatsnew/3.8.rst:737 +#: ../Doc/whatsnew/3.8.rst:660 ../Doc/whatsnew/3.8.rst:735 msgid "" "Output over N lines (50 by default) is squeezed down to a button. N can be " "changed in the PyShell section of the General page of the Settings dialog. " @@ -835,7 +835,7 @@ msgid "" "button. (Contributed by Tal Einat in :issue:`1529353`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:669 +#: ../Doc/whatsnew/3.8.rst:667 msgid "" "Add \"Run Customized\" to the Run menu to run a module with customized " "settings. Any command line arguments entered are added to sys.argv. They " @@ -844,7 +844,7 @@ msgid "" "Sabella, Terry Jan Reedy, and others in :issue:`5680` and :issue:`37627`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:675 +#: ../Doc/whatsnew/3.8.rst:673 msgid "" "Add optional line numbers for IDLE editor windows. Windows open without line " "numbers unless set otherwise in the General tab of the configuration " @@ -853,15 +853,15 @@ msgid "" "`17535`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:681 ../Doc/whatsnew/3.8.rst:744 +#: ../Doc/whatsnew/3.8.rst:679 ../Doc/whatsnew/3.8.rst:742 msgid "The changes above have been backported to 3.7 maintenance releases." msgstr "" -#: ../Doc/whatsnew/3.8.rst:685 +#: ../Doc/whatsnew/3.8.rst:683 msgid "inspect" msgstr "" -#: ../Doc/whatsnew/3.8.rst:687 +#: ../Doc/whatsnew/3.8.rst:685 msgid "" "The :func:`inspect.getdoc` function can now find docstrings for " "``__slots__`` if that attribute is a :class:`dict` where the values are " @@ -869,11 +869,11 @@ msgid "" "have for :func:`property`, :func:`classmethod`, and :func:`staticmethod`::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:701 +#: ../Doc/whatsnew/3.8.rst:699 msgid "io" msgstr "" -#: ../Doc/whatsnew/3.8.rst:703 +#: ../Doc/whatsnew/3.8.rst:701 msgid "" "In development mode (:option:`-X` ``env``) and in debug build, the :class:" "`io.IOBase` finalizer now logs the exception if the ``close()`` method " @@ -881,137 +881,137 @@ msgid "" "(Contributed by Victor Stinner in :issue:`18748`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:710 +#: ../Doc/whatsnew/3.8.rst:708 msgid "gc" msgstr "" -#: ../Doc/whatsnew/3.8.rst:712 +#: ../Doc/whatsnew/3.8.rst:710 msgid "" ":func:`~gc.get_objects` can now receive an optional *generation* parameter " "indicating a generation to get objects from. Contributed in :issue:`36016` " "by Pablo Galindo." msgstr "" -#: ../Doc/whatsnew/3.8.rst:718 +#: ../Doc/whatsnew/3.8.rst:716 msgid "gzip" msgstr "gzip" -#: ../Doc/whatsnew/3.8.rst:720 +#: ../Doc/whatsnew/3.8.rst:718 msgid "" "Added the *mtime* parameter to :func:`gzip.compress` for reproducible " "output. (Contributed by Guo Ci Teo in :issue:`34898`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:723 +#: ../Doc/whatsnew/3.8.rst:721 msgid "" "A :exc:`~gzip.BadGzipFile` exception is now raised instead of :exc:`OSError` " "for certain types of invalid or corrupt gzip files. (Contributed by Filip " "Gruszczyński, Michele Orrù, and Zackery Spytz in :issue:`6584`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:732 +#: ../Doc/whatsnew/3.8.rst:730 msgid "" "Add optional line numbers for IDLE editor windows. Windows open without line " "numbers unless set otherwise in the General tab of the configuration dialog. " "(Contributed by Tal Einat and Saimadhav Heblikar in :issue:`17535`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:748 +#: ../Doc/whatsnew/3.8.rst:746 msgid "json.tool" msgstr "" -#: ../Doc/whatsnew/3.8.rst:750 +#: ../Doc/whatsnew/3.8.rst:748 msgid "" "Add option ``--json-lines`` to parse every input line as separate JSON " "object. (Contributed by Weipeng Hong in :issue:`31553`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:755 +#: ../Doc/whatsnew/3.8.rst:753 msgid "math" msgstr "" -#: ../Doc/whatsnew/3.8.rst:757 +#: ../Doc/whatsnew/3.8.rst:755 msgid "" "Added new function :func:`math.dist` for computing Euclidean distance " "between two points. (Contributed by Raymond Hettinger in :issue:`33089`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:760 +#: ../Doc/whatsnew/3.8.rst:758 msgid "" "Expanded the :func:`math.hypot` function to handle multiple dimensions. " "Formerly, it only supported the 2-D case. (Contributed by Raymond Hettinger " "in :issue:`33089`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:764 +#: ../Doc/whatsnew/3.8.rst:762 msgid "" "Added new function, :func:`math.prod`, as analogous function to :func:`sum` " "that returns the product of a 'start' value (default: 1) times an iterable " "of numbers::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:773 +#: ../Doc/whatsnew/3.8.rst:771 msgid "(Contributed by Pablo Galindo in :issue:`35606`)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:775 +#: ../Doc/whatsnew/3.8.rst:773 msgid "" "Added new function :func:`math.isqrt` for computing integer square roots. " "(Contributed by Mark Dickinson in :issue:`36887`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:778 +#: ../Doc/whatsnew/3.8.rst:776 msgid "" "The function :func:`math.factorial` no longer accepts arguments that are not " "int-like. (Contributed by Pablo Galindo in :issue:`33083`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:783 +#: ../Doc/whatsnew/3.8.rst:781 msgid "mmap" msgstr "" -#: ../Doc/whatsnew/3.8.rst:785 +#: ../Doc/whatsnew/3.8.rst:783 msgid "" "The :class:`mmap.mmap` class now has an :meth:`~mmap.mmap.madvise` method to " "access the ``madvise()`` system call. (Contributed by Zackery Spytz in :" "issue:`32941`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:791 +#: ../Doc/whatsnew/3.8.rst:789 msgid "multiprocessing" msgstr "multiprocessing" -#: ../Doc/whatsnew/3.8.rst:793 +#: ../Doc/whatsnew/3.8.rst:791 msgid "" "Added new :mod:`multiprocessing.shared_memory` module. (Contributed Davin " "Potts in :issue:`35813`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:796 +#: ../Doc/whatsnew/3.8.rst:794 msgid "" "On macOS, the *spawn* start method is now used by default. (Contributed by " "Victor Stinner in :issue:`33725`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:801 +#: ../Doc/whatsnew/3.8.rst:799 msgid "os" msgstr "" -#: ../Doc/whatsnew/3.8.rst:803 +#: ../Doc/whatsnew/3.8.rst:801 msgid "" "Added new function :func:`~os.add_dll_directory` on Windows for providing " "additional search paths for native dependencies when importing extension " "modules or loading DLLs using :mod:`ctypes`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:807 +#: ../Doc/whatsnew/3.8.rst:805 msgid "" "A new :func:`os.memfd_create` function was added to wrap the " "``memfd_create()`` syscall. (Contributed by Zackery Spytz and Christian " "Heimes in :issue:`26836`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:811 +#: ../Doc/whatsnew/3.8.rst:809 msgid "" "On Windows, much of the manual logic for handling reparse points (including " "symlinks and directory junctions) has been delegated to the operating " @@ -1024,7 +1024,7 @@ msgid "" "st_reparse_tag` attribute." msgstr "" -#: ../Doc/whatsnew/3.8.rst:820 +#: ../Doc/whatsnew/3.8.rst:818 msgid "" "On Windows, :func:`os.readlink` is now able to read directory junctions. " "Note that :func:`~os.path.islink` will return ``False`` for directory " @@ -1033,11 +1033,11 @@ msgid "" "readlink` may now treat junctions as links." msgstr "" -#: ../Doc/whatsnew/3.8.rst:828 +#: ../Doc/whatsnew/3.8.rst:826 msgid "os.path" msgstr "" -#: ../Doc/whatsnew/3.8.rst:830 +#: ../Doc/whatsnew/3.8.rst:828 msgid "" ":mod:`os.path` functions that return a boolean result like :func:`~os.path." "exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, :func:`~os.path." @@ -1048,41 +1048,41 @@ msgid "" "Storchaka in :issue:`33721`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:838 ../Doc/whatsnew/3.8.rst:1628 +#: ../Doc/whatsnew/3.8.rst:836 ../Doc/whatsnew/3.8.rst:1658 msgid "" ":func:`~os.path.expanduser` on Windows now prefers the :envvar:`USERPROFILE` " "environment variable and does not use :envvar:`HOME`, which is not normally " "set for regular user accounts." msgstr "" -#: ../Doc/whatsnew/3.8.rst:842 +#: ../Doc/whatsnew/3.8.rst:840 msgid "" ":func:`~os.path.isdir` on Windows no longer returns true for a link to a non-" "existent directory." msgstr "" -#: ../Doc/whatsnew/3.8.rst:845 +#: ../Doc/whatsnew/3.8.rst:843 msgid "" ":func:`~os.path.realpath` on Windows now resolves reparse points, including " "symlinks and directory junctions." msgstr "" -#: ../Doc/whatsnew/3.8.rst:850 +#: ../Doc/whatsnew/3.8.rst:848 msgid "ncurses" msgstr "" -#: ../Doc/whatsnew/3.8.rst:852 +#: ../Doc/whatsnew/3.8.rst:850 msgid "" "Added a new variable holding structured version information for the " "underlying ncurses library: :data:`~curses.ncurses_version`. (Contributed by " "Serhiy Storchaka in :issue:`31680`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:858 +#: ../Doc/whatsnew/3.8.rst:856 msgid "pathlib" msgstr "pathlib" -#: ../Doc/whatsnew/3.8.rst:860 +#: ../Doc/whatsnew/3.8.rst:858 msgid "" ":mod:`pathlib.Path` methods that return a boolean result like :meth:" "`~pathlib.Path.exists()`, :meth:`~pathlib.Path.is_dir()`, :meth:`~pathlib." @@ -1095,17 +1095,17 @@ msgid "" "`33721`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:870 +#: ../Doc/whatsnew/3.8.rst:868 msgid "" "Added :meth:`pathlib.Path.link_to()` which creates a hard link pointing to a " "path. (Contributed by Joannah Nanjekye in :issue:`26978`)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:876 +#: ../Doc/whatsnew/3.8.rst:874 msgid "pickle" msgstr "" -#: ../Doc/whatsnew/3.8.rst:878 +#: ../Doc/whatsnew/3.8.rst:876 msgid "" "Reduction methods can now include a 6th item in the tuple they return. This " "item should specify a custom state-setting method that's called instead of " @@ -1113,7 +1113,7 @@ msgid "" "Olivier Grisel in :issue:`35900`)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:883 +#: ../Doc/whatsnew/3.8.rst:881 msgid "" ":mod:`pickle` extensions subclassing the C-optimized :class:`~pickle." "Pickler` can now override the pickling logic of functions and classes by " @@ -1121,32 +1121,32 @@ msgid "" "(Contributed by Pierre Glaser and Olivier Grisel in :issue:`35900`)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:890 +#: ../Doc/whatsnew/3.8.rst:888 msgid "plistlib" msgstr "" -#: ../Doc/whatsnew/3.8.rst:892 +#: ../Doc/whatsnew/3.8.rst:890 msgid "" "Added new :class:`plistlib.UID` and enabled support for reading and writing " "NSKeyedArchiver-encoded binary plists. (Contributed by Jon Janzen in :issue:" "`26707`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:898 +#: ../Doc/whatsnew/3.8.rst:896 msgid "py_compile" msgstr "" -#: ../Doc/whatsnew/3.8.rst:900 +#: ../Doc/whatsnew/3.8.rst:898 msgid "" ":func:`py_compile.compile` now supports silent mode. (Contributed by Joannah " "Nanjekye in :issue:`22640`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:905 +#: ../Doc/whatsnew/3.8.rst:903 msgid "socket" msgstr "" -#: ../Doc/whatsnew/3.8.rst:907 +#: ../Doc/whatsnew/3.8.rst:905 msgid "" "Added :meth:`~socket.create_server()` and :meth:`~socket." "has_dualstack_ipv6()` convenience functions to automate the necessary tasks " @@ -1155,34 +1155,34 @@ msgid "" "Rodola in :issue:`17561`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:912 +#: ../Doc/whatsnew/3.8.rst:910 msgid "" "The :func:`socket.if_nameindex()`, :func:`socket.if_nametoindex()`, and :" "func:`socket.if_indextoname()` functions have been implemented on Windows. " "(Contributed by Zackery Spytz in :issue:`37007`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:917 +#: ../Doc/whatsnew/3.8.rst:915 msgid "shlex" msgstr "" -#: ../Doc/whatsnew/3.8.rst:919 +#: ../Doc/whatsnew/3.8.rst:917 msgid "" "The new :func:`shlex.join` function acts as the inverse of :func:`shlex." "split`. (Contributed by Bo Bayles in :issue:`32102`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:923 +#: ../Doc/whatsnew/3.8.rst:921 msgid "shutil" msgstr "" -#: ../Doc/whatsnew/3.8.rst:925 +#: ../Doc/whatsnew/3.8.rst:923 msgid "" ":func:`shutil.copytree` now accepts a new ``dirs_exist_ok`` keyword " "argument. (Contributed by Josh Bronson in :issue:`20849`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:928 +#: ../Doc/whatsnew/3.8.rst:926 msgid "" ":func:`shutil.make_archive` now defaults to the modern pax (POSIX.1-2001) " "format for new archives to improve portability and standards conformance, " @@ -1190,65 +1190,65 @@ msgid "" "(Contributed by C.A.M. Gerlach in :issue:`30661`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:933 +#: ../Doc/whatsnew/3.8.rst:931 msgid "" ":func:`shutil.rmtree` on Windows now removes directory junctions without " "recursively removing their contents first." msgstr "" -#: ../Doc/whatsnew/3.8.rst:938 +#: ../Doc/whatsnew/3.8.rst:936 msgid "ssl" msgstr "" -#: ../Doc/whatsnew/3.8.rst:940 +#: ../Doc/whatsnew/3.8.rst:938 msgid "" "Added :attr:`SSLContext.post_handshake_auth` to enable and :meth:`ssl." "SSLSocket.verify_client_post_handshake` to initiate TLS 1.3 post-handshake " "authentication. (Contributed by Christian Heimes in :issue:`34670`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:947 +#: ../Doc/whatsnew/3.8.rst:945 msgid "statistics" msgstr "" -#: ../Doc/whatsnew/3.8.rst:949 +#: ../Doc/whatsnew/3.8.rst:947 msgid "" "Added :func:`statistics.fmean` as a faster, floating point variant of :func:" "`statistics.mean()`. (Contributed by Raymond Hettinger and Steven D'Aprano " "in :issue:`35904`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:953 +#: ../Doc/whatsnew/3.8.rst:951 msgid "" "Added :func:`statistics.geometric_mean()` (Contributed by Raymond Hettinger " "in :issue:`27181`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:956 +#: ../Doc/whatsnew/3.8.rst:954 msgid "" "Added :func:`statistics.multimode` that returns a list of the most common " "values. (Contributed by Raymond Hettinger in :issue:`35892`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:959 +#: ../Doc/whatsnew/3.8.rst:957 msgid "" "Added :func:`statistics.quantiles` that divides data or a distribution in to " "equiprobable intervals (e.g. quartiles, deciles, or percentiles). " "(Contributed by Raymond Hettinger in :issue:`36546`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:963 +#: ../Doc/whatsnew/3.8.rst:961 msgid "" "Added :class:`statistics.NormalDist`, a tool for creating and manipulating " "normal distributions of a random variable. (Contributed by Raymond Hettinger " "in :issue:`36018`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:993 +#: ../Doc/whatsnew/3.8.rst:991 msgid "sys" msgstr "sys" -#: ../Doc/whatsnew/3.8.rst:995 +#: ../Doc/whatsnew/3.8.rst:993 msgid "" "Add new :func:`sys.unraisablehook` function which can be overridden to " "control how \"unraisable exceptions\" are handled. It is called when an " @@ -1257,11 +1257,11 @@ msgid "" "(:func:`gc.collect`). (Contributed by Victor Stinner in :issue:`36829`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1004 +#: ../Doc/whatsnew/3.8.rst:1002 msgid "tarfile" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1006 +#: ../Doc/whatsnew/3.8.rst:1004 msgid "" "The :mod:`tarfile` module now defaults to the modern pax (POSIX.1-2001) " "format for new archives, instead of the previous GNU-specific one. This " @@ -1270,11 +1270,11 @@ msgid "" "(Contributed by C.A.M. Gerlach in :issue:`36268`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1014 +#: ../Doc/whatsnew/3.8.rst:1012 msgid "threading" msgstr "threading" -#: ../Doc/whatsnew/3.8.rst:1016 +#: ../Doc/whatsnew/3.8.rst:1014 msgid "" "Add a new :func:`threading.excepthook` function which handles uncaught :meth:" "`threading.Thread.run` exception. It can be overridden to control how " @@ -1282,7 +1282,7 @@ msgid "" "by Victor Stinner in :issue:`1230540`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1021 +#: ../Doc/whatsnew/3.8.rst:1019 msgid "" "Add a new :func:`threading.get_native_id` function and a :data:`~threading." "Thread.native_id` attribute to the :class:`threading.Thread` class. These " @@ -1292,11 +1292,11 @@ msgid "" "by Jake Tesler in :issue:`36084`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1031 +#: ../Doc/whatsnew/3.8.rst:1029 msgid "tokenize" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1033 +#: ../Doc/whatsnew/3.8.rst:1031 msgid "" "The :mod:`tokenize` module now implicitly emits a ``NEWLINE`` token when " "provided with input that does not have a trailing new line. This behavior " @@ -1304,11 +1304,11 @@ msgid "" "Askar in :issue:`33899`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1039 +#: ../Doc/whatsnew/3.8.rst:1037 msgid "tkinter" msgstr "tkinter" -#: ../Doc/whatsnew/3.8.rst:1041 +#: ../Doc/whatsnew/3.8.rst:1039 msgid "" "Added methods :meth:`~tkinter.Spinbox.selection_from`, :meth:`~tkinter." "Spinbox.selection_present`, :meth:`~tkinter.Spinbox.selection_range` and :" @@ -1316,79 +1316,79 @@ msgid "" "(Contributed by Juliette Monsel in :issue:`34829`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1048 +#: ../Doc/whatsnew/3.8.rst:1046 msgid "" "Added method :meth:`~tkinter.Canvas.moveto` in the :class:`tkinter.Canvas` " "class. (Contributed by Juliette Monsel in :issue:`23831`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1052 +#: ../Doc/whatsnew/3.8.rst:1050 msgid "" "The :class:`tkinter.PhotoImage` class now has :meth:`~tkinter.PhotoImage." "transparency_get` and :meth:`~tkinter.PhotoImage.transparency_set` methods. " "(Contributed by Zackery Spytz in :issue:`25451`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1058 +#: ../Doc/whatsnew/3.8.rst:1056 msgid "time" msgstr "time" -#: ../Doc/whatsnew/3.8.rst:1060 +#: ../Doc/whatsnew/3.8.rst:1058 msgid "" "Added new clock :data:`~time.CLOCK_UPTIME_RAW` for macOS 10.12. (Contributed " "by Joannah Nanjekye in :issue:`35702`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1065 +#: ../Doc/whatsnew/3.8.rst:1063 msgid "typing" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1067 +#: ../Doc/whatsnew/3.8.rst:1065 msgid "The :mod:`typing` module incorporates several new features:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1069 +#: ../Doc/whatsnew/3.8.rst:1067 msgid "" "Protocol definitions. See :pep:`544`, :class:`typing.Protocol` and :func:" "`typing.runtime_checkable`. Simple ABCs like :class:`typing.SupportsInt` " "are now ``Protocol`` subclasses." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1073 +#: ../Doc/whatsnew/3.8.rst:1071 msgid "" "A dictionary type with per-key types. See :pep:`589` and :class:`typing." "TypedDict`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1076 +#: ../Doc/whatsnew/3.8.rst:1074 msgid "Literal types. See :pep:`586` and :class:`typing.Literal`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1078 +#: ../Doc/whatsnew/3.8.rst:1076 msgid "" "\"Final\" variables, functions, methods and classes. See :pep:`591`, :class:" "`typing.Final` and :func:`typing.final`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1081 +#: ../Doc/whatsnew/3.8.rst:1079 msgid "New protocol class :class:`typing.SupportsIndex`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1083 +#: ../Doc/whatsnew/3.8.rst:1081 msgid "New functions :func:`typing.get_origin` and :func:`typing.get_args`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1087 +#: ../Doc/whatsnew/3.8.rst:1085 msgid "unicodedata" msgstr "unicodedata" -#: ../Doc/whatsnew/3.8.rst:1089 +#: ../Doc/whatsnew/3.8.rst:1087 msgid "" "The :mod:`unicodedata` module has been upgraded to use the `Unicode 12.1.0 " "`_ release." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1092 +#: ../Doc/whatsnew/3.8.rst:1090 msgid "" "New function :func:`~unicodedata.is_normalized` can be used to verify a " "string is in a specific normal form, often much faster than by actually " @@ -1396,18 +1396,18 @@ msgid "" "Greg Price in :issue:`32285` and :issue:`37966`)." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1099 +#: ../Doc/whatsnew/3.8.rst:1097 msgid "unittest" msgstr "unittest" -#: ../Doc/whatsnew/3.8.rst:1101 +#: ../Doc/whatsnew/3.8.rst:1099 msgid "" "Added :class:`AsyncMock` to support an asynchronous version of :class:" "`Mock`. Appropriate new assert functions for testing have been added as " "well. (Contributed by Lisa Roach in :issue:`26467`)." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1105 +#: ../Doc/whatsnew/3.8.rst:1103 msgid "" "Added :func:`~unittest.addModuleCleanup()` and :meth:`~unittest.TestCase." "addClassCleanup()` to unittest to support cleanups for :func:`~unittest." @@ -1415,46 +1415,58 @@ msgid "" "Lisa Roach in :issue:`24412`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1111 +#: ../Doc/whatsnew/3.8.rst:1109 msgid "" "Several mock assert functions now also print a list of actual calls upon " "failure. (Contributed by Petter Strandmark in :issue:`35047`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1115 +#: ../Doc/whatsnew/3.8.rst:1112 +msgid "" +":mod:`unittest` module gained support for coroutines to be used as test " +"cases with :class:`unittest.IsolatedAsyncioTestCase`. (Contributed by Andrew " +"Svetlov in :issue:`32972`.)" +msgstr "" + +#: ../Doc/whatsnew/3.8.rst:1116 ../Doc/whatsnew/3.8.rst:1742 +#: ../Doc/whatsnew/3.8.rst:1759 ../Doc/whatsnew/3.8.rst:1776 +msgid "Example::" +msgstr "Exemple ::" + +#: ../Doc/whatsnew/3.8.rst:1139 msgid "venv" msgstr "venv" -#: ../Doc/whatsnew/3.8.rst:1117 +#: ../Doc/whatsnew/3.8.rst:1141 msgid "" ":mod:`venv` now includes an ``Activate.ps1`` script on all platforms for " "activating virtual environments under PowerShell Core 6.1. (Contributed by " "Brett Cannon in :issue:`32718`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1122 +#: ../Doc/whatsnew/3.8.rst:1146 msgid "weakref" msgstr "weakref" -#: ../Doc/whatsnew/3.8.rst:1124 +#: ../Doc/whatsnew/3.8.rst:1148 msgid "" "The proxy objects returned by :func:`weakref.proxy` now support the matrix " "multiplication operators ``@`` and ``@=`` in addition to the other numeric " "operators. (Contributed by Mark Dickinson in :issue:`36669`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1129 +#: ../Doc/whatsnew/3.8.rst:1153 msgid "xml" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1131 +#: ../Doc/whatsnew/3.8.rst:1155 msgid "" "As mitigation against DTD and external entity retrieval, the :mod:`xml.dom." "minidom` and :mod:`xml.sax` modules no longer process external entities by " "default. (Contributed by Christian Heimes in :issue:`17239`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1136 +#: ../Doc/whatsnew/3.8.rst:1160 msgid "" "The ``.find*()`` methods in the :mod:`xml.etree.ElementTree` module support " "wildcard searches like ``{*}tag`` which ignores the namespace and " @@ -1462,14 +1474,14 @@ msgid "" "by Stefan Behnel in :issue:`28238`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1141 +#: ../Doc/whatsnew/3.8.rst:1165 msgid "" "The :mod:`xml.etree.ElementTree` module provides a new function :func:`–xml." "etree.ElementTree.canonicalize()` that implements C14N 2.0. (Contributed by " "Stefan Behnel in :issue:`13611`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1145 +#: ../Doc/whatsnew/3.8.rst:1169 msgid "" "The target object of :class:`xml.etree.ElementTree.XMLParser` can receive " "namespace declaration events through the new callback methods ``start_ns()`` " @@ -1479,36 +1491,36 @@ msgid "" "by Stefan Behnel in :issue:`36676` and :issue:`36673`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1154 +#: ../Doc/whatsnew/3.8.rst:1178 msgid "Optimizations" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1156 +#: ../Doc/whatsnew/3.8.rst:1180 msgid "" "The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function " "in some cases for better performance. Currently, it is only used on macOS " "and Linux (using glibc 2.24 or newer) if all these conditions are met:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1160 +#: ../Doc/whatsnew/3.8.rst:1184 msgid "*close_fds* is false;" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1161 +#: ../Doc/whatsnew/3.8.rst:1185 msgid "" "*preexec_fn*, *pass_fds*, *cwd* and *start_new_session* parameters are not " "set;" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1163 +#: ../Doc/whatsnew/3.8.rst:1187 msgid "the *executable* path contains a directory." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1165 +#: ../Doc/whatsnew/3.8.rst:1189 msgid "(Contributed by Joannah Nanjekye and Victor Stinner in :issue:`35537`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1167 +#: ../Doc/whatsnew/3.8.rst:1191 msgid "" ":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:" "`shutil.copytree` and :func:`shutil.move` use platform-specific \"fast-copy" @@ -1524,7 +1536,7 @@ msgid "" "Rodola' in :issue:`33671`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1183 +#: ../Doc/whatsnew/3.8.rst:1207 msgid "" ":func:`shutil.copytree` uses :func:`os.scandir` function and all copy " "functions depending from it use cached :func:`os.stat` values. The speedup " @@ -1534,26 +1546,26 @@ msgid "" "on network filesystems. (Contributed by Giampaolo Rodola' in :issue:`33695`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1190 +#: ../Doc/whatsnew/3.8.rst:1214 msgid "" "The default protocol in the :mod:`pickle` module is now Protocol 4, first " "introduced in Python 3.4. It offers better performance and smaller size " "compared to Protocol 3 available since Python 3.0." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1194 +#: ../Doc/whatsnew/3.8.rst:1218 msgid "" "Removed one ``Py_ssize_t`` member from ``PyGC_Head``. All GC tracked " "objects (e.g. tuple, list, dict) size is reduced 4 or 8 bytes. (Contributed " "by Inada Naoki in :issue:`33597`)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1198 +#: ../Doc/whatsnew/3.8.rst:1222 msgid "" ":class:`uuid.UUID` now uses ``__slots__`` to reduce its memory footprint." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1200 +#: ../Doc/whatsnew/3.8.rst:1224 msgid "" "Improved performance of :func:`operator.itemgetter` by 33%. Optimized " "argument handling and added a fast path for the common case of a single non-" @@ -1561,7 +1573,7 @@ msgid "" "standard library). (Contributed by Raymond Hettinger in :issue:`35664`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1206 +#: ../Doc/whatsnew/3.8.rst:1230 msgid "" "Sped-up field lookups in :func:`collections.namedtuple`. They are now more " "than two times faster, making them the fastest form of instance variable " @@ -1569,7 +1581,7 @@ msgid "" "Jevnik, Serhiy Storchaka in :issue:`32492`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1211 +#: ../Doc/whatsnew/3.8.rst:1235 msgid "" "The :class:`list` constructor does not overallocate the internal item buffer " "if the input iterable has a known length (the input implements ``__len__``). " @@ -1577,7 +1589,7 @@ msgid "" "Hettinger and Pablo Galindo in :issue:`33234`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1216 +#: ../Doc/whatsnew/3.8.rst:1240 msgid "" "Doubled the speed of class variable writes. When a non-dunder attribute was " "updated, there was an unnecessary call to update slots. (Contributed by " @@ -1585,7 +1597,7 @@ msgid "" "and Serhiy Storchaka in :issue:`36012`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1221 +#: ../Doc/whatsnew/3.8.rst:1245 msgid "" "Reduced an overhead of converting arguments passed to many builtin functions " "and methods. This sped up calling some simple builtin functions and methods " @@ -1593,18 +1605,18 @@ msgid "" "`35582` and :issue:`36127`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1226 +#: ../Doc/whatsnew/3.8.rst:1250 msgid "" "``LOAD_GLOBAL`` instruction now uses new \"per opcode cache\" mechanism. It " "is about 40% faster now. (Contributed by Yury Selivanov and Inada Naoki in :" "issue:`26219`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1232 +#: ../Doc/whatsnew/3.8.rst:1256 msgid "Build and C API Changes" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1234 +#: ../Doc/whatsnew/3.8.rst:1258 msgid "" "Default :data:`sys.abiflags` became an empty string: the ``m`` flag for " "pymalloc became useless (builds with and without pymalloc are ABI " @@ -1612,22 +1624,22 @@ msgid "" "issue:`36707`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1238 +#: ../Doc/whatsnew/3.8.rst:1262 msgid "Example of changes:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1240 +#: ../Doc/whatsnew/3.8.rst:1264 msgid "" "Only ``python3.8`` program is installed, ``python3.8m`` program is gone." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1241 +#: ../Doc/whatsnew/3.8.rst:1265 msgid "" "Only ``python3.8-config`` script is installed, ``python3.8m-config`` script " "is gone." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1243 +#: ../Doc/whatsnew/3.8.rst:1267 msgid "" "The ``m`` flag has been removed from the suffix of dynamic library " "filenames: extension modules in the standard library as well as those " @@ -1636,23 +1648,23 @@ msgid "" "linux-gnu.so`` became ``.cpython-38-x86_64-linux-gnu.so`` in Python 3.8." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1250 +#: ../Doc/whatsnew/3.8.rst:1274 msgid "" "The header files have been reorganized to better separate the different " "kinds of APIs:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1253 +#: ../Doc/whatsnew/3.8.rst:1277 msgid "``Include/*.h`` should be the portable public stable C API." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1254 +#: ../Doc/whatsnew/3.8.rst:1278 msgid "" "``Include/cpython/*.h`` should be the unstable C API specific to CPython; " "public API, with some private API prefixed by ``_Py`` or ``_PY``." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1256 +#: ../Doc/whatsnew/3.8.rst:1280 msgid "" "``Include/internal/*.h`` is the private internal C API very specific to " "CPython. This API comes with no backward compatibility warranty and should " @@ -1661,42 +1673,42 @@ msgid "" "calling functions. This API is now installed by ``make install``." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1262 +#: ../Doc/whatsnew/3.8.rst:1286 msgid "" "(Contributed by Victor Stinner in :issue:`35134` and :issue:`35081`, work " "initiated by Eric Snow in Python 3.7)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1265 +#: ../Doc/whatsnew/3.8.rst:1289 msgid "" "Some macros have been converted to static inline functions: parameter types " "and return type are well defined, they don't have issues specific to macros, " "variables have a local scopes. Examples:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1269 +#: ../Doc/whatsnew/3.8.rst:1293 msgid ":c:func:`Py_INCREF`, :c:func:`Py_DECREF`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1270 +#: ../Doc/whatsnew/3.8.rst:1294 msgid ":c:func:`Py_XINCREF`, :c:func:`Py_XDECREF`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1271 +#: ../Doc/whatsnew/3.8.rst:1295 msgid ":c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1272 +#: ../Doc/whatsnew/3.8.rst:1296 msgid "" "Private functions: :c:func:`_PyObject_GC_TRACK`, :c:func:" "`_PyObject_GC_UNTRACK`, :c:func:`_Py_Dealloc`" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1275 +#: ../Doc/whatsnew/3.8.rst:1299 msgid "(Contributed by Victor Stinner in :issue:`35059`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1277 +#: ../Doc/whatsnew/3.8.rst:1301 msgid "" "The :c:func:`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have " "been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were " @@ -1704,14 +1716,14 @@ msgid "" "(Contributed by Victor Stinner in :issue:`35713`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1282 +#: ../Doc/whatsnew/3.8.rst:1306 msgid "" "The result of :c:func:`PyExceptionClass_Name` is now of type ``const char " "*`` rather of ``char *``. (Contributed by Serhiy Storchaka in :issue:" "`33818`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1286 +#: ../Doc/whatsnew/3.8.rst:1310 msgid "" "The duality of ``Modules/Setup.dist`` and ``Modules/Setup`` has been " "removed. Previously, when updating the CPython source tree, one had to " @@ -1722,7 +1734,7 @@ msgid "" "the file could produce build failures." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1294 +#: ../Doc/whatsnew/3.8.rst:1318 msgid "" "Now the build system always reads from ``Modules/Setup`` inside the source " "tree. People who want to customize that file are encouraged to maintain " @@ -1730,11 +1742,11 @@ msgid "" "for any other change to the source tree." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1299 +#: ../Doc/whatsnew/3.8.rst:1323 msgid "(Contributed by Antoine Pitrou in :issue:`32430`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1301 +#: ../Doc/whatsnew/3.8.rst:1325 msgid "" "Functions that convert Python number to C integer like :c:func:" "`PyLong_AsLong` and argument parsing functions like :c:func:" @@ -1750,7 +1762,7 @@ msgid "" "`20092`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1315 +#: ../Doc/whatsnew/3.8.rst:1339 msgid "" "Heap-allocated type objects will now increase their reference count in :c:" "func:`PyObject_Init` (and its parallel macro ``PyObject_INIT``) instead of " @@ -1759,7 +1771,7 @@ msgid "" "issue:`35810`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1321 +#: ../Doc/whatsnew/3.8.rst:1345 msgid "" "The new function :c:func:`PyCode_NewWithPosOnlyArgs` allows to create code " "objects like :c:func:`PyCode_New`, but with an extra *posonlyargcount* " @@ -1767,18 +1779,25 @@ msgid "" "(Contributed by Pablo Galindo in :issue:`37221`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1328 +#: ../Doc/whatsnew/3.8.rst:1350 +msgid "" +":c:func:`Py_SetPath` now sets :data:`sys.executable` to the program full " +"path (:c:func:`Py_GetProgramFullPath`) rather than to the program name (:c:" +"func:`Py_GetProgramName`). (Contributed by Victor Stinner in :issue:`38234`.)" +msgstr "" + +#: ../Doc/whatsnew/3.8.rst:1357 msgid "Deprecated" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1330 +#: ../Doc/whatsnew/3.8.rst:1359 msgid "" "The distutils ``bdist_wininst`` command is now deprecated, use " "``bdist_wheel`` (wheel packages) instead. (Contributed by Victor Stinner in :" "issue:`37481`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1334 +#: ../Doc/whatsnew/3.8.rst:1363 msgid "" "Deprecated methods ``getchildren()`` and ``getiterator()`` in the :mod:`~xml." "etree.ElementTree` module emit now a :exc:`DeprecationWarning` instead of :" @@ -1786,7 +1805,7 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`29209`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1340 +#: ../Doc/whatsnew/3.8.rst:1369 msgid "" "Passing an object that is not an instance of :class:`concurrent.futures." "ThreadPoolExecutor` to :meth:`asyncio.loop.set_default_executor()` is " @@ -1794,31 +1813,31 @@ msgid "" "Pranskevichus in :issue:`34075`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1346 +#: ../Doc/whatsnew/3.8.rst:1375 msgid "" "The :meth:`__getitem__` methods of :class:`xml.dom.pulldom.DOMEventStream`, :" "class:`wsgiref.util.FileWrapper` and :class:`fileinput.FileInput` have been " "deprecated." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1350 +#: ../Doc/whatsnew/3.8.rst:1379 msgid "" "Implementations of these methods have been ignoring their *index* parameter, " "and returning the next item instead." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1353 +#: ../Doc/whatsnew/3.8.rst:1382 msgid "(Contributed by Berker Peksag in :issue:`9372`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1355 +#: ../Doc/whatsnew/3.8.rst:1384 msgid "" "The :class:`typing.NamedTuple` class has deprecated the ``_field_types`` " "attribute in favor of the ``__annotations__`` attribute which has the same " "information. (Contributed by Raymond Hettinger in :issue:`36320`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1359 +#: ../Doc/whatsnew/3.8.rst:1388 msgid "" ":mod:`ast` classes ``Num``, ``Str``, ``Bytes``, ``NameConstant`` and " "``Ellipsis`` are considered deprecated and will be removed in future Python " @@ -1826,7 +1845,7 @@ msgid "" "Serhiy Storchaka in :issue:`32892`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1364 +#: ../Doc/whatsnew/3.8.rst:1393 msgid "" ":class:`ast.NodeVisitor` methods ``visit_Num()``, ``visit_Str()``, " "``visit_Bytes()``, ``visit_NameConstant()`` and ``visit_Ellipsis()`` are " @@ -1835,7 +1854,7 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`36917`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1371 +#: ../Doc/whatsnew/3.8.rst:1400 msgid "" "The following functions and methods are deprecated in the :mod:`gettext` " "module: :func:`~gettext.lgettext`, :func:`~gettext.ldgettext`, :func:" @@ -1846,7 +1865,7 @@ msgid "" "These functions have been broken for a long time." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1379 +#: ../Doc/whatsnew/3.8.rst:1408 msgid "" "Function :func:`~gettext.bind_textdomain_codeset`, methods :meth:`~gettext." "NullTranslations.output_charset` and :meth:`~gettext.NullTranslations." @@ -1855,17 +1874,17 @@ msgid "" "since they are only used for for the ``l*gettext()`` functions." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1386 +#: ../Doc/whatsnew/3.8.rst:1415 msgid "(Contributed by Serhiy Storchaka in :issue:`33710`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1388 +#: ../Doc/whatsnew/3.8.rst:1417 msgid "" "The :meth:`~threading.Thread.isAlive()` method of :class:`threading.Thread` " "has been deprecated. (Contributed by Dong-hee Na in :issue:`35283`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1391 +#: ../Doc/whatsnew/3.8.rst:1420 msgid "" "Many builtin and extension functions that take integer arguments will now " "emit a deprecation warning for :class:`~decimal.Decimal`\\ s, :class:" @@ -1875,74 +1894,74 @@ msgid "" "they will be errors. (Contributed by Serhiy Storchaka in :issue:`36048`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1399 +#: ../Doc/whatsnew/3.8.rst:1428 msgid "Deprecated passing the following arguments as keyword arguments:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1401 +#: ../Doc/whatsnew/3.8.rst:1430 msgid "" "*func* in :func:`functools.partialmethod`, :func:`weakref.finalize`, :meth:" "`profile.Profile.runcall`, :meth:`cProfile.Profile.runcall`, :meth:`bdb.Bdb." "runcall`, :meth:`trace.Trace.runfunc` and :func:`curses.wrapper`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1405 +#: ../Doc/whatsnew/3.8.rst:1434 msgid "*function* in :meth:`unittest.TestCase.addCleanup`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1406 +#: ../Doc/whatsnew/3.8.rst:1435 msgid "" "*fn* in the :meth:`~concurrent.futures.Executor.submit` method of :class:" "`concurrent.futures.ThreadPoolExecutor` and :class:`concurrent.futures." "ProcessPoolExecutor`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1409 +#: ../Doc/whatsnew/3.8.rst:1438 msgid "" "*callback* in :meth:`contextlib.ExitStack.callback`, :meth:`contextlib." "AsyncExitStack.callback` and :meth:`contextlib.AsyncExitStack." "push_async_callback`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1412 +#: ../Doc/whatsnew/3.8.rst:1441 msgid "" "*c* and *typeid* in the :meth:`~multiprocessing.managers.Server.create` " "method of :class:`multiprocessing.managers.Server` and :class:" "`multiprocessing.managers.SharedMemoryServer`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1415 +#: ../Doc/whatsnew/3.8.rst:1444 msgid "*obj* in :func:`weakref.finalize`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1417 +#: ../Doc/whatsnew/3.8.rst:1446 msgid "" "In future releases of Python they will be :ref:`positional-only `. (Contributed by Serhiy Storchaka in :issue:`36492`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1423 +#: ../Doc/whatsnew/3.8.rst:1452 msgid "API and Feature Removals" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1425 +#: ../Doc/whatsnew/3.8.rst:1454 msgid "The following features and APIs have been removed from Python 3.8:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1427 +#: ../Doc/whatsnew/3.8.rst:1456 msgid "" "The :mod:`macpath` module, deprecated in Python 3.7, has been removed. " "(Contributed by Victor Stinner in :issue:`35471`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1430 ../Doc/whatsnew/3.8.rst:1544 +#: ../Doc/whatsnew/3.8.rst:1459 ../Doc/whatsnew/3.8.rst:1574 msgid "" "The function :func:`platform.popen` has been removed, it was deprecated " "since Python 3.3: use :func:`os.popen` instead. (Contributed by Victor " "Stinner in :issue:`35345`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1434 +#: ../Doc/whatsnew/3.8.rst:1463 msgid "" "The function :func:`time.clock` has been removed, it was deprecated since " "Python 3.3: use :func:`time.perf_counter` or :func:`time.process_time` " @@ -1950,26 +1969,27 @@ msgid "" "(Contributed by Matthias Bussonnier in :issue:`36895`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1439 +#: ../Doc/whatsnew/3.8.rst:1468 msgid "" "The ``pyvenv`` script has been removed in favor of ``python3.8 -m venv`` to " "help eliminate confusion as to what Python interpreter the ``pyvenv`` script " "is tied to. (Contributed by Brett Cannon in :issue:`25427`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1443 +#: ../Doc/whatsnew/3.8.rst:1472 msgid "" "``parse_qs``, ``parse_qsl``, and ``escape`` are removed from :mod:`cgi` " -"module. They are deprecated from Python 3.2 or older." +"module. They are deprecated from Python 3.2 or older. They should be " +"imported from the ``urllib.parse`` and ``html`` modules instead." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1446 +#: ../Doc/whatsnew/3.8.rst:1476 msgid "" "``filemode`` function is removed from :mod:`tarfile` module. It is not " "documented and deprecated since Python 3.3." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1449 +#: ../Doc/whatsnew/3.8.rst:1479 msgid "" "The :class:`~xml.etree.ElementTree.XMLParser` constructor no longer accepts " "the *html* argument. It never had effect and was deprecated in Python 3.4. " @@ -1977,53 +1997,53 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`29209`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1454 +#: ../Doc/whatsnew/3.8.rst:1484 msgid "" "Removed the ``doctype()`` method of :class:`~xml.etree.ElementTree." "XMLParser`. (Contributed by Serhiy Storchaka in :issue:`29209`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1457 +#: ../Doc/whatsnew/3.8.rst:1487 msgid "" "\"unicode_internal\" codec is removed. (Contributed by Inada Naoki in :issue:" "`36297`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1460 +#: ../Doc/whatsnew/3.8.rst:1490 msgid "" "The ``Cache`` and ``Statement`` objects of the :mod:`sqlite3` module are not " "exposed to the user. (Contributed by Aviv Palivoda in :issue:`30262`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1464 +#: ../Doc/whatsnew/3.8.rst:1494 msgid "" "The ``bufsize`` keyword argument of :func:`fileinput.input` and :func:" "`fileinput.FileInput` which was ignored and deprecated since Python 3.6 has " "been removed. :issue:`36952` (Contributed by Matthias Bussonnier)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1468 +#: ../Doc/whatsnew/3.8.rst:1498 msgid "" "The functions :func:`sys.set_coroutine_wrapper` and :func:`sys." "get_coroutine_wrapper` deprecated in Python 3.7 have been removed; :issue:" "`36933` (Contributed by Matthias Bussonnier)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1474 +#: ../Doc/whatsnew/3.8.rst:1504 msgid "Porting to Python 3.8" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1476 +#: ../Doc/whatsnew/3.8.rst:1506 msgid "" "This section lists previously described changes and other bugfixes that may " "require changes to your code." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1481 +#: ../Doc/whatsnew/3.8.rst:1511 msgid "Changes in Python behavior" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1483 +#: ../Doc/whatsnew/3.8.rst:1513 msgid "" "Yield expressions (both ``yield`` and ``yield from`` clauses) are now " "disallowed in comprehensions and generator expressions (aside from the " @@ -2031,7 +2051,7 @@ msgid "" "Serhiy Storchaka in :issue:`10544`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1488 +#: ../Doc/whatsnew/3.8.rst:1518 msgid "" "The compiler now produces a :exc:`SyntaxWarning` when identity checks " "(``is`` and ``is not``) are used with certain types of literals (e.g. " @@ -2041,7 +2061,7 @@ msgid "" "issue:`34850`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1495 +#: ../Doc/whatsnew/3.8.rst:1525 msgid "" "The CPython interpreter can swallow exceptions in some circumstances. In " "Python 3.8 this happens in less cases. In particular, exceptions raised " @@ -2049,7 +2069,7 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`35459`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1500 +#: ../Doc/whatsnew/3.8.rst:1530 msgid "" "Removed ``__str__`` implementations from builtin types :class:`bool`, :class:" "`int`, :class:`float`, :class:`complex` and few classes from the standard " @@ -2059,7 +2079,7 @@ msgid "" "issue:`36793`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1507 +#: ../Doc/whatsnew/3.8.rst:1537 msgid "" "On AIX, :attr:`sys.platform` doesn't contain the major version anymore. It " "is always ``'aix'``, instead of ``'aix3'`` .. ``'aix7'``. Since older " @@ -2068,7 +2088,7 @@ msgid "" "`36588`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1513 +#: ../Doc/whatsnew/3.8.rst:1543 msgid "" ":c:func:`PyEval_AcquireLock` and :c:func:`PyEval_AcquireThread` now " "terminate the current thread if called while the interpreter is finalizing, " @@ -2078,11 +2098,11 @@ msgid "" "func:`sys.is_finalizing`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1521 +#: ../Doc/whatsnew/3.8.rst:1551 msgid "Changes in the Python API" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1523 +#: ../Doc/whatsnew/3.8.rst:1553 msgid "" "The :func:`os.getcwdb` function now uses the UTF-8 encoding on Windows, " "rather than the ANSI code page: see :pep:`529` for the rationale. The " @@ -2090,7 +2110,7 @@ msgid "" "in :issue:`37412`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1528 +#: ../Doc/whatsnew/3.8.rst:1558 msgid "" ":class:`subprocess.Popen` can now use :func:`os.posix_spawn` in some cases " "for better performance. On Windows Subsystem for Linux and QEMU User " @@ -2100,7 +2120,7 @@ msgid "" "Victor Stinner in :issue:`35537`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1535 +#: ../Doc/whatsnew/3.8.rst:1565 msgid "" "The *preexec_fn* argument of * :class:`subprocess.Popen` is no longer " "compatible with subinterpreters. The use of the parameter in a " @@ -2108,20 +2128,20 @@ msgid "" "issue:`34651`, modified by Christian Heimes in :issue:`37951`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1541 +#: ../Doc/whatsnew/3.8.rst:1571 msgid "" "The :meth:`imap.IMAP4.logout` method no longer ignores silently arbitrary " "exceptions." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1548 +#: ../Doc/whatsnew/3.8.rst:1578 msgid "" "The :func:`statistics.mode` function no longer raises an exception when " "given multimodal data. Instead, it returns the first mode encountered in " "the input data. (Contributed by Raymond Hettinger in :issue:`35892`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1553 +#: ../Doc/whatsnew/3.8.rst:1583 msgid "" "The :meth:`~tkinter.ttk.Treeview.selection` method of the :class:`tkinter." "ttk.Treeview` class no longer takes arguments. Using it with arguments for " @@ -2130,7 +2150,7 @@ msgid "" "selection. (Contributed by Serhiy Storchaka in :issue:`31508`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1559 +#: ../Doc/whatsnew/3.8.rst:1589 msgid "" "The :meth:`writexml`, :meth:`toxml` and :meth:`toprettyxml` methods of the :" "mod:`xml.dom.minidom` module, and :mod:`xml.etree` now preserve the " @@ -2138,14 +2158,14 @@ msgid "" "Raymond Hettinger in :issue:`34160`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1564 +#: ../Doc/whatsnew/3.8.rst:1594 msgid "" "A :mod:`dbm.dumb` database opened with flags ``'r'`` is now read-only. :func:" "`dbm.dumb.open` with flags ``'r'`` and ``'w'`` no longer creates a database " "if it does not exist. (Contributed by Serhiy Storchaka in :issue:`32749`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1569 +#: ../Doc/whatsnew/3.8.rst:1599 msgid "" "The ``doctype()`` method defined in a subclass of :class:`~xml.etree." "ElementTree.XMLParser` will no longer be called and will cause emitting a :" @@ -2155,7 +2175,7 @@ msgid "" "Storchaka in :issue:`29209`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1576 +#: ../Doc/whatsnew/3.8.rst:1606 msgid "" "A :exc:`RuntimeError` is now raised when the custom metaclass doesn't " "provide the ``__classcell__`` entry in the namespace passed to ``type." @@ -2163,13 +2183,13 @@ msgid "" "(Contributed by Serhiy Storchaka in :issue:`23722`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1581 +#: ../Doc/whatsnew/3.8.rst:1611 msgid "" "The :class:`cProfile.Profile` class can now be used as a context manager. " "(Contributed by Scott Sanderson in :issue:`29235`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1584 +#: ../Doc/whatsnew/3.8.rst:1614 msgid "" ":func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, :func:" "`shutil.copytree` and :func:`shutil.move` use platform-specific \"fast-copy" @@ -2177,19 +2197,19 @@ msgid "" "section)." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1589 +#: ../Doc/whatsnew/3.8.rst:1619 msgid "" ":func:`shutil.copyfile` default buffer size on Windows was changed from 16 " "KiB to 1 MiB." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1592 +#: ../Doc/whatsnew/3.8.rst:1622 msgid "" "The ``PyGC_Head`` struct has changed completely. All code that touched the " "struct member should be rewritten. (See :issue:`33597`)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1595 +#: ../Doc/whatsnew/3.8.rst:1625 msgid "" "The ``PyInterpreterState`` struct has been moved into the \"internal\" " "header files (specifically Include/internal/pycore_pystate.h). An opaque " @@ -2201,7 +2221,7 @@ msgid "" "functions to the public API). (See :issue:`35886`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1605 +#: ../Doc/whatsnew/3.8.rst:1635 msgid "" "Asyncio tasks can now be named, either by passing the ``name`` keyword " "argument to :func:`asyncio.create_task` or the :meth:`~asyncio.loop." @@ -2211,7 +2231,7 @@ msgid "" "the :meth:`~asyncio.Task.get_name` method." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1612 +#: ../Doc/whatsnew/3.8.rst:1642 msgid "" "The :meth:`mmap.flush() ` method now returns ``None`` on " "success and raises an exception on error under all platforms. Previously, " @@ -2221,13 +2241,13 @@ msgid "" "Peksag in :issue:`2122`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1619 +#: ../Doc/whatsnew/3.8.rst:1649 msgid "" ":mod:`xml.dom.minidom` and :mod:`xml.sax` modules no longer process external " "entities by default. (Contributed by Christian Heimes in :issue:`17239`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1623 +#: ../Doc/whatsnew/3.8.rst:1653 msgid "" "Deleting a key from a read-only :mod:`dbm` database (:mod:`dbm.dumb`, :mod:" "`dbm.gnu` or :mod:`dbm.ndbm`) raises :attr:`error` (:exc:`dbm.dumb.error`, :" @@ -2235,7 +2255,7 @@ msgid "" "(Contributed by Xiang Zhang in :issue:`33106`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1634 +#: ../Doc/whatsnew/3.8.rst:1664 msgid "" "DLL dependencies for extension modules and DLLs loaded with :mod:`ctypes` on " "Windows are now resolved more securely. Only the system paths, the directory " @@ -2250,14 +2270,14 @@ msgid "" "verified by the installer). (See :issue:`36085`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1647 +#: ../Doc/whatsnew/3.8.rst:1677 msgid "" "The header files and functions related to pgen have been removed after its " "replacement by a pure Python implementation. (Contributed by Pablo Galindo " "in :issue:`36623`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1651 +#: ../Doc/whatsnew/3.8.rst:1681 msgid "" ":class:`types.CodeType` has a new parameter in the second position of the " "constructor (*posonlyargcount*) to support positional-only arguments defined " @@ -2267,11 +2287,11 @@ msgid "" "future-proof." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1660 +#: ../Doc/whatsnew/3.8.rst:1690 msgid "Changes in the C API" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1662 +#: ../Doc/whatsnew/3.8.rst:1692 msgid "" "The :c:type:`PyCompilerFlags` structure gets a new *cf_feature_version* " "field. It should be initialized to ``PY_MINOR_VERSION``. The field is " @@ -2279,14 +2299,14 @@ msgid "" "in *cf_flags*." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1667 +#: ../Doc/whatsnew/3.8.rst:1697 msgid "" "The :c:func:`PyEval_ReInitThreads` function has been removed from the C API. " "It should not be called explicitly: use :c:func:`PyOS_AfterFork_Child` " "instead. (Contributed by Victor Stinner in :issue:`36728`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1672 +#: ../Doc/whatsnew/3.8.rst:1702 msgid "" "On Unix, C extensions are no longer linked to libpython except on Android " "and Cygwin. When Python is embedded, ``libpython`` must not be loaded with " @@ -2297,7 +2317,7 @@ msgid "" "Stinner in :issue:`21536`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1680 +#: ../Doc/whatsnew/3.8.rst:1710 msgid "" "Use of ``#`` variants of formats in parsing or building value (e.g. :c:func:" "`PyArg_ParseTuple`, :c:func:`Py_BuildValue`, :c:func:" @@ -2306,7 +2326,7 @@ msgid "" "`arg-parsing` for detail. (Contributed by Inada Naoki in :issue:`36381`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1686 +#: ../Doc/whatsnew/3.8.rst:1716 msgid "" "Instances of heap-allocated types (such as those created with :c:func:" "`PyType_FromSpec`) hold a reference to their type object. Increasing the " @@ -2316,11 +2336,11 @@ msgid "" "through :c:func:`PyType_FromSpec` behave like other classes in managed code." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1694 +#: ../Doc/whatsnew/3.8.rst:1724 msgid "Statically allocated types are not affected." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1696 +#: ../Doc/whatsnew/3.8.rst:1726 msgid "" "For the vast majority of cases, there should be no side effect. However, " "types that manually increase the reference count after allocating an " @@ -2329,12 +2349,12 @@ msgid "" "instance deallocation." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1702 +#: ../Doc/whatsnew/3.8.rst:1732 msgid "" "To correctly port these types into 3.8, please apply the following changes:" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1705 +#: ../Doc/whatsnew/3.8.rst:1735 msgid "" "Remove :c:macro:`Py_INCREF` on the type object after allocating an instance " "- if any. This may happen after calling :c:func:`PyObject_New`, :c:func:" @@ -2343,32 +2363,27 @@ msgid "" "`PyObject_INIT`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1712 ../Doc/whatsnew/3.8.rst:1729 -#: ../Doc/whatsnew/3.8.rst:1746 -msgid "Example::" -msgstr "Exemple ::" - -#: ../Doc/whatsnew/3.8.rst:1726 +#: ../Doc/whatsnew/3.8.rst:1756 msgid "" "Ensure that all custom ``tp_dealloc`` functions of heap-allocated types " "decrease the type's reference count." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1741 +#: ../Doc/whatsnew/3.8.rst:1771 msgid "(Contributed by Eddie Elizondo in :issue:`35810`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1743 +#: ../Doc/whatsnew/3.8.rst:1773 msgid "" "The :c:macro:`Py_DEPRECATED()` macro has been implemented for MSVC. The " "macro now must be placed before the symbol name." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1750 +#: ../Doc/whatsnew/3.8.rst:1780 msgid "(Contributed by Zackery Spytz in :issue:`33407`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1752 +#: ../Doc/whatsnew/3.8.rst:1782 msgid "" "The interpreter does not pretend to support binary compatibility of " "extension types across feature releases, anymore. A :c:type:`PyTypeObject` " @@ -2378,24 +2393,24 @@ msgid "" "before reading :c:member:`~PyTypeObject.tp_finalize`)." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1759 +#: ../Doc/whatsnew/3.8.rst:1789 msgid "(Contributed by Antoine Pitrou in :issue:`32388`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1761 +#: ../Doc/whatsnew/3.8.rst:1791 msgid "" "The :c:func:`PyCode_New` has a new parameter in the second position " "(*posonlyargcount*) to support :pep:`570`, indicating the number of " "positional-only arguments." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1764 +#: ../Doc/whatsnew/3.8.rst:1794 msgid "" "The functions :c:func:`PyNode_AddChild` and :c:func:`PyParser_AddToken` now " "accept two additional ``int`` arguments *end_lineno* and *end_col_offset*." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1769 +#: ../Doc/whatsnew/3.8.rst:1799 msgid "" "The :file:`libpython38.a` file to allow MinGW tools to link directly " "against :file:`python38.dll` is no longer included in the regular Windows " @@ -2404,7 +2419,7 @@ msgid "" "package::" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1777 +#: ../Doc/whatsnew/3.8.rst:1807 msgid "" "The location of an installed :file:`pythonXY.dll` will depend on the " "installation options and the version and language of Windows. See :ref:" @@ -2413,11 +2428,11 @@ msgid "" "the :file:`libs` directory under your Python installation." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1787 +#: ../Doc/whatsnew/3.8.rst:1817 msgid "CPython bytecode changes" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1789 +#: ../Doc/whatsnew/3.8.rst:1819 msgid "" "The interpreter loop has been simplified by moving the logic of unrolling " "the stack of blocks into the compiler. The compiler emits now explicit " @@ -2425,7 +2440,7 @@ msgid "" "code for :keyword:`break`, :keyword:`continue` and :keyword:`return`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1795 +#: ../Doc/whatsnew/3.8.rst:1825 msgid "" "Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, :opcode:" "`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes :opcode:" @@ -2434,20 +2449,20 @@ msgid "" "`WITH_CLEANUP_START`." msgstr "" -#: ../Doc/whatsnew/3.8.rst:1801 +#: ../Doc/whatsnew/3.8.rst:1831 msgid "" "(Contributed by Mark Shannon, Antoine Pitrou and Serhiy Storchaka in :issue:" "`17611`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1804 +#: ../Doc/whatsnew/3.8.rst:1834 msgid "" "Added new opcode :opcode:`END_ASYNC_FOR` for handling exceptions raised when " "awaiting a next item in an :keyword:`async for` loop. (Contributed by Serhiy " "Storchaka in :issue:`33041`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1808 +#: ../Doc/whatsnew/3.8.rst:1838 msgid "" "The :opcode:`MAP_ADD` now expects the value as the first element in the " "stack and the key as the second element. This change was made so the key is " @@ -2455,11 +2470,11 @@ msgid "" "by :pep:`572`. (Contributed by Jörn Heissler in :issue:`35224`.)" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1815 +#: ../Doc/whatsnew/3.8.rst:1845 msgid "Demos and Tools" msgstr "" -#: ../Doc/whatsnew/3.8.rst:1817 +#: ../Doc/whatsnew/3.8.rst:1847 msgid "" "Added a benchmark script for timing various ways to access variables: " "``Tools/scripts/var_access_benchmark.py``. (Contributed by Raymond Hettinger "