forked from AFPy/python-docs-fr
Make merge (#1655)
This commit is contained in:
parent
4d36815d90
commit
a2b66f2e71
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-08-24 09:01+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -60,26 +60,44 @@ msgid ""
|
|||
"initialized, it must call :c:func:`PyObject_GC_Track`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:39
|
||||
#: c-api/gcsupport.rst:37
|
||||
msgid ""
|
||||
"If a type adds the Py_TPFLAGS_HAVE_GC, then it *must* implement at least a :"
|
||||
"c:member:`~PyTypeObject.tp_traverse` handler or explicitly use one from its "
|
||||
"subclass or subclasses."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:41
|
||||
msgid ""
|
||||
"When calling :c:func:`PyType_Ready` or some of the APIs that indirectly call "
|
||||
"it like :c:func:`PyType_FromSpecWithBases` or :c:func:`PyType_FromSpec` the "
|
||||
"interpreter will automatically populate the :c:member:`~PyTypeObject."
|
||||
"tp_flags`, :c:member:`~PyTypeObject.tp_traverse` and :c:member:"
|
||||
"`~PyTypeObject.tp_clear` fields if the type inherits from a class that "
|
||||
"implements the garbage collector protocol and the child class does *not* "
|
||||
"include the :const:`Py_TPFLAGS_HAVE_GC` flag."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:51
|
||||
msgid ""
|
||||
"Analogous to :c:func:`PyObject_New` but for container objects with the :"
|
||||
"const:`Py_TPFLAGS_HAVE_GC` flag set."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:45
|
||||
#: c-api/gcsupport.rst:57
|
||||
msgid ""
|
||||
"Analogous to :c:func:`PyObject_NewVar` but for container objects with the :"
|
||||
"const:`Py_TPFLAGS_HAVE_GC` flag set."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:51
|
||||
#: c-api/gcsupport.rst:63
|
||||
msgid ""
|
||||
"Resize an object allocated by :c:func:`PyObject_NewVar`. Returns the "
|
||||
"resized object or ``NULL`` on failure. *op* must not be tracked by the "
|
||||
"collector yet."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:57
|
||||
#: c-api/gcsupport.rst:69
|
||||
msgid ""
|
||||
"Adds the object *op* to the set of container objects tracked by the "
|
||||
"collector. The collector can run at unexpected times so objects must be "
|
||||
|
@ -88,62 +106,62 @@ msgid ""
|
|||
"usually near the end of the constructor."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:66
|
||||
#: c-api/gcsupport.rst:78
|
||||
msgid ""
|
||||
"Returns non-zero if the object implements the garbage collector protocol, "
|
||||
"otherwise returns 0."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:69
|
||||
#: c-api/gcsupport.rst:81
|
||||
msgid ""
|
||||
"The object cannot be tracked by the garbage collector if this function "
|
||||
"returns 0."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:74
|
||||
#: c-api/gcsupport.rst:86
|
||||
msgid ""
|
||||
"Returns 1 if the object type of *op* implements the GC protocol and *op* is "
|
||||
"being currently tracked by the garbage collector and 0 otherwise."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:77
|
||||
#: c-api/gcsupport.rst:89
|
||||
msgid "This is analogous to the Python function :func:`gc.is_tracked`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:84
|
||||
#: c-api/gcsupport.rst:96
|
||||
msgid ""
|
||||
"Returns 1 if the object type of *op* implements the GC protocol and *op* has "
|
||||
"been already finalized by the garbage collector and 0 otherwise."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:87
|
||||
#: c-api/gcsupport.rst:99
|
||||
msgid "This is analogous to the Python function :func:`gc.is_finalized`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:91
|
||||
#: c-api/gcsupport.rst:103
|
||||
msgid ""
|
||||
"Similarly, the deallocator for the object must conform to a similar pair of "
|
||||
"rules:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:94
|
||||
#: c-api/gcsupport.rst:106
|
||||
msgid ""
|
||||
"Before fields which refer to other containers are invalidated, :c:func:"
|
||||
"`PyObject_GC_UnTrack` must be called."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:97
|
||||
#: c-api/gcsupport.rst:109
|
||||
msgid ""
|
||||
"The object's memory must be deallocated using :c:func:`PyObject_GC_Del`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:102
|
||||
#: c-api/gcsupport.rst:114
|
||||
msgid ""
|
||||
"Releases memory allocated to an object using :c:func:`PyObject_GC_New` or :c:"
|
||||
"func:`PyObject_GC_NewVar`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:108
|
||||
#: c-api/gcsupport.rst:120
|
||||
msgid ""
|
||||
"Remove the object *op* from the set of container objects tracked by the "
|
||||
"collector. Note that :c:func:`PyObject_GC_Track` can be called again on "
|
||||
|
@ -153,19 +171,19 @@ msgid ""
|
|||
"handler become invalid."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:117
|
||||
#: c-api/gcsupport.rst:129
|
||||
msgid ""
|
||||
"The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros "
|
||||
"have been removed from the public C API."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:120
|
||||
#: c-api/gcsupport.rst:132
|
||||
msgid ""
|
||||
"The :c:member:`~PyTypeObject.tp_traverse` handler accepts a function "
|
||||
"parameter of this type:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:125
|
||||
#: c-api/gcsupport.rst:137
|
||||
msgid ""
|
||||
"Type of the visitor function passed to the :c:member:`~PyTypeObject."
|
||||
"tp_traverse` handler. The function should be called with an object to "
|
||||
|
@ -175,13 +193,13 @@ msgid ""
|
|||
"users will need to write their own visitor functions."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:132
|
||||
#: c-api/gcsupport.rst:144
|
||||
msgid ""
|
||||
"The :c:member:`~PyTypeObject.tp_traverse` handler must have the following "
|
||||
"type:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:137
|
||||
#: c-api/gcsupport.rst:149
|
||||
msgid ""
|
||||
"Traversal function for a container object. Implementations must call the "
|
||||
"*visit* function for each object directly contained by *self*, with the "
|
||||
|
@ -191,7 +209,7 @@ msgid ""
|
|||
"returned immediately."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:144
|
||||
#: c-api/gcsupport.rst:156
|
||||
msgid ""
|
||||
"To simplify writing :c:member:`~PyTypeObject.tp_traverse` handlers, a :c:"
|
||||
"func:`Py_VISIT` macro is provided. In order to use this macro, the :c:"
|
||||
|
@ -199,20 +217,20 @@ msgid ""
|
|||
"exactly *visit* and *arg*:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:151
|
||||
#: c-api/gcsupport.rst:163
|
||||
msgid ""
|
||||
"If *o* is not ``NULL``, call the *visit* callback, with arguments *o* and "
|
||||
"*arg*. If *visit* returns a non-zero value, then return it. Using this "
|
||||
"macro, :c:member:`~PyTypeObject.tp_traverse` handlers look like::"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:164
|
||||
#: c-api/gcsupport.rst:176
|
||||
msgid ""
|
||||
"The :c:member:`~PyTypeObject.tp_clear` handler must be of the :c:type:"
|
||||
"`inquiry` type, or ``NULL`` if the object is immutable."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/gcsupport.rst:170
|
||||
#: c-api/gcsupport.rst:182
|
||||
msgid ""
|
||||
"Drop references that may have created reference cycles. Immutable objects "
|
||||
"do not have to define this method since they can never directly create "
|
||||
|
|
104
c-api/type.po
104
c-api/type.po
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-01-27 19:26+0100\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2018-02-15 00:33+0100\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -110,7 +110,17 @@ msgid ""
|
|||
"and sets an exception on error."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:102
|
||||
#: c-api/type.rst:101
|
||||
msgid ""
|
||||
"If some of the base classes implements the GC protocol and the provided type "
|
||||
"does not include the :const:`Py_TPFLAGS_HAVE_GC` in its flags, then the GC "
|
||||
"protocol will be automatically implemented from its parents. On the "
|
||||
"contrary, if the type being created does include :const:`Py_TPFLAGS_HAVE_GC` "
|
||||
"in its flags then it **must** implement the GC protocol itself by at least "
|
||||
"implementing the :c:member:`~PyTypeObject.tp_traverse` handle."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:111
|
||||
msgid ""
|
||||
"Return the function pointer stored in the given slot. If the result is "
|
||||
"``NULL``, this indicates that either the slot is ``NULL``, or that the "
|
||||
|
@ -118,28 +128,28 @@ msgid ""
|
|||
"result pointer into the appropriate function type."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:108
|
||||
#: c-api/type.rst:117
|
||||
msgid ""
|
||||
"See :c:member:`PyType_Slot.slot` for possible values of the *slot* argument."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:110
|
||||
#: c-api/type.rst:119
|
||||
msgid "An exception is raised if *type* is not a heap type."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:116
|
||||
#: c-api/type.rst:125
|
||||
msgid ""
|
||||
"Return the module object associated with the given type when the type was "
|
||||
"created using :c:func:`PyType_FromModuleAndSpec`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:137
|
||||
#: c-api/type.rst:146
|
||||
msgid ""
|
||||
"If no module is associated with the given type, sets :py:class:`TypeError` "
|
||||
"and returns ``NULL``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:122
|
||||
#: c-api/type.rst:131
|
||||
msgid ""
|
||||
"This function is usually used to get the module in which a method is "
|
||||
"defined. Note that in such a method, ``PyType_GetModule(Py_TYPE(self))`` may "
|
||||
|
@ -149,49 +159,49 @@ msgid ""
|
|||
"defines the method."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:133
|
||||
#: c-api/type.rst:142
|
||||
msgid ""
|
||||
"Return the state of the module object associated with the given type. This "
|
||||
"is a shortcut for calling :c:func:`PyModule_GetState()` on the result of :c:"
|
||||
"func:`PyType_GetModule`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:140
|
||||
#: c-api/type.rst:149
|
||||
msgid ""
|
||||
"If the *type* has an associated module but its state is ``NULL``, returns "
|
||||
"``NULL`` without setting an exception."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:147
|
||||
#: c-api/type.rst:156
|
||||
msgid "Creating Heap-Allocated Types"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:149
|
||||
#: c-api/type.rst:158
|
||||
msgid ""
|
||||
"The following functions and structs are used to create :ref:`heap types "
|
||||
"<heap-types>`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:154
|
||||
#: c-api/type.rst:163
|
||||
msgid ""
|
||||
"Creates and returns a heap type object from the *spec* (:const:"
|
||||
"`Py_TPFLAGS_HEAPTYPE`)."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:157
|
||||
#: c-api/type.rst:166
|
||||
msgid ""
|
||||
"If *bases* is a tuple, the created heap type contains all types contained in "
|
||||
"it as base types."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:160
|
||||
#: c-api/type.rst:169
|
||||
msgid ""
|
||||
"If *bases* is ``NULL``, the *Py_tp_bases* slot is used instead. If that also "
|
||||
"is ``NULL``, the *Py_tp_base* slot is used instead. If that also is "
|
||||
"``NULL``, the new type derives from :class:`object`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:164
|
||||
#: c-api/type.rst:173
|
||||
msgid ""
|
||||
"The *module* argument can be used to record the module in which the new "
|
||||
"class is defined. It must be a module object or ``NULL``. If not ``NULL``, "
|
||||
|
@ -200,59 +210,59 @@ msgid ""
|
|||
"subclasses; it must be specified for each class individually."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:171
|
||||
#: c-api/type.rst:180
|
||||
msgid "This function calls :c:func:`PyType_Ready` on the new type."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:177
|
||||
#: c-api/type.rst:186
|
||||
msgid "Equivalent to ``PyType_FromModuleAndSpec(NULL, spec, bases)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:183
|
||||
#: c-api/type.rst:192
|
||||
msgid "Equivalent to ``PyType_FromSpecWithBases(spec, NULL)``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:187
|
||||
#: c-api/type.rst:196
|
||||
msgid "Structure defining a type's behavior."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:191
|
||||
#: c-api/type.rst:200
|
||||
msgid "Name of the type, used to set :c:member:`PyTypeObject.tp_name`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:196
|
||||
#: c-api/type.rst:205
|
||||
msgid ""
|
||||
"Size of the instance in bytes, used to set :c:member:`PyTypeObject."
|
||||
"tp_basicsize` and :c:member:`PyTypeObject.tp_itemsize`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:202
|
||||
#: c-api/type.rst:211
|
||||
msgid "Type flags, used to set :c:member:`PyTypeObject.tp_flags`."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:204
|
||||
#: c-api/type.rst:213
|
||||
msgid ""
|
||||
"If the ``Py_TPFLAGS_HEAPTYPE`` flag is not set, :c:func:"
|
||||
"`PyType_FromSpecWithBases` sets it automatically."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:209
|
||||
#: c-api/type.rst:218
|
||||
msgid ""
|
||||
"Array of :c:type:`PyType_Slot` structures. Terminated by the special slot "
|
||||
"value ``{0, NULL}``."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:214
|
||||
#: c-api/type.rst:223
|
||||
msgid ""
|
||||
"Structure defining optional functionality of a type, containing a slot ID "
|
||||
"and a value pointer."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:219
|
||||
#: c-api/type.rst:228
|
||||
msgid "A slot ID."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:221
|
||||
#: c-api/type.rst:230
|
||||
msgid ""
|
||||
"Slot IDs are named like the field names of the structures :c:type:"
|
||||
"`PyTypeObject`, :c:type:`PyNumberMethods`, :c:type:`PySequenceMethods`, :c:"
|
||||
|
@ -260,97 +270,97 @@ msgid ""
|
|||
"prefix. For example, use:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:227
|
||||
#: c-api/type.rst:236
|
||||
msgid "``Py_tp_dealloc`` to set :c:member:`PyTypeObject.tp_dealloc`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:228
|
||||
#: c-api/type.rst:237
|
||||
msgid "``Py_nb_add`` to set :c:member:`PyNumberMethods.nb_add`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:229
|
||||
#: c-api/type.rst:238
|
||||
msgid "``Py_sq_length`` to set :c:member:`PySequenceMethods.sq_length`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:231
|
||||
#: c-api/type.rst:240
|
||||
msgid ""
|
||||
"The following fields cannot be set at all using :c:type:`PyType_Spec` and :c:"
|
||||
"type:`PyType_Slot`:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:234
|
||||
#: c-api/type.rst:243
|
||||
msgid ":c:member:`~PyTypeObject.tp_dict`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:235
|
||||
#: c-api/type.rst:244
|
||||
msgid ":c:member:`~PyTypeObject.tp_mro`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:236
|
||||
#: c-api/type.rst:245
|
||||
msgid ":c:member:`~PyTypeObject.tp_cache`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:237
|
||||
#: c-api/type.rst:246
|
||||
msgid ":c:member:`~PyTypeObject.tp_subclasses`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:238
|
||||
#: c-api/type.rst:247
|
||||
msgid ":c:member:`~PyTypeObject.tp_weaklist`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:239
|
||||
#: c-api/type.rst:248
|
||||
msgid ":c:member:`~PyTypeObject.tp_vectorcall`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:240
|
||||
#: c-api/type.rst:249
|
||||
msgid ""
|
||||
":c:member:`~PyTypeObject.tp_weaklistoffset` (see :ref:`PyMemberDef "
|
||||
"<pymemberdef-offsets>`)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:242
|
||||
#: c-api/type.rst:251
|
||||
msgid ""
|
||||
":c:member:`~PyTypeObject.tp_dictoffset` (see :ref:`PyMemberDef <pymemberdef-"
|
||||
"offsets>`)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:244
|
||||
#: c-api/type.rst:253
|
||||
msgid ""
|
||||
":c:member:`~PyTypeObject.tp_vectorcall_offset` (see :ref:`PyMemberDef "
|
||||
"<pymemberdef-offsets>`)"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:247
|
||||
#: c-api/type.rst:256
|
||||
msgid ""
|
||||
"The following fields cannot be set using :c:type:`PyType_Spec` and :c:type:"
|
||||
"`PyType_Slot` under the limited API:"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:250
|
||||
#: c-api/type.rst:259
|
||||
msgid ":c:member:`~PyBufferProcs.bf_getbuffer`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:251
|
||||
#: c-api/type.rst:260
|
||||
msgid ":c:member:`~PyBufferProcs.bf_releasebuffer`"
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:253
|
||||
#: c-api/type.rst:262
|
||||
msgid ""
|
||||
"Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be problematic on "
|
||||
"some platforms. To avoid issues, use the *bases* argument of :py:func:"
|
||||
"`PyType_FromSpecWithBases` instead."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:260
|
||||
#: c-api/type.rst:269
|
||||
msgid "Slots in :c:type:`PyBufferProcs` in may be set in the unlimited API."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:264
|
||||
#: c-api/type.rst:273
|
||||
msgid ""
|
||||
"The desired value of the slot. In most cases, this is a pointer to a "
|
||||
"function."
|
||||
msgstr ""
|
||||
|
||||
#: c-api/type.rst:267
|
||||
#: c-api/type.rst:276
|
||||
msgid "May not be ``NULL``."
|
||||
msgstr ""
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-08-24 09:01+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2019-09-04 11:44+0200\n"
|
||||
"Last-Translator: Zepmanbc <zepman@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -192,10 +192,11 @@ msgid "FLTK"
|
|||
msgstr "*FLTK*"
|
||||
|
||||
#: faq/gui.rst:93
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Python bindings for `the FLTK toolkit <http://www.fltk.org>`_, a simple yet "
|
||||
"powerful and mature cross-platform windowing system, are available from `the "
|
||||
"PyFLTK project <http://pyfltk.sourceforge.net>`_."
|
||||
"PyFLTK project <https://pyfltk.sourceforge.io/>`_."
|
||||
msgstr ""
|
||||
"Les liaisons Python pour `the FLTK toolkit <http://www.fltk.org>`_, un "
|
||||
"système de fenêtrage multi-plateformes simple mais puissant et mûr, sont "
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-19 22:36+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2021-01-28 16:02+0100\n"
|
||||
"Last-Translator: Jules Lasne <jules.lasne@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -230,16 +230,15 @@ msgstr "Comment construire un exécutable depuis un script Python ?"
|
|||
|
||||
#: faq/windows.rst:143
|
||||
msgid ""
|
||||
"See `cx_Freeze <https://cx-freeze.readthedocs.io/en/latest/>`_ and `py2exe "
|
||||
"<http://www.py2exe.org/>`_, both are distutils extensions that allow you to "
|
||||
"create console and GUI executables from Python code."
|
||||
"See :ref:`faq-create-standalone-binary` for a list of tools that can be used "
|
||||
"to make executables."
|
||||
msgstr ""
|
||||
|
||||
#: faq/windows.rst:149
|
||||
#: faq/windows.rst:148
|
||||
msgid "Is a ``*.pyd`` file the same as a DLL?"
|
||||
msgstr "Est-ce qu'un fichier ``*.pyd`` est la même chose qu'une DLL ?"
|
||||
|
||||
#: faq/windows.rst:151
|
||||
#: faq/windows.rst:150
|
||||
msgid ""
|
||||
"Yes, .pyd files are dll's, but there are a few differences. If you have a "
|
||||
"DLL named ``foo.pyd``, then it must have a function ``PyInit_foo()``. You "
|
||||
|
@ -256,7 +255,7 @@ msgstr ""
|
|||
"l'initialiser. Ne liez pas votre *.exe* avec *foo.lib* car dans ce cas "
|
||||
"Windows aura besoin de la DLL."
|
||||
|
||||
#: faq/windows.rst:158
|
||||
#: faq/windows.rst:157
|
||||
msgid ""
|
||||
"Note that the search path for foo.pyd is PYTHONPATH, not the same as the "
|
||||
"path that Windows uses to search for foo.dll. Also, foo.pyd need not be "
|
||||
|
@ -275,11 +274,11 @@ msgstr ""
|
|||
"``__declspec(dllexport)``. Dans un *.pyd* la liaison est définie dans une "
|
||||
"liste de fonctions disponibles."
|
||||
|
||||
#: faq/windows.rst:167
|
||||
#: faq/windows.rst:166
|
||||
msgid "How can I embed Python into a Windows application?"
|
||||
msgstr "Comment puis-je intégrer Python dans une application Windows ?"
|
||||
|
||||
#: faq/windows.rst:169
|
||||
#: faq/windows.rst:168
|
||||
msgid ""
|
||||
"Embedding the Python interpreter in a Windows app can be summarized as "
|
||||
"follows:"
|
||||
|
@ -287,7 +286,7 @@ msgstr ""
|
|||
"L'intégration de l'interpréteur Python dans une application Windows peut se "
|
||||
"résumer comme suit :"
|
||||
|
||||
#: faq/windows.rst:171
|
||||
#: faq/windows.rst:170
|
||||
msgid ""
|
||||
"Do _not_ build Python into your .exe file directly. On Windows, Python must "
|
||||
"be a DLL to handle importing modules that are themselves DLL's. (This is "
|
||||
|
@ -302,7 +301,7 @@ msgstr ""
|
|||
"est généralement placé dans ``C:\\Windows\\System``. *NN* étant la version "
|
||||
"Python, par exemple « 33 » pour Python 3.3."
|
||||
|
||||
#: faq/windows.rst:177
|
||||
#: faq/windows.rst:176
|
||||
msgid ""
|
||||
"You can link to Python in two different ways. Load-time linking means "
|
||||
"linking against :file:`python{NN}.lib`, while run-time linking means linking "
|
||||
|
@ -317,7 +316,7 @@ msgstr ""
|
|||
"lib* » correspondant à :file:`python{NN}.dll`. Il définit simplement des "
|
||||
"liens symboliques pour l'éditeur de liens.)"
|
||||
|
||||
#: faq/windows.rst:183
|
||||
#: faq/windows.rst:182
|
||||
msgid ""
|
||||
"Run-time linking greatly simplifies link options; everything happens at run "
|
||||
"time. Your code must load :file:`python{NN}.dll` using the Windows "
|
||||
|
@ -336,7 +335,7 @@ msgstr ""
|
|||
"peuvent rendre l'utilisation de ces pointeurs transparente à tout code C qui "
|
||||
"appelle des routines dans l'API C de Python."
|
||||
|
||||
#: faq/windows.rst:190
|
||||
#: faq/windows.rst:189
|
||||
msgid ""
|
||||
"Borland note: convert :file:`python{NN}.lib` to OMF format using Coff2Omf."
|
||||
"exe first."
|
||||
|
@ -344,7 +343,7 @@ msgstr ""
|
|||
"Note Borland : convertir :file:`python{NN}.lib` au format OMF en utilisant "
|
||||
"*Coff2Omf.exe* en premier."
|
||||
|
||||
#: faq/windows.rst:195
|
||||
#: faq/windows.rst:194
|
||||
msgid ""
|
||||
"If you use SWIG, it is easy to create a Python \"extension module\" that "
|
||||
"will make the app's data and methods available to Python. SWIG will handle "
|
||||
|
@ -359,7 +358,7 @@ msgstr ""
|
|||
"n'avez **pas** besoin de créer un fichier DLL, et cela simplifie également "
|
||||
"la liaison."
|
||||
|
||||
#: faq/windows.rst:201
|
||||
#: faq/windows.rst:200
|
||||
msgid ""
|
||||
"SWIG will create an init function (a C function) whose name depends on the "
|
||||
"name of the extension module. For example, if the name of the module is "
|
||||
|
@ -374,7 +373,7 @@ msgstr ""
|
|||
"appelée *initleoc()*. Ceci initialise une classe auxiliaire invisible "
|
||||
"utilisée par la classe *shadow*."
|
||||
|
||||
#: faq/windows.rst:207
|
||||
#: faq/windows.rst:206
|
||||
msgid ""
|
||||
"The reason you can link the C code in step 2 into your .exe file is that "
|
||||
"calling the initialization function is equivalent to importing the module "
|
||||
|
@ -384,7 +383,7 @@ msgstr ""
|
|||
"*fichier.exe* est que l'appel de la fonction d'initialisation équivaut à "
|
||||
"importer le module dans Python ! (C'est le deuxième fait clé non documenté.)"
|
||||
|
||||
#: faq/windows.rst:211
|
||||
#: faq/windows.rst:210
|
||||
msgid ""
|
||||
"In short, you can use the following code to initialize the Python "
|
||||
"interpreter with your extension module."
|
||||
|
@ -392,7 +391,7 @@ msgstr ""
|
|||
"En bref, vous pouvez utiliser le code suivant pour initialiser "
|
||||
"l'interpréteur Python avec votre module d'extension."
|
||||
|
||||
#: faq/windows.rst:222
|
||||
#: faq/windows.rst:221
|
||||
msgid ""
|
||||
"There are two problems with Python's C API which will become apparent if you "
|
||||
"use a compiler other than MSVC, the compiler used to build pythonNN.dll."
|
||||
|
@ -401,7 +400,7 @@ msgstr ""
|
|||
"utilisez un compilateur autre que MSVC, le compilateur utilisé pour "
|
||||
"construire *pythonNN.dll*."
|
||||
|
||||
#: faq/windows.rst:225
|
||||
#: faq/windows.rst:224
|
||||
msgid ""
|
||||
"Problem 1: The so-called \"Very High Level\" functions that take FILE * "
|
||||
"arguments will not work in a multi-compiler environment because each "
|
||||
|
@ -414,7 +413,7 @@ msgstr ""
|
|||
"structure de FILE. Du point de vue de l'implémentation, il s'agit de "
|
||||
"fonctions de très bas niveau."
|
||||
|
||||
#: faq/windows.rst:230
|
||||
#: faq/windows.rst:229
|
||||
msgid ""
|
||||
"Problem 2: SWIG generates the following code when generating wrappers to "
|
||||
"void functions:"
|
||||
|
@ -422,7 +421,7 @@ msgstr ""
|
|||
"Problème 2 : SWIG génère le code suivant lors de la génération "
|
||||
"*d'encapsuleurs* pour annuler les fonctions :"
|
||||
|
||||
#: faq/windows.rst:239
|
||||
#: faq/windows.rst:238
|
||||
msgid ""
|
||||
"Alas, Py_None is a macro that expands to a reference to a complex data "
|
||||
"structure called _Py_NoneStruct inside pythonNN.dll. Again, this code will "
|
||||
|
@ -433,7 +432,7 @@ msgstr ""
|
|||
"une fois, ce code échouera dans un environnement multi-compilateur. "
|
||||
"Remplacez ce code par :"
|
||||
|
||||
#: faq/windows.rst:247
|
||||
#: faq/windows.rst:246
|
||||
msgid ""
|
||||
"It may be possible to use SWIG's ``%typemap`` command to make the change "
|
||||
"automatically, though I have not been able to get this to work (I'm a "
|
||||
|
@ -443,7 +442,7 @@ msgstr ""
|
|||
"le changement automatiquement, bien que je n'ai pas réussi à le faire "
|
||||
"fonctionner (je suis un débutant complet avec SWIG)."
|
||||
|
||||
#: faq/windows.rst:251
|
||||
#: faq/windows.rst:250
|
||||
msgid ""
|
||||
"Using a Python shell script to put up a Python interpreter window from "
|
||||
"inside your Windows app is not a good idea; the resulting window will be "
|
||||
|
@ -464,13 +463,13 @@ msgstr ""
|
|||
"dont vous avez besoin est un objet Python (défini dans votre module "
|
||||
"d'extension) qui contient les méthodes *read()* et *write()*."
|
||||
|
||||
#: faq/windows.rst:260
|
||||
#: faq/windows.rst:259
|
||||
msgid "How do I keep editors from inserting tabs into my Python source?"
|
||||
msgstr ""
|
||||
"Comment empêcher mon éditeur d'utiliser des tabulations dans mes fichiers "
|
||||
"Python ?"
|
||||
|
||||
#: faq/windows.rst:262
|
||||
#: faq/windows.rst:261
|
||||
msgid ""
|
||||
"The FAQ does not recommend using tabs, and the Python style guide, :pep:`8`, "
|
||||
"recommends 4 spaces for distributed Python code; this is also the Emacs "
|
||||
|
@ -481,7 +480,7 @@ msgstr ""
|
|||
"dans les codes Python. C'est aussi le comportement par défaut d'Emacs avec "
|
||||
"Python."
|
||||
|
||||
#: faq/windows.rst:266
|
||||
#: faq/windows.rst:265
|
||||
msgid ""
|
||||
"Under any editor, mixing tabs and spaces is a bad idea. MSVC is no "
|
||||
"different in this respect, and is easily configured to use spaces: Take :"
|
||||
|
@ -495,7 +494,7 @@ msgstr ""
|
|||
"Tabs` et pour le type de fichier par défaut, vous devez mettre *Tab size* et "
|
||||
"*Indent size* à 4, puis sélectionner *Insert spaces*."
|
||||
|
||||
#: faq/windows.rst:271
|
||||
#: faq/windows.rst:270
|
||||
msgid ""
|
||||
"Python raises :exc:`IndentationError` or :exc:`TabError` if mixed tabs and "
|
||||
"spaces are causing problems in leading whitespace. You may also run the :mod:"
|
||||
|
@ -505,13 +504,13 @@ msgstr ""
|
|||
"tabulation et d’indentation pose problème en début de ligne. Vous pouvez "
|
||||
"aussi utiliser le module :mod:`tabnanny` pour détecter ces erreurs."
|
||||
|
||||
#: faq/windows.rst:278
|
||||
#: faq/windows.rst:277
|
||||
msgid "How do I check for a keypress without blocking?"
|
||||
msgstr ""
|
||||
"Comment puis-je vérifier de manière non bloquante qu'une touche a été "
|
||||
"pressée ?"
|
||||
|
||||
#: faq/windows.rst:280
|
||||
#: faq/windows.rst:279
|
||||
msgid ""
|
||||
"Use the :mod:`msvcrt` module. This is a standard Windows-specific extension "
|
||||
"module. It defines a function ``kbhit()`` which checks whether a keyboard "
|
||||
|
|
358
library/ast.po
358
library/ast.po
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-08-24 09:01+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2019-06-10 15:50+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -580,8 +580,8 @@ msgstr ""
|
|||
#: library/asyncio-eventloop.rst:442
|
||||
msgid ""
|
||||
"*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind "
|
||||
"the socket to locally. The *local_host* and *local_port* are looked up "
|
||||
"using ``getaddrinfo()``, similarly to *host* and *port*."
|
||||
"the socket locally. The *local_host* and *local_port* are looked up using "
|
||||
"``getaddrinfo()``, similarly to *host* and *port*."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-eventloop.rst:446 library/asyncio-eventloop.rst:799
|
||||
|
@ -683,8 +683,8 @@ msgstr ""
|
|||
#: library/asyncio-eventloop.rst:520
|
||||
msgid ""
|
||||
"*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind "
|
||||
"the socket to locally. The *local_host* and *local_port* are looked up "
|
||||
"using :meth:`getaddrinfo`."
|
||||
"the socket locally. The *local_host* and *local_port* are looked up using :"
|
||||
"meth:`getaddrinfo`."
|
||||
msgstr ""
|
||||
|
||||
#: library/asyncio-eventloop.rst:524
|
||||
|
|
|
@ -5,14 +5,14 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-19 22:36+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2021-05-17 13:06+0200\n"
|
||||
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Last-Translator: Dimitri Merejkowsky <dimitri@dmerej.info>\n"
|
||||
"X-Generator: Poedit 2.4.3\n"
|
||||
|
||||
#: library/configparser.rst:2
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-01 16:00+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2021-05-23 14:41-0400\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -258,7 +258,7 @@ msgstr "Par exemple ::"
|
|||
msgid "This code is equivalent to::"
|
||||
msgstr "Ce code est équivalent à ::"
|
||||
|
||||
#: library/contextlib.rst:263 library/contextlib.rst:273
|
||||
#: library/contextlib.rst:264 library/contextlib.rst:274
|
||||
msgid "This context manager is :ref:`reentrant <reentrant-cms>`."
|
||||
msgstr "Ce gestionnaire de contexte est :ref:`réentrant <reentrant-cms>`."
|
||||
|
||||
|
@ -279,16 +279,19 @@ msgstr ""
|
|||
"existantes dont la sortie est envoyée vers la sortie standard."
|
||||
|
||||
#: library/contextlib.rst:237
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"For example, the output of :func:`help` normally is sent to *sys.stdout*. "
|
||||
"You can capture that output in a string by redirecting the output to an :"
|
||||
"class:`io.StringIO` object::"
|
||||
"class:`io.StringIO` object. The replacement stream is returned from the "
|
||||
"``__enter__`` method and so is available as the target of the :keyword:"
|
||||
"`with` statement::"
|
||||
msgstr ""
|
||||
"Par exemple, la sortie de :func:`help` est normalement envoyée vers *sys."
|
||||
"stdout*. Vous pouvez capturer cette sortie dans une chaîne de caractères en "
|
||||
"la redirigeant vers un objet :class:`io.StringIO` ::"
|
||||
|
||||
#: library/contextlib.rst:246
|
||||
#: library/contextlib.rst:247
|
||||
msgid ""
|
||||
"To send the output of :func:`help` to a file on disk, redirect the output to "
|
||||
"a regular file::"
|
||||
|
@ -296,11 +299,11 @@ msgstr ""
|
|||
"Pour envoyer la sortie de :func:`help` vers un fichier sur le disque, "
|
||||
"redirigez-la sur un fichier normal ::"
|
||||
|
||||
#: library/contextlib.rst:253
|
||||
#: library/contextlib.rst:254
|
||||
msgid "To send the output of :func:`help` to *sys.stderr*::"
|
||||
msgstr "Pour envoyer la sortie de :func:`help` sur *sys.stderr* ::"
|
||||
|
||||
#: library/contextlib.rst:258
|
||||
#: library/contextlib.rst:259
|
||||
msgid ""
|
||||
"Note that the global side effect on :data:`sys.stdout` means that this "
|
||||
"context manager is not suitable for use in library code and most threaded "
|
||||
|
@ -314,7 +317,7 @@ msgstr ""
|
|||
"Cependant, cela reste une approche utile pour beaucoup de scripts "
|
||||
"utilitaires."
|
||||
|
||||
#: library/contextlib.rst:270
|
||||
#: library/contextlib.rst:271
|
||||
msgid ""
|
||||
"Similar to :func:`~contextlib.redirect_stdout` but redirecting :data:`sys."
|
||||
"stderr` to another file or file-like object."
|
||||
|
@ -322,14 +325,14 @@ msgstr ""
|
|||
"Similaire à :func:`~contextlib.redirect_stdout` mais redirige :data:`sys."
|
||||
"stderr` vers un autre fichier ou objet fichier-compatible."
|
||||
|
||||
#: library/contextlib.rst:280
|
||||
#: library/contextlib.rst:281
|
||||
msgid ""
|
||||
"A base class that enables a context manager to also be used as a decorator."
|
||||
msgstr ""
|
||||
"Une classe mère qui permet à un gestionnaire de contexte d'être aussi "
|
||||
"utilisé comme décorateur."
|
||||
|
||||
#: library/contextlib.rst:282
|
||||
#: library/contextlib.rst:283
|
||||
msgid ""
|
||||
"Context managers inheriting from ``ContextDecorator`` have to implement "
|
||||
"``__enter__`` and ``__exit__`` as normal. ``__exit__`` retains its optional "
|
||||
|
@ -340,7 +343,7 @@ msgstr ""
|
|||
"conserve sa gestion optionnelle des exceptions même lors de l'utilisation en "
|
||||
"décorateur."
|
||||
|
||||
#: library/contextlib.rst:286
|
||||
#: library/contextlib.rst:287
|
||||
msgid ""
|
||||
"``ContextDecorator`` is used by :func:`contextmanager`, so you get this "
|
||||
"functionality automatically."
|
||||
|
@ -348,22 +351,22 @@ msgstr ""
|
|||
"``ContextDecorator`` est utilisé par :func:`contextmanager`, donc vous "
|
||||
"bénéficiez automatiquement de cette fonctionnalité."
|
||||
|
||||
#: library/contextlib.rst:289
|
||||
#: library/contextlib.rst:290
|
||||
msgid "Example of ``ContextDecorator``::"
|
||||
msgstr "Exemple de ``ContextDecorator`` ::"
|
||||
|
||||
#: library/contextlib.rst:318
|
||||
#: library/contextlib.rst:319
|
||||
msgid ""
|
||||
"This change is just syntactic sugar for any construct of the following form::"
|
||||
msgstr ""
|
||||
"Ce changement est simplement un sucre syntaxique pour les constructions de "
|
||||
"la forme suivante ::"
|
||||
|
||||
#: library/contextlib.rst:324
|
||||
#: library/contextlib.rst:325
|
||||
msgid "``ContextDecorator`` lets you instead write::"
|
||||
msgstr "``ContextDecorator`` vous permet d'écrire à la place ::"
|
||||
|
||||
#: library/contextlib.rst:330
|
||||
#: library/contextlib.rst:331
|
||||
msgid ""
|
||||
"It makes it clear that the ``cm`` applies to the whole function, rather than "
|
||||
"just a piece of it (and saving an indentation level is nice, too)."
|
||||
|
@ -372,7 +375,7 @@ msgstr ""
|
|||
"seulement à un morceau en particulier (et gagner un niveau d'indentation est "
|
||||
"toujours appréciable)."
|
||||
|
||||
#: library/contextlib.rst:333
|
||||
#: library/contextlib.rst:334
|
||||
msgid ""
|
||||
"Existing context managers that already have a base class can be extended by "
|
||||
"using ``ContextDecorator`` as a mixin class::"
|
||||
|
@ -380,7 +383,7 @@ msgstr ""
|
|||
"Les gestionnaires de contexte existants qui ont déjà une classe mère peuvent "
|
||||
"être étendus en utilisant ``ContextDecorator`` comme une *mixin* ::"
|
||||
|
||||
#: library/contextlib.rst:346
|
||||
#: library/contextlib.rst:347
|
||||
msgid ""
|
||||
"As the decorated function must be able to be called multiple times, the "
|
||||
"underlying context manager must support use in multiple :keyword:`with` "
|
||||
|
@ -393,7 +396,7 @@ msgstr ""
|
|||
"construction d'origine avec de multiples instructions :keyword:`!with` au "
|
||||
"sein de la fonction doit être utilisée."
|
||||
|
||||
#: library/contextlib.rst:356
|
||||
#: library/contextlib.rst:357
|
||||
msgid ""
|
||||
"A context manager that is designed to make it easy to programmatically "
|
||||
"combine other context managers and cleanup functions, especially those that "
|
||||
|
@ -404,7 +407,7 @@ msgstr ""
|
|||
"nettoyage, spécifiquement ceux qui sont optionnels ou pilotés par des "
|
||||
"données d'entrée."
|
||||
|
||||
#: library/contextlib.rst:360
|
||||
#: library/contextlib.rst:361
|
||||
msgid ""
|
||||
"For example, a set of files may easily be handled in a single with statement "
|
||||
"as follows::"
|
||||
|
@ -412,7 +415,7 @@ msgstr ""
|
|||
"Par exemple, un ensemble de fichiers peut facilement être géré dans une "
|
||||
"unique instruction *with* comme suit ::"
|
||||
|
||||
#: library/contextlib.rst:369
|
||||
#: library/contextlib.rst:370
|
||||
msgid ""
|
||||
"Each instance maintains a stack of registered callbacks that are called in "
|
||||
"reverse order when the instance is closed (either explicitly or implicitly "
|
||||
|
@ -425,7 +428,7 @@ msgstr ""
|
|||
"que ces fonctions ne sont *pas* invoquées implicitement quand l'instance de "
|
||||
"la pile de contextes est collectée par le ramasse-miettes."
|
||||
|
||||
#: library/contextlib.rst:374
|
||||
#: library/contextlib.rst:375
|
||||
msgid ""
|
||||
"This stack model is used so that context managers that acquire their "
|
||||
"resources in their ``__init__`` method (such as file objects) can be handled "
|
||||
|
@ -435,7 +438,7 @@ msgstr ""
|
|||
"acquièrent leurs ressources dans leur méthode ``__init__`` (tels que les "
|
||||
"objets-fichiers) puissent être gérés correctement."
|
||||
|
||||
#: library/contextlib.rst:378
|
||||
#: library/contextlib.rst:379
|
||||
msgid ""
|
||||
"Since registered callbacks are invoked in the reverse order of registration, "
|
||||
"this ends up behaving as if multiple nested :keyword:`with` statements had "
|
||||
|
@ -451,7 +454,7 @@ msgstr ""
|
|||
"de rappel intérieure supprime ou remplace une exception, alors les fonctions "
|
||||
"extérieures reçoivent des arguments basés sur ce nouvel état."
|
||||
|
||||
#: library/contextlib.rst:385
|
||||
#: library/contextlib.rst:386
|
||||
msgid ""
|
||||
"This is a relatively low level API that takes care of the details of "
|
||||
"correctly unwinding the stack of exit callbacks. It provides a suitable "
|
||||
|
@ -463,7 +466,7 @@ msgstr ""
|
|||
"pour des gestionnaires de contexte de plus haut niveau qui manipulent la "
|
||||
"pile de sortie de manière spécifique à l'application."
|
||||
|
||||
#: library/contextlib.rst:394
|
||||
#: library/contextlib.rst:395
|
||||
msgid ""
|
||||
"Enters a new context manager and adds its :meth:`__exit__` method to the "
|
||||
"callback stack. The return value is the result of the context manager's own :"
|
||||
|
@ -473,7 +476,7 @@ msgstr ""
|
|||
"`__exit__` à la pile d'appels. La valeur de retour est le résultat de la "
|
||||
"méthode :meth:`__enter__` du gestionnaire de contexte donné."
|
||||
|
||||
#: library/contextlib.rst:398
|
||||
#: library/contextlib.rst:399
|
||||
msgid ""
|
||||
"These context managers may suppress exceptions just as they normally would "
|
||||
"if used directly as part of a :keyword:`with` statement."
|
||||
|
@ -482,13 +485,13 @@ msgstr ""
|
|||
"feraient normalement s'ils étaient utilisés directement derrière une "
|
||||
"instruction :keyword:`with`."
|
||||
|
||||
#: library/contextlib.rst:403
|
||||
#: library/contextlib.rst:404
|
||||
msgid "Adds a context manager's :meth:`__exit__` method to the callback stack."
|
||||
msgstr ""
|
||||
"Ajoute la méthode :meth:`__exit__` d'un gestionnaire de contexte à la pile "
|
||||
"d'appels."
|
||||
|
||||
#: library/contextlib.rst:405
|
||||
#: library/contextlib.rst:406
|
||||
msgid ""
|
||||
"As ``__enter__`` is *not* invoked, this method can be used to cover part of "
|
||||
"an :meth:`__enter__` implementation with a context manager's own :meth:"
|
||||
|
@ -498,7 +501,7 @@ msgstr ""
|
|||
"pour couvrir une partie de l'implémentation de :meth:`__enter__` avec la "
|
||||
"propre méthode :meth:`__exit__` d'un gestionnaire de contexte."
|
||||
|
||||
#: library/contextlib.rst:409
|
||||
#: library/contextlib.rst:410
|
||||
msgid ""
|
||||
"If passed an object that is not a context manager, this method assumes it is "
|
||||
"a callback with the same signature as a context manager's :meth:`__exit__` "
|
||||
|
@ -509,7 +512,7 @@ msgstr ""
|
|||
"meth:`__exit__` des gestionnaires de contexte pour l'ajouter directement à "
|
||||
"la pile d'appels."
|
||||
|
||||
#: library/contextlib.rst:413
|
||||
#: library/contextlib.rst:414
|
||||
msgid ""
|
||||
"By returning true values, these callbacks can suppress exceptions the same "
|
||||
"way context manager :meth:`__exit__` methods can."
|
||||
|
@ -518,7 +521,7 @@ msgstr ""
|
|||
"exceptions de la même manière que le peuvent les méthodes :meth:`__exit__` "
|
||||
"des gestionnaires de contexte."
|
||||
|
||||
#: library/contextlib.rst:416
|
||||
#: library/contextlib.rst:417
|
||||
msgid ""
|
||||
"The passed in object is returned from the function, allowing this method to "
|
||||
"be used as a function decorator."
|
||||
|
@ -526,7 +529,7 @@ msgstr ""
|
|||
"L'objet passé en paramètre est renvoyé par la fonction, ce qui permet à la "
|
||||
"méthode d'être utilisée comme décorateur de fonction."
|
||||
|
||||
#: library/contextlib.rst:421
|
||||
#: library/contextlib.rst:422
|
||||
msgid ""
|
||||
"Accepts an arbitrary callback function and arguments and adds it to the "
|
||||
"callback stack."
|
||||
|
@ -534,7 +537,7 @@ msgstr ""
|
|||
"Accepte une fonction arbitraire et ses arguments et les ajoute à la pile des "
|
||||
"fonctions de rappel."
|
||||
|
||||
#: library/contextlib.rst:424
|
||||
#: library/contextlib.rst:425
|
||||
msgid ""
|
||||
"Unlike the other methods, callbacks added this way cannot suppress "
|
||||
"exceptions (as they are never passed the exception details)."
|
||||
|
@ -543,7 +546,7 @@ msgstr ""
|
|||
"cette manière ne peuvent pas supprimer les exceptions (puisqu'elles ne "
|
||||
"reçoivent jamais les détails de l'exception)."
|
||||
|
||||
#: library/contextlib.rst:427
|
||||
#: library/contextlib.rst:428
|
||||
msgid ""
|
||||
"The passed in callback is returned from the function, allowing this method "
|
||||
"to be used as a function decorator."
|
||||
|
@ -551,7 +554,7 @@ msgstr ""
|
|||
"La fonction passée en paramètre est renvoyée par la méthode, ce qui permet à "
|
||||
"la méthode d'être utilisée comme décorateur de fonction."
|
||||
|
||||
#: library/contextlib.rst:432
|
||||
#: library/contextlib.rst:433
|
||||
msgid ""
|
||||
"Transfers the callback stack to a fresh :class:`ExitStack` instance and "
|
||||
"returns it. No callbacks are invoked by this operation - instead, they will "
|
||||
|
@ -563,7 +566,7 @@ msgstr ""
|
|||
"la place, elles sont dorénavant invoquées quand la nouvelle pile sera close "
|
||||
"(soit explicitement soit implicitement à la fin d'un bloc :keyword:`with`)."
|
||||
|
||||
#: library/contextlib.rst:437
|
||||
#: library/contextlib.rst:438
|
||||
msgid ""
|
||||
"For example, a group of files can be opened as an \"all or nothing\" "
|
||||
"operation as follows::"
|
||||
|
@ -571,7 +574,7 @@ msgstr ""
|
|||
"Par exemple, un groupe de fichiers peut être ouvert comme une opération "
|
||||
"« tout ou rien » comme suit ::"
|
||||
|
||||
#: library/contextlib.rst:451
|
||||
#: library/contextlib.rst:452
|
||||
msgid ""
|
||||
"Immediately unwinds the callback stack, invoking callbacks in the reverse "
|
||||
"order of registration. For any context managers and exit callbacks "
|
||||
|
@ -582,7 +585,7 @@ msgstr ""
|
|||
"et fonction de sortie enregistré, les arguments passés indiqueront qu'aucune "
|
||||
"exception n'est survenue."
|
||||
|
||||
#: library/contextlib.rst:458
|
||||
#: library/contextlib.rst:459
|
||||
msgid ""
|
||||
"An :ref:`asynchronous context manager <async-context-managers>`, similar to :"
|
||||
"class:`ExitStack`, that supports combining both synchronous and asynchronous "
|
||||
|
@ -593,7 +596,7 @@ msgstr ""
|
|||
"de contexte synchrones et asynchrones, ainsi que la gestion de coroutines "
|
||||
"pour la logique de nettoyage."
|
||||
|
||||
#: library/contextlib.rst:463
|
||||
#: library/contextlib.rst:464
|
||||
msgid ""
|
||||
"The :meth:`close` method is not implemented, :meth:`aclose` must be used "
|
||||
"instead."
|
||||
|
@ -601,14 +604,14 @@ msgstr ""
|
|||
"La méthode :meth:`close` n'est pas implémentée, :meth:`aclose` doit plutôt "
|
||||
"être utilisée."
|
||||
|
||||
#: library/contextlib.rst:468
|
||||
#: library/contextlib.rst:469
|
||||
msgid ""
|
||||
"Similar to :meth:`enter_context` but expects an asynchronous context manager."
|
||||
msgstr ""
|
||||
"Similaire à :meth:`enter_context` mais attend un gestionnaire de contexte "
|
||||
"asynchrone."
|
||||
|
||||
#: library/contextlib.rst:473
|
||||
#: library/contextlib.rst:474
|
||||
msgid ""
|
||||
"Similar to :meth:`push` but expects either an asynchronous context manager "
|
||||
"or a coroutine function."
|
||||
|
@ -616,24 +619,24 @@ msgstr ""
|
|||
"Similaire à :meth:`push` mais attend soit un gestionnaire de contexte "
|
||||
"asynchrone soit une fonction coroutine."
|
||||
|
||||
#: library/contextlib.rst:478
|
||||
#: library/contextlib.rst:479
|
||||
msgid "Similar to :meth:`callback` but expects a coroutine function."
|
||||
msgstr "Similaire à :meth:`callback` mais attend une fonction coroutine."
|
||||
|
||||
#: library/contextlib.rst:482
|
||||
#: library/contextlib.rst:483
|
||||
msgid "Similar to :meth:`close` but properly handles awaitables."
|
||||
msgstr ""
|
||||
"Similaire à :meth:`close` mais gère correctement les tâches asynchrones."
|
||||
|
||||
#: library/contextlib.rst:484
|
||||
#: library/contextlib.rst:485
|
||||
msgid "Continuing the example for :func:`asynccontextmanager`::"
|
||||
msgstr "En continuité de l'exemple de :func:`asynccontextmanager` ::"
|
||||
|
||||
#: library/contextlib.rst:496
|
||||
#: library/contextlib.rst:497
|
||||
msgid "Examples and Recipes"
|
||||
msgstr "Exemples et Recettes"
|
||||
|
||||
#: library/contextlib.rst:498
|
||||
#: library/contextlib.rst:499
|
||||
msgid ""
|
||||
"This section describes some examples and recipes for making effective use of "
|
||||
"the tools provided by :mod:`contextlib`."
|
||||
|
@ -641,11 +644,11 @@ msgstr ""
|
|||
"Cette section décrit quelques exemples et recettes pour décrire une "
|
||||
"utilisation réelle des outils fournis par :mod:`contextlib`."
|
||||
|
||||
#: library/contextlib.rst:503
|
||||
#: library/contextlib.rst:504
|
||||
msgid "Supporting a variable number of context managers"
|
||||
msgstr "Gérer un nombre variable de gestionnaires de contexte"
|
||||
|
||||
#: library/contextlib.rst:505
|
||||
#: library/contextlib.rst:506
|
||||
msgid ""
|
||||
"The primary use case for :class:`ExitStack` is the one given in the class "
|
||||
"documentation: supporting a variable number of context managers and other "
|
||||
|
@ -662,7 +665,7 @@ msgstr ""
|
|||
"collection spécifique de fichiers de l'utilisateur), ou de certains "
|
||||
"gestionnaires de contexte qui peuvent être optionnels ::"
|
||||
|
||||
#: library/contextlib.rst:520
|
||||
#: library/contextlib.rst:521
|
||||
msgid ""
|
||||
"As shown, :class:`ExitStack` also makes it quite easy to use :keyword:`with` "
|
||||
"statements to manage arbitrary resources that don't natively support the "
|
||||
|
@ -672,11 +675,11 @@ msgstr ""
|
|||
"instructions :keyword:`with` pour gérer des ressources arbitraires qui ne "
|
||||
"gèrent pas nativement le protocole des gestionnaires de contexte."
|
||||
|
||||
#: library/contextlib.rst:526
|
||||
#: library/contextlib.rst:527
|
||||
msgid "Catching exceptions from ``__enter__`` methods"
|
||||
msgstr "Attraper des exceptions depuis les méthodes ``__enter__``"
|
||||
|
||||
#: library/contextlib.rst:528
|
||||
#: library/contextlib.rst:529
|
||||
msgid ""
|
||||
"It is occasionally desirable to catch exceptions from an ``__enter__`` "
|
||||
"method implementation, *without* inadvertently catching exceptions from the :"
|
||||
|
@ -691,7 +694,7 @@ msgstr ""
|
|||
"`ExitStack`, les étapes du protocole des gestionnaires de contexte peuvent "
|
||||
"être légèrement séparées pour permettre le code suivant ::"
|
||||
|
||||
#: library/contextlib.rst:543
|
||||
#: library/contextlib.rst:544
|
||||
msgid ""
|
||||
"Actually needing to do this is likely to indicate that the underlying API "
|
||||
"should be providing a direct resource management interface for use with :"
|
||||
|
@ -710,11 +713,11 @@ msgstr ""
|
|||
"gestion de plusieurs situations qui ne peuvent pas être traitées directement "
|
||||
"dans une instruction :keyword:`with`."
|
||||
|
||||
#: library/contextlib.rst:553
|
||||
#: library/contextlib.rst:554
|
||||
msgid "Cleaning up in an ``__enter__`` implementation"
|
||||
msgstr "Nettoyer dans une méthode ``__enter__``"
|
||||
|
||||
#: library/contextlib.rst:555
|
||||
#: library/contextlib.rst:556
|
||||
msgid ""
|
||||
"As noted in the documentation of :meth:`ExitStack.push`, this method can be "
|
||||
"useful in cleaning up an already allocated resource if later steps in the :"
|
||||
|
@ -724,7 +727,7 @@ msgstr ""
|
|||
"peut être utile pour nettoyer une ressource déjà allouée si les dernières "
|
||||
"étapes de l'implémentation de :meth:`__enter__` échouent."
|
||||
|
||||
#: library/contextlib.rst:559
|
||||
#: library/contextlib.rst:560
|
||||
msgid ""
|
||||
"Here's an example of doing this for a context manager that accepts resource "
|
||||
"acquisition and release functions, along with an optional validation "
|
||||
|
@ -734,11 +737,11 @@ msgstr ""
|
|||
"d'acquisition de ressources et de libération, avec une méthode de validation "
|
||||
"optionnelle, et qui les adapte au protocole des gestionnaires de contexte ::"
|
||||
|
||||
#: library/contextlib.rst:599
|
||||
#: library/contextlib.rst:600
|
||||
msgid "Replacing any use of ``try-finally`` and flag variables"
|
||||
msgstr "Remplacer un ``try-finally`` avec une option variable"
|
||||
|
||||
#: library/contextlib.rst:601
|
||||
#: library/contextlib.rst:602
|
||||
msgid ""
|
||||
"A pattern you will sometimes see is a ``try-finally`` statement with a flag "
|
||||
"variable to indicate whether or not the body of the ``finally`` clause "
|
||||
|
@ -750,7 +753,7 @@ msgstr ""
|
|||
"ou non. Dans sa forme la plus simple (qui ne peut pas déjà être gérée avec "
|
||||
"juste une clause ``except``), cela ressemble à ::"
|
||||
|
||||
#: library/contextlib.rst:615
|
||||
#: library/contextlib.rst:616
|
||||
msgid ""
|
||||
"As with any ``try`` statement based code, this can cause problems for "
|
||||
"development and review, because the setup code and the cleanup code can end "
|
||||
|
@ -761,7 +764,7 @@ msgstr ""
|
|||
"codes d'installation et de nettoyage peuvent finir par être séparés par des "
|
||||
"sections de code arbitrairement longues."
|
||||
|
||||
#: library/contextlib.rst:619
|
||||
#: library/contextlib.rst:620
|
||||
msgid ""
|
||||
":class:`ExitStack` makes it possible to instead register a callback for "
|
||||
"execution at the end of a ``with`` statement, and then later decide to skip "
|
||||
|
@ -771,7 +774,7 @@ msgstr ""
|
|||
"rappel pour être exécutée à la fin d'une instruction ``with``, et décider "
|
||||
"ensuite de passer l'exécution de cet appel ::"
|
||||
|
||||
#: library/contextlib.rst:631
|
||||
#: library/contextlib.rst:632
|
||||
msgid ""
|
||||
"This allows the intended cleanup up behaviour to be made explicit up front, "
|
||||
"rather than requiring a separate flag variable."
|
||||
|
@ -779,7 +782,7 @@ msgstr ""
|
|||
"Cela permet de rendre explicite dès le départ le comportement de nettoyage "
|
||||
"attendu, plutôt que de nécessiter une option séparée."
|
||||
|
||||
#: library/contextlib.rst:634
|
||||
#: library/contextlib.rst:635
|
||||
msgid ""
|
||||
"If a particular application uses this pattern a lot, it can be simplified "
|
||||
"even further by means of a small helper class::"
|
||||
|
@ -787,7 +790,7 @@ msgstr ""
|
|||
"Si une application particulière utilise beaucoup ce modèle, cela peut-être "
|
||||
"simplifié encore plus au moyen d'une petite classe d'aide ::"
|
||||
|
||||
#: library/contextlib.rst:652
|
||||
#: library/contextlib.rst:653
|
||||
msgid ""
|
||||
"If the resource cleanup isn't already neatly bundled into a standalone "
|
||||
"function, then it is still possible to use the decorator form of :meth:"
|
||||
|
@ -798,7 +801,7 @@ msgstr ""
|
|||
"`ExitStack.callback` pour déclarer la fonction de nettoyage de ressource en "
|
||||
"avance ::"
|
||||
|
||||
#: library/contextlib.rst:667
|
||||
#: library/contextlib.rst:668
|
||||
msgid ""
|
||||
"Due to the way the decorator protocol works, a callback function declared "
|
||||
"this way cannot take any parameters. Instead, any resources to be released "
|
||||
|
@ -809,12 +812,12 @@ msgstr ""
|
|||
"doivent être récupérées depuis l'extérieur comme des variables de fermeture "
|
||||
"(*closure*)."
|
||||
|
||||
#: library/contextlib.rst:673
|
||||
#: library/contextlib.rst:674
|
||||
msgid "Using a context manager as a function decorator"
|
||||
msgstr ""
|
||||
"Utiliser un gestionnaire de contexte en tant que décorateur de fonction"
|
||||
|
||||
#: library/contextlib.rst:675
|
||||
#: library/contextlib.rst:676
|
||||
msgid ""
|
||||
":class:`ContextDecorator` makes it possible to use a context manager in both "
|
||||
"an ordinary ``with`` statement and also as a function decorator."
|
||||
|
@ -823,7 +826,7 @@ msgstr ""
|
|||
"contexte à la fois ordinairement avec une instruction ``with`` ou comme un "
|
||||
"décorateur de fonction."
|
||||
|
||||
#: library/contextlib.rst:678
|
||||
#: library/contextlib.rst:679
|
||||
msgid ""
|
||||
"For example, it is sometimes useful to wrap functions or groups of "
|
||||
"statements with a logger that can track the time of entry and time of exit. "
|
||||
|
@ -838,17 +841,17 @@ msgstr ""
|
|||
"`ContextDecorator` fournit les deux fonctionnalités en une seule "
|
||||
"définition ::"
|
||||
|
||||
#: library/contextlib.rst:699
|
||||
#: library/contextlib.rst:700
|
||||
msgid "Instances of this class can be used as both a context manager::"
|
||||
msgstr ""
|
||||
"Les instances de cette classe peuvent être utilisées comme gestionnaires de "
|
||||
"contexte ::"
|
||||
|
||||
#: library/contextlib.rst:705
|
||||
#: library/contextlib.rst:706
|
||||
msgid "And also as a function decorator::"
|
||||
msgstr "Et comme décorateurs de fonctions ::"
|
||||
|
||||
#: library/contextlib.rst:712
|
||||
#: library/contextlib.rst:713
|
||||
msgid ""
|
||||
"Note that there is one additional limitation when using context managers as "
|
||||
"function decorators: there's no way to access the return value of :meth:"
|
||||
|
@ -860,11 +863,11 @@ msgstr ""
|
|||
"de retour de :meth:`__enter__`. Si cette valeur est nécessaire, il faut "
|
||||
"utiliser explicitement une instruction ``with``."
|
||||
|
||||
#: library/contextlib.rst:720
|
||||
#: library/contextlib.rst:721
|
||||
msgid ":pep:`343` - The \"with\" statement"
|
||||
msgstr ":pep:`343` - The \"with\" statement"
|
||||
|
||||
#: library/contextlib.rst:720
|
||||
#: library/contextlib.rst:721
|
||||
msgid ""
|
||||
"The specification, background, and examples for the Python :keyword:`with` "
|
||||
"statement."
|
||||
|
@ -872,11 +875,11 @@ msgstr ""
|
|||
"La spécification, les motivations et des exemples de l'instruction :keyword:"
|
||||
"`with` en Python."
|
||||
|
||||
#: library/contextlib.rst:726
|
||||
#: library/contextlib.rst:727
|
||||
msgid "Single use, reusable and reentrant context managers"
|
||||
msgstr "Gestionnaires de contexte à usage unique, réutilisables et réentrants"
|
||||
|
||||
#: library/contextlib.rst:728
|
||||
#: library/contextlib.rst:729
|
||||
msgid ""
|
||||
"Most context managers are written in a way that means they can only be used "
|
||||
"effectively in a :keyword:`with` statement once. These single use context "
|
||||
|
@ -889,7 +892,7 @@ msgstr ""
|
|||
"chaque fois qu'ils sont utilisés — tenter de les utiliser une seconde fois "
|
||||
"lève une exception ou ne fonctionne pas correctement."
|
||||
|
||||
#: library/contextlib.rst:734
|
||||
#: library/contextlib.rst:735
|
||||
msgid ""
|
||||
"This common limitation means that it is generally advisable to create "
|
||||
"context managers directly in the header of the :keyword:`with` statement "
|
||||
|
@ -900,7 +903,7 @@ msgstr ""
|
|||
"`with` où ils sont utilisés (comme montré dans tous les exemples "
|
||||
"d'utilisation au-dessus)."
|
||||
|
||||
#: library/contextlib.rst:738
|
||||
#: library/contextlib.rst:739
|
||||
msgid ""
|
||||
"Files are an example of effectively single use context managers, since the "
|
||||
"first :keyword:`with` statement will close the file, preventing any further "
|
||||
|
@ -911,7 +914,7 @@ msgstr ""
|
|||
"`with` ferme le fichier, empêchant d'autres opérations d'entrée/sortie "
|
||||
"d'être exécutées sur ce fichier."
|
||||
|
||||
#: library/contextlib.rst:742
|
||||
#: library/contextlib.rst:743
|
||||
msgid ""
|
||||
"Context managers created using :func:`contextmanager` are also single use "
|
||||
"context managers, and will complain about the underlying generator failing "
|
||||
|
@ -921,11 +924,11 @@ msgstr ""
|
|||
"usage unique, et se plaindront du fait que le générateur sous-jacent ne "
|
||||
"produise plus de valeur si vous essayez de les utiliser une seconde fois ::"
|
||||
|
||||
#: library/contextlib.rst:770
|
||||
#: library/contextlib.rst:771
|
||||
msgid "Reentrant context managers"
|
||||
msgstr "Gestionnaires de contexte réentrants"
|
||||
|
||||
#: library/contextlib.rst:772
|
||||
#: library/contextlib.rst:773
|
||||
msgid ""
|
||||
"More sophisticated context managers may be \"reentrant\". These context "
|
||||
"managers can not only be used in multiple :keyword:`with` statements, but "
|
||||
|
@ -938,7 +941,7 @@ msgstr ""
|
|||
"l'intérieur* d'une instruction :keyword:`!with` qui utilise déjà ce même "
|
||||
"gestionnaire de contexte."
|
||||
|
||||
#: library/contextlib.rst:777
|
||||
#: library/contextlib.rst:778
|
||||
msgid ""
|
||||
":class:`threading.RLock` is an example of a reentrant context manager, as "
|
||||
"are :func:`suppress` and :func:`redirect_stdout`. Here's a very simple "
|
||||
|
@ -948,7 +951,7 @@ msgstr ""
|
|||
"réentrant, comme le sont aussi :func:`suppress` et :func:`redirect_stdout`. "
|
||||
"Voici un très simple exemple d'utilisation réentrante ::"
|
||||
|
||||
#: library/contextlib.rst:796
|
||||
#: library/contextlib.rst:797
|
||||
msgid ""
|
||||
"Real world examples of reentrancy are more likely to involve multiple "
|
||||
"functions calling each other and hence be far more complicated than this "
|
||||
|
@ -958,7 +961,7 @@ msgstr ""
|
|||
"fonctions s'entre-appelant, et donc être bien plus compliqués que cet "
|
||||
"exemple."
|
||||
|
||||
#: library/contextlib.rst:800
|
||||
#: library/contextlib.rst:801
|
||||
msgid ""
|
||||
"Note also that being reentrant is *not* the same thing as being thread "
|
||||
"safe. :func:`redirect_stdout`, for example, is definitely not thread safe, "
|
||||
|
@ -970,11 +973,11 @@ msgstr ""
|
|||
"puisqu'il effectue des changements globaux sur l'état du système en "
|
||||
"branchant :data:`sys.stdout` sur différents flux."
|
||||
|
||||
#: library/contextlib.rst:809
|
||||
#: library/contextlib.rst:810
|
||||
msgid "Reusable context managers"
|
||||
msgstr "Gestionnaires de contexte réutilisables"
|
||||
|
||||
#: library/contextlib.rst:811
|
||||
#: library/contextlib.rst:812
|
||||
msgid ""
|
||||
"Distinct from both single use and reentrant context managers are \"reusable"
|
||||
"\" context managers (or, to be completely explicit, \"reusable, but not "
|
||||
|
@ -992,7 +995,7 @@ msgstr ""
|
|||
"contexte référencée a déjà été utilisée dans une instruction *with* "
|
||||
"englobante."
|
||||
|
||||
#: library/contextlib.rst:818
|
||||
#: library/contextlib.rst:819
|
||||
msgid ""
|
||||
":class:`threading.Lock` is an example of a reusable, but not reentrant, "
|
||||
"context manager (for a reentrant lock, it is necessary to use :class:"
|
||||
|
@ -1002,7 +1005,7 @@ msgstr ""
|
|||
"réutilisable mais pas réentrant (pour un verrou réentrant, il faut à la "
|
||||
"place utiliser :class:`threading.RLock`)."
|
||||
|
||||
#: library/contextlib.rst:822
|
||||
#: library/contextlib.rst:823
|
||||
msgid ""
|
||||
"Another example of a reusable, but not reentrant, context manager is :class:"
|
||||
"`ExitStack`, as it invokes *all* currently registered callbacks when leaving "
|
||||
|
@ -1013,7 +1016,7 @@ msgstr ""
|
|||
"actuellement enregistrées en quittant l'instruction *with*, sans regarder où "
|
||||
"ces fonctions ont été ajoutées ::"
|
||||
|
||||
#: library/contextlib.rst:853
|
||||
#: library/contextlib.rst:854
|
||||
msgid ""
|
||||
"As the output from the example shows, reusing a single stack object across "
|
||||
"multiple with statements works correctly, but attempting to nest them will "
|
||||
|
@ -1025,7 +1028,7 @@ msgstr ""
|
|||
"imbriquer fait que la pile est vidée à la fin du *with* le plus imbriqué, ce "
|
||||
"qui n'est probablement pas le comportement voulu."
|
||||
|
||||
#: library/contextlib.rst:858
|
||||
#: library/contextlib.rst:859
|
||||
msgid ""
|
||||
"Using separate :class:`ExitStack` instances instead of reusing a single "
|
||||
"instance avoids that problem::"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-19 22:36+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2019-09-04 11:42+0200\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -18,13 +18,13 @@ msgstr ""
|
|||
msgid "Using :mod:`!importlib.metadata`"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:10
|
||||
#: library/importlib.metadata.rst:13
|
||||
msgid ""
|
||||
"This functionality is provisional and may deviate from the usual version "
|
||||
"semantics of the standard library."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:13
|
||||
#: library/importlib.metadata.rst:16
|
||||
msgid ""
|
||||
"``importlib.metadata`` is a library that provides for access to installed "
|
||||
"package metadata. Built in part on Python's import system, this library "
|
||||
|
@ -35,7 +35,7 @@ msgid ""
|
|||
"efficient ``pkg_resources`` package."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:22
|
||||
#: library/importlib.metadata.rst:25
|
||||
msgid ""
|
||||
"By \"installed package\" we generally mean a third-party package installed "
|
||||
"into Python's ``site-packages`` directory via tools such as `pip <https://"
|
||||
|
@ -46,52 +46,52 @@ msgid ""
|
|||
"extension mechanism, the metadata can live almost anywhere."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:33
|
||||
#: library/importlib.metadata.rst:36
|
||||
msgid "Overview"
|
||||
msgstr "Aperçu"
|
||||
|
||||
#: library/importlib.metadata.rst:35
|
||||
#: library/importlib.metadata.rst:38
|
||||
msgid ""
|
||||
"Let's say you wanted to get the version string for a package you've "
|
||||
"installed using ``pip``. We start by creating a virtual environment and "
|
||||
"installing something into it:"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:45
|
||||
#: library/importlib.metadata.rst:48
|
||||
msgid "You can get the version string for ``wheel`` by running the following:"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:54
|
||||
#: library/importlib.metadata.rst:57
|
||||
msgid ""
|
||||
"You can also get the set of entry points keyed by group, such as "
|
||||
"``console_scripts``, ``distutils.commands`` and others. Each group contains "
|
||||
"a sequence of :ref:`EntryPoint <entry-points>` objects."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:58
|
||||
#: library/importlib.metadata.rst:61
|
||||
msgid "You can get the :ref:`metadata for a distribution <metadata>`::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:63
|
||||
#: library/importlib.metadata.rst:66
|
||||
msgid ""
|
||||
"You can also get a :ref:`distribution's version number <version>`, list its :"
|
||||
"ref:`constituent files <files>`, and get a list of the distribution's :ref:"
|
||||
"`requirements`."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:69
|
||||
#: library/importlib.metadata.rst:72
|
||||
msgid "Functional API"
|
||||
msgstr "API par fonction"
|
||||
|
||||
#: library/importlib.metadata.rst:71
|
||||
#: library/importlib.metadata.rst:74
|
||||
msgid "This package provides the following functionality via its public API."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:77
|
||||
#: library/importlib.metadata.rst:80
|
||||
msgid "Entry points"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:79
|
||||
#: library/importlib.metadata.rst:82
|
||||
msgid ""
|
||||
"The ``entry_points()`` function returns a dictionary of all entry points, "
|
||||
"keyed by group. Entry points are represented by ``EntryPoint`` instances; "
|
||||
|
@ -101,7 +101,7 @@ msgid ""
|
|||
"value`` attribute::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:103
|
||||
#: library/importlib.metadata.rst:106
|
||||
msgid ""
|
||||
"The ``group`` and ``name`` are arbitrary values defined by the package "
|
||||
"author and usually a client will wish to resolve all entry points for a "
|
||||
|
@ -110,37 +110,37 @@ msgid ""
|
|||
"for more information on entry points, their definition, and usage."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:113
|
||||
#: library/importlib.metadata.rst:116
|
||||
msgid "Distribution metadata"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:115
|
||||
#: library/importlib.metadata.rst:118
|
||||
msgid ""
|
||||
"Every distribution includes some metadata, which you can extract using the "
|
||||
"``metadata()`` function::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:120
|
||||
#: library/importlib.metadata.rst:123
|
||||
msgid ""
|
||||
"The keys of the returned data structure [#f1]_ name the metadata keywords, "
|
||||
"and their values are returned unparsed from the distribution metadata::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:130
|
||||
#: library/importlib.metadata.rst:133
|
||||
msgid "Distribution versions"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:132
|
||||
#: library/importlib.metadata.rst:135
|
||||
msgid ""
|
||||
"The ``version()`` function is the quickest way to get a distribution's "
|
||||
"version number, as a string::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:142
|
||||
#: library/importlib.metadata.rst:145
|
||||
msgid "Distribution files"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:144
|
||||
#: library/importlib.metadata.rst:147
|
||||
msgid ""
|
||||
"You can also get the full set of files contained within a distribution. The "
|
||||
"``files()`` function takes a distribution package name and returns all of "
|
||||
|
@ -150,11 +150,11 @@ msgid ""
|
|||
"For example::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:160
|
||||
#: library/importlib.metadata.rst:163
|
||||
msgid "Once you have the file, you can also read its contents::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:171
|
||||
#: library/importlib.metadata.rst:174
|
||||
msgid ""
|
||||
"In the case where the metadata file listing files (RECORD or SOURCES.txt) is "
|
||||
"missing, ``files()`` will return ``None``. The caller may wish to wrap calls "
|
||||
|
@ -164,22 +164,22 @@ msgid ""
|
|||
"present."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:182
|
||||
#: library/importlib.metadata.rst:185
|
||||
msgid "Distribution requirements"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:184
|
||||
#: library/importlib.metadata.rst:187
|
||||
msgid ""
|
||||
"To get the full set of requirements for a distribution, use the "
|
||||
"``requires()`` function::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:192
|
||||
#: library/importlib.metadata.rst:195
|
||||
#, fuzzy
|
||||
msgid "Distributions"
|
||||
msgstr "Distribution"
|
||||
|
||||
#: library/importlib.metadata.rst:194
|
||||
#: library/importlib.metadata.rst:197
|
||||
msgid ""
|
||||
"While the above API is the most common and convenient usage, you can get all "
|
||||
"of that information from the ``Distribution`` class. A ``Distribution`` is "
|
||||
|
@ -187,29 +187,29 @@ msgid ""
|
|||
"can get the ``Distribution`` instance::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:202
|
||||
#: library/importlib.metadata.rst:205
|
||||
msgid ""
|
||||
"Thus, an alternative way to get the version number is through the "
|
||||
"``Distribution`` instance::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:208
|
||||
#: library/importlib.metadata.rst:211
|
||||
msgid ""
|
||||
"There are all kinds of additional metadata available on the ``Distribution`` "
|
||||
"instance::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:216
|
||||
#: library/importlib.metadata.rst:219
|
||||
msgid ""
|
||||
"The full set of available metadata is not described here. See :pep:`566` "
|
||||
"for additional details."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:221
|
||||
#: library/importlib.metadata.rst:224
|
||||
msgid "Extending the search algorithm"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:223
|
||||
#: library/importlib.metadata.rst:226
|
||||
msgid ""
|
||||
"Because package metadata is not available through :data:`sys.path` searches, "
|
||||
"or package loaders directly, the metadata for a package is found through "
|
||||
|
@ -218,14 +218,14 @@ msgid ""
|
|||
"path finders <meta path finder>` on :data:`sys.meta_path`."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:229
|
||||
#: library/importlib.metadata.rst:232
|
||||
msgid ""
|
||||
"The default ``PathFinder`` for Python includes a hook that calls into "
|
||||
"``importlib.metadata.MetadataPathFinder`` for finding distributions loaded "
|
||||
"from typical file-system-based paths."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:233
|
||||
#: library/importlib.metadata.rst:236
|
||||
msgid ""
|
||||
"The abstract class :py:class:`importlib.abc.MetaPathFinder` defines the "
|
||||
"interface expected of finders by Python's import system. ``importlib."
|
||||
|
@ -235,14 +235,14 @@ msgid ""
|
|||
"base class, which defines this abstract method::"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:247
|
||||
#: library/importlib.metadata.rst:250
|
||||
msgid ""
|
||||
"The ``DistributionFinder.Context`` object provides ``.path`` and ``.name`` "
|
||||
"properties indicating the path to search and name to match and may supply "
|
||||
"other relevant context."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:251
|
||||
#: library/importlib.metadata.rst:254
|
||||
msgid ""
|
||||
"What this means in practice is that to support finding distribution package "
|
||||
"metadata in locations other than the file system, subclass ``Distribution`` "
|
||||
|
@ -251,11 +251,11 @@ msgid ""
|
|||
"method."
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.metadata.rst:264
|
||||
#: library/importlib.metadata.rst:267
|
||||
msgid "Footnotes"
|
||||
msgstr "Notes"
|
||||
|
||||
#: library/importlib.metadata.rst:265
|
||||
#: library/importlib.metadata.rst:268
|
||||
msgid ""
|
||||
"Technically, the returned distribution metadata object is an :class:`email."
|
||||
"message.EmailMessage` instance, but this is an implementation detail, and "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-19 22:36+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2018-07-04 11:26+0200\n"
|
||||
"Last-Translator: Julien Palard <julien@palard.fr>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -654,7 +654,7 @@ msgid "The import machinery now takes care of this automatically."
|
|||
msgstr ""
|
||||
|
||||
#: library/importlib.rst:484
|
||||
msgid "*Superseded by TraversableReader*"
|
||||
msgid "*Superseded by TraversableResources*"
|
||||
msgstr ""
|
||||
|
||||
#: library/importlib.rst:486
|
||||
|
|
|
@ -5,14 +5,14 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-12-17 16:05+0100\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2021-05-28 17:46+0200\n"
|
||||
"Last-Translator: Stephan Michaud <michauds90@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Last-Translator: Stephan Michaud <michauds90@gmail.com>\n"
|
||||
"X-Generator: Poedit 2.3\n"
|
||||
|
||||
#: library/platform.rst:2
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-10-01 16:00+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2021-03-20 18:04+0100\n"
|
||||
"Last-Translator: Loc Cosnier <loc.cosnier@pm.me>\n"
|
||||
"Language-Team: French <traductions@lists.afpy.org>\n"
|
||||
|
@ -25,12 +25,13 @@ msgid "**Source code:** :source:`Lib/timeit.py`"
|
|||
msgstr "**Code source :** :source:`Lib/timeit.py`"
|
||||
|
||||
#: library/timeit.rst:15
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"This module provides a simple way to time small bits of Python code. It has "
|
||||
"both a :ref:`timeit-command-line-interface` as well as a :ref:`callable "
|
||||
"<python-interface>` one. It avoids a number of common traps for measuring "
|
||||
"execution times. See also Tim Peters' introduction to the \"Algorithms\" "
|
||||
"chapter in the *Python Cookbook*, published by O'Reilly."
|
||||
"chapter in the second edition of *Python Cookbook*, published by O'Reilly."
|
||||
msgstr ""
|
||||
"Ce module fournit une façon simple de mesurer le temps d'exécution de "
|
||||
"fragments de code Python. Il expose une :ref:`timeit-command-line-interface` "
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-19 22:36+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2018-09-28 10:04+0200\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -327,7 +327,7 @@ msgstr ""
|
|||
|
||||
#: library/types.rst:267
|
||||
msgid ""
|
||||
"A record of the the module's import-system-related state. Expected to be an "
|
||||
"A record of the module's import-system-related state. Expected to be an "
|
||||
"instance of :class:`importlib.machinery.ModuleSpec`."
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-03-19 16:59+0100\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2019-04-22 12:07+0200\n"
|
||||
"Last-Translator: Bousquié Pierre <pierre.bousquie@gmail.com>\n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -446,8 +446,9 @@ msgstr ""
|
|||
"d'une manière particulière ::"
|
||||
|
||||
#: library/unittest.mock.rst:330
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Assert that the mock was called exactly once and that that call was with the "
|
||||
"Assert that the mock was called exactly once and that call was with the "
|
||||
"specified arguments."
|
||||
msgstr ""
|
||||
"Asserter que le simulacre a été appelé exactement une fois et que cet appel "
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -5,7 +5,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Python 3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-19 22:36+0200\n"
|
||||
"POT-Creation-Date: 2021-05-29 16:33+0200\n"
|
||||
"PO-Revision-Date: 2020-08-06 00:39+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
||||
|
@ -2319,7 +2319,7 @@ msgid ""
|
|||
"Python 3.10. (Contributed by Ken Jin in :issue:`42195`.)"
|
||||
msgstr ""
|
||||
|
||||
#: whatsnew/3.9.rst:1543
|
||||
#: whatsnew/3.9.rst:1568
|
||||
msgid "urllib.parse"
|
||||
msgstr "urllib.parse"
|
||||
|
||||
|
@ -2348,6 +2348,20 @@ msgid ""
|
|||
"instance to ``True``. (See :issue:`43285`)"
|
||||
msgstr ""
|
||||
|
||||
#: whatsnew/3.9.rst:1565
|
||||
msgid "Notable changes in Python 3.9.5"
|
||||
msgstr ""
|
||||
|
||||
#: whatsnew/3.9.rst:1570
|
||||
msgid ""
|
||||
"The presence of newline or tab characters in parts of a URL allows for some "
|
||||
"forms of attacks. Following the WHATWG specification that updates :rfc:"
|
||||
"`3986`, ASCII newline ``\\n``, ``\\r`` and tab ``\\t`` characters are "
|
||||
"stripped from the URL by the parser in :mod:`urllib.parse` preventing such "
|
||||
"attacks. The removal characters are controlled by a new module level "
|
||||
"variable ``urllib.parse._UNSAFE_URL_BYTES_TO_REMOVE``. (See :issue:`43882`)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid ""
|
||||
#~ "This article explains the new features in Python 3.9, compared to 3.8."
|
||||
#~ msgstr ""
|
||||
|
|
Loading…
Reference in New Issue
Block a user